Link assemblies to other objects.
Hierarchy
Assemblies can be linked to objects above or below, in the Gamgi 
hierarchy. Pressing the button 
Below (the default), 
the 
Objects menu shows the classes of objects that can be owned 
by assemblies: Assembly, Cell, Cluster, Molecule, Group, Plane, Direction, 
Atom (the default), Orbital and Text. Pressing the button 
Above, 
the same menu shows the classes of objects that can own assemblies: Layer 
(the default) and Assembly. Assemblies can own other assemblies 
(they are recursive objects), so they can be linked above or below 
to other assemblies. 
Object
Gamgi expects users to identify first the assembly or list of assemblies
and then the object to link. When the 
Assembly entry is active
and empty, clicking the mouse over a assembly, on the current layer
(local selection), its identification is transported to the 
Assembly
entry. Gamgi is now expecting users to click on a object of the class 
currently selected in the 
Object menu. This object can be in a 
different layer or even in a different window (global selection).
To select a visible object in a different layer, in the same window, 
just press the mouse over the object, as if it was in the current 
layer. To select objects without visual representation, as layers
and lights, press the mouse over the graphic area in the window,
to create a menu with all the objects of that class in the window, 
which can then be selected. To select an object in a different window, 
with the mouse, use exactly the same procedure, in that window.
Link
Gamgi suppports only one type of linking mode for Assembly: 
Object.
The 
Object method links an assembly to a single 
Object. 
When the 
Hierarchy is 
Above, the assembly is unlinked 
from its current parent and linked to the object. When the assembly 
is moved to a different layer, all its bonds to other objects are 
automatically removed. When the 
Hierarchy is 
Below, 
the object is unlinked from its current parent and linked to 
the assembly. 
When the new child previously owned the new parent (a situation made 
possible because assemblies can own other assemblies), the new parent 
is first linked to the new child parent. An error is issued when the 
parent already owned the child object. 
After the linking operation, Gamgi always puts on top
the window and layer containing the linked objects.