User:Andrew/LayoutPatterns/CommandPatterns
Purpose
Command patterns are determined by the command structure chosen for the application (simple, complex or very complex). Commands are defined as any function performed by the application based on user input.
Guidelines
Patterns for a simple command structure
- Use Menu Button command pattern when there are few globally applicable commands.
- Use Context Menu or Context Panel command patterns for commands specific to selected content.
- Commands are also exposed by direct manipulation of content (drag & drop, buttons, text fields, images, etc).
- For plasmoids, all commands must be exposed by direct manipulation of content - no menu button, context menu, or context panel.
Examples
Audio/Music player, Image browser, Document viewer, Maps, Games, Contacts, Chat client, Video conference, Settings, Address book, Chat client, Terminal, Software installer, Calculator, Plasmoids (panel applets and desktop widgets)
Patterns for a complex command structure
- Use Toolbar + Menu Button pattern when the most frequently used commands are less than 8 and the remaining commands are not essential to performing the primary tasks of the application. The toolbar exposes the frequently used commands. The menu button exposes a more full representation the command structure.
- Commands are also exposed by direct manipulation of content, context menus or a context panel.
Examples
Web browser, File manager, Text editor, Email, Calendar, Image editor, Archiver
Patterns for a very complex command structure
- Use Menubar when the command structure is complex enough to compel exposing greater than 3 root commands.
- Commands are also exposed by direct manipulation of content, toolbars, context menus or a context panel.
Examples
IDE, Text Editor(high-feature), Document editor(high-feature), Spreadsheet editor, Image editor(high-feature), Audio/video editor