-
Notifications
You must be signed in to change notification settings - Fork 0
2. UI Architecture Setup
The root of the UI design is Desktop component. It contains the following components:
- System level menu bar - it's different and independent from window level menu bars.
- System level status bar - it's different and independent from window level status bars.
- The list of open 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.
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.
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.