LMD DockingPack Guide


Space and Auto-Hide Zones


The TLMDDockSite site can have a space zone. Space zone should be considered as a main central zone in application. You can specify the space zone at design-time by right-clicking on the panel and choosing "Set as Space Zone" from the context menu.

 

At run-time the corresponding zone will have zrkSpace as a ResizeKind property value. The application can also assign zrkSpace value to ResizeKind property value dynamically to change space zone. Only one zone at a time can have ResizeKind = zrkSpace.

 

How space zone differs from other zones? There are three main points:

 

-The space zone has highest priority to resize while the parent site changes bounds. That is, while the user resize the site, space zone will be resized, so to leave Width/Height of other (edge) zones unchanged:
 
clip0006
 
clip0007
 

-The space zone – is the only zone (except root) that can exist empty. Undocking the panel from the space zone does not destroy the zone. It remains exist empty to prevent corruption of the edge zones layout:
 
clip0008
 

-The space zone can’t be auto-hidden. So the pin/unpin header button is not visible if the panel resides in the space zone. All other (edge) zones automatically detect auto-hide side relatively the space zone. For example, if some panel is docked to the left of space zone, then it can be auto-hidden only to the left edge of the parent site:
 
clip0009

 

The space zone feature can be switched off by assigning False to UseSpace property of the TLMDDockSite. As a result of doing this all zones will resize proportionally, and no zones will be able to auto-hide. This mode is used in dynamically created floating form's sites:

 

clip0010

 

The zone class defines AutoHide Boolean property. Setting the property value to True will consider the zone as auto-hidden. The auto-hidden zones are not shown at the site client area, leaving the area for other content. All panels, that are directly or indirectly resides in such zones are removed from the site client area and becomes visible as a tabs at the edge of the site. The end-user can then click these tabs to temporary show corresponding auto-hidden panels:

 

clip0011

 

Note, that the AutoHide property is the property of zone. That is, not only simple panels zones can be auto-hidden. For example, you can auto-hide whole tabs zone by setting its AutoHide property value to True. All its panels will be minimized into site’s edge tabs. Also note that auto-hidden zone still exists in internal zone tree, and all its content will be restored on the site client area after resetting AutoHide property value to False.

 

If tabbed documents feature is turned on, space zone becomes main host zone, which hosts tabbed documents. Since document tabs may have a complex structure, space zone may contain child zones of, actually, any kind: vertical, horizontal, tabs or panel zones. However, the structure of such zone is restricted and maintained automatically. All space zone properties described above are still valid in this case.