michael@0: ____ _ _ _ _ _ michael@0: / ___| ___ | |__ __ _ ___ | |__ | | | || |__ _ __ michael@0: \___ \ / __|| '_ \ / _` | / __|| '_ \ | | | || '_ \ | '__| michael@0: ___) || (__ | | | || (_| || (__ | | | || |_| || | | || | michael@0: |____/ \___||_| |_| \__,_| \___||_| |_| \___/ |_| |_||_| michael@0: michael@0: Europalab SchachUhr - Game clock graphical user interface client michael@0: michael@0: DESIGN (IEEE 1016) michael@0: michael@0: #D.01 SVG format is given preference... michael@0: ...unless underlying software components fail to properly display it. michael@0: #D.02 Two subclocks are displayed side by side like physical game clocks. michael@0: #D.03 UI surface is layout optimized for mobile or semimobile devices. michael@0: #D.04 Target surface size resembles the size of a phyical game clock. michael@0: ...however all UI components scale to fill the entire screen. michael@0: ...this conflicts with #D.01, but can be solved by maximizing michael@0: use of scalable vector formats and fonts while programatically michael@0: choosing the size of nonvector UI components. michael@0: #D.05 UI occupies the full screen and no window decorations are shown. michael@0: #D.06 The application starts by showing the initial screen, in which michael@0: both subclocks are active but not running. This is due to the michael@0: application now knowing which opponent will begin moving first. michael@0: #D.07 To start, an opponent presses their clockface in the initial screen. michael@0: This indicates which player moves first. After this exceptional michael@0: step, the running subclock alternates regardless of which part michael@0: of the UI surface is pressed. michael@0: #D.08 To alternate the running subclock, the playing opponent presses michael@0: anywhere on the UI surface (even in the nonplaying opponent's area.) michael@0: #D.09 RSS indicated updates are automatically published on project homepage. michael@8: #D.10 Aspect consists of minimal UI pieces arranged statically. michael@8: A vertically (90 degrees rotated) title bar is flush left. michael@8: A system title bar is assumed to be placed above the UI surface. michael@8: Two clockfaces are placed side by side next to the vertical title bar. michael@8: One text label for the opponent name is placed below each clock face. michael@8: #D.11 Consideration is given to devices with several screen resolutions. michael@8: 820 X 480 (AppUp requirement) michael@8: 854 X 480 (Telephone) michael@8: 1024 X 600 (Ideapad) michael@8: 1280 X 720 (720p) michael@8: 1366 X 768 (WeTab) michael@8: #D.12 Resolutions greater than 1366 X 768 (for example 1280 X 768) michael@8: are to be served with SVG graphics only to maintain asthetics. michael@0: michael@0: OPTIONS michael@0: michael@0: #O.01 Main window is scalable and provides window decorations. michael@0: ...this conflicts with #D.05 and must be implemented by michael@0: scaling UI components as well as the UI surface. michael@0: #O.02 Online update detection alerts user to pending new releases. michael@0: ...this complements #D.09 but must be implemented separately.