Professional User Interface Suite, Copyright FOSS Software Inc. Help Published with Permission.

There are several terms that may have different meanings to different people. Brief descriptions of some important terms are given below.

Frame window

An overlapped/popup window with one child window in the center area and a set of child windows (control bars) that can be fixed to its borders.

Docking site

A popup frame window that contains a set of control bars in its either docked or floating state.

Floating container (floating palette, floating frame, mini frame)

A special kind of the frame window that encloses only one child docking bar window with the AFX_IDW_DOCKBAR_FLOAT dialog control identifier. The docking bar window encloses one or more control bars. Floating containers are created and destroyed automatically with the control bar's drag-and-drop algorithm.

Control bar

The generalized MFC implementation of the window that can be either fixed to any of the borders of its parent frame window or floated in the floating container.

Fixed-size control bar

A fixed-size control bar (e.g. toolbars or menu bars). The size of the fixed bar in its docked state could not be changed by dragging its borders.

Resizable control bar *

A control bar that can be resized by dragging its borders and docked in the dynamic control bar containers.

Docking bar

A kind of an MFC control bar which is used as a parent window for all the control bars with the re-docking feature turned on (CControlBar::EnableDocking() is used for this). Basically MFC provides two types of docking bars, which are implemented as the internal class (CDockBar): floating bar (with the dialog control identifier set to AFX_IDW_DOCKBAR_FLOAT) and docking bar fixed to the sides of the docking site (with the dialog control identifiers set to AFX_IDW_DOCKBAR_LEFT, AFX_IDW_DOCKBAR_RIGHT, AFX_IDW_DOCKBAR_TOP, or AFX_IDW_DOCKBAR_BOTTOM). MFC supports only four docking bars for one docking site at the time (these bars are marked with red in the below). In Prof-UIS these bars are called "circle 0" or "outer docking bar circle". Both fixed and resizable bars can be docked into "circle 0", but the drag-and-drop algorithm for resizable bars docks them only into the Prof-UIS-specific inner docking bar "circles" with numbers starting from 1. In the figure below, "circle 1" is marked with blue, "circle 2" - with green. Inner circles are created and destroyed dynamically with the drag-and-drop algorithm for the resizable bar. These inner circles "allow" resizable bars to be docked to each other in a nested way. The fixed-size control bars could be docked only into "circle 0" marked with red.


Docking site's client area

The area that is free of any bars. It is marked with yellow in the figure and used by MDI client windows in MDI applications and the view window in SDI applications.

Dynamic control bar container *

A special kind of the resizable control bar, which is created dynamically and used for docking other resizable bars to horizontal rows inside vertical rows and vice versa. The dynamic control bar container like any resizable control bar can take up part of the docking site or part of the floating container.

Status bar

The MFC implementation of the status line. The status bar cannot be re-docked by dragging any its area. It takes up part of the docking site under the lowest docking bar (i.e. under the red "circle 0").

* Prof-UIS - specific term