Skip to content

2. UI Architecture Setup

michalblaszak edited this page Dec 22, 2020 · 1 revision

Desktop

The root of the UI design is Desktop component. It contains the following components:

  1. System level menu bar - it's different and independent from window level menu bars.
  2. System level status bar - it's different and independent from window level status bars.
  3. The list of open windows.

Windows

Each window runs it's own thread. That means each window handles it's own event loop. One can think about a window as an independent application. Adding a 'Clock' component to the window makes it possible for the window application to execute selected tasks in time intervals making sure to refresh the window's contents. There can be 0, 1 or many clocks running in parallel. There can be many windows running simultaneously. Closing the window stops it's main thread and all related clocks.

Desktop Navigation

Alt-x - exit the application - closes the entire UI and ends the program. Alt-F10 - activates/deactivates the system level menu bar. Ctrl-Tab - moves focus the next window (the window sequence is determined by the order in which they were opened). Alt-c - closes the currently active window.

System Menu Bar Navigation

Alt-F10 - deactivates the system level menu bar. F10 - same as Alt-F10. Left/Right Arrow - moves highlight to the previous/next menu item. Enter - activates the selected menu item. Unhandled keystrokes are consumed and are not passed to further processing.

Clone this wiki locally