|
1 ____ _ _ _ _ _ |
|
2 / ___| ___ | |__ __ _ ___ | |__ | | | || |__ _ __ |
|
3 \___ \ / __|| '_ \ / _` | / __|| '_ \ | | | || '_ \ | '__| |
|
4 ___) || (__ | | | || (_| || (__ | | | || |_| || | | || | |
|
5 |____/ \___||_| |_| \__,_| \___||_| |_| \___/ |_| |_||_| |
|
6 |
|
7 Europalab SchachUhr - Game clock graphical user interface client |
|
8 |
|
9 DESIGN (IEEE 1016) |
|
10 |
|
11 #D.01 SVG format is given preference... |
|
12 ...unless underlying software components fail to properly display it. |
|
13 #D.02 Two subclocks are displayed side by side like physical game clocks. |
|
14 #D.03 UI surface is layout optimized for mobile or semimobile devices. |
|
15 #D.04 Target surface size resembles the size of a phyical game clock. |
|
16 ...however all UI components scale to fill the entire screen. |
|
17 ...this conflicts with #D.01, but can be solved by maximizing |
|
18 use of scalable vector formats and fonts while programatically |
|
19 choosing the size of nonvector UI components. |
|
20 #D.05 UI occupies the full screen and no window decorations are shown. |
|
21 #D.06 The application starts by showing the initial screen, in which |
|
22 both subclocks are active but not running. This is due to the |
|
23 application now knowing which opponent will begin moving first. |
|
24 #D.07 To start, an opponent presses their clockface in the initial screen. |
|
25 This indicates which player moves first. After this exceptional |
|
26 step, the running subclock alternates regardless of which part |
|
27 of the UI surface is pressed. |
|
28 #D.08 To alternate the running subclock, the playing opponent presses |
|
29 anywhere on the UI surface (even in the nonplaying opponent's area.) |
|
30 #D.09 RSS indicated updates are automatically published on project homepage. |
|
31 |
|
32 OPTIONS |
|
33 |
|
34 #O.01 Main window is scalable and provides window decorations. |
|
35 ...this conflicts with #D.05 and must be implemented by |
|
36 scaling UI components as well as the UI surface. |
|
37 #O.02 Online update detection alerts user to pending new releases. |
|
38 ...this complements #D.09 but must be implemented separately. |