summaryrefslogtreecommitdiff
path: root/doc.go
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