This manual describes FL (Frame Layout), a class library for managing sophisticated window layout, with panes that can be moved around the main window and customized. FL handles many decoration and dragging issues, giving applications the kind of docking facilities that Visual C++ and Netscape Navigator possess.
FL was written by Aleksandras Gluchovas, and is heavily used in wxWorkshop which he also wrote the bulk of.
Please note that this guide is in its infancy, and contributions from FL users are very welcome.
The following screenshot (from fl_demo1) shows a frame with a number of bars that can be dragged around. The vertical grippers with two lines allow a bar to be dragged in that row, changing the ordering of the bar if necessary. The dotted grippers (as in Netscape Navigator) allow a whole row to be moved, again changing the position of the row if required. While moving a bar or row, immediate feedback is given as the moving bar displaces other bars.
Other features: the splitter bar shows a dotted thick line as it's dragged. Single-clicking on a row handle minimizes it to a horizontal tab which is given its own narrow row. This allows the user to temporarily hide a row while allowing quick access to it when required.
A close button (x) hides a bar completely. You can get it back again by right-clicking and selecting the appropriate menu item.
A left, right, up or down arrow button expands the pane in that direction.