User:Andrew/LayoutPatterns

From KDE UserBase Wiki


Purpose

Layout patterns provide a means by which to design applications that maintain both visual and functional consistency that is appropriate for the functionality and content of the application.

Guidance

The complete layout for your application may be constructed by selecting an appropriate Command Pattern and Navigation Pattern.

  • 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.
  • Navigation Patterns are determined by the information structure of the application content (flat, 2-deep, 3-deep, n-deep).

Plasmoid Layouts

Plasmoids like panel popups and desktop widgets should meet the following criteria:

  • Plasmoids use only a simple command structure.
  • The content of plasmoids must have a [[User:Andrew/LayoutPatterns/NavigationPatterns#Patterns_for_a_flat_content_structure|flat] or [information structure.
  • If the above two criteria cannot be satisfied, consider designing a traditional desktop application instead of a plasmoid.

Methodology

Applications Survey

An extensive survey of a broad range of desktop applications was conducted. The survey activity included identifying the layout characteristics and type of each application. The type of the applications surveyed are: Video player, Audio/Music player, Image browser, Image editor, Web browser, File browser, Settings , Text editor , IDE, Document editor Document viewer, Games, Email , Address book , Chat client , Calendar , Video conference , Audio/Video editing, Terminal, Calculator, Clock, System Monitor, Archiver , Mapping/Directions, Software installer/remover, Dictionary


Industry Guidelines Review

Several published guidelines were reviewed to identify common industry layout guidance and to help validate some of the guidance provided in these guidelines. The industry layout guidelines surveyed include:

  • GNOME HIG
  • Windows Design Guidelines
  • Google Design Guidelines
  • Android Design Guidelines
  • OS X HIG
  • iOS HIG