diff --git a/new/GLOSSARY b/new/GLOSSARY deleted file mode 100644 index edbed20..0000000 --- a/new/GLOSSARY +++ /dev/null @@ -1,161 +0,0 @@ -In the interest of making sure that everything in ui is consistent, here is a glossary of various conflicting terms and what they mean to the library. These are disjunct from the terminology used by each backend's native platform; context should be used to differentiate where appropriate. - -Instead of a traditional glossary, let's look at things the way ui does them: - -We have - a uiWindow w - which has a T t - which has a uiControl - and an H h, which is an OS resource - a uiControl c -We call - uiWindowSetChild(w, c) -What happens: - w instructs t that c should be the child it keeps track of - t.SetControl(c) - t instructs c that it should add its children to the OS object h backing t - c.SetTHING(t) - 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 t to add d to h - t.Host(d) - t gives d h to add itself too - d.SetHost(h) - c asks t to let it lay itself out - t.Update() - t tells c to lay itself out - c.Resize() -We call - uiStackDelete(c, 4) -What happens: - c asks t to remove its fifth child from h - t.Unhost(c.children[4]) - t tells c's fifth child to unhost itself - c.children[4].UnsetHost() - c instructs t to tell it to lay itself out - t.Update() - t tells c to lay itself out - c.Resize() -We do - resize the window -What happens: - w resizes t, which resizes h - t.Resize() - resizing h 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.UnsetTHING() - t.Unhost(d) - d.Unhost() - w instrcuts t to start tracking e - t.SetControl(e) - t instructs e to add its children to h - e.SetTHING(t) - t instructs e to be laid out - e.Resize() -We do - uiWindowDestroy(w) -What happens - w instructs t to tell e to destroy itself - t.Destroy() - t tells e to unhook itself - e.UnsetTHING() - t tells e to destroy itself - e.Destroy() - t destroys h, then itself - w destroys itself - -Therefore, we need a name for T and H -We also need a term for uiStack and uiGrid -The above uses 'children' for their children - -CURRENT PLAN -T/THING will be called a 'host' -H will be called an 'OS parent' -a host has an OS parent; it gives it to the individual children of its control as needed -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