Hierarchicons have the following fields:
There are three operations defined on hierarchicons: creation, selection and show. The pseudo-code algorithms for these operations are listed in Appendix . When a hierarchicon is created for a window hierarchy basically all fields of the hierarchicon are filled, with the active selection set to the root of the associated window hierarchy and the level set to 0.
In the selection operation when the left mouse button (Button = 0)is clicked on the hierarchicon, the active window hierarchy is set to the lower level window at the click position, which is determined by the FindWindowAtLevel function. A right mouse button click increases the level of the window active window hierarchy selected. FindWindowAtLevel is very similar to the FindWindow function except that the level as an input parameter is one of the termination conditions in the while loop.
The show operation basically inserts a copy of the active window selection to the location of the original window. An intermediary G-Node might be necessary in case of a type mismatch. Lastly, the effects are propagated from the parent window of the original window to lower level windows.