This page is a work in progress describing the design of the Syndie Desktop GUI. Any input is very much appreciated.
As a whole, the Desktop GUI offers a small number of contexts for doing various tasks - there's a screen for reading, another for posting, another for selecting what to read, and another for selecting what forums/blogs to participate in. The aim is to fill each screen with everything the user needs to perform a particular task, but keep out everything they don't need, thereby reducing the conceptual overhead of each task and providing optimized widgets.
Following the lead of Fitts' law and OLPC's "Sugar" interface, the edges and corners of the screen have increased importance as compared to standard GUIs. Ease of use is paramount, as is the ability for experts to quickly do what they want - as such, the GUI aims to be controllable entirely through the keyboard. Of course, accessibility is also an important part of that - alternative input and output technologies should not be precluded (and should instead be supported as best possible), and the display rendering should be customizable according to the user's needs.
GUI performance is also a key focus of the Desktop GUI, both on modern machines and on the sort of machines found in out of the way net cafes.
A a whole, the user's display is broken up into a 9 blocks - the large center panel, four edges, and four corners. The center panel displays the current "screen", and the four edges may be overridden for that screen (if a screen is not overriding an edge, it uses the "default edge"). The four corners are always visible and always have the same meaning, regardless of what screen is being displayed.
The west edge has special functionality - displaying quick link icon to access the user's watched forums and selected references as well as drag&drop targets to watch forums or add references to resources. Few if any screens should override the default west edge.
These "overlay menus" are modal dialogs that display on top of the current screen, though do not take up the entire space. When dismissed (either with a control inside the menu or by hitting the controlling corner again), the current screen becomes the focus again. The intention of these displays are to serve as topical menus for certain functionality.
.syndie
filesThe corner responsible for the status menu should also adjust its display based on the status (online/offline, syndication progress, etc), when possible
Launched by the southeast corner, the help menu should offer both context(screen)-sensitive and overall help information.
The startup screen is shown immediately when the Syndie desktop launches, and includes progress information about the startup process. In fact, while the startup screen is being displayed, it is launching and monitoring the various tasks to get the Syndie desktop into working order.
No custom north edge is provided
No custom east edge is provided
No custom south edge is provided
No custom west edge is provided
The forum selection screen is triggered when the default west edge is chosen - it manages the watched forums and bookmarks. One of the important functions is to assign icons to bookmarked folders/elements so they can show up on the default west edge as links (it uses the scaled down avatars of the watched forums for the same)
No custom north edge is provided
A big "view selected" button.
No custom west edge is provided
The "message selection screen" is a fancy term for that hierarchical message view. It can show messages in just one forum, organized as threads or flat. It can show messages for multiple forums as well, either split up by forum or interspersed with each other. The messages can be filtered to match only certain criteria. If desired, the screen can show a small preview of individual messages (perhaps the first 30 words?) in a small tooltip-like display.
If only a single forum is being shown, the north edge contains information about that forum - its avatar, name, description, and any advertised references (FAQs/policies/etc). If multiple forums are being shown, it tries to show as much information as it can, but under certain circumstances may merely render the general filtering criteria being used to select messages.
The south edge has a large number of controls, fitting into two categories - filtering controls, and action controls. The edge has a means to switch between these two - either showing the action controls or the filtering controls.
No custom west edge is provided
The screen itself is responsible for rendering the message - its pages, attachments, references, and context within a thread.
No custom west edge is provided
This screen serves as Syndie's integrated editor for posting messages.
The east edge has four controls - save for later, preview, post, and cancel message. When the "preview" option is selected, the message editor body renders the page, the "post" option is enabled, and the "preview" option is replaced with "edit". Selecting "edit" reverses that process, and selecting "post" (when enabled) posts the message.
No custom west edge is provided