More glossary work.
This commit is contained in:
parent
00ddd78484
commit
6135d29e96
82
new/GLOSSARY
82
new/GLOSSARY
|
@ -80,8 +80,82 @@ We also need a term for uiStack and uiGrid
|
||||||
The above uses 'children' for their children
|
The above uses 'children' for their children
|
||||||
|
|
||||||
CURRENT PLAN
|
CURRENT PLAN
|
||||||
T/THING will be called a 'parent'
|
T/THING will be called a 'host'
|
||||||
H will be called a 'host'
|
H will be called an 'OS parent'
|
||||||
a parent has a host, but it will NOT be accessed directly by children
|
a host has an OS parent; it gives it to the individual children of its control as needed
|
||||||
instead it will use the named methods
|
|
||||||
uiStack and uiGrid, etc. will be called 'containers'
|
uiStack and uiGrid, etc. will be called 'containers'
|
||||||
|
|
||||||
|
let's rewrite the above with the new terminology:
|
||||||
|
|
||||||
|
We have
|
||||||
|
a uiWindow w
|
||||||
|
which has a Host h
|
||||||
|
which has a uiControl control
|
||||||
|
and an OSParent p
|
||||||
|
a uiControl c
|
||||||
|
We call
|
||||||
|
uiWindowSetChild(w, c)
|
||||||
|
What happens:
|
||||||
|
w instructs h that c should be the control it keeps track of
|
||||||
|
h.SetControl(c)
|
||||||
|
h tells c that it is its host
|
||||||
|
c.SetHost(h)
|
||||||
|
t instructs c to lay itself out
|
||||||
|
c.Resize()
|
||||||
|
We now say
|
||||||
|
c is really a uiStack
|
||||||
|
We call
|
||||||
|
uiStackAppend(c, d, 2)
|
||||||
|
What happens:
|
||||||
|
c asks h to add d to p
|
||||||
|
h.Host(d)
|
||||||
|
h gives d p to add itself too
|
||||||
|
d.SetOSParent(p)
|
||||||
|
c asks h to let it lay itself out
|
||||||
|
h.Update()
|
||||||
|
h tells c to lay itself out
|
||||||
|
c.Resize()
|
||||||
|
We call
|
||||||
|
uiStackDelete(c, 4)
|
||||||
|
What happens:
|
||||||
|
c asks h to remove its fifth child from p
|
||||||
|
h.Unhost(c.children[4])
|
||||||
|
h tells c's fifth child to unhost itself
|
||||||
|
c.children[4].UnsetOSParent()
|
||||||
|
c instructs h to tell it to lay itself out
|
||||||
|
h.Update()
|
||||||
|
h tells c to lay itself out
|
||||||
|
c.Resize()
|
||||||
|
We do
|
||||||
|
resize the window
|
||||||
|
What happens:
|
||||||
|
w resizes h, which resizes p
|
||||||
|
h.Resize()
|
||||||
|
resizing p triggers a relayout of c
|
||||||
|
c.Resize()
|
||||||
|
We do
|
||||||
|
uiWindowSetChild(w, e)
|
||||||
|
What happens:
|
||||||
|
w instructs t to stop tracking c
|
||||||
|
t.UnsetControl(c)
|
||||||
|
t instructs c to remove its children from h
|
||||||
|
c.UnsetHost()
|
||||||
|
t.Unhost(d)
|
||||||
|
d.UnsetOSParent()
|
||||||
|
w instrcuts t to start tracking e
|
||||||
|
t.SetControl(e)
|
||||||
|
t instructs e to add its children to h
|
||||||
|
e.SetHost(t)
|
||||||
|
t instructs e to be laid out
|
||||||
|
e.Resize()
|
||||||
|
We do
|
||||||
|
uiWindowDestroy(w)
|
||||||
|
What happens
|
||||||
|
w instructs h to tell e to destroy itself
|
||||||
|
h.Destroy()
|
||||||
|
h tells e to unhook itself
|
||||||
|
e.UnsetHost()
|
||||||
|
h tells e to destroy itself
|
||||||
|
e.Destroy()
|
||||||
|
h destroys p, then itself
|
||||||
|
w destroys itself
|
||||||
|
|
Loading…
Reference in New Issue