blob: 99f99fd12b541a157efe45c731f75a41cc21a3e4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
/*
# 2D geometry values
There are lots of issues when supporting multiple toolkit plugin
geometries. The geometries vary widely especially between the
graphical displays and the serial console ones. [Graphical Widget](http://en.wikipedia.org/Graphical_Widget)
To simplyfy this, we stick to using the concepts:
------------------------------ ^
| top | |
| | |
| left right | height
| | |
| bottom | |
------------------------------ v
<----------- width ---------->
This way, width & height are always positive numbers.
The qustion of (top,bottom) & (left,right) becomes problematic.
In almost every toolkit, right > left. However, top & bottom
vary and a choice can not be made easily. Luckily, we maybe do
not have to make that decision here and can pass that determination
to the toolkits. So, we use excusively:
geom(left, right, top, bottom)
size(width, height)
# Orientation
Horizontal means layout widgets like books on a bookshelf
---------------------------------
| W | W | W | W | W | W | W | W |
| i | i | i | i | i | i | i | i |
| d | d | d | d | d | d | d | d |
| g | g | g | g | g | g | g | g |
| e | e | e | e | e | e | e | e |
| t | t | t | t | t | t | t | t |
---------------------------------
Vertical means layout widgets like books in a stack
----------
| Widget |
----------
| Widget |
----------
| Widget |
----------
| Widget |
----------
*/
package widget
|