]> git.saurik.com Git - wxWidgets.git/commitdiff
Tidied/commented FL header files, regenerated docs and filled out Category section.
authorJulian Smart <julian@anthemion.co.uk>
Mon, 21 Jan 2002 22:34:42 +0000 (22:34 +0000)
committerJulian Smart <julian@anthemion.co.uk>
Mon, 21 Jan 2002 22:34:42 +0000 (22:34 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

108 files changed:
contrib/docs/latex/fl/baglayout.tex
contrib/docs/latex/fl/bariterator.tex
contrib/docs/latex/fl/category.tex
contrib/docs/latex/fl/cbantiflickerplugin.tex
contrib/docs/latex/fl/cbbardimhandlerbase.tex
contrib/docs/latex/fl/cbbardragplugin.tex
contrib/docs/latex/fl/cbbarhintsplugin.tex
contrib/docs/latex/fl/cbbarinfo.tex
contrib/docs/latex/fl/cbbarshapedata.tex
contrib/docs/latex/fl/cbbarspy.tex
contrib/docs/latex/fl/cbclosebox.tex
contrib/docs/latex/fl/cbcollapsebox.tex
contrib/docs/latex/fl/cbcommonpaneproperties.tex
contrib/docs/latex/fl/cbcustomizebarevent.tex
contrib/docs/latex/fl/cbcustomizelayoutevent.tex
contrib/docs/latex/fl/cbdiminfo.tex
contrib/docs/latex/fl/cbdockbox.tex
contrib/docs/latex/fl/cbdockpane.tex
contrib/docs/latex/fl/cbdrawbardecorevent.tex
contrib/docs/latex/fl/cbdrawbarhandlesevent.tex
contrib/docs/latex/fl/cbdrawhintrectevent.tex
contrib/docs/latex/fl/cbdrawpanebkgroundevent.tex
contrib/docs/latex/fl/cbdrawpanedecorevent.tex
contrib/docs/latex/fl/cbdrawrowbkgroundevent.tex
contrib/docs/latex/fl/cbdrawrowdecorevent.tex
contrib/docs/latex/fl/cbdrawrowhandlesevent.tex
contrib/docs/latex/fl/cbdyntoolbardimhandler.tex
contrib/docs/latex/fl/cbfinishdrawinareaevent.tex
contrib/docs/latex/fl/cbfloatedbarwindow.tex
contrib/docs/latex/fl/cbgcupdatesmgr.tex
contrib/docs/latex/fl/cbhiddenbarinfo.tex
contrib/docs/latex/fl/cbhintanimationplugin.tex
contrib/docs/latex/fl/cbhintanimtimer.tex
contrib/docs/latex/fl/cbinsertbarevent.tex
contrib/docs/latex/fl/cblayoutrowevent.tex
contrib/docs/latex/fl/cblayoutrowsevent.tex
contrib/docs/latex/fl/cbleftdclickevent.tex
contrib/docs/latex/fl/cbleftdownevent.tex
contrib/docs/latex/fl/cbleftupevent.tex
contrib/docs/latex/fl/cbminibutton.tex
contrib/docs/latex/fl/cbmotionevent.tex
contrib/docs/latex/fl/cbpanedrawplugin.tex
contrib/docs/latex/fl/cbpluginbase.tex
contrib/docs/latex/fl/cbpluginevent.tex
contrib/docs/latex/fl/cbremovebarevent.tex
contrib/docs/latex/fl/cbresizebarevent.tex
contrib/docs/latex/fl/cbresizerowevent.tex
contrib/docs/latex/fl/cbrightdownevent.tex
contrib/docs/latex/fl/cbrightupevent.tex
contrib/docs/latex/fl/cbrowdragplugin.tex
contrib/docs/latex/fl/cbrowinfo.tex
contrib/docs/latex/fl/cbrowlayoutplugin.tex
contrib/docs/latex/fl/cbsimplecustomizationplugin.tex
contrib/docs/latex/fl/cbsimpleupdatesmgr.tex
contrib/docs/latex/fl/cbsizebarwndevent.tex
contrib/docs/latex/fl/cbstartbardraggingevent.tex
contrib/docs/latex/fl/cbstartdrawinareaevent.tex
contrib/docs/latex/fl/cbupdatemgrdata.tex
contrib/docs/latex/fl/cbupdatesmanagerbase.tex
contrib/docs/latex/fl/classes.tex
contrib/docs/latex/fl/dynamictoolbar.tex
contrib/docs/latex/fl/dyntoolinfo.tex
contrib/docs/latex/fl/framelayout.tex
contrib/docs/latex/fl/garbagecollector.tex
contrib/docs/latex/fl/gcitem.tex
contrib/docs/latex/fl/layoutmanagerbase.tex
contrib/docs/latex/fl/makefile.vc
contrib/docs/latex/fl/morphinfot.tex
contrib/docs/latex/fl/newbitmapbutton.tex
contrib/docs/latex/fl/toollayoutitem.tex
contrib/docs/latex/fl/toolwindow.tex
contrib/include/wx/fl/antiflickpl.h
contrib/include/wx/fl/bardragpl.h
contrib/include/wx/fl/barhintspl.h
contrib/include/wx/fl/cbcustom.h
contrib/include/wx/fl/controlbar.h
contrib/include/wx/fl/dynbarhnd.h
contrib/include/wx/fl/dyntbar.h
contrib/include/wx/fl/dyntbarhnd.h
contrib/include/wx/fl/frmview.h
contrib/include/wx/fl/garbagec.h
contrib/include/wx/fl/gcupdatesmgr.h
contrib/include/wx/fl/hintanimpl.h
contrib/include/wx/fl/newbmpbtn.h
contrib/include/wx/fl/panedrawpl.h
contrib/include/wx/fl/rowdragpl.h
contrib/include/wx/fl/rowlayoutpl.h
contrib/include/wx/fl/toolwnd.h
contrib/include/wx/fl/updatesmgr.h
contrib/src/fl/antiflickpl.cpp
contrib/src/fl/bardragpl.cpp
contrib/src/fl/barhintspl.cpp
contrib/src/fl/cbcustom.cpp
contrib/src/fl/controlbar.cpp
contrib/src/fl/dyntbar.cpp
contrib/src/fl/dyntbarhnd.cpp
contrib/src/fl/files.lst
contrib/src/fl/flVC.dsp
contrib/src/fl/frmview.cpp
contrib/src/fl/garbagec.cpp
contrib/src/fl/gcupdatesmgr.cpp
contrib/src/fl/hintanimpl.cpp
contrib/src/fl/newbmpbtn.cpp
contrib/src/fl/panedrawpl.cpp
contrib/src/fl/rowdragpl.cpp
contrib/src/fl/rowlayoutpl.cpp
contrib/src/fl/toolwnd.cpp
contrib/src/fl/updatesmgr.cpp

index aabed77ce115ad6a30b8d85bf341a982a891f819..0e7224b185826f2b39bdadac4a2a8ca06b34bff2 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbar.h at 05/Jan/02 22:50:56
+% dyntbar.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{BagLayout}}\label{baglayout}
 
 
-layouts items in left-to-right order from
-top towards bottom
+BagLayout lays out items in left-to-right order from
+top to bottom.
 
 \wxheading{Derived from}
 
 \helpref{LayoutManagerBase}{layoutmanagerbase}
 
+\wxheading{Include files}
+
+<dyntbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -23,3 +27,5 @@ top towards bottom
 
 \func{void}{Layout}{\param{const wxSize\& }{parentDim}, \param{wxSize\& }{resultingDim}, \param{wxLayoutItemArrayT\& }{items}, \param{int }{horizGap}, \param{int }{vertGap}}
 
+Constructor.
+
index 2b919c5138281d8e48ab8892381c9214e9f6a8f0..3dca28c9f92333833ccf030df4e233396c852088 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{wxBarIterator}}\label{wxbariterator}
 
 
-used for traversing through all bars of all rows in the pane
+Used for traversing through all bars of all rows in the pane.
 
 \wxheading{Derived from}
 
 No base class
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,27 +26,33 @@ No base class
 
 \func{}{wxBarIterator}{\param{RowArrayT\& }{rows}}
 
+Constructor, taking row array.
+
 
 \membersection{wxBarIterator::BarInfo}\label{wxbariteratorbarinfo}
 
 \func{cbBarInfo\&}{BarInfo}{\void}
 
+Gets the current bar information.
+
 
 \membersection{wxBarIterator::Next}\label{wxbariteratornext}
 
 \func{bool}{Next}{\void}
 
-TRUE, if next bar is available
+Advances the iterator and returns TRUE if a bar is available.
 
 
 \membersection{wxBarIterator::Reset}\label{wxbariteratorreset}
 
 \func{void}{Reset}{\void}
 
+Resets the iterator to the start of the first row.
+
 
 \membersection{wxBarIterator::RowInfo}\label{wxbariteratorrowinfo}
 
 \func{cbRowInfo\&}{RowInfo}{\void}
 
-returns reference to currently traversed row
+Returns a reference to the currently traversed row.
 
index 55d1c86a97a85cd6a8a01d88ea1e652c40c76a56..9a0e8ae0a58b90a3dfefd0e2da9bd6f054d99a99 100644 (file)
@@ -3,28 +3,89 @@
 \setfooter{\thepage}{}{}{}{}{\thepage}%
 
 A classification of FL classes by category.
-\twocolwidtha{5cm}
 
-\begin{comment}
-{\large {\bf Service classes}}
+{\large {\bf Plugin classes}}
 
-\overview{wxMPService class overview}{wxmpserviceoverview}
+Plugins can be added to frame layouts to extend behaviour.
 
-Service classes reduce the diversity of PMF classes, by making
-them comply to a common interface. A service class serves as an interface (or
-mix-in class in C++ terms), which cannot itself represent an
-independent object. It should be inherited as a second (or
-third) base class.
+\twocolwidtha{6cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\helpref{cbAntiflickerPlugin}{cbantiflickerplugin}}{Double-buffering class}
+\twocolitem{\helpref{cbBarDragPlugin}{cbbardragplugin}}{Implements drag behaviour.}
+\twocolitem{\helpref{cbBarHintsPlugin}{cbbarhintsplugin}}{Implements bar decoration and sizing behaviour.}
+\twocolitem{\helpref{cbHintAnimationPlugin}{cbhintanimationplugin}}{Draws animated hints when the user drags a pane.}
+\twocolitem{\helpref{cbPaneDrawPlugin}{cbpanedrawplugin}}{Implements most of MFC-style control bar implementation.}
+\twocolitem{\helpref{cbPluginBase}{cbpluginbase}}{Abstract base class for all control-bar related plugins.}
+\twocolitem{\helpref{cbRowDragPlugin}{cbrowdragplugin}}{Implements row-dragging functionality.}
+\twocolitem{\helpref{cbRowLayoutPlugin}{cbrowlayoutplugin}}{Implements row layout functionality.}
+\twocolitem{\helpref{cbSimpleCustomizationPlugin}{cbsimplecustomizationplugin}}{Enables customization of a bar.}
+\twocolitem{\helpref{cbBarSpy}{cbbarspy}}{Helper class used for spying for unhandled mouse events on control bars and forwarding them to the frame layout.}
+\end{twocollist}
+
+{\large {\bf Window classes}}
+
+Windows classes (note that the mini-button implementations are not true windows
+in that they do not derive from wxWindow).
+
+\twocolwidtha{6cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\helpref{wxToolWindow}{wxtoolwindow}}{A small frame that paints its own titlebar.}
+\twocolitem{\helpref{cbFloatedBarWindow}{cbfloatedbarwindow}}{A kind of wxToolWindow implementing floating windows.}
+\twocolitem{\helpref{cbMiniButton}{cbminibutton}}{Base class for wxToolWindow titlebar buttons.}
+\twocolitem{\helpref{cbCloseBox}{cbclosebox}}{Close button for wxToolWindow titlebar.}
+\twocolitem{\helpref{cbCollapseBox}{cbcollapsebox}}{Collapse button for wxToolWindow titlebar.}
+\twocolitem{\helpref{cbDockBox}{cbdockbox}}{Dock button for wxToolWindow titlebar.}
+\twocolitem{\helpref{cbCloseBox}{cbclosebox}}{Close button for wxToolWindow titlebar.}
+\twocolitem{\helpref{wxNewBitmapButton}{wxnewbitmapbutton}}{Alternative bitmap button class.}
+\end{twocollist}
+
+{\large {\bf Layout management classes}}
+
+These classes relate to the layout management framework.
+
+\twocolwidtha{6cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\helpref{cbDockPane}{cbdockpane}}{Manages containment and control of bars in a prent frame.}
+\twocolitem{\helpref{BagLayout}{baglayout}}{BagLayout lays out items in left-to-right order from top to bottom.}
+\twocolitem{\helpref{cbUpdatesManagerBase}{cbupdatesmanagerbase}}{An abstract interface for display update optimization logic.}
+\twocolitem{\helpref{cbSimpleUpdatesMgr}{cbsimpleupdatesmgr}}{Implements optimized logic for refreshing areas of frame layout that need to be updated.}
+\twocolitem{\helpref{cbGCUpdatesMgr}{cbgcupdatesmgr}}{Implements optimized logic for refresh, based on a garbage collection algorithm.}
+\twocolitem{\helpref{GarbageCollector}{garbagecollector}}{A garbage collection algorithm for use in display refresh optimization.}
+\twocolitem{\helpref{wxFrameLayout}{wxframelayout}}{Manages containment and docking of control bars, which can be docked along the top, bottom, right, or left side of the parent frame.}
+\end{twocollist}
+
+{\large {\bf Event classes}}
 
-Derived services classes all derive from wxEvtHandler as well as
-wxPMService.
+Events are used to decouple parts of the layout framework.
 
+\twocolwidtha{6cm}
 \begin{twocollist}\itemsep=0pt
-\twocolitem{\helpref{wxPMService}{wxpmservice}}{Base class}
-\twocolitem{\helpref{wxPMBootstrapService}{wxpmbootstrapservice}}{Boot strap service}
-\twocolitem{\helpref{wxPMLAlgorithm}{wxpmlalgorithm}}{Layout algorithm service}
-\twocolitem{\helpref{wxPMSashLayoutAlgorithm}{wxpmsashlayoutalgorithm}}{Sash layout algorithm service}
-\twocolitem{\helpref{wxPMPane}{wxpmpane}}{Base class for panes lying outside the MDI client area}
+\twocolitem{\helpref{cbCustomizeBarEvent}{cbcustomizebarevent}}{Class for bar customization events.}
+\twocolitem{\helpref{cbCustomizeLayoutEvent}{cbcustomizelayoutevent}}{Class for layout customization events.}
+\twocolitem{\helpref{cbDrawBarDecorEvent}{cbdrawbardecorevent}}{Class for bar decoration drawing events.}
+\twocolitem{\helpref{cbDrawBarHandlesEvent}{cbdrawbarhandlesevent}}{Class for bar handles drawing events.}
+\twocolitem{\helpref{cbDrawHintRectEvent}{cbdrawhintrectevent}}{Class for hint-rectangle drawing events.}
+\twocolitem{\helpref{cbDrawPaneBkGroundEvent}{cbdrawpanebkgroundevent}}{Class for pane background drawing events.}
+\twocolitem{\helpref{cbDrawPaneDecorEvent}{cbdrawpanedecorevent}}{Class for pane decoration drawing events.}
+\twocolitem{\helpref{cbDrawRowBkGroundEvent}{cbdrawrowbkgroundevent}}{Class for row background drawing events.}
+\twocolitem{\helpref{cbDrawRowDecorEvent}{cbdrawrowdecorevent}}{Class for row decoration drawing events.}
+\twocolitem{\helpref{cbDrawRowHandlesEvent}{cbdrawrowhandlesevent}}{Class for row handles drawing events.}
+\twocolitem{\helpref{cbFinishDrawInAreaEvent}{cbfinishdrawinareaevent}}{Class for finish drawing in area events.}
+\twocolitem{\helpref{cbInsertBarEvent}{cbinsertbarevent}}{Class for bar insertion events.}
+\twocolitem{\helpref{cbLayoutRowEvent}{cblayoutrowevent}}{Class for single row layout events.}
+\twocolitem{\helpref{cbLayoutRowsEvent}{cblayoutrowsevent}}{Class for multiple rows layout events.}
+\twocolitem{\helpref{cbLeftDClickEvent}{cbleftdclickevent}}{Class for mouse left double click events.}
+\twocolitem{\helpref{cbLeftDownEvent}{cbleftdownevent}}{Class for mouse left down events.}
+\twocolitem{\helpref{cbLeftUpEvent}{cbleftupevent}}{Class for mouse left up events.}
+\twocolitem{\helpref{cbMotionEvent}{cbmotionevent}}{Class for mouse motion events.}
+\twocolitem{\helpref{cbPluginEvent}{cbpluginevent}}{Base class for all control-bar plugin events.}
+\twocolitem{\helpref{cbRemoveBarEvent}{cbremovebarevent}}{Class for bar removal events.}
+\twocolitem{\helpref{cbResizeBarEvent}{cbresizebarevent}}{Class for bar resize events.}
+\twocolitem{\helpref{cbResizeRowEvent}{cbresizerowevent}}{Class for row resize events.}
+\twocolitem{\helpref{cbRightDownEvent}{cbrightdownevent}}{Class for mouse right down events.}
+\twocolitem{\helpref{cbRightUpEvent}{cbrightupevent}}{Class for mouse right up events.}
+\twocolitem{\helpref{cbSizeBarWndEvent}{cbsizebarwndevent}}{Class for bar window resize events.}
+\twocolitem{\helpref{cbStartBarDraggingEvent}{cbstartbardraggingevent}}{Class for start-bar-dragging events.}
+\twocolitem{\helpref{cbStartDrawInAreaEvent}{cbstartdrawinareaevent}}{Class for start drawing in area events.}
 \end{twocollist}
-\end{comment}
 
index 95cf62629fe799af4babae323be25a77861ded1c..01217e839e41c346bb80a1150014c153a8bd144a 100644 (file)
@@ -1,15 +1,26 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% antiflickpl.h at 05/Jan/02 22:50:56
+% antiflickpl.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbAntiflickerPlugin}}\label{cbantiflickerplugin}
 
+
+Implements double-buffering to reduce flicker.
+Bitmap and memory DC buffers are shared 'resources' among all instances of
+antiflicker plugins within the application.
+
+Locking for multithreaded applications is not yet implemented.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<antiflickpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbAntiflickerPlugin}{\void}
 
+Default constructor.
+
 
 \func{}{cbAntiflickerPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor taking frame layout panel, and pane mask.
+
 
 \membersection{cbAntiflickerPlugin::\destruct{cbAntiflickerPlugin}}\label{cbantiflickerplugindtor}
 
 \func{}{\destruct{cbAntiflickerPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbAntiflickerPlugin::AllocNewBuffer}\label{cbantiflickerpluginallocnewbuffer}
 
 \func{wxDC*}{AllocNewBuffer}{\param{const wxRect\& }{forArea}}
 
+Allocates a suitable buffer.
+
 
 \membersection{cbAntiflickerPlugin::FindSuitableBuffer}\label{cbantiflickerpluginfindsuitablebuffer}
 
 \func{wxDC*}{FindSuitableBuffer}{\param{const wxRect\& }{forArea}}
 
-returns NULL, if sutable buffer is not present
+Finds a suitable buffer. Returns NULL if a suitable buffer is not present.
 
 
 \membersection{cbAntiflickerPlugin::GetClientDC}\label{cbantiflickerplugingetclientdc}
 
 \func{wxDC\&}{GetClientDC}{\void}
 
+Gets the client device context.
+
 
 \membersection{cbAntiflickerPlugin::GetWindowDC}\label{cbantiflickerplugingetwindowdc}
 
 \func{wxDC\&}{GetWindowDC}{\void}
 
+Gets the window device context.
+
 
 \membersection{cbAntiflickerPlugin::OnFinishDrawInArea}\label{cbantiflickerpluginonfinishdrawinarea}
 
 \func{void}{OnFinishDrawInArea}{\param{cbFinishDrawInAreaEvent\& }{event}}
 
+Handler for plugin event.
+
 
 \membersection{cbAntiflickerPlugin::OnStartDrawInArea}\label{cbantiflickerpluginonstartdrawinarea}
 
 \func{void}{OnStartDrawInArea}{\param{cbStartDrawInAreaEvent\& }{event}}
 
-handlers for plugin events
+Handler for plugin event.
 
index 7b8522a498ee544944b77676a8adec01f073dd92..b66e9d154b59611877b1efe9e5201d944bf89133 100644 (file)
@@ -1,6 +1,6 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:58
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
@@ -8,15 +8,19 @@
 
 
 Abstract interface for bar-size handler classes.
-   These objects receive notifications, whenever the docking
-   state of the bar is changed, thus they have a possibility
-   to adjust the values in cbDimInfo::mSizes accordingly.
-   Specific handlers can be hooked to specific types of bars.
+These objects receive notifications whenever the docking
+state of the bar is changed, thus they provide the possibility
+to adjust the values in cbDimInfo::mSizes accordingly.
+Specific handlers can be hooked up to specific types of bar.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -28,28 +32,35 @@ Abstract interface for bar-size handler classes.
 
 to multiple bars, it's instance is
 reference-counted
-initial reference count is 0, since handler is not used, until the
-first invocation of AddRef()
+Default constructor. The initial reference count is 0, since
+the handler is not used until the first invocation of AddRef().
 
 
 \membersection{cbBarDimHandlerBase::AddRef}\label{cbbardimhandlerbaseaddref}
 
 \func{void}{AddRef}{\void}
 
+Increments the reference count.
+
 
 \membersection{cbBarDimHandlerBase::OnChangeBarState}\label{cbbardimhandlerbaseonchangebarstate}
 
 \func{void}{OnChangeBarState}{\param{cbBarInfo* }{pBar}, \param{int }{newState}}
 
-"bar-state-changes" notification
+Responds to "bar-state-changes" notifications.
 
 
 \membersection{cbBarDimHandlerBase::OnResizeBar}\label{cbbardimhandlerbaseonresizebar}
 
 \func{void}{OnResizeBar}{\param{cbBarInfo* }{pBar}, \param{const wxSize\& }{given}, \param{wxSize\& }{preferred}}
 
+Responds to bar resize notifications.
+
 
 \membersection{cbBarDimHandlerBase::RemoveRef}\label{cbbardimhandlerbaseremoveref}
 
 \func{void}{RemoveRef}{\void}
 
+Decrements the reference count, and if the count is at zero,
+delete 'this'.
+
index 946769121eb89fe629a6b255b51a48a1b8b3905c..46863514f0d007c9edcb466f37d792ad15ba60e0 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% bardragpl.h at 05/Jan/02 22:50:56
+% bardragpl.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbBarDragPlugin}}\label{cbbardragplugin}
 
+
+Plugin class implementing bar dragging.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<bardragpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbBarDragPlugin}{\void}
 
+Default constructor.
+
 
 \func{}{cbBarDragPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor taking a parent frame, and flag. See cbPluginBase.
+
 
 \membersection{cbBarDragPlugin::\destruct{cbBarDragPlugin}}\label{cbbardragplugindtor}
 
 \func{}{\destruct{cbBarDragPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbBarDragPlugin::AdjustHintRect}\label{cbbardragpluginadjusthintrect}
 
 
 the thicker rectangle is drawn using hatched brush,
 the default border width for this rectangle is 8 pix.
+Internal implementation function.
 
 
 \membersection{cbBarDragPlugin::CalcOnScreenDims}\label{cbbardragplugincalconscreendims}
 
 \func{void}{CalcOnScreenDims}{\param{wxRect\& }{rect}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::ClipPosInFrame}\label{cbbardragpluginclipposinframe}
 
 \func{void}{ClipPosInFrame}{\param{wxPoint\& }{pos}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::ClipRectInFrame}\label{cbbardragplugincliprectinframe}
 
 \func{void}{ClipRectInFrame}{\param{wxRect\& }{rect}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::DoDrawHintRect}\label{cbbardragplugindodrawhintrect}
 
 \func{void}{DoDrawHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal implementation function.
+Draw the hint rectangle.
+
 
 \membersection{cbBarDragPlugin::DrawHintRect}\label{cbbardragplugindrawhintrect}
 
 \func{void}{DrawHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal implementation function.
+Draw the visual hint while dragging.
+
 
 \membersection{cbBarDragPlugin::EraseHintRect}\label{cbbardragpluginerasehintrect}
 
 \func{void}{EraseHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal implementation function.
+Erase the visual hint while dragging.
+
 
 \membersection{cbBarDragPlugin::FinishTracking}\label{cbbardragpluginfinishtracking}
 
 \func{void}{FinishTracking}{\void}
 
+Internal implementation function.
+Stop showing the visual hint while dragging.
+
 
 \membersection{cbBarDragPlugin::GetBarHeightInPane}\label{cbbardragplugingetbarheightinpane}
 
 \func{int}{GetBarHeightInPane}{\param{cbDockPane* }{pPane}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::GetBarWidthInPane}\label{cbbardragplugingetbarwidthinpane}
 
 \func{int}{GetBarWidthInPane}{\param{cbDockPane* }{pPane}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::GetDistanceToPane}\label{cbbardragplugingetdistancetopane}
 
 \func{int}{GetDistanceToPane}{\param{cbDockPane* }{pPane}, \param{wxPoint\& }{mousePos}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::HitTestPanes}\label{cbbardragpluginhittestpanes}
 
 \func{cbDockPane*}{HitTestPanes}{\param{wxRect\& }{rect}}
 
+Internal implementation function. Finds the pane
+under the specified rectangle.
+
 
 \func{cbDockPane*}{HitTestPanes}{\param{wxPoint\& }{pos}}
 
+Internal implementation function. Finds the pane
+under the specified point.
+
 
 \membersection{cbBarDragPlugin::HitsPane}\label{cbbardragpluginhitspane}
 
 \func{bool}{HitsPane}{\param{cbDockPane* }{pPane}, \param{wxRect\& }{rect}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::IsInClientArea}\label{cbbardragpluginisinclientarea}
 
 \func{bool}{IsInClientArea}{\param{wxPoint\& }{mousePos}}
 
+Internal implementation function.
+
 
 \func{bool}{IsInClientArea}{\param{wxRect\& }{rect}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::IsInOtherPane}\label{cbbardragpluginisinotherpane}
 
 \func{bool}{IsInOtherPane}{\param{wxPoint\& }{mousePos}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::OnDrawHintRect}\label{cbbardragpluginondrawhintrect}
 
 \func{void}{OnDrawHintRect}{\param{cbDrawHintRectEvent\& }{event}}
 
-handles event, which oriniates from itself
+Handles event, which originates from itself.
 
 
 \membersection{cbBarDragPlugin::OnLButtonDown}\label{cbbardragpluginonlbuttondown}
 
 \func{void}{OnLButtonDown}{\param{cbLeftDownEvent\& }{event}}
 
+Handler for plugin event.
+
 
 \membersection{cbBarDragPlugin::OnLButtonUp}\label{cbbardragpluginonlbuttonup}
 
 \func{void}{OnLButtonUp}{\param{cbLeftUpEvent\& }{event}}
 
+Handler for plugin event.
+
 
 \membersection{cbBarDragPlugin::OnLDblClick}\label{cbbardragpluginonldblclick}
 
 \func{void}{OnLDblClick}{\param{cbLeftDClickEvent\& }{event}}
 
+Handler for plugin event.
+
 
 \membersection{cbBarDragPlugin::OnMouseMove}\label{cbbardragpluginonmousemove}
 
 \func{void}{OnMouseMove}{\param{cbMotionEvent\& }{event}}
 
-handlers for plugin events
+Handler for plugin event.
 
 
 \membersection{cbBarDragPlugin::OnStartBarDragging}\label{cbbardragpluginonstartbardragging}
 
 \func{void}{OnStartBarDragging}{\param{cbStartBarDraggingEvent\& }{event}}
 
+Handler for plugin event.
+
 
 \membersection{cbBarDragPlugin::RectToScr}\label{cbbardragpluginrecttoscr}
 
 \func{void}{RectToScr}{\param{wxRect\& }{frameRect}, \param{wxRect\& }{scrRect}}
 
+Internal implementation function.
+Converts the given rectangle from window to screen coordinates.
+
 
 \membersection{cbBarDragPlugin::ShowHint}\label{cbbardragpluginshowhint}
 
 \func{void}{ShowHint}{\param{bool }{prevWasInClient}}
 
+Internal implementation function.
+Show the hint; called within OnMouseMove.
+
 
 \membersection{cbBarDragPlugin::StartTracking}\label{cbbardragpluginstarttracking}
 
 \func{void}{StartTracking}{\void}
 
 on-screen hint-tracking related methods
+Internal implementation function.
+Start showing a visual hint while dragging.
 
 
 \membersection{cbBarDragPlugin::StickToPane}\label{cbbardragpluginsticktopane}
 
 \func{void}{StickToPane}{\param{cbDockPane* }{pPane}, \param{wxPoint\& }{mousePos}}
 
+Internal implementation function.
+
 
 \membersection{cbBarDragPlugin::UnstickFromPane}\label{cbbardragpluginunstickfrompane}
 
 \func{void}{UnstickFromPane}{\param{cbDockPane* }{pPane}, \param{wxPoint\& }{mousePos}}
 
+Internal implementation function.
+
index 40177916c6fecf12d832b3c40417b3a7287c73a9..ab34fa295b73c5a0a26cbdfa07b339a5f7d3bba9 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% barhintspl.h at 05/Jan/02 22:50:56
+% barhintspl.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{cbBarHintsPlugin}}\label{cbbarhintsplugin}
 
 
-Intercepts bar-decoration and sizing events, draws 3d-hints
-   around fixed and flexible bars, similar to those in Microsoft DevStudio 6.x
+This class intercepts bar-decoration and sizing events, and draws 3D hints
+around fixed and flexible bars, similar to those in Microsoft DevStudio 6.x
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<barhintspl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -23,95 +27,129 @@ Intercepts bar-decoration and sizing events, draws 3d-hints
 
 \func{}{cbBarHintsPlugin}{\void}
 
+Default constructor.
+
 
 \func{}{cbBarHintsPlugin}{\param{wxFrameLayout* }{pLayout}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor, taking parent frame and pane mask flag.
+
 
 \membersection{cbBarHintsPlugin::\destruct{cbBarHintsPlugin}}\label{cbbarhintsplugindtor}
 
 \func{}{\destruct{cbBarHintsPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbBarHintsPlugin::CreateBoxes}\label{cbbarhintsplugincreateboxes}
 
 \func{void}{CreateBoxes}{\void}
 
+Helper function: creates close and collapse boxes.
+
 
 \membersection{cbBarHintsPlugin::DoDrawHint}\label{cbbarhintsplugindodrawhint}
 
 \func{void}{DoDrawHint}{\param{wxDC\& }{dc}, \param{wxRect\& }{rect}, \param{int }{pos}, \param{int }{boxOfs}, \param{int }{grooveOfs}, \param{bool }{isFixed}}
 
+Helper function: draws a hint.
+
 
 \membersection{cbBarHintsPlugin::Draw3DBox}\label{cbbarhintsplugindraw3dbox}
 
 \func{void}{Draw3DBox}{\param{wxDC\& }{dc}, \param{const wxPoint\& }{pos}, \param{bool }{pressed}}
 
-drawing helpers
+Helper function: draws a 3D box.
 
 
 \membersection{cbBarHintsPlugin::DrawCloseBox}\label{cbbarhintsplugindrawclosebox}
 
 \func{void}{DrawCloseBox}{\param{wxDC\& }{dc}, \param{const wxPoint\& }{pos}, \param{bool }{pressed}}
 
+Helper function: draws a close box.
+
 
 \membersection{cbBarHintsPlugin::DrawCollapseBox}\label{cbbarhintsplugindrawcollapsebox}
 
 \func{void}{DrawCollapseBox}{\param{wxDC\& }{dc}, \param{const wxPoint\& }{pos}, \param{bool }{atLeft}, \param{bool }{disabled}, \param{bool }{pressed}}
 
+Helper function: draws a collapse box.
+
 
 \membersection{cbBarHintsPlugin::DrawGrooves}\label{cbbarhintsplugindrawgrooves}
 
 \func{void}{DrawGrooves}{\param{wxDC\& }{dc}, \param{const wxPoint\& }{pos}, \param{int }{length}}
 
+Helper function: draws grooves.
+
 
 \membersection{cbBarHintsPlugin::ExcludeHints}\label{cbbarhintspluginexcludehints}
 
 \func{void}{ExcludeHints}{\param{wxRect\& }{rect}, \param{cbBarInfo\& }{info}}
 
+Helper function.
+
 
 \membersection{cbBarHintsPlugin::GetHintsLayout}\label{cbbarhintsplugingethintslayout}
 
 \func{void}{GetHintsLayout}{\param{wxRect\& }{rect}, \param{cbBarInfo\& }{info}, \param{int\& }{boxOfs}, \param{int\& }{grooveOfs}, \param{int\& }{pos}}
 
+Helper function: gets the layout of a hint.
+
 
 \membersection{cbBarHintsPlugin::HitTestHints}\label{cbbarhintspluginhittesthints}
 
 \func{int}{HitTestHints}{\param{cbBarInfo\& }{info}, \param{const wxPoint\& }{pos}}
 
+Helper function: returns information about the hint under the given position.
+
 
 \membersection{cbBarHintsPlugin::OnDrawBarDecorations}\label{cbbarhintspluginondrawbardecorations}
 
 \func{void}{OnDrawBarDecorations}{\param{cbDrawBarDecorEvent\& }{event}}
 
+Handles a plugin event.
+
 
 \membersection{cbBarHintsPlugin::OnInitPlugin}\label{cbbarhintspluginoninitplugin}
 
 \func{void}{OnInitPlugin}{\void}
 
+Called to initialize this plugin.
+
 
 \membersection{cbBarHintsPlugin::OnLeftDown}\label{cbbarhintspluginonleftdown}
 
 \func{void}{OnLeftDown}{\param{cbLeftDownEvent\& }{event}}
 
+Handles a plugin event.
+
 
 \membersection{cbBarHintsPlugin::OnLeftUp}\label{cbbarhintspluginonleftup}
 
 \func{void}{OnLeftUp}{\param{cbLeftUpEvent\& }{event}}
 
+Handles a plugin event.
+
 
 \membersection{cbBarHintsPlugin::OnMotion}\label{cbbarhintspluginonmotion}
 
 \func{void}{OnMotion}{\param{cbMotionEvent\& }{event}}
 
+Handles a plugin event.
+
 
 \membersection{cbBarHintsPlugin::OnSizeBarWindow}\label{cbbarhintspluginonsizebarwindow}
 
 \func{void}{OnSizeBarWindow}{\param{cbSizeBarWndEvent\& }{event}}
 
-handlers of plugin-events
+Handles a plugin event.
 
 
 \membersection{cbBarHintsPlugin::SetGrooveCount}\label{cbbarhintspluginsetgroovecount}
 
 \func{void}{SetGrooveCount}{\param{int }{nGrooves}}
 
+Set the number of grooves to be shown in the pane.
+
index a5e548a1fefa0b3b9406ef7bf5b6a3eb6f9ef4da..6632630b8c5aeba16835bc0dffdbde3dfc6063a7 100644 (file)
@@ -1,15 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbBarInfo}}\label{cbbarinfo}
 
+
+Helper class used internally by the wxFrameLayout class.
+Holds and manages bar information.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbBarInfo}{\void}
 
+Constructor.
+
 
 \membersection{cbBarInfo::\destruct{cbBarInfo}}\label{cbbarinfodtor}
 
 \func{}{\destruct{cbBarInfo}}{\void}
 
+Destructor.
+
 
 \membersection{cbBarInfo::IsExpanded}\label{cbbarinfoisexpanded}
 
 \constfunc{bool}{IsExpanded}{\void}
 
+Returns TRUE if this bar is expanded.
+
 
 \membersection{cbBarInfo::IsFixed}\label{cbbarinfoisfixed}
 
 \constfunc{bool}{IsFixed}{\void}
 
+Returns TRUE if this bar is fixed.
+
index fdf521eca5a320e3b71a88cfbee4819172549267..c498aadb9a4183c01d05da38ad24e7f9530be737 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbBarShapeData}}\label{cbbarshapedata}
 
 
-used for storing original bar's postions in the row, when the "non-destructive-friction"
-option is turned ON
+Used for storing the original bar's positions in the row, when the 'non-destructive-friction'
+option is turned on.
 
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
index ed132715cad783c7ef64840c73be14d5af99e361..03ad032dcd18d2a843a8864fc572d8e8f5e81bee 100644 (file)
@@ -1,24 +1,47 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:58
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
 \section{\class{cbBarSpy}}\label{cbbarspy}
 
 
-FIXME:: somehow in debug v. originall wxASSERT's are not compiled in...
-\#undef  wxASSERT
-\#define wxASSERT(x) if ( !(x) ) throw;
-helper class, used for spying for not-handled mouse events on control-bars
-and forwarding them to the frame layout
+Helper class, used for spying for unhandled mouse events on control bars
+and forwarding them to the frame layout.
 
 \wxheading{Derived from}
 
 \helpref{wxEvtHandler}{wxevthandler}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
+{\small \begin{verbatim}
+typedef cbBarInfo* BarInfoPtrT
+\end{verbatim}}
+forward declarations
+
+{\small \begin{verbatim}
+typedef cbRowInfo* RowInfoPtrT
+\end{verbatim}}
+enumeration of hittest results, see cbDockPane::HitTestPaneItems(..)
+\begin{verbatim}
+enum CB_HITTEST_RESULT
+{
+    CB_NO_ITEMS_HITTED,
+
+    CB_UPPER_ROW_HANDLE_HITTED,
+    CB_LOWER_ROW_HANDLE_HITTED,
+    CB_LEFT_BAR_HANDLE_HITTED,
+    CB_RIGHT_BAR_HANDLE_HITTED,
+    CB_BAR_CONTENT_HITTED
+}
+\end{verbatim}
+
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
@@ -26,18 +49,24 @@ and forwarding them to the frame layout
 
 \func{}{cbBarSpy}{\param{wxFrameLayout* }{pPanel}}
 
+Constructor, taking a parent pane.
+
 
 \func{}{cbBarSpy}{\void}
 
+Default constructor.
+
 
 \membersection{cbBarSpy::ProcessEvent}\label{cbbarspyprocessevent}
 
 \func{bool}{ProcessEvent}{\param{wxEvent\& }{event}}
 
-overriden
+Performs special event processing.
 
 
 \membersection{cbBarSpy::SetBarWindow}\label{cbbarspysetbarwindow}
 
 \func{void}{SetBarWindow}{\param{wxWindow* }{pWnd}}
 
+Sets the bar window.
+
index bc36103aa00a2d14d14a7b3eeca606d1d9cfe3f6..d0fdef5775521f2322254840db7cedd8d458fb5b 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbCloseBox}}\label{cbclosebox}
 
 
-classes specific to wxFrameLayout engine (FOR NOW in here...)
+cbCloseBox is a window close button, used in a wxToolWindow titlebar.
 
 \wxheading{Derived from}
 
 \helpref{cbMiniButton}{cbminibutton}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,3 +26,5 @@ classes specific to wxFrameLayout engine (FOR NOW in here...)
 
 \func{void}{Draw}{\param{wxDC\& }{dc}}
 
+Draws the close button appearance.
+
index 0399514724a8cb1ed5bdf7036d58014b327aa2ce..99b9e98ed99993a0b04cd4cb3c0cd64720abb528 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbCollapseBox}}\label{cbcollapsebox}
 
+
+cbCollapseBox is a window collapse button, used in a wxToolWindow titlebar.
+
 \wxheading{Derived from}
 
 \helpref{cbMiniButton}{cbminibutton}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{void}{Draw}{\param{wxDC\& }{dc}}
 
+Draws the collapse button appearance.
+
index 24e21473179896b7409f9c7a4a8f52251590210c..3a895bc4da154087699528c9c29672297bce5389 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbCommonPaneProperties}}\label{cbcommonpaneproperties}
 
 
-structure holds configuration options,
-   which are usually the same for all panes in
-   frame layout
+A structure holding configuration options,
+which are usually the same for all panes in
+a frame layout.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
index fd1dbea1b3b051c553f93d2bd9d4843a9f493caf..3020c231f16aac2d3894d6dd5ae4ec70361b273e 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbCustomizeBarEvent}}\label{cbcustomizebarevent}
 
+
+Class for bar customization events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbCustomizeBarEvent}{\param{cbBarInfo* }{pBar}, \param{const wxPoint\& }{clickPos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, mouse position, and pane.
+
index 1c13e53e640f89807bbf6ca8e431bb9ba1c720f5..33f717e1745a52a01e1f6556db140fcfa472488e 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbCustomizeLayoutEvent}}\label{cbcustomizelayoutevent}
 
+
+Class for layout customization events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbCustomizeLayoutEvent}{\param{const wxPoint\& }{clickPos}}
 
+Constructor, taking mouse position.
+
index 9cf4bb5c868591ed5b7eb9fa035ea5dc4dcbc699..4a7121499cc6e3b84dd47ce766026cc59a5528cf 100644 (file)
@@ -1,18 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
 \section{\class{cbDimInfo}}\label{cbdiminfo}
 
 
-helper classes (used internally by wxFrameLayout class) holds and manages information about bar dimensions
+Helper class used internally by the wxFrameLayout class.
+Holds and manages information about bar dimensions.
 
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,31 +27,54 @@ helper classes (used internally by wxFrameLayout class) holds and manages inform
 
 \func{}{cbDimInfo}{\param{cbBarDimHandlerBase* }{pDimHandler}, \param{bool }{isFixed}}
 
+Constructor.
+isFixed is TRUE if vertical/horizontal dimensions cannot be manually adjusted
+by the user using resizing handles. If FALSE, the frame-layout
+automatically places resizing handles among bars that do are not fixed.
+
 
 \func{}{cbDimInfo}{\param{int }{dh\_x}, \param{int }{dh\_y}, \param{int }{dv\_x}, \param{int }{dv\_y}, \param{int }{f\_x}, \param{int }{f\_y}, \param{bool }{isFixed = TRUE}, \param{int }{horizGap = 6}, \param{int }{vertGap = 6}, \param{cbBarDimHandlerBase* }{pDimHandler = NULL}}
 
-dims when docked horizontally
+Constructor taking dimenstion information.
+dh\_x, dh\_y are the dimensions when docked horizontally.
+dv\_x, dv\_y are the dimensions when docked vertically.
+f\_x, f\_y are the dimensions when floating.
+For information on isFixed, see comments above.
+horizGap is the left/right gap, separating decorations
+from the bar's actual wndow, filled with the frame's background colour.
+The dimension is given in the frame's coordinates.
+vertGap is the top/bottom gap, separating decorations
+from the bar's actual wndow, filled with the frame's background colour.
+The dimension is given in the frame's coordinates.
 
 
 \func{}{cbDimInfo}{\param{int }{x}, \param{int }{y}, \param{bool }{isFixed = TRUE}, \param{int }{gap = 6}, \param{cbBarDimHandlerBase* }{pDimHandler = NULL}}
 
+Constructor.
+
 
 \func{}{cbDimInfo}{\void}
 
+Default constructor.
+
 
 \membersection{cbDimInfo::\destruct{cbDimInfo}}\label{cbdiminfodtor}
 
 \func{}{\destruct{cbDimInfo}}{\void}
 
-destroys handler automatically, if present
+Destructor. Destroys handler automatically, if present.
 
 
 \membersection{cbDimInfo::GetDimHandler}\label{cbdiminfogetdimhandler}
 
 \func{cbBarDimHandlerBase*}{GetDimHandler}{\void}
 
+Returns the handler, if any.
+
 
 \membersection{cbDimInfo::operator=}\label{cbdiminfooperatorassign}
 
 \func{const cbDimInfo\& operator}{operator=}{\param{const cbDimInfo\& }{other}}
 
+Assignment operator.
+
index 1d38535a74e75b5d49ceec55d8985a8c45707dba..35d214b988ec936631cbaf2a530f117b2f70420c 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbDockBox}}\label{cbdockbox}
 
+
+cbDockBox is a window dock button, used in a wxToolWindow titlebar.
+
 \wxheading{Derived from}
 
 \helpref{cbMiniButton}{cbminibutton}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{void}{Draw}{\param{wxDC\& }{dc}}
 
+Draws the dock button appearance.
+
index e86f66bd847e4990207fbbaa090671994aefed1f..ac63f65bb424fc3b0df65d5e2cc12173cc338d95 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbDockPane}}\label{cbdockpane}
 
 
-class manages containment and control of control-bars
-   along one of the four edges of the parent frame
+This class manages containment and control of control bars
+along one of the four edges of the parent frame.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -23,413 +27,552 @@ class manages containment and control of control-bars
 
 \func{}{cbDockPane}{\param{int }{alignment}, \param{wxFrameLayout* }{pPanel}}
 
+Constructor, taking alignment and layout panel.
+
 
 \func{}{cbDockPane}{\void}
 
-public members 
+public members Default constructor.
+
 
 \membersection{cbDockPane::\destruct{cbDockPane}}\label{cbdockpanedtor}
 
 \func{}{\destruct{cbDockPane}}{\void}
 
+Destructor.
+
 
 \membersection{cbDockPane::BarPresent}\label{cbdockpanebarpresent}
 
 \func{bool}{BarPresent}{\param{cbBarInfo* }{pBar}}
 
-TRUE, if the given bar node presents in this pane
+Returns TRUE if the given bar is present in this pane.
 
 
 \membersection{cbDockPane::CalcLengthRatios}\label{cbdockpanecalclengthratios}
 
 \func{void}{CalcLengthRatios}{\param{cbRowInfo* }{pInRow}}
 
+Calculate lengths.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::ContractBar}\label{cbdockpanecontractbar}
 
 \func{void}{ContractBar}{\param{cbBarInfo* }{pBar}}
 
+Contracts the bar.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::DoInsertBar}\label{cbdockpanedoinsertbar}
 
 \func{void}{DoInsertBar}{\param{cbBarInfo* }{pBar}, \param{int }{rowNo}}
 
+Inserts the bar at the given row number.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::DrawHorizHandle}\label{cbdockpanedrawhorizhandle}
 
 \func{void}{DrawHorizHandle}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{width}}
 
+Row/bar resizing related helper-method.
+
 
 \membersection{cbDockPane::DrawVertHandle}\label{cbdockpanedrawverthandle}
 
 \func{void}{DrawVertHandle}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{height}}
 
-protected really (accessed only by plugins) row/bar resizing related helper-methods
+protected really (accessed only by plugins) Row/bar resizing related helper-method.
 
 
 \membersection{cbDockPane::ExpandBar}\label{cbdockpaneexpandbar}
 
 \func{void}{ExpandBar}{\param{cbBarInfo* }{pBar}}
 
+Expands the bar.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::FinishDrawInArea}\label{cbdockpanefinishdrawinarea}
 
 \func{void}{FinishDrawInArea}{\param{const wxRect\& }{area}}
 
+Generates cbFinishDrawInAreaEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::FrameToPane}\label{cbdockpaneframetopane}
 
-\func{void}{FrameToPane}{\param{wxRect* }{pRect}}
+\func{void}{FrameToPane}{\param{int* }{x}, \param{int* }{y}}
 
+Coordinate translation between parent's frame and this pane.
+Internal function called by plugins.
 
-\func{void}{FrameToPane}{\param{int* }{x}, \param{int* }{y}}
 
-coordinate translation between parent's frame and this pane
+\func{void}{FrameToPane}{\param{wxRect* }{pRect}}
+
+Coordinate translation between parent's frame and this pane.
+Internal function called by plugins.
 
 
 \membersection{cbDockPane::GetAlignment}\label{cbdockpanegetalignment}
 
 \func{int}{GetAlignment}{\void}
 
+Returns the alignment for this pane. The value is one of
+FL\_ALIGN\_TOP, FL\_ALIGN\_BOTTOM, FL\_ALIGN\_LEFT, FL\_ALIGN\_RIGHT.
+
 
 \membersection{cbDockPane::GetBarInfoByWindow}\label{cbdockpanegetbarinfobywindow}
 
 \func{cbBarInfo*}{GetBarInfoByWindow}{\param{wxWindow* }{pBarWnd}}
 
+Finds the bar information by corresponding window.
+
 
 \membersection{cbDockPane::GetBarResizeRange}\label{cbdockpanegetbarresizerange}
 
 \func{void}{GetBarResizeRange}{\param{cbBarInfo* }{pBar}, \param{int* }{from}, \param{int* }{till}, \param{bool }{forLeftHandle}}
 
+Returns the bar's resize range.
+
 
 \membersection{cbDockPane::GetDockingState}\label{cbdockpanegetdockingstate}
 
 \func{int}{GetDockingState}{\void}
 
+Returns wxCBAR\_DOCKED\_HORIZONTALLY if the alignment is top or bottom,
+or wxCBAR\_DOCKED\_VERTICALLY otherwise.
+
 
 \membersection{cbDockPane::GetFirstRow}\label{cbdockpanegetfirstrow}
 
 \func{cbRowInfo*}{GetFirstRow}{\void}
 
-convenience method
+Returns the first row.
 
 
 \membersection{cbDockPane::GetMinimalRowHeight}\label{cbdockpanegetminimalrowheight}
 
 \func{int}{GetMinimalRowHeight}{\param{cbRowInfo* }{pRow}}
 
+Returns the minimal row height for the given row.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::GetNotFixedBarsCount}\label{cbdockpanegetnotfixedbarscount}
 
 \func{int}{GetNotFixedBarsCount}{\param{cbRowInfo* }{pRow}}
 
+Returns the number of bars whose size is not fixed.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::GetPaneHeight}\label{cbdockpanegetpaneheight}
 
 \func{int}{GetPaneHeight}{\void}
 
-retuns height, in pane's coordinates
+Returns the height in the pane's coordinates.
 
 
 \membersection{cbDockPane::GetRealRect}\label{cbdockpanegetrealrect}
 
 \func{wxRect\&}{GetRealRect}{\void}
 
+Returns the bounds of the pane, in parent coordinates.
+
 
 \membersection{cbDockPane::GetRow}\label{cbdockpanegetrow}
 
 \func{cbRowInfo*}{GetRow}{\param{int }{row}}
 
-protected really (accessed only by plugins) 
+protected really (accessed only by plugins) Returns the row info for a row index. Internal function called by plugins.
+
 
 \membersection{cbDockPane::GetRowAt}\label{cbdockpanegetrowat}
 
-\func{int}{GetRowAt}{\param{int }{upperY}, \param{int }{lowerY}}
+\func{int}{GetRowAt}{\param{int }{paneY}}
 
+Returns the row at the given vertical position.
+Returns -1 if the row is not present at given vertical position.
+Internal function called by plugins.
 
-\func{int}{GetRowAt}{\param{int }{paneY}}
 
-return -1, if row is not present at given vertical position
+\func{int}{GetRowAt}{\param{int }{upperY}, \param{int }{lowerY}}
+
+Returns the row between the given vertical positions.
+Returns -1 if the row is not present.
+Internal function called by plugins.
 
 
 \membersection{cbDockPane::GetRowIndex}\label{cbdockpanegetrowindex}
 
 \func{int}{GetRowIndex}{\param{cbRowInfo* }{pRow}}
 
+Returns the row index for the given row info.  Internal function called by plugins.
+
 
 \membersection{cbDockPane::GetRowList}\label{cbdockpanegetrowlist}
 
 \func{RowArrayT\&}{GetRowList}{\void}
 
-used by updates-managers
+Returns an array of rows. Used by updates-managers.
 
 
 \membersection{cbDockPane::GetRowResizeRange}\label{cbdockpanegetrowresizerange}
 
 \func{void}{GetRowResizeRange}{\param{cbRowInfo* }{pRow}, \param{int* }{from}, \param{int* }{till}, \param{bool }{forUpperHandle}}
 
+Returns the row's resize range.
+
 
 \membersection{cbDockPane::GetRowShapeData}\label{cbdockpanegetrowshapedata}
 
 \func{void}{GetRowShapeData}{\param{cbRowInfo* }{pRow}, \param{wxList* }{pLst}}
 
-cbBarShapeData objects will be placed to given pLst (see comments on cbBarShapeData)
-
-
-\membersection{cbDockPane::GetRowWidth}\label{cbdockpanegetrowwidth}
-
-\func{int}{GetRowWidth}{\param{wxList* }{pRow}}
+Returns row shape data.
+cbBarShapeData objects will be added to the given pLst.
+cbBarShapeData is used for storing the original bar's positions in the row,
+when the 'non-destructive-friction' option is turned on.
 
 
 \membersection{cbDockPane::GetRowY}\label{cbdockpanegetrowy}
 
 \func{int}{GetRowY}{\param{cbRowInfo* }{pRow}}
 
+Gets the vertical position at the given row.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HasNotFixedBarsLeft}\label{cbdockpanehasnotfixedbarsleft}
 
 \func{bool}{HasNotFixedBarsLeft}{\param{cbBarInfo* }{pBar}}
 
+Returns TRUE if there are any variable-sized rows to the left of this one.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HasNotFixedBarsRight}\label{cbdockpanehasnotfixedbarsright}
 
 \func{bool}{HasNotFixedBarsRight}{\param{cbBarInfo* }{pBar}}
 
+Returns TRUE if there are any variable-sized rows to the right of this one.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HasNotFixedRowsAbove}\label{cbdockpanehasnotfixedrowsabove}
 
 \func{bool}{HasNotFixedRowsAbove}{\param{cbRowInfo* }{pRow}}
 
+Returns TRUE if there are any variable-sized rows above this one.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HasNotFixedRowsBelow}\label{cbdockpanehasnotfixedrowsbelow}
 
 \func{bool}{HasNotFixedRowsBelow}{\param{cbRowInfo* }{pRow}}
 
+Returns TRUE if there are any variable-sized rows below this one.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HasPoint}\label{cbdockpanehaspoint}
 
 \func{bool}{HasPoint}{\param{const wxPoint\& }{pos}, \param{int }{x}, \param{int }{y}, \param{int }{width}, \param{int }{height}}
 
+Returns TRUE if pos is within the given rectangle.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::HitTestPaneItems}\label{cbdockpanehittestpaneitems}
 
 \func{int}{HitTestPaneItems}{\param{const wxPoint\& }{pos}, \param{cbRowInfo** }{ppRow}, \param{cbBarInfo** }{ppBar}}
 
-returns result of hit-testing items in the pane,
-see CB\_HITTEST\_RESULTS enumeration
-position in pane's coordinates
+Returns the result of hit-testing items in the pane.
+See CB\_HITTEST\_RESULT enumerated type.
+pos is the position in this pane's coordinates.
 
 
 \membersection{cbDockPane::InitLinksForRow}\label{cbdockpaneinitlinksforrow}
 
 \func{void}{InitLinksForRow}{\param{cbRowInfo* }{pRow}}
 
+Sets up links between bars.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::InitLinksForRows}\label{cbdockpaneinitlinksforrows}
 
 \func{void}{InitLinksForRows}{\void}
 
+Sets up links between bars.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::InsertBar}\label{cbdockpaneinsertbar}
 
-\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{const wxRect\& }{atRect}}
+\func{void}{InsertBar}{\param{cbBarInfo* }{pBarInfo}}
 
-rect given in the parent frame's coordinates
+Inserts bar and sets its position according to the preferred settings
+given in pBarInfo.
 
 
-\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pIntoRow}}
+\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{const wxRect\& }{rect}}
 
-inserts bar into the given row, with dimensions and position
-stored in pBarInfo->mBounds. Returns the node of inserted bar
+Inserts the bar into this pane. rect is given in the parent frame's coordinates.
 
 
-\func{void}{InsertBar}{\param{cbBarInfo* }{pBarInfo}}
+\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pIntoRow}}
 
-inserts bar, sets its position according to the preferred settings
-given in (*pBarInfo) structure
+Inserts the bar into the given row, with dimensions and position
+stored in pBarInfo->mBounds. Returns the node of inserted bar.
 
 
 \membersection{cbDockPane::InsertRow}\label{cbdockpaneinsertrow}
 
 \func{void}{InsertRow}{\param{cbRowInfo* }{pRow}, \param{cbRowInfo* }{pBeforeRow}}
 
-does not refresh the inserted row immediately,
-if pBeforeRowNode arg. is NULL, row is appended to the end of pane's row list
+Inserts a row. Does not refresh the inserted row immediately.
+If pBeforeRowNode is NULL, the row is appended to the end of pane's row list.
 
 
 \membersection{cbDockPane::IsFixedSize}\label{cbdockpaneisfixedsize}
 
 \func{bool}{IsFixedSize}{\param{cbBarInfo* }{pInfo}}
 
-layout "AI" helpers:
+Returns TRUE if the bar's dimension information indicates a fixed size.
+Internal function called by plugins.
 
 
 \membersection{cbDockPane::IsHorizontal}\label{cbdockpaneishorizontal}
 
 \func{bool}{IsHorizontal}{\void}
 
+Returns TRUE if the pane is aligned to the top or bottom.
+
 
 \membersection{cbDockPane::MatchesMask}\label{cbdockpanematchesmask}
 
 \func{bool}{MatchesMask}{\param{int }{paneMask}}
 
+Returns TRUE if the given mask matches the pane's mask.
+
 
 \membersection{cbDockPane::PaintBar}\label{cbdockpanepaintbar}
 
 \func{void}{PaintBar}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}
 
+Calls PaintBarDecorations and PaintBarHandles.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintBarDecorations}\label{cbdockpanepaintbardecorations}
 
 \func{void}{PaintBarDecorations}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}
 
-protected really (accessed only by plugins) methods for incramental on-screen refreshing of the pane
-(simply, they are wrappers around corresponding plugin-events)
+protected really (accessed only by plugins) Generates a cbDrawBarDecorEvent and sends it to the layout to paint the bar decorations.
+Internal function called by plugins.
 
 
 \membersection{cbDockPane::PaintBarHandles}\label{cbdockpanepaintbarhandles}
 
 \func{void}{PaintBarHandles}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}
 
+Generates a cbDrawBarHandlesEvent and sends it to the layout to paint the bar handles.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintPane}\label{cbdockpanepaintpane}
 
 \func{void}{PaintPane}{\param{wxDC\& }{dc}}
 
+Paints the pane background, the row background and decorations,
+and finally the pane decorations.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintPaneBackground}\label{cbdockpanepaintpanebackground}
 
 \func{void}{PaintPaneBackground}{\param{wxDC\& }{dc}}
 
+Generates cbDrawPaneBkGroundEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintPaneDecorations}\label{cbdockpanepaintpanedecorations}
 
 \func{void}{PaintPaneDecorations}{\param{wxDC\& }{dc}}
 
+Generates cbDrawPaneDecorEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintRow}\label{cbdockpanepaintrow}
 
 \func{void}{PaintRow}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Calls PaintRowBackground, PaintRowDecorations, PaintRowHandles.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintRowBackground}\label{cbdockpanepaintrowbackground}
 
 \func{void}{PaintRowBackground}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Generates cbDrawRowBkGroundEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintRowDecorations}\label{cbdockpanepaintrowdecorations}
 
 \func{void}{PaintRowDecorations}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Calls PaintBarDecorations for each row.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaintRowHandles}\label{cbdockpanepaintrowhandles}
 
 \func{void}{PaintRowHandles}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Generates cbDrawRowHandlesEvent and cbDrawRowDecorEvent and sends them to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::PaneToFrame}\label{cbdockpanepanetoframe}
 
 \func{void}{PaneToFrame}{\param{wxRect* }{pRect}}
 
+Coordinate translation between parent's frame and this pane.
+Internal function called by plugins.
+
 
 \func{void}{PaneToFrame}{\param{int* }{x}, \param{int* }{y}}
 
+Coordinate translation between parent's frame and this pane.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::RecalcLayout}\label{cbdockpanerecalclayout}
 
 \func{void}{RecalcLayout}{\void}
 
+Generates events to perform layout calculations.
+
 
 \membersection{cbDockPane::RecalcRowLayout}\label{cbdockpanerecalcrowlayout}
 
 \func{void}{RecalcRowLayout}{\param{cbRowInfo* }{pRow}}
 
+Generates a cbLayoutRowEvent event to recalculate row layouts.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::RemoveBar}\label{cbdockpaneremovebar}
 
 \func{void}{RemoveBar}{\param{cbBarInfo* }{pBar}}
 
-does not destroys the info bar , only removes it's reference
-from this pane
+Removes the bar from this pane. Does not destroy the bar.
 
 
 \membersection{cbDockPane::RemoveRow}\label{cbdockpaneremoverow}
 
 \func{void}{RemoveRow}{\param{cbRowInfo* }{pRow}}
 
-does not destroy the row object, only removes the corresponding
-node from this pane
+Removes the row from this pane. Does not destroy the row object.
 
 
 \membersection{cbDockPane::ResizeBar}\label{cbdockpaneresizebar}
 
 \func{void}{ResizeBar}{\param{cbBarInfo* }{pBar}, \param{int }{ofs}, \param{bool }{forLeftHandle}}
 
+Row/bar resizing related helper-method.
+
 
 \membersection{cbDockPane::ResizeRow}\label{cbdockpaneresizerow}
 
 \func{void}{ResizeRow}{\param{cbRowInfo* }{pRow}, \param{int }{ofs}, \param{bool }{forUpperHandle}}
 
+Row/bar resizing related helper-method.
+
 
 \membersection{cbDockPane::SetBoundsInParent}\label{cbdockpanesetboundsinparent}
 
 \func{void}{SetBoundsInParent}{\param{const wxRect\& }{rect}}
 
-set the position and dims. of the pane in parent frame's coordinates
+Set the position and dimensions of the pane in the parent frame's coordinates.
 
 
 \membersection{cbDockPane::SetMargins}\label{cbdockpanesetmargins}
 
 \func{void}{SetMargins}{\param{int }{top}, \param{int }{bottom}, \param{int }{left}, \param{int }{right}}
 
-sets pane's margins in frame's coordinate orientations
+Sets pane's margins in frame's coordinate orientations.
 
 
 \membersection{cbDockPane::SetPaneWidth}\label{cbdockpanesetpanewidth}
 
 \func{void}{SetPaneWidth}{\param{int }{width}}
 
-sets pane's width in pane's coordinates (including margins)
+Sets pane's width in the pane's coordinates (including margins).
 
 
 \membersection{cbDockPane::SetRowHeight}\label{cbdockpanesetrowheight}
 
 \func{void}{SetRowHeight}{\param{cbRowInfo* }{pRow}, \param{int }{newHeight}}
 
-given row height includes height of row handles, if present
+Sets the row height for the given height. newHeight includes the height of row handles, if present.
+Internal function called by plugins.
 
 
 \membersection{cbDockPane::SetRowShapeData}\label{cbdockpanesetrowshapedata}
 
 \func{void}{SetRowShapeData}{\param{cbRowInfo* }{pRowNode}, \param{wxList* }{pLst}}
 
-sets the shape to the given row, using the data provided in pLst
+Sets the shape data for the given row, using the data provided in pLst.
+cbBarShapeData is used for storing the original bar's positions in the row,
+when the 'non-destructive-friction' option is turned on.
 
 
 \membersection{cbDockPane::SizeBar}\label{cbdockpanesizebar}
 
 \func{void}{SizeBar}{\param{cbBarInfo* }{pBar}}
 
+Generates a cbSizeBarWndEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::SizePaneObjects}\label{cbdockpanesizepaneobjects}
 
 \func{void}{SizePaneObjects}{\void}
 
+Calls SizeRowObjects for each row.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::SizeRowObjects}\label{cbdockpanesizerowobjects}
 
 \func{void}{SizeRowObjects}{\param{cbRowInfo* }{pRow}}
 
+Calls SizeBar for each bar in the row.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::StartDrawInArea}\label{cbdockpanestartdrawinarea}
 
 \func{wxDC*}{StartDrawInArea}{\param{const wxRect\& }{area}}
 
+Generates cbStartDrawInAreaEvent and sends it to the layout.
+Internal function called by plugins.
+
 
 \membersection{cbDockPane::SyncRowFlags}\label{cbdockpanesyncrowflags}
 
 \func{void}{SyncRowFlags}{\param{cbRowInfo* }{pRow}}
 
-re-setups flags in the row-information structure, so that
-the would match the changed state of row-items correctly
+Sets up flags in the row information structure, so that
+they match the changed state of row items correctly.
+Internal function called by plugins.
 
index 8e1940c9f351b72ed5100eb0b735f9308718ee32..6af82757e252f6c5d2b42c9d2a4fd3015adea819 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawBarDecorEvent}}\label{cbdrawbardecorevent}
 
+
+Class for bar decoration drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawBarDecorEvent}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, device context, and pane.
+
index 354d327ba067fe43ac4d925fbf8e463f086b0dbd..1f600905ad304914ee9c68bf76db60f371bd83af 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawBarHandlesEvent}}\label{cbdrawbarhandlesevent}
 
+
+Class for bar handles drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawBarHandlesEvent}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, device context, and pane.
+
index 0a9090ef3a87e0a4b496da9f5109df8b948e9b67..46ec60ed0192ecefee89baf6150639fa7441dff1 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawHintRectEvent}}\label{cbdrawhintrectevent}
 
+
+Class for hint-rectangle drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -20,4 +27,5 @@
 \func{}{cbDrawHintRectEvent}{\param{const wxRect\& }{rect}, \param{bool }{isInClient}, \param{bool }{eraseRect}, \param{bool }{lastTime}}
 
 e.g. with fat/hatched border
+Constructor, taking hint rectangle and three flags.
 
index 11fb7d5550677dd2b496d4e3a0e701b6845b6c8a..895b98f8986a764c41dc22d77682fd3a041e4b02 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawPaneBkGroundEvent}}\label{cbdrawpanebkgroundevent}
 
+
+Class for pane background drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawPaneBkGroundEvent}{\param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking device context and pane.
+
index bdf99939a1aa8f085915e677ef6fbae0ede4f340..27573caf76cf8c074a7b57eae0c28f79f7ad8b50 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawPaneDecorEvent}}\label{cbdrawpanedecorevent}
 
+
+Class for pane decoration drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawPaneDecorEvent}{\param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking device context and pane.
+
index c7a43b91d7cbeac2b0a03a44f20f4924108caae9..07e491f391a4f2ddf169bddaa08fed7ad85c0249 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawRowBkGroundEvent}}\label{cbdrawrowbkgroundevent}
 
+
+Class for row background drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawRowBkGroundEvent}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking row information, device context, and pane.
+
index 290fda5edc3d60deeaeb9f95f18304186ff41806..d487970234bf5876219ef7c10d4e48dd6439392f 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawRowDecorEvent}}\label{cbdrawrowdecorevent}
 
+
+Class for row decoration drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawRowDecorEvent}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking row information, device context, and pane.
+
index 0e8a1f9ac6396a4707dd1503578205b5741620c8..00366f61f9ccfbde81e2378083770b9d0b57a52f 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbDrawRowHandlesEvent}}\label{cbdrawrowhandlesevent}
 
+
+Class for row handles drawing events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbDrawRowHandlesEvent}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking row information, device context, and pane.
+
index 1d4019b06553e52bba6f707b7b214520d894e779..fb00a9b864e7598cfa49dab37c2321263099ab19 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbarhnd.h at 05/Jan/02 22:50:56
+% dyntbarhnd.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbDynToolBarDimHandler}}\label{cbdyntoolbardimhandler}
 
+
+Dynamic toolbar dimension handler.
+
 \wxheading{Derived from}
 
 \helpref{cbBarDimHandlerBase}{cbbardimhandlerbase}
 
+\wxheading{Include files}
+
+<dyntbarhnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{void}{OnChangeBarState}{\param{cbBarInfo* }{pBar}, \param{int }{newState}}
 
+Called when the bar changes state.
+
 
 \membersection{cbDynToolBarDimHandler::OnResizeBar}\label{cbdyntoolbardimhandleronresizebar}
 
 \func{void}{OnResizeBar}{\param{cbBarInfo* }{pBar}, \param{const wxSize\& }{given}, \param{wxSize\& }{preferred}}
 
+Called when a bar is resized.
+
index 39fe8377bfad61792d3a1305cae577068c80cdad..066f33957255e66493c767d662e019faae3700ed 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbFinishDrawInAreaEvent}}\label{cbfinishdrawinareaevent}
 
+
+Class for finish drawing in area events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbFinishDrawInAreaEvent}{\param{const wxRect\& }{area}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking rectangular area and pane.
+
index 417df44a52bcdd4b269846a958f56860c97df01e..0785403f77693f9df654a109f9cc21a49a79a37e 100644 (file)
@@ -1,15 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbFloatedBarWindow}}\label{cbfloatedbarwindow}
 
+
+cbFloatedBarWindow is a kind of wxToolWindow,
+implementing floating toolbars.
+
 \wxheading{Derived from}
 
 \helpref{wxToolWindow}{wxtoolwindow}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbFloatedBarWindow}{\void}
 
+Default constructor.
+
 
 \membersection{cbFloatedBarWindow::GetBar}\label{cbfloatedbarwindowgetbar}
 
 \func{cbBarInfo*}{GetBar}{\void}
 
+Returns the bar information for this window.
+
 
 \membersection{cbFloatedBarWindow::GetPreferredSize}\label{cbfloatedbarwindowgetpreferredsize}
 
 \func{wxSize}{GetPreferredSize}{\param{const wxSize\& }{given}}
 
-overriden methods of wxToolWindow
+Overridden function returning the preferred size.
 
 
 \membersection{cbFloatedBarWindow::HandleTitleClick}\label{cbfloatedbarwindowhandletitleclick}
 
 \func{bool}{HandleTitleClick}{\param{wxMouseEvent\& }{event}}
 
+Overridden function responding to mouse button clicks on the titlebar.
+
 
 \membersection{cbFloatedBarWindow::OnDblClick}\label{cbfloatedbarwindowondblclick}
 
 \func{void}{OnDblClick}{\param{wxMouseEvent\& }{event}}
 
+Responds to double-click mouse events.
+
 
 \membersection{cbFloatedBarWindow::OnMiniButtonClicked}\label{cbfloatedbarwindowonminibuttonclicked}
 
 \func{void}{OnMiniButtonClicked}{\param{int }{btnIdx}}
 
+Overridden function responding to mouse clicks on mini-buttons.
+
 
 \membersection{cbFloatedBarWindow::PositionFloatedWnd}\label{cbfloatedbarwindowpositionfloatedwnd}
 
 \func{void}{PositionFloatedWnd}{\param{int }{scrX}, \param{int }{scrY}, \param{int }{width}, \param{int }{height}}
 
-given coordinates are those of the bar itself
-floated container window's position and size
-are ajusted accordingly
+Position the floating window. The given coordinates
+are those of the bar itself; the floated container window's
+position and size are ajusted accordingly.
 
 
 \membersection{cbFloatedBarWindow::SetBar}\label{cbfloatedbarwindowsetbar}
 
 \func{void}{SetBar}{\param{cbBarInfo* }{pBar}}
 
+Sets the bar information for this window.
+
 
 \membersection{cbFloatedBarWindow::SetLayout}\label{cbfloatedbarwindowsetlayout}
 
 \func{void}{SetLayout}{\param{wxFrameLayout* }{pLayout}}
 
+Sets the layout for this window.
+
index 6450e54fc43b71b7d4d832ccc6a2c6931690119a..18f31ca52586602af53760e1c4b8bd19e5b48382 100644 (file)
@@ -1,83 +1,90 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% gcupdatesmgr.h at 05/Jan/02 22:50:57
+% gcupdatesmgr.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbGCUpdatesMgr}}\label{cbgcupdatesmgr}
 
 
-class implements optimized logic for refreshing
-   areas of frame layout - which actually need to be updated. 
-   Is used as default updates-manager by wxFrameLayout.
-  
-   it is called "Garbage Collecting" u.mgr for it's implementation
-   tries to find out dependencies between bars, and to order
-   them ito "hierarchy", this hierarchical sorting resembles
-   implemenation of heap-garbage collectors, which resolve
-   dependencies between references.
-  
-   Example: there are situations where the order of moving
-            the windows does matter:
-  
-     case 1)                
-        ------             ---
-        | A     |                  |B|  
-               ------   --->   | |
-                       ---                     --- ------ 
-                       |B|                             | A  | 
-                       | |                             ------
-                       ---                             
-                                               (future)
-          (past)            
-  
-    past/future positions of A and B windows completely overlapp, i.e.
-    depend on each other, and there is not solution for
-    moving the windows witout refreshing both of them,
-    -- we have cyclic dependency here. The gc. alg will
-    find this cyclic dependecy and will force "refresh"
-    after movement.
-  
-     case 2)
-  
-        ------                                 
-        | A     |                                      
-               ------   --->                       
-                       ---                               
-                       |B|                                        ------   
-                       | |                                        | A  |   
-                       ---                                        ------         
-                                                ---
-                                                |B|
-                                                | |
-                                            ---
-  
-                                               (future)                
-          (past)       
-  
-    in this case past/future positions do not overlapp, thus
-    it's enough only to move windows, without refreshing them.
-    GC will "notice" it.
-  
-    there is also third case, when overlapping is partial
-    in this case the refershing can be also avoided by
-    moving windows in the order of "most-dependant" towards the
-    "least-dependent". GC handles this automatically, by
-    sorting windows by their dependency-level (or "hierarchy")
-  
-    See garbagec.h for more details of this method, garbagec.h/cpp
-    implement sorting of generic-dependencies (does not deal
-    with graphical objects directly)
-  
-    Summary: improves performance when complex/large windows are 
-             moved around, by reducing number of repaints. Also helps 
-             to avoid dirty non-client areas of moved windows
-             in some special cases of "overlapping anomalies"
+This class implements optimized logic for refreshing
+the areas of frame layout that actually need to be updated.
+It is used as the default updates manager by wxFrameLayout.
+
+It is called 'Garbage Collecting' updates manager because
+its implementation tries to find out dependencies between bars,
+and to order them into a 'hierarchy'. This hierarchical sorting resembles
+the implementation of heap-garbage collectors, which resolve
+dependencies between references.
+
+Example: there are situations where the order in which the user
+moves windows does matter.
+
+\begin{verbatim}
+  case 1)
+     ------            ---
+     | A     |             |B|
+        ------     --->      | |
+            ---               --- ------
+            |B|                   | A  |
+            | |                   ------
+            ---
+                        (future)
+       (past)
+\end{verbatim}
+
+Past/future positions of A and B windows completely overlap, i.e.
+depend on each other, and there is no solution for
+moving the windows without refreshing both of them
+-- we have a cyclic dependency here. The garbage collection algorithm will
+find this cyclic dependecy and will force refresh after movement.
+
+\begin{verbatim}
+  case 2)
+
+     ------
+     | A     |
+        ------     --->
+            ---
+            |B|                              ------
+            | |                              | A  |
+            ---                              ------
+                         ---
+                         |B|
+                         | |
+                         ---
+
+                        (future)
+       (past)
+\end{verbatim}
+
+In this case past/future positions do not overlap, so
+it is enough only to move windows without refreshing them.
+Garbage collection will 'notice' this.
+
+There is also a third case, when overlapping is partial.
+In this case the refreshing can also be avoided by
+moving windows in the order of 'most-dependant' towards the
+'least-dependent'. GC handles this automatically, by
+sorting windows by their dependency-level (or 'hierarchy').
+
+See garbagec.h for more details of this method; garbagec.h/cpp
+implement sorting of generic dependencies and does not deal
+with graphical objects directly.
+
+Summary: garbage collection improves performance when complex or large
+windows are moved around, by reducing the number of repaints. It also helps
+to avoid dirty non-client areas of moved windows
+in some special cases of 'overlapping anomalies'.
+
 \wxheading{Derived from}
 
 \helpref{cbSimpleUpdatesMgr}{cbsimpleupdatesmgr}
 
+\wxheading{Include files}
+
+<gcupdatesmgr.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -87,30 +94,38 @@ class implements optimized logic for refreshing
 
 \func{}{cbGCUpdatesMgr}{\void}
 
+Default constructor.
+
 
 \func{}{cbGCUpdatesMgr}{\param{wxFrameLayout* }{pPanel}}
 
+Constructor, taking a frame layout.
+
 
 \membersection{cbGCUpdatesMgr::AddItem}\label{cbgcupdatesmgradditem}
 
 \func{void}{AddItem}{\param{wxList\& }{itemList}, \param{cbBarInfo* }{pBar}, \param{cbDockPane* }{pPane}, \param{wxRect\& }{curBounds}, \param{wxRect\& }{prevBounds}}
 
+Internal function for repositioning items.
+
 
 \membersection{cbGCUpdatesMgr::DoRepositionItems}\label{cbgcupdatesmgrdorepositionitems}
 
 \func{void}{DoRepositionItems}{\param{wxList\& }{items}}
 
+Internal function for repositioning items.
+
 
 \membersection{cbGCUpdatesMgr::OnStartChanges}\label{cbgcupdatesmgronstartchanges}
 
 \func{void}{OnStartChanges}{\void}
 
-notificiactions received from Frame Layout :
+Receives notifications from the frame layout.
 
 
 \membersection{cbGCUpdatesMgr::UpdateNow}\label{cbgcupdatesmgrupdatenow}
 
 \func{void}{UpdateNow}{\void}
 
-refreshes parts of the frame layout, which need an update
+Refreshes the parts of the frame layout which need an update.
 
index bd85b5139e0e0dd26bf502d96cf41033ee87c2b2..f8dafe295e2290887fee5052817c5147776f3118 100644 (file)
@@ -1,17 +1,21 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% rowdragpl.h at 05/Jan/02 22:50:57
+% rowdragpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbHiddenBarInfo}}\label{cbhiddenbarinfo}
 
 
-internal helper-class
+Internal helper class.
 
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<rowdragpl.h>
+
 \wxheading{Data structures}
 
index 27746fde12c449f5b25b1a9f9fa4dfbd70b26770..904840004202e47d95545ac2fa8069918e35decd 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% hintanimpl.h at 05/Jan/02 22:50:57
+% hintanimpl.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{cbHintAnimationPlugin}}\label{cbhintanimationplugin}
 
+
+A plugin to draw animated hints when the user drags a pane.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<hintanimpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbHintAnimationPlugin}{\void}
 
+Default constructor.
+
 
 \func{}{cbHintAnimationPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor, taking a layout panel and pane mask.
+
 
 \membersection{cbHintAnimationPlugin::\destruct{cbHintAnimationPlugin}}\label{cbhintanimationplugindtor}
 
 \func{}{\destruct{cbHintAnimationPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbHintAnimationPlugin::DoDrawHintRect}\label{cbhintanimationplugindodrawhintrect}
 
 \func{void}{DoDrawHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal function for drawing a hint rectangle.
+
 
 \membersection{cbHintAnimationPlugin::DrawHintRect}\label{cbhintanimationplugindrawhintrect}
 
 \func{void}{DrawHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal function for drawing a hint rectangle.
+
 
 \membersection{cbHintAnimationPlugin::EraseHintRect}\label{cbhintanimationpluginerasehintrect}
 
 \func{void}{EraseHintRect}{\param{wxRect\& }{rect}, \param{bool }{isInClientRect}}
 
+Internal function for erasing a hint rectangle.
+
 
 \membersection{cbHintAnimationPlugin::FinishTracking}\label{cbhintanimationpluginfinishtracking}
 
 \func{void}{FinishTracking}{\void}
 
+Internal function for finishing tracking.
+
 
 \membersection{cbHintAnimationPlugin::OnDrawHintRect}\label{cbhintanimationpluginondrawhintrect}
 
 \func{void}{OnDrawHintRect}{\param{cbDrawHintRectEvent\& }{event}}
 
+Event handler respoding to hint draw events.
+
 
 \membersection{cbHintAnimationPlugin::RectToScr}\label{cbhintanimationpluginrecttoscr}
 
 \func{void}{RectToScr}{\param{wxRect\& }{frameRect}, \param{wxRect\& }{scrRect}}
 
+Internal function for translating coordinates.
+
 
 \membersection{cbHintAnimationPlugin::StartTracking}\label{cbhintanimationpluginstarttracking}
 
@@ -64,4 +89,5 @@
 
 speed is constant. Default: TRUE
 TBD:: get/set methods for above members
+Internal function for starting tracking.
 
index 0570cbf127ac656b353e271217fe9dd748b3488d..b5d20b216cbe388d9c97852d2616589289d1d3d8 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% hintanimpl.h at 05/Jan/02 22:50:57
+% hintanimpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbHintAnimTimer}}\label{cbhintanimtimer}
 
+
+A private helper class.
+
 \wxheading{Derived from}
 
 \helpref{wxTimer}{wxtimer}
 
+\wxheading{Include files}
+
+<hintanimpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
index e43e3ec66f3655826e12409c57eec901cb339620..8599ebe38f99d8ddbd3567221432c2f5c0308e38 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbInsertBarEvent}}\label{cbinsertbarevent}
 
+
+Class for bar insertion events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbInsertBarEvent}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pIntoRow}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, row information, and pane.
+
index 2769f658f13501a46e6ddd5d59894598211459c3..70362bac244cbd977eed69d0ed250fc66a4b109b 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbLayoutRowEvent}}\label{cblayoutrowevent}
 
 
-bar/row events category
+Class for single row layout events.
 
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,3 +26,5 @@ bar/row events category
 
 \func{}{cbLayoutRowEvent}{\param{cbRowInfo* }{pRow}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking row information and pane.
+
index 872f1c3bd051f48861be099d477311555c3114e0..af71f0953341253ba5bbd07a22a88e63a823cc56 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbLayoutRowsEvent}}\label{cblayoutrowsevent}
 
+
+Class for multiple rows layout events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbLayoutRowsEvent}{\param{cbDockPane* }{pPane}}
 
+Constructor, taking pane.
+
index c3f1a52231532856b5847b44c4350f195bb14b85..a41fd5a4a5ae37b181e9a4748bcf5dc0fcef54b5 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbLeftDClickEvent}}\label{cbleftdclickevent}
 
+
+Class for mouse left double click events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbLeftDClickEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index 0d18a830eeb63f178b8fda5ef611a44d1abea23c..4988afaca108eafc88d9350fa30ca73b7aea0f51 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbLeftDownEvent}}\label{cbleftdownevent}
 
 
-event classes, for each corresponding event type (24 currnetly...uhh) **mouse-events category
+Class for mouse left down events.
 
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,3 +26,5 @@ event classes, for each corresponding event type (24 currnetly...uhh) **mouse-ev
 
 \func{}{cbLeftDownEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index f90ff732159204da02544be2afbb96c3c07754c8..67bfe5cbf0c4df860717f642e405d4f12c36cd38 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbLeftUpEvent}}\label{cbleftupevent}
 
+
+Class for mouse left up events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbLeftUpEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index a8b9bc4079dcbea72ce3ae84b858c6d23e6cffec..f2b8325d775e99836cc88e28cb998975582d33d2 100644 (file)
@@ -1,15 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{cbMiniButton}}\label{cbminibutton}
 
+
+cbMiniButton is the base class for a small button that can be placed in a wxToolWindow
+titlebar.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbMiniButton}{\void}
 
+Default constructor.
+
 
 \membersection{cbMiniButton::Draw}\label{cbminibuttondraw}
 
 \func{void}{Draw}{\param{wxDC\& }{dc}}
 
+Draws the button. Override this to implement
+the desired appearance.
+
 
 \membersection{cbMiniButton::Enable}\label{cbminibuttonenable}
 
 \func{void}{Enable}{\param{bool }{enable}}
 
+Enable or disable the button.
+
 
 \membersection{cbMiniButton::HitTest}\label{cbminibuttonhittest}
 
 \func{bool}{HitTest}{\param{const wxPoint\& }{pos}}
 
+Returns TRUE if the given position was over the button.
+
 
 \membersection{cbMiniButton::IsPressed}\label{cbminibuttonispressed}
 
 \func{bool}{IsPressed}{\void}
 
+Returns TRUE if this button is pressed.
+
 
 \membersection{cbMiniButton::OnLeftDown}\label{cbminibuttononleftdown}
 
 \func{void}{OnLeftDown}{\param{const wxPoint\& }{pos}}
 
+Responds to a left down event.
+
 
 \membersection{cbMiniButton::OnLeftUp}\label{cbminibuttononleftup}
 
 \func{void}{OnLeftUp}{\param{const wxPoint\& }{pos}}
 
+Responds to a left up event.
+
 
 \membersection{cbMiniButton::OnMotion}\label{cbminibuttononmotion}
 
 \func{void}{OnMotion}{\param{const wxPoint\& }{pos}}
 
+Responds to a mouse move event.
+
 
 \membersection{cbMiniButton::Refresh}\label{cbminibuttonrefresh}
 
 \func{void}{Refresh}{\void}
 
+Refreshes the button.
+
 
 \membersection{cbMiniButton::Reset}\label{cbminibuttonreset}
 
 \func{void}{Reset}{\void}
 
+Reset the button.
+
 
 \membersection{cbMiniButton::SetPos}\label{cbminibuttonsetpos}
 
 \func{void}{SetPos}{\param{const wxPoint\& }{pos}}
 
+Set the position of the button.
+
 
 \membersection{cbMiniButton::WasClicked}\label{cbminibuttonwasclicked}
 
 \func{bool}{WasClicked}{\void}
 
+Returns TRUE if the button was clicked.
+
index 0413519cf2deb6423992d1d55c7cd5b4338ac989..d5c977016ebbd25f29f549c596c419917ce4a2bb 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbMotionEvent}}\label{cbmotionevent}
 
+
+Class for mouse motion events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbMotionEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index 66e247aacc06042a9544ebbbe73c013b93bee0b9..550121ec09315e80397e4461489ad9efcaf6efbe 100644 (file)
@@ -1,23 +1,27 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% panedrawpl.h at 05/Jan/02 22:50:57
+% panedrawpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbPaneDrawPlugin}}\label{cbpanedrawplugin}
 
 
-Simple, but all-in-one plugin implementation. Resembles look \& feel of
-   to MFC control-bars. Handles painting of pane and items in it.
-   Fires bar/layout customization event, when user right-clicks bar/pane. 
-   Hooking an instance of this and row-layouting plugins per each pane, 
-   would be enough for the frame layout to function properly.
-   (they are plugged in autimatically by wxFrameLayout class)
+Simple but all-in-one plugin implementation. Resembles the look and feel of
+to MFC control-bars. The class handles painting of the pane and the items in it;
+it generates bar/layout customization events, when the user right-clicks the bar/pane.
+Hooking an instance of this and row-layout plugins for each pane
+would be enough for the frame layout to function properly
+(they are plugged in automatically by the wxFrameLayout class).
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<panedrawpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -27,155 +31,213 @@ Simple, but all-in-one plugin implementation. Resembles look \& feel of
 
 \func{}{cbPaneDrawPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor taking frame layout pane and a pane mask.
+
 
 \func{}{cbPaneDrawPlugin}{\void}
 
+Default constructor.
+
 
 \membersection{cbPaneDrawPlugin::\destruct{cbPaneDrawPlugin}}\label{cbpanedrawplugindtor}
 
 \func{}{\destruct{cbPaneDrawPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbPaneDrawPlugin::Clone}\label{cbpanedrawpluginclone}
 
 \func{cbPluginBase*}{Clone}{\void}
 
+Clone function, returning a new instance of this class.
+
 
 \membersection{cbPaneDrawPlugin::DrawBarInnerShadeRect}\label{cbpanedrawplugindrawbarinnershaderect}
 
 \func{void}{DrawBarInnerShadeRect}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}
 
+Internal helper: draws the inner bar shading.
+
 
 \membersection{cbPaneDrawPlugin::DrawDraggedHandle}\label{cbpanedrawplugindrawdraggedhandle}
 
 \func{void}{DrawDraggedHandle}{\param{const wxPoint\& }{pos}, \param{cbDockPane\& }{pane}}
 
-helpers
+Internal helper: draws the dragged handle.
 
 
 \membersection{cbPaneDrawPlugin::DrawLowerRowHandle}\label{cbpanedrawplugindrawlowerrowhandle}
 
 \func{void}{DrawLowerRowHandle}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Internal helper: draws the lower row handle.
+
 
 \membersection{cbPaneDrawPlugin::DrawLowerRowShades}\label{cbpanedrawplugindrawlowerrowshades}
 
 \func{void}{DrawLowerRowShades}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{int }{level}}
 
+Internal helper: draws the lower row shading.
+
 
 \membersection{cbPaneDrawPlugin::DrawPaneShade}\label{cbpanedrawplugindrawpaneshade}
 
 \func{void}{DrawPaneShade}{\param{wxDC\& }{dc}, \param{int }{alignment}}
 
+Internal helper: draws the pane shading.
+
 
 \membersection{cbPaneDrawPlugin::DrawPaneShadeForRow}\label{cbpanedrawplugindrawpaneshadeforrow}
 
 \func{void}{DrawPaneShadeForRow}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Internal helper: draws the pane shading for a row.
+
 
 \membersection{cbPaneDrawPlugin::DrawShade}\label{cbpanedrawplugindrawshade}
 
 \func{void}{DrawShade}{\param{int }{level}, \param{wxRect\& }{rect}, \param{int }{alignment}, \param{wxDC\& }{dc}}
 
+Internal helper: draws shading.
+
 
 \membersection{cbPaneDrawPlugin::DrawShade1}\label{cbpanedrawplugindrawshade1}
 
 \func{void}{DrawShade1}{\param{int }{level}, \param{wxRect\& }{rect}, \param{int }{alignment}, \param{wxDC\& }{dc}}
 
+Internal helper: draws shading.
+
 
 \membersection{cbPaneDrawPlugin::DrawUpperRowHandle}\label{cbpanedrawplugindrawupperrowhandle}
 
 \func{void}{DrawUpperRowHandle}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}
 
+Internal helper: draws the upper row handle.
+
 
 \membersection{cbPaneDrawPlugin::DrawUpperRowShades}\label{cbpanedrawplugindrawupperrowshades}
 
 \func{void}{DrawUpperRowShades}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{int }{level}}
 
+Internal helper: draws the upper row shading.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawBarDecorations}\label{cbpanedrawpluginondrawbardecorations}
 
 \func{void}{OnDrawBarDecorations}{\param{cbDrawBarDecorEvent\& }{event}}
 
+Handler for draw bar decorations events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawBarHandles}\label{cbpanedrawpluginondrawbarhandles}
 
 \func{void}{OnDrawBarHandles}{\param{cbDrawBarHandlesEvent\& }{event}}
 
+Handler for draw bar handles events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawPaneBackground}\label{cbpanedrawpluginondrawpanebackground}
 
 \func{void}{OnDrawPaneBackground}{\param{cbDrawPaneBkGroundEvent\& }{event}}
 
+Handler for draw pane background events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawPaneDecorations}\label{cbpanedrawpluginondrawpanedecorations}
 
 \func{void}{OnDrawPaneDecorations}{\param{cbDrawPaneDecorEvent\& }{event}}
 
+Handler for draw pane decoration events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawRowBackground}\label{cbpanedrawpluginondrawrowbackground}
 
 \func{void}{OnDrawRowBackground}{\param{cbDrawRowBkGroundEvent\& }{event}}
 
+Handler for draw row background events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawRowDecorations}\label{cbpanedrawpluginondrawrowdecorations}
 
 \func{void}{OnDrawRowDecorations}{\param{cbDrawRowDecorEvent\& }{event}}
 
+Handler for draw row decoration events.
+
 
 \membersection{cbPaneDrawPlugin::OnDrawRowHandles}\label{cbpanedrawpluginondrawrowhandles}
 
 \func{void}{OnDrawRowHandles}{\param{cbDrawRowHandlesEvent\& }{event}}
 
+Handler for draw row handles events.
+
 
 \membersection{cbPaneDrawPlugin::OnFinishDrawInArea}\label{cbpanedrawpluginonfinishdrawinarea}
 
 \func{void}{OnFinishDrawInArea}{\param{cbFinishDrawInAreaEvent\& }{event}}
 
+Handler for finish draw in area events.
+
 
 \membersection{cbPaneDrawPlugin::OnLButtonDown}\label{cbpanedrawpluginonlbuttondown}
 
 \func{void}{OnLButtonDown}{\param{cbLeftDownEvent\& }{event}}
 
-handlers for plugin-events
+Handler for left mouse button down events.
 
 
 \membersection{cbPaneDrawPlugin::OnLButtonUp}\label{cbpanedrawpluginonlbuttonup}
 
 \func{void}{OnLButtonUp}{\param{cbLeftUpEvent\& }{event}}
 
+Handler for left mouse button up events.
+
 
 \membersection{cbPaneDrawPlugin::OnLDblClick}\label{cbpanedrawpluginonldblclick}
 
 \func{void}{OnLDblClick}{\param{cbLeftDClickEvent\& }{event}}
 
+Handler for left double-click mouse button down events.
+
 
 \membersection{cbPaneDrawPlugin::OnMouseMove}\label{cbpanedrawpluginonmousemove}
 
 \func{void}{OnMouseMove}{\param{cbMotionEvent\& }{event}}
 
+Handler for mouse move events.
+
 
 \membersection{cbPaneDrawPlugin::OnRButtonUp}\label{cbpanedrawpluginonrbuttonup}
 
 \func{void}{OnRButtonUp}{\param{cbRightUpEvent\& }{event}}
 
+Handler for right mouse button up events.
+
 
 \membersection{cbPaneDrawPlugin::OnSizeBarWindow}\label{cbpanedrawpluginonsizebarwindow}
 
 \func{void}{OnSizeBarWindow}{\param{cbSizeBarWndEvent\& }{event}}
 
+Handler for bar size events.
+
 
 \membersection{cbPaneDrawPlugin::OnStartDrawInArea}\label{cbpanedrawpluginonstartdrawinarea}
 
 \func{void}{OnStartDrawInArea}{\param{cbStartDrawInAreaEvent\& }{event}}
 
+Handler for start draw in area events.
+
 
 \membersection{cbPaneDrawPlugin::SetDarkPixel}\label{cbpanedrawpluginsetdarkpixel}
 
 \func{void}{SetDarkPixel}{\param{int }{x}, \param{int }{y}, \param{wxDC\& }{dc}}
 
+Internal helper: sets a dark pixel at the given location.
+
 
 \membersection{cbPaneDrawPlugin::SetLightPixel}\label{cbpanedrawpluginsetlightpixel}
 
 \func{void}{SetLightPixel}{\param{int }{x}, \param{int }{y}, \param{wxDC\& }{dc}}
 
+Internal helper: sets a light pixel at the given location.
+
index 1eb69526a3c3cadd90f97e7d3837c1db7b27b1c2..b99f88ea4cde1d4f26bd1d39b7391e08d1d684ec 100644 (file)
@@ -1,18 +1,25 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbPluginBase}}\label{cbpluginbase}
 
 
-abstract base class for all control-bar related plugins
+Abstract base class for all control-bar related plugins.
+Note: pointer positions of mouse events sent to plugins
+are always in the pane's coordinates (the pane to which
+this plugin is hooked).
+
 \wxheading{Derived from}
 
 \helpref{wxEvtHandler}{wxevthandler}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,44 +29,49 @@ abstract base class for all control-bar related plugins
 
 \func{}{cbPluginBase}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor taking layout panel and a mask.
+
 
 \func{}{cbPluginBase}{\void}
 
+Default constructor.
+
 
 \membersection{cbPluginBase::\destruct{cbPluginBase}}\label{cbpluginbasedtor}
 
 \func{}{\destruct{cbPluginBase}}{\void}
 
-NOTE:: pointer positions of mouse-events sent to plugins
-are always in pane's coordinates (pane's to which
-this plugin is hooked)
-destroys the whole plugin chain of connected plagins
+Destructor. Destroys the whole plugin chain of connected plugins.
 
 
 \membersection{cbPluginBase::GetPaneMask}\label{cbpluginbasegetpanemask}
 
 \func{int}{GetPaneMask}{\void}
 
+Returns the pane mask.
+
 
 \membersection{cbPluginBase::IsReady}\label{cbpluginbaseisready}
 
 \func{bool}{IsReady}{\void}
 
+Returns TRUE if the plugin is ready to receive events.
+
 
 \membersection{cbPluginBase::OnInitPlugin}\label{cbpluginbaseoninitplugin}
 
 \func{void}{OnInitPlugin}{\void}
 
-override this method to do plugin-specific initialization
-(at this point plugin is already attached to the frame layout,
-and pane masks are set)
+Override this method to do plugin-specific initialization.
+At this point plugin is already attached to the frame layout,
+and pane masks are set.
 
 
 \membersection{cbPluginBase::ProcessEvent}\label{cbpluginbaseprocessevent}
 
 \func{bool}{ProcessEvent}{\param{wxEvent\& }{event}}
 
-overriden, to determine whether the target pane specified in the
-event, matches the pane mask of this plugin (specific plugins
-do not override this method)
+Overridden to determine whether the target pane specified in the
+event matches the pane mask of this plugin (specific plugins
+do not override this method).
 
index ed9b1460981d135655aac8ae1bc8d062aa6ed727..a96058c49f5553d5818cb85d1bd9eacdfdc8afe2 100644 (file)
@@ -1,22 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbPluginEvent}}\label{cbpluginevent}
 
 
-------------------------------------------------------------
-   "API" for developing custom plugins of Frame Layout Engine
-   TODO:: documentation
-  ------------------------------------------------------------
- base class for all control-bar plugin events
+Base class for all control-bar plugin events.
+This is not a dynamically-creatable class.
 
 \wxheading{Derived from}
 
 \helpref{wxEvent}{wxevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbPluginEvent}{\param{wxEventType }{eventType}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking event type and pane.
+
 
 \membersection{cbPluginEvent::Clone}\label{cbplugineventclone}
 
 \constfunc{wxEvent*}{Clone}{\void}
 
-OLD STUFF::
-       // FOR NOW FOR NOW:: all-in-one plugin event structure
-       wxNode* mpObjNode;
-       wxNode* mpObjNodeAux;
-       wxPoint mPos;
-       wxSize  mSize;
-       wxDC*   mpDC;
-       bool    mAuxBoolVal;
-       Not used, but required
+Not used, but required.
 
index f9b16ac841655af046c9c8f3ce9beb337c960f93..bac004c048471673be68c4d19e38cc5766694955 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbRemoveBarEvent}}\label{cbremovebarevent}
 
+
+Class for bar removal events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbRemoveBarEvent}{\param{cbBarInfo* }{pBar}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information and pane.
+
index 5f7b45fb3eb0800359d61dabbe074eac3254960b..83680efb8be06306f306bd764d5c83bf4391adfd 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbResizeBarEvent}}\label{cbresizebarevent}
 
+
+Class for bar resize events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbResizeBarEvent}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pRow}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, row information, and pane.
+
index be09a06c44ee6b1178877af8c919a76b80d524f4..dc1c37ee635aea6fbd9881120b15e8e842325882 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbResizeRowEvent}}\label{cbresizerowevent}
 
+
+Class for row resize events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbResizeRowEvent}{\param{cbRowInfo* }{pRow}, \param{int }{handleOfs}, \param{bool }{forUpperHandle}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking row information, two parameters of currently unknown use, and pane.
+
index 2ed41715328e5334c9acd7c38a87777bd9df5e2a..a186da067c7225a331f7d83fadf042e0a3dda6bd 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbRightDownEvent}}\label{cbrightdownevent}
 
+
+Class for mouse right down events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbRightDownEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index 536fc93e00fa3fa3b817cb64ef5202f112feb785..5306145a3f2a41051e8d4bad8cf2c2d3ed9314ca 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:15
 %
 
 
 \section{\class{cbRightUpEvent}}\label{cbrightupevent}
 
+
+Class for mouse right up events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbRightUpEvent}{\param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking mouse position and pane.
+
index 1c0e6b586fcfd4907bde1f30a2c52f2d998899a3..f63642d332759be067be1e1bff7ef3f0a2633462 100644 (file)
@@ -1,21 +1,25 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% rowdragpl.h at 05/Jan/02 22:50:57
+% rowdragpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbRowDragPlugin}}\label{cbrowdragplugin}
 
 
-Plugin adds row-dragging fuctionality to the pane.
-   Handles mouse/movement and pane-background erasing plugin-events.
-   Behaviour and appearence resembles drag \& drop posotioning 
-   of the toolbar-rows int Netscape Comunicator 4.xx.
+This plugin adds row-dragging functionality to the pane.
+It handles mouse movement and pane background-erasing plugin events.
+The behaviour and appearance resembles drag and drop positioning
+of the toolbar rows in Netscape Communicator 4.xx.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<rowdragpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -25,229 +29,311 @@ Plugin adds row-dragging fuctionality to the pane.
 
 \func{}{cbRowDragPlugin}{\param{wxFrameLayout* }{pLayout}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor, taking paren layout frame and pane mask.
+
 
 \func{}{cbRowDragPlugin}{\void}
 
+Default constructor.
+
 
 \membersection{cbRowDragPlugin::\destruct{cbRowDragPlugin}}\label{cbrowdragplugindtor}
 
 \func{}{\destruct{cbRowDragPlugin}}{\void}
 
+Destructor.
+
 
 \membersection{cbRowDragPlugin::CaptureDCArea}\label{cbrowdragplugincapturedcarea}
 
 \func{wxBitmap*}{CaptureDCArea}{\param{wxDC\& }{dc}, \param{wxRect\& }{area}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::CheckPrevItemInFocus}\label{cbrowdragplugincheckpreviteminfocus}
 
 \func{void}{CheckPrevItemInFocus}{\param{cbRowInfo* }{pRow}, \param{int }{iconIdx}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::Clone}\label{cbrowdragpluginclone}
 
 \func{cbPluginBase*}{Clone}{\void}
 
+Clone function, returning a new instance of this class.
+
 
 \membersection{cbRowDragPlugin::CollapseRow}\label{cbrowdragplugincollapserow}
 
 \func{void}{CollapseRow}{\param{cbRowInfo* }{pRow}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::Draw3DPattern}\label{cbrowdragplugindraw3dpattern}
 
 \func{void}{Draw3DPattern}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::Draw3DRect}\label{cbrowdragplugindraw3drect}
 
 \func{void}{Draw3DRect}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}, \param{wxBrush\& }{bkBrush}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawCollapsedRowIcon}\label{cbrowdragplugindrawcollapsedrowicon}
 
 \func{void}{DrawCollapsedRowIcon}{\param{int }{index}, \param{wxDC\& }{dc}, \param{bool }{isHighlighted}}
 
-overridables (appearence-depedent)
+Draws collapsed row icon (appearance-dependent).
 
 
 \membersection{cbRowDragPlugin::DrawCollapsedRowsBorder}\label{cbrowdragplugindrawcollapsedrowsborder}
 
 \func{void}{DrawCollapsedRowsBorder}{\param{wxDC\& }{dc}}
 
+Draws collapsed rows border (appearance-dependent).
+
 
 \membersection{cbRowDragPlugin::DrawEmptyRow}\label{cbrowdragplugindrawemptyrow}
 
 \func{void}{DrawEmptyRow}{\param{wxDC\& }{dc}, \param{wxRect\& }{rowBounds}}
 
+Draws empty row (appearance-dependent).
+
 
 \membersection{cbRowDragPlugin::DrawOrtoRomb}\label{cbrowdragplugindrawortoromb}
 
 \func{void}{DrawOrtoRomb}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}, \param{wxBrush\& }{bkBrush}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawRectShade}\label{cbrowdragplugindrawrectshade}
 
 \func{void}{DrawRectShade}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}, \param{int }{level}, \param{wxPen\& }{upperPen}, \param{wxPen\& }{lowerPen}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawRomb}\label{cbrowdragplugindrawromb}
 
 \func{void}{DrawRomb}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}, \param{wxBrush\& }{bkBrush}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawRombShades}\label{cbrowdragplugindrawrombshades}
 
 \func{void}{DrawRombShades}{\param{wxPoint\& }{p1}, \param{wxPoint\& }{p2}, \param{wxPoint\& }{p3}, \param{wxPoint\& }{p4}, \param{wxDC\& }{dc}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawRowDragHint}\label{cbrowdragplugindrawrowdraghint}
 
 \func{void}{DrawRowDragHint}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}, \param{bool }{isHighlighted}}
 
+Draws row drag hint (appearance-dependent).
+
 
 \membersection{cbRowDragPlugin::DrawRowsDragHintsBorder}\label{cbrowdragplugindrawrowsdraghintsborder}
 
 \func{void}{DrawRowsDragHintsBorder}{\param{wxDC\& }{dc}}
 
+Draws rows drag hints border (appearance-dependent).
+
 
 \membersection{cbRowDragPlugin::DrawTrianDown}\label{cbrowdragplugindrawtriandown}
 
 \func{void}{DrawTrianDown}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawTrianRight}\label{cbrowdragplugindrawtrianright}
 
 \func{void}{DrawTrianRight}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}}
 
+Implements 'hard-coded metafile' for Netscape Navigator look.
+
 
 \membersection{cbRowDragPlugin::DrawTrianUp}\label{cbrowdragplugindrawtrianup}
 
 \func{void}{DrawTrianUp}{\param{wxRect\& }{inRect}, \param{wxDC\& }{dc}}
 
-"hard-coded metafile" for NN-look
+Implements 'hard-coded metafile' for Netscape Navigator look.
 
 
 \membersection{cbRowDragPlugin::ExpandRow}\label{cbrowdragpluginexpandrow}
 
 \func{void}{ExpandRow}{\param{int }{collapsedIconIdx}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::FinishOnScreenDraw}\label{cbrowdragpluginfinishonscreendraw}
 
 \func{void}{FinishOnScreenDraw}{\void}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::GetCollapsedIconsPos}\label{cbrowdragplugingetcollapsediconspos}
 
 \func{int}{GetCollapsedIconsPos}{\void}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::GetCollapsedInconRect}\label{cbrowdragplugingetcollapsedinconrect}
 
 \func{void}{GetCollapsedInconRect}{\param{int }{iconIdx}, \param{wxRect\& }{rect}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::GetCollapsedRowIconHeight}\label{cbrowdragplugingetcollapsedrowiconheight}
 
 \func{int}{GetCollapsedRowIconHeight}{\void}
 
+Gets the collapsed row icon height.
+
 
 \membersection{cbRowDragPlugin::GetFirstRow}\label{cbrowdragplugingetfirstrow}
 
 \func{cbRowInfo*}{GetFirstRow}{\void}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::GetHRowsCountForPane}\label{cbrowdragplugingethrowscountforpane}
 
 \func{int}{GetHRowsCountForPane}{\param{cbDockPane* }{pPane}}
 
-helpers for drag\&drop
+Helper for drag and drop.
 
 
 \membersection{cbRowDragPlugin::GetRowDragHintWidth}\label{cbrowdragplugingetrowdraghintwidth}
 
 \func{int}{GetRowDragHintWidth}{\void}
 
+Gets the row drag hint width.
+
 
 \membersection{cbRowDragPlugin::GetRowHintRect}\label{cbrowdragplugingetrowhintrect}
 
 \func{void}{GetRowHintRect}{\param{cbRowInfo* }{pRow}, \param{wxRect\& }{rect}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::HitTestCollapsedRowIcon}\label{cbrowdragpluginhittestcollapsedrowicon}
 
 \func{bool}{HitTestCollapsedRowIcon}{\param{int }{iconIdx}, \param{const wxPoint\& }{pos}}
 
+Test for the collapsed row icon position.
+
 
 \membersection{cbRowDragPlugin::HitTestRowDragHint}\label{cbrowdragpluginhittestrowdraghint}
 
 \func{bool}{HitTestRowDragHint}{\param{cbRowInfo* }{pRow}, \param{const wxPoint\& }{pos}}
 
+Test for the row drag hint position.
+
 
 \membersection{cbRowDragPlugin::InsertDraggedRowBefore}\label{cbrowdragplugininsertdraggedrowbefore}
 
 \func{void}{InsertDraggedRowBefore}{\param{cbRowInfo* }{pBeforeRow}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::ItemIsInFocus}\label{cbrowdragpluginitemisinfocus}
 
 \func{bool}{ItemIsInFocus}{\void}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::OnDrawPaneBackground}\label{cbrowdragpluginondrawpanebackground}
 
 \func{void}{OnDrawPaneBackground}{\param{cbDrawPaneDecorEvent\& }{event}}
 
+Handles pane drawing plugin events (appearance-independent logic).
+
 
 \membersection{cbRowDragPlugin::OnInitPlugin}\label{cbrowdragpluginoninitplugin}
 
 \func{void}{OnInitPlugin}{\void}
 
+Called to initialize this plugin.
+
 
 \membersection{cbRowDragPlugin::OnLButtonDown}\label{cbrowdragpluginonlbuttondown}
 
 \func{void}{OnLButtonDown}{\param{cbLeftDownEvent\& }{event}}
 
+Handles left button down plugin events (appearance-independent logic).
+
 
 \membersection{cbRowDragPlugin::OnLButtonUp}\label{cbrowdragpluginonlbuttonup}
 
 \func{void}{OnLButtonUp}{\param{cbLeftUpEvent\& }{event}}
 
+Handles left button up plugin events (appearance-independent logic).
+
 
 \membersection{cbRowDragPlugin::OnMouseMove}\label{cbrowdragpluginonmousemove}
 
 \func{void}{OnMouseMove}{\param{cbMotionEvent\& }{event}}
 
-handlers for plugin events (appearence-independent logic)
+Handles mouse move plugin events (appearance-independent logic).
 
 
 \membersection{cbRowDragPlugin::PrepareForRowDrag}\label{cbrowdragpluginprepareforrowdrag}
 
 \func{void}{PrepareForRowDrag}{\void}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::SetMouseCapture}\label{cbrowdragpluginsetmousecapture}
 
 \func{void}{SetMouseCapture}{\param{bool }{captureOn}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::SetPaneMargins}\label{cbrowdragpluginsetpanemargins}
 
 \func{void}{SetPaneMargins}{\void}
 
+Sets the pane margins.
+
 
 \membersection{cbRowDragPlugin::ShowDraggedRow}\label{cbrowdragpluginshowdraggedrow}
 
 \func{void}{ShowDraggedRow}{\param{int }{offset}}
 
+Helper for drag and drop.
+
 
 \membersection{cbRowDragPlugin::ShowPaneImage}\label{cbrowdragpluginshowpaneimage}
 
 \func{void}{ShowPaneImage}{\void}
 
+Helper for drag and drop.
+
+
+\membersection{cbRowDragPlugin::UnhighlightItemInFocus}\label{cbrowdragpluginunhighlightiteminfocus}
 
-\membersection{cbRowDragPlugin::UnhiglightItemInFocus}\label{cbrowdragpluginunhiglightiteminfocus}
+\func{void}{UnhighlightItemInFocus}{\void}
 
-\func{void}{UnhiglightItemInFocus}{\void}
+Helper for drag and drop.
 
index f3dfd7dd55b165aa02c061b70f7b4a1992cdd234..318b26dc5fb45957e9a9b764cf0c4ce3b7f9fe34 100644 (file)
@@ -1,15 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
 \section{\class{cbRowInfo}}\label{cbrowinfo}
 
+
+Helper class used internally by the wxFrameLayout class.
+Holds and manages information about bar rows.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbRowInfo}{\void}
 
+Constructor.
+
 
 \membersection{cbRowInfo::\destruct{cbRowInfo}}\label{cbrowinfodtor}
 
 \func{}{\destruct{cbRowInfo}}{\void}
 
+Destructor.
+
 
 \membersection{cbRowInfo::GetFirstBar}\label{cbrowinfogetfirstbar}
 
 \func{cbBarInfo*}{GetFirstBar}{\void}
 
-convenience method
+Returns the first bar.
 
index 29993e4d277bb4fe478f0b475017ff0772bdb9d6..25a6d517b062857c48be91a3744f2c507edfba78 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% rowlayoutpl.h at 05/Jan/02 22:50:58
+% rowlayoutpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{cbRowLayoutPlugin}}\label{cbrowlayoutplugin}
 
 
-Simple implementation of plugin, which handles row-layouting
-   requests sent from Frame Layout
+Simple implementation of a plugin which handles row layout
+requests sent from a frame layout.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<rowlayoutpl.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -23,132 +27,178 @@ Simple implementation of plugin, which handles row-layouting
 
 \func{}{cbRowLayoutPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor taking frame layout pane and pane mask.
+
 
 \func{}{cbRowLayoutPlugin}{\void}
 
+Default constructor.
+
 
 \membersection{cbRowLayoutPlugin::AdjustLengthOfInserted}\label{cbrowlayoutpluginadjustlengthofinserted}
 
 \func{void}{AdjustLengthOfInserted}{\param{cbRowInfo* }{pRow}, \param{cbBarInfo* }{pTheBar}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::ApplyLengthRatios}\label{cbrowlayoutpluginapplylengthratios}
 
 \func{void}{ApplyLengthRatios}{\param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::CalcRowHeight}\label{cbrowlayoutplugincalcrowheight}
 
 \func{int}{CalcRowHeight}{\param{cbRowInfo\& }{row}}
 
-row-layouting helpers (simulate "bar-friction")
+Row layout helper simulating bar 'friction'.
 
 
 \membersection{cbRowLayoutPlugin::CheckIfAtTheBoundary}\label{cbrowlayoutplugincheckifattheboundary}
 
 \func{void}{CheckIfAtTheBoundary}{\param{cbBarInfo* }{pTheBar}, \param{cbRowInfo\& }{rowInfo}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::DetectBarHandles}\label{cbrowlayoutplugindetectbarhandles}
 
 \func{void}{DetectBarHandles}{\param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::DoInsertBar}\label{cbrowlayoutplugindoinsertbar}
 
 \func{void}{DoInsertBar}{\param{cbBarInfo* }{pTheBar}, \param{cbRowInfo\& }{row}}
 
+Insert the bar before the given row.
+
 
 \membersection{cbRowLayoutPlugin::ExpandNotFixedBars}\label{cbrowlayoutpluginexpandnotfixedbars}
 
 \func{void}{ExpandNotFixedBars}{\param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::FitBarsToRange}\label{cbrowlayoutpluginfitbarstorange}
 
 \func{void}{FitBarsToRange}{\param{int }{from}, \param{int }{till}, \param{cbBarInfo* }{pTheBar}, \param{cbRowInfo* }{pRow}}
 
-not-fixed-bars layouting related helpers
+Internal helper relating to not-fixed-bars layout.
 
 
 \membersection{cbRowLayoutPlugin::GetRowFreeSpace}\label{cbrowlayoutplugingetrowfreespace}
 
 \func{int}{GetRowFreeSpace}{\param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::InsertBefore}\label{cbrowlayoutplugininsertbefore}
 
 \func{void}{InsertBefore}{\param{cbBarInfo* }{pBeforeBar}, \param{cbBarInfo* }{pTheBar}, \param{cbRowInfo\& }{row}}
 
+Insert the bar before the given row.
+
 
 \membersection{cbRowLayoutPlugin::LayoutItemsVertically}\label{cbrowlayoutpluginlayoutitemsvertically}
 
 \func{void}{LayoutItemsVertically}{\param{cbRowInfo\& }{row}}
 
+Row layout helper simulating bar 'friction'.
+
 
 \membersection{cbRowLayoutPlugin::MinimzeNotFixedBars}\label{cbrowlayoutpluginminimzenotfixedbars}
 
 \func{void}{MinimzeNotFixedBars}{\param{cbRowInfo* }{pRow}, \param{cbBarInfo* }{pBarToPreserve}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::OnInsertBar}\label{cbrowlayoutpluginoninsertbar}
 
 \func{void}{OnInsertBar}{\param{cbInsertBarEvent\& }{event}}
 
+Responds to bar insertion event.
+
 
 \membersection{cbRowLayoutPlugin::OnLayoutRow}\label{cbrowlayoutpluginonlayoutrow}
 
 \func{void}{OnLayoutRow}{\param{cbLayoutRowEvent\& }{event}}
 
+Responds to row layout event.
+
 
 \membersection{cbRowLayoutPlugin::OnLayoutRows}\label{cbrowlayoutpluginonlayoutrows}
 
 \func{void}{OnLayoutRows}{\param{cbLayoutRowsEvent\& }{event}}
 
+Responds to rows layout event.
+
 
 \membersection{cbRowLayoutPlugin::OnRemoveBar}\label{cbrowlayoutpluginonremovebar}
 
 \func{void}{OnRemoveBar}{\param{cbRemoveBarEvent\& }{event}}
 
+Responds to bar removal event.
+
 
 \membersection{cbRowLayoutPlugin::OnResizeRow}\label{cbrowlayoutpluginonresizerow}
 
 \func{void}{OnResizeRow}{\param{cbResizeRowEvent\& }{event}}
 
-event handlers
+Responds to row resize event.
 
 
 \membersection{cbRowLayoutPlugin::RecalcLengthRatios}\label{cbrowlayoutpluginrecalclengthratios}
 
 \func{void}{RecalcLengthRatios}{\param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::RelayoutNotFixedBarsAround}\label{cbrowlayoutpluginrelayoutnotfixedbarsaround}
 
 \func{void}{RelayoutNotFixedBarsAround}{\param{cbBarInfo* }{pTheBar}, \param{cbRowInfo* }{pRow}}
 
+Internal helper relating to not-fixed-bars layout.
+
 
 \membersection{cbRowLayoutPlugin::ShiftLeftTrashold}\label{cbrowlayoutpluginshiftlefttrashold}
 
 \func{void}{ShiftLeftTrashold}{\param{cbBarInfo* }{pTheBar}, \param{cbRowInfo\& }{row}}
 
+Row layout helper simulating bar 'friction'.
+
 
 \membersection{cbRowLayoutPlugin::ShiftRightTrashold}\label{cbrowlayoutpluginshiftrighttrashold}
 
 \func{void}{ShiftRightTrashold}{\param{cbBarInfo* }{pTheBar}, \param{cbRowInfo\& }{row}}
 
+Row layout helper simulating bar 'friction'.
+
 
 \membersection{cbRowLayoutPlugin::SlideLeftSideBars}\label{cbrowlayoutpluginslideleftsidebars}
 
 \func{void}{SlideLeftSideBars}{\param{cbBarInfo* }{pTheBar}}
 
+Row layout helper simulating bar 'friction'.
+
 
 \membersection{cbRowLayoutPlugin::SlideRightSideBars}\label{cbrowlayoutpluginsliderightsidebars}
 
 \func{void}{SlideRightSideBars}{\param{cbBarInfo* }{pTheBar}}
 
+Row layout helper simulating bar 'friction'.
+
 
 \membersection{cbRowLayoutPlugin::StickRightSideBars}\label{cbrowlayoutpluginstickrightsidebars}
 
 \func{void}{StickRightSideBars}{\param{cbBarInfo* }{pToBar}}
 
+Row layout helper simulating bar 'friction'.
+
index 25778efc10acaee699974261ddeca3e33d17123d..39176f0958c69a89bb70885eff8e752f798c40f2 100644 (file)
@@ -1,15 +1,24 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% cbcustom.h at 05/Jan/02 22:50:56
+% cbcustom.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{cbSimpleCustomizationPlugin}}\label{cbsimplecustomizationplugin}
 
+
+This class enables customization of a bar, popping up a
+menu and handling basic customization such as floating
+and horizontal/vertical alignment of the bar.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginBase}{cbpluginbase}
 
+\wxheading{Include files}
+
+<cbcustom.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{cbSimpleCustomizationPlugin}{\param{wxFrameLayout* }{pPanel}, \param{int }{paneMask = wxALL\_PANES}}
 
+Constructor, taking parent pane and a pane mask flag.
+
 
 \func{}{cbSimpleCustomizationPlugin}{\void}
 
+Default constructor.
+
 
 \membersection{cbSimpleCustomizationPlugin::OnCustomizeBar}\label{cbsimplecustomizationpluginoncustomizebar}
 
 \func{void}{OnCustomizeBar}{\param{cbCustomizeBarEvent\& }{event}}
 
-plugin-event handlers
+Plugin event handler for cbCustomizeBarEvent.
 
 
 \membersection{cbSimpleCustomizationPlugin::OnCustomizeLayout}\label{cbsimplecustomizationpluginoncustomizelayout}
 
 \func{void}{OnCustomizeLayout}{\param{cbCustomizeLayoutEvent\& }{event}}
 
+Plugin event handler for cbCustomizeLayoutEvent.
+
 
 \membersection{cbSimpleCustomizationPlugin::OnMenuItemSelected}\label{cbsimplecustomizationpluginonmenuitemselected}
 
 \func{void}{OnMenuItemSelected}{\param{wxCommandEvent\& }{event}}
 
-menu-event handler
+Menu event handler.
 
index e08ac5e518bf75fc825447b24a760647a0adb06f..b9a3c97e3ec48d6741891c48cdd829c80a803d2e 100644 (file)
@@ -1,19 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% updatesmgr.h at 05/Jan/02 22:50:58
+% updatesmgr.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{cbSimpleUpdatesMgr}}\label{cbsimpleupdatesmgr}
 
 
-class implements slightly optimized logic for refreshing
-   areas of frame layout - which actually need to be updated. 
+This class implements slightly optimized logic for refreshing
+the areas of frame layout that actually need to be updated.
+
 \wxheading{Derived from}
 
 \helpref{cbUpdatesManagerBase}{cbupdatesmanagerbase}
 
+\wxheading{Include files}
+
+<updatesmgr.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -23,51 +27,72 @@ class implements slightly optimized logic for refreshing
 
 \func{}{cbSimpleUpdatesMgr}{\void}
 
+Default constructor.
+
 
 \func{}{cbSimpleUpdatesMgr}{\param{wxFrameLayout* }{pPanel}}
 
+Constructor taking frame layout panel.
+
 
 \membersection{cbSimpleUpdatesMgr::OnBarWillChange}\label{cbsimpleupdatesmgronbarwillchange}
 
 \func{void}{OnBarWillChange}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pInRow}, \param{cbDockPane* }{pInPane}}
 
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
+
 
 \membersection{cbSimpleUpdatesMgr::OnFinishChanges}\label{cbsimpleupdatesmgronfinishchanges}
 
 \func{void}{OnFinishChanges}{\void}
 
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
+
 
 \membersection{cbSimpleUpdatesMgr::OnPaneMarginsWillChange}\label{cbsimpleupdatesmgronpanemarginswillchange}
 
 \func{void}{OnPaneMarginsWillChange}{\param{cbDockPane* }{pPane}}
 
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
+
 
 \membersection{cbSimpleUpdatesMgr::OnPaneWillChange}\label{cbsimpleupdatesmgronpanewillchange}
 
 \func{void}{OnPaneWillChange}{\param{cbDockPane* }{pPane}}
 
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
+
 
 \membersection{cbSimpleUpdatesMgr::OnRowWillChange}\label{cbsimpleupdatesmgronrowwillchange}
 
 \func{void}{OnRowWillChange}{\param{cbRowInfo* }{pRow}, \param{cbDockPane* }{pInPane}}
 
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
+
 
 \membersection{cbSimpleUpdatesMgr::OnStartChanges}\label{cbsimpleupdatesmgronstartchanges}
 
 \func{void}{OnStartChanges}{\void}
 
-notificiactions received from Frame Layout (in the order, in which
-they usually would be invoked)
+Notification received from Frame Layout in the order in which
+they would usually be invoked.
 
 
 \membersection{cbSimpleUpdatesMgr::UpdateNow}\label{cbsimpleupdatesmgrupdatenow}
 
 \func{void}{UpdateNow}{\void}
 
-refreshes parts of the frame layout, which need an update
+Refreshes the parts of the frame layoutthat need an update.
 
 
 \membersection{cbSimpleUpdatesMgr::WasChanged}\label{cbsimpleupdatesmgrwaschanged}
 
 \func{bool}{WasChanged}{\param{cbUpdateMgrData\& }{data}, \param{wxRect\& }{currentBounds}}
 
+Helper function.
+
index 5af196f9de6b1b407b9afa249f3cc1e52582a5c1..a464b321d9714524fbf14b2f1c8ba7d57e20744b 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:00
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbSizeBarWndEvent}}\label{cbsizebarwndevent}
 
+
+Class for bar window resize events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbSizeBarWndEvent}{\param{cbBarInfo* }{pBar}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information and pane.
+
index 9290ab75b08db6b781f1be17d0f3caf41537f0f1..0a0c39f0b9cf5aabea447f3155fd07f11e03da42 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbStartBarDraggingEvent}}\label{cbstartbardraggingevent}
 
+
+Class for start-bar-dragging events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -19,3 +26,5 @@
 
 \func{}{cbStartBarDraggingEvent}{\param{cbBarInfo* }{pBar}, \param{const wxPoint\& }{pos}, \param{cbDockPane* }{pPane}}
 
+Constructor, taking bar information, mouse position, and pane.
+
index 29f2c6cec4ad69a0e1f721490a8f9302facc5b11..5f206c9b994d36e07a6cf7fc0acf8b469b8ad0bc 100644 (file)
@@ -1,15 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:51:01
+% controlbar.h at 21/Jan/02 21:14:16
 %
 
 
 \section{\class{cbStartDrawInAreaEvent}}\label{cbstartdrawinareaevent}
 
+
+Class for start drawing in area events.
+
 \wxheading{Derived from}
 
 \helpref{cbPluginEvent}{cbpluginevent}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -20,4 +27,5 @@
 \func{}{cbStartDrawInAreaEvent}{\param{const wxRect\& }{area}, \param{wxDC** }{ppDCForArea}, \param{cbDockPane* }{pPane}}
 
 to the obtained buffer-context should be placed
+Constructor, taking rectangular area, device context pointer to a pointer, and pane.
 
index 049d5b84cd905d64d9be90f448af107fab6686c9..13e5ded7182d5596a9e4255ccbf1d8f27a54aef7 100644 (file)
@@ -1,21 +1,24 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:58
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
 \section{\class{cbUpdateMgrData}}\label{cbupdatemgrdata}
 
 
-structure, which is present in each item of layout,
-   it used by any specific updates-manager to store
-   auxilary information to be used by it's specific
-   updating algorithm
+A structure that is present in each item of layout,
+used by any particular updates-manager to store
+auxiliary information to be used by its updating algorithm.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -25,25 +28,33 @@ structure, which is present in each item of layout,
 
 \func{}{cbUpdateMgrData}{\void}
 
-is-dirty flag is set TRUE initially
+Default constructor. Is-dirty flag is set TRUE initially.
 
 
 \membersection{cbUpdateMgrData::IsDirty}\label{cbupdatemgrdataisdirty}
 
 \func{bool}{IsDirty}{\void}
 
+Returns the is-dirty flag.
+
 
 \membersection{cbUpdateMgrData::SetCustomData}\label{cbupdatemgrdatasetcustomdata}
 
 \func{void}{SetCustomData}{\param{wxObject* }{pCustomData}}
 
+Set custom data.
+
 
 \membersection{cbUpdateMgrData::SetDirty}\label{cbupdatemgrdatasetdirty}
 
 \func{void}{SetDirty}{\param{bool }{isDirty = TRUE}}
 
+Set the dirty flag.
+
 
 \membersection{cbUpdateMgrData::StoreItemState}\label{cbupdatemgrdatastoreitemstate}
 
 \func{void}{StoreItemState}{\param{const wxRect\& }{boundsInParent}}
 
+Store the item state.
+
index e52dbf44e7e07bb2cdddad7f8344787b00c23564..b5c71937ec84b8343b466cdf36dbae24c258b2f5 100644 (file)
@@ -1,20 +1,24 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:59
+% controlbar.h at 21/Jan/02 21:14:14
 %
 
 
 \section{\class{cbUpdatesManagerBase}}\label{cbupdatesmanagerbase}
 
 
-class declares abstract interface for optimized logic, which should refresh
-   areas of frame layout - that actually need to be updated. Should be extended,
-   to implement custom updating strategy
+This class declares an abstract interface for optimized logic that should refresh
+areas of frame layout that actually need to be updated. This should be extended in future
+to implement a custom updating strategy.
+
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -24,57 +28,85 @@ class declares abstract interface for optimized logic, which should refresh
 
 \func{}{cbUpdatesManagerBase}{\param{wxFrameLayout* }{pPanel}}
 
+Constructor taking layout panel.
+
 
 \func{}{cbUpdatesManagerBase}{\void}
 
+Default constructor
+
 
 \membersection{cbUpdatesManagerBase::\destruct{cbUpdatesManagerBase}}\label{cbupdatesmanagerbasedtor}
 
 \func{}{\destruct{cbUpdatesManagerBase}}{\void}
 
+Destructor.
+
 
 \membersection{cbUpdatesManagerBase::OnBarWillChange}\label{cbupdatesmanagerbaseonbarwillchange}
 
 \func{void}{OnBarWillChange}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pInRow}, \param{cbDockPane* }{pInPane}}
 
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
+
 
 \membersection{cbUpdatesManagerBase::OnFinishChanges}\label{cbupdatesmanagerbaseonfinishchanges}
 
 \func{void}{OnFinishChanges}{\void}
 
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
+
 
 \membersection{cbUpdatesManagerBase::OnPaneMarginsWillChange}\label{cbupdatesmanagerbaseonpanemarginswillchange}
 
 \func{void}{OnPaneMarginsWillChange}{\param{cbDockPane* }{pPane}}
 
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
+
 
 \membersection{cbUpdatesManagerBase::OnPaneWillChange}\label{cbupdatesmanagerbaseonpanewillchange}
 
 \func{void}{OnPaneWillChange}{\param{cbDockPane* }{pPane}}
 
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
+
 
 \membersection{cbUpdatesManagerBase::OnRowWillChange}\label{cbupdatesmanagerbaseonrowwillchange}
 
 \func{void}{OnRowWillChange}{\param{cbRowInfo* }{pRow}, \param{cbDockPane* }{pInPane}}
 
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
+
 
 \membersection{cbUpdatesManagerBase::OnStartChanges}\label{cbupdatesmanagerbaseonstartchanges}
 
 \func{void}{OnStartChanges}{\void}
 
-notificiactions received from frame-layout (in the order, in which
-they usually would be invoked). Custom updates-managers may utilize
-these notifications to implement more "fine-grained" updating strategy
+This function receives a notification from the frame layout (in the order in which
+they would usually be invoked). Custom updates-managers may utilize
+these notifications to implement a more fine-grained updating strategy.
 
 
 \membersection{cbUpdatesManagerBase::SetLayout}\label{cbupdatesmanagerbasesetlayout}
 
 \func{void}{SetLayout}{\param{wxFrameLayout* }{pLayout}}
 
+Sets the associated layout.
+
 
 \membersection{cbUpdatesManagerBase::UpdateNow}\label{cbupdatesmanagerbaseupdatenow}
 
 \func{void}{UpdateNow}{\void}
 
-refreshes parts of the frame layout, which need an update
+Refreshes parts of the frame layout that need an update.
 
index 14d6ec003be6fc51128d90f7a4a5bfa4a23e3d74..b6a6283310590a90f51a39274df97073eaa8841d 100644 (file)
@@ -34,9 +34,9 @@
 \input cbfinishdrawinareaevent.tex
 \input cbfloatedbarwindow.tex
 \input cbgcupdatesmgr.tex
-\input cbhiddenbarinfo.tex
+%\input cbhiddenbarinfo.tex
 \input cbhintanimationplugin.tex
-\input cbhintanimtimer.tex
+%\input cbhintanimtimer.tex
 \input cbinsertbarevent.tex
 \input cblayoutrowevent.tex
 \input cblayoutrowsevent.tex
 \input dyntoolinfo.tex
 \input framelayout.tex
 \input framemanager.tex
-\input frameview.tex
+%\input frameview.tex
 \input garbagecollector.tex
-\input gcitem.tex
 \input layoutmanagerbase.tex
-\input morphinfot.tex
+%\input morphinfot.tex
 \input newbitmapbutton.tex
 \input toollayoutitem.tex
 \input toolwindow.tex
index 4b0438e6e0e9824896221ddbf0a93a4fd9949535..5767281260d5e625ab8efba5b9d836178204e702 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbar.h at 05/Jan/02 22:50:56
+% dyntbar.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{wxDynamicToolBar}}\label{wxdynamictoolbar}
 
 
-class manages containment and layouting of tool-windows
+wxDynamicToolBar manages containment and layout of tool windows.
 
 \wxheading{Derived from}
 
 \helpref{wxToolBarBase}{wxtoolbarbase}
 
+\wxheading{Include files}
+
+<dyntbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,164 +26,202 @@ class manages containment and layouting of tool-windows
 
 \func{}{wxDynamicToolBar}{\void}
 
+Default constructor.
+
 
 \func{}{wxDynamicToolBar}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{const long }{style = wxNO\_BORDER}, \param{const int }{orientation = wxVERTICAL}, \param{const int }{RowsOrColumns = 1}, \param{const wxString\& }{name = wxToolBarNameStr}}
 
+Constructor: see the documentation for wxToolBar for details.
+
 
 \membersection{wxDynamicToolBar::\destruct{wxDynamicToolBar}}\label{wxdynamictoolbardtor}
 
 \func{}{\destruct{wxDynamicToolBar}}{\void}
 
+Destructor.
+
 
 \membersection{wxDynamicToolBar::AddSeparator}\label{wxdynamictoolbaraddseparator}
 
 \func{void}{AddSeparator}{\param{wxWindow* }{pSepartorWnd = NULL}}
 
+Adds a separator. See the documentation for wxToolBar for details.
+
 
 \membersection{wxDynamicToolBar::AddTool}\label{wxdynamictoolbaraddtool}
 
 \func{void}{AddTool}{\param{int }{toolIndex}, \param{wxWindow* }{pToolWindow}, \param{const wxSize\& }{size = wxDefaultSize}}
 
-overridables
+Adds a tool. See the documentation for wxToolBar for details.
 
 
 \func{void}{AddTool}{\param{int }{toolIndex}, \param{const wxString\& }{imageFileName}, \param{wxBitmapType }{imageFileType = wxBITMAP\_TYPE\_BMP}, \param{const wxString\& }{labelText = ""}, \param{bool }{alignTextRight = FALSE}, \param{bool }{isFlat = TRUE}}
 
+Adds a tool. See the documentation for wxToolBar for details.
+
 
 \func{void}{AddTool}{\param{int }{toolIndex}, \param{wxBitmap }{labelBmp}, \param{const wxString\& }{labelText = ""}, \param{bool }{alignTextRight = FALSE}, \param{bool }{isFlat = TRUE}}
 
+Adds a tool. See the documentation for wxToolBar for details.
+
 
 \func{wxToolBarToolBase*}{AddTool}{\param{const int }{toolIndex}, \param{const wxBitmap\& }{bitmap}, \param{const wxBitmap\& }{pushedBitmap = wxNullBitmap}, \param{const bool }{toggle = FALSE}, \param{const long }{xPos = -1}, \param{const long }{yPos = -1}, \param{wxObject* }{clientData = NULL}, \param{const wxString\& }{helpString1 = ""}, \param{const wxString\& }{helpString2 = ""}}
 
-method from wxToolBarBase (for compatibility), only
-first two arguments are valid
+Method from wxToolBarBase (for compatibility), only
+the first two arguments are valid.
+See the documentation for wxToolBar for details.
 
 
 \membersection{wxDynamicToolBar::Create}\label{wxdynamictoolbarcreate}
 
 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{const long }{style = wxNO\_BORDER}, \param{const int }{orientation = wxVERTICAL}, \param{const int }{RowsOrColumns = 1}, \param{const wxString\& }{name = wxToolBarNameStr}}
 
+Creation function: see the documentation for wxToolBar for details.
+
+
+\membersection{wxDynamicToolBar::CreateDefaultLayout}\label{wxdynamictoolbarcreatedefaultlayout}
 
-\membersection{wxDynamicToolBar::CreateDefaulLayout}\label{wxdynamictoolbarcreatedefaullayout}
+\func{LayoutManagerBase*}{CreateDefaultLayout}{\void}
 
-\func{LayoutManagerBase*}{CreateDefaulLayout}{\void}
+Creates the default layout (BagLayout).
 
 
 \membersection{wxDynamicToolBar::CreateTool}\label{wxdynamictoolbarcreatetool}
 
 \func{wxToolBarToolBase*}{CreateTool}{\param{wxControl* }{control}}
 
+Creates a toolbar tool.
+
 
 \func{wxToolBarToolBase*}{CreateTool}{\param{int }{id}, \param{const wxBitmap\& }{bitmap1}, \param{const wxBitmap\& }{bitmap2}, \param{bool }{toggle}, \param{wxObject* }{clientData}, \param{const wxString\& }{shortHelpString}, \param{const wxString\& }{longHelpString}}
 
-the functions to create toolbar tools
+Creates a toolbar tool.
 
 
 \membersection{wxDynamicToolBar::DoDeleteTool}\label{wxdynamictoolbardodeletetool}
 
 \func{bool}{DoDeleteTool}{\param{size\_t }{pos}, \param{wxToolBarToolBase* }{tool}}
 
-the tool is still in m\_tools list when this function is called, it will
-only be deleted from it if it succeeds
+Deletes a tool. The tool is still in m\_tools list when this function is called, and it will
+only be deleted from it if it succeeds.
 
 
 \membersection{wxDynamicToolBar::DoEnableTool}\label{wxdynamictoolbardoenabletool}
 
 \func{void}{DoEnableTool}{\param{wxToolBarToolBase* }{tool}, \param{bool }{enable}}
 
-called when the tools enabled flag changes
+Called when the tools enabled flag changes.
 
 
 \membersection{wxDynamicToolBar::DoInsertTool}\label{wxdynamictoolbardoinserttool}
 
 \func{bool}{DoInsertTool}{\param{size\_t }{pos}, \param{wxToolBarToolBase* }{tool}}
 
+Inserts a tool at the given position.
+
 
 \membersection{wxDynamicToolBar::DoSetToggle}\label{wxdynamictoolbardosettoggle}
 
 \func{void}{DoSetToggle}{\param{wxToolBarToolBase* }{tool}, \param{bool }{toggle}}
 
-called when the tools "can be toggled" flag changes
+Called when the tools 'can be toggled' flag changes.
 
 
 \membersection{wxDynamicToolBar::DoToggleTool}\label{wxdynamictoolbardotoggletool}
 
 \func{void}{DoToggleTool}{\param{wxToolBarToolBase* }{tool}, \param{bool }{toggle}}
 
-called when the tool is toggled
+Called when the tool is toggled.
 
 
 \membersection{wxDynamicToolBar::DrawSeparator}\label{wxdynamictoolbardrawseparator}
 
 \func{void}{DrawSeparator}{\param{wxDynToolInfo\& }{info}, \param{wxDC\& }{dc}}
 
-the default implementation draws shaded line
+Draws a separator. The default implementation draws a shaded line.
 
 
 \membersection{wxDynamicToolBar::EnableTool}\label{wxdynamictoolbarenabletool}
 
 \func{void}{EnableTool}{\param{const int }{toolIndex}, \param{const bool }{enable = TRUE}}
 
+Enables or disables the given tool.
+
 
 \membersection{wxDynamicToolBar::FindToolForPosition}\label{wxdynamictoolbarfindtoolforposition}
 
 \constfunc{wxToolBarToolBase*}{FindToolForPosition}{\param{wxCoord }{x}, \param{wxCoord }{y}}
 
-stuff from the 2.1.15 
+Finds a tool for the given position.
 
 
 \membersection{wxDynamicToolBar::GetPreferredDim}\label{wxdynamictoolbargetpreferreddim}
 
 \func{void}{GetPreferredDim}{\param{const wxSize\& }{givenDim}, \param{wxSize\& }{prefDim}}
 
+Returns the preferred dimension, taking the given dimension and a reference to the result.
+
 
 \membersection{wxDynamicToolBar::GetToolInfo}\label{wxdynamictoolbargettoolinfo}
 
 \func{wxDynToolInfo*}{GetToolInfo}{\param{int }{toolIndex}}
 
+Returns tool information for the given tool index.
+
 
 \membersection{wxDynamicToolBar::Layout}\label{wxdynamictoolbarlayout}
 
 \func{bool}{Layout}{\void}
 
-see definitions of orientation types
+Performs layout. See definitions of orientation types.
 
 
 \membersection{wxDynamicToolBar::OnEraseBackground}\label{wxdynamictoolbaronerasebackground}
 
 \func{void}{OnEraseBackground}{\param{wxEraseEvent\& }{event}}
 
+Responds to background erase events. Currently does nothing.
+
 
 \membersection{wxDynamicToolBar::OnPaint}\label{wxdynamictoolbaronpaint}
 
 \func{void}{OnPaint}{\param{wxPaintEvent\& }{event}}
 
+Responds to paint events, drawing separators.
+
 
 \membersection{wxDynamicToolBar::OnSize}\label{wxdynamictoolbaronsize}
 
 \func{void}{OnSize}{\param{wxSizeEvent\& }{event}}
 
-event handlers
+Responds to size events, calling Layout.
 
 
 \membersection{wxDynamicToolBar::Realize}\label{wxdynamictoolbarrealize}
 
 \func{bool}{Realize}{\void}
 
-overriden from wxToolBarBase
+Overriden from wxToolBarBase; does nothing.
 
 
 \membersection{wxDynamicToolBar::RemveTool}\label{wxdynamictoolbarremvetool}
 
 \func{void}{RemveTool}{\param{int }{toolIndex}}
 
+Removes the given tool. Misspelt in order not to clash with a similar function
+in the base class.
+
 
 \membersection{wxDynamicToolBar::SetLayout}\label{wxdynamictoolbarsetlayout}
 
 \func{void}{SetLayout}{\param{LayoutManagerBase* }{pLayout}}
 
+Sets the layout for this toolbar.
+
 
 \membersection{wxDynamicToolBar::SizeToolWindows}\label{wxdynamictoolbarsizetoolwindows}
 
 \func{void}{SizeToolWindows}{\void}
 
+Internal function for sizing tool windows.
+
index 8faf4b561afb873d66b15bd66eb2299776c68932..99deb6c10be3c7ab0598494af0cdec794f147f2b 100644 (file)
@@ -1,14 +1,21 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbar.h at 05/Jan/02 22:50:56
+% dyntbar.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{wxDynToolInfo}}\label{wxdyntoolinfo}
 
+
+This class holds dynamic toolbar item information.
+
 \wxheading{Derived from}
 
 \helpref{wxToolLayoutItem}{wxtoollayoutitem}
 
+\wxheading{Include files}
+
+<dyntbar.h>
+
 \wxheading{Data structures}
 
index ce8e1aaa1cbfe98aea507724628fd4487fbcf50f..8be3975b57ac08bd8cc50bf9c56120abddf598c7 100644 (file)
@@ -1,20 +1,24 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% controlbar.h at 05/Jan/02 22:50:58
+% controlbar.h at 21/Jan/02 21:14:13
 %
 
 
 \section{\class{wxFrameLayout}}\label{wxframelayout}
 
 
-wxFrameLayout manages containment and docking of control bars.
-   which can be docked along top, bottom, righ, or left side of the
-   parent frame
+wxFrameLayout manages containment and docking of control bars,
+which can be docked along the top, bottom, right, or left side of the
+parent frame.
+
 \wxheading{Derived from}
 
 \helpref{wxEvtHandler}{wxevthandler}
 
+\wxheading{Include files}
+
+<controlbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -24,160 +28,188 @@ wxFrameLayout manages containment and docking of control bars.
 
 \func{}{wxFrameLayout}{\param{wxWindow* }{pParentFrame}, \param{wxWindow* }{pFrameClient = NULL}, \param{bool }{activateNow = TRUE}}
 
+Constructor, taking parent window, the (MDI) client of the parent if there
+is one, and flag specifying whether to activate the layout.
+
 
 \func{}{wxFrameLayout}{\void}
 
-used only while serializing
+Default constructor, used only for serialization.
 
 
 \membersection{wxFrameLayout::\destruct{wxFrameLayout}}\label{wxframelayoutdtor}
 
 \func{}{\destruct{wxFrameLayout}}{\void}
 
-(doesn't destroy bar windows)
+Destructor. It does not destroy the bar windows.
 
 
 \membersection{wxFrameLayout::Activate}\label{wxframelayoutactivate}
 
 \func{void}{Activate}{\void}
 
-Can be called after some other layout has been deactivated,
-and this one must "take over" the current contents of frame window.
-Effectively hooks itself to the frame window, re-displays all not-hidden
-bar-windows and repaints decorations
+Activate can be called after some other layout has been deactivated,
+and this one must take over the current contents of the frame window.
+Effectively hooks itself to the frame window, re-displays all non-hidden
+bar windows and repaints the decorations.
 
 
 \membersection{wxFrameLayout::AddBar}\label{wxframelayoutaddbar}
 
 \func{void}{AddBar}{\param{wxWindow* }{pBarWnd}, \param{const cbDimInfo\& }{dimInfo}, \param{int }{alignment = FL\_ALIGN\_TOP}, \param{int }{rowNo = 0}, \param{int }{columnPos = 0}, \param{const wxString\& }{name = "bar"}, \param{bool }{spyEvents = FALSE}, \param{int }{state = wxCBAR\_DOCKED\_HORIZONTALLY}}
 
-Adds bar information to frame-layout, appearence of layout is not refreshed
-immediately, RefreshNow() can be called if necessary.
-NOTES:: argument pBarWnd can by NULL, resulting bar decorations to be drawn
+Adds bar information to the frame layout. The appearance of the layout is not refreshed
+immediately; RefreshNow() can be called if necessary.
+Notes: the argument pBarWnd can by NULL, resulting in bar decorations to be drawn
 around the empty rectangle (filled with default background colour).
-Argument dimInfo, can be re-used for adding any number of bars, since
-it is not used directly, instead it's members are copied. If dimensions-
-handler is present, it's instance shared (reference counted). Dimension
-handler should always be allocated on the heap!)
+Argument dimInfo can be reused for adding any number of bars, since
+it is not used directly - instead its members are copied. If the dimensions
+handler is present, its instance is shared (reference counted). The dimension
+handler should always be allocated on the heap.
+pBarWnd is the window to be managed.
+dimInfo contains dimension information.
+alignment is a value such as FL\_ALIGN\_TOP.
+rowNo is the vertical position or row in the pane (if in docked state).
+columnPos is the horizontal position within the row in pixels (if in docked state).
+name is a name by which the bar can be referred in layout customization dialogs.
+If spyEvents is TRUE, input events for the bar should be "spyed" in order
+to forward unhandled mouse clicks to the frame layout, for example to enable
+easy draggablity of toolbars just by clicking on their interior regions.
+For widgets like text/tree control this value should be FALSE,
+since there's no certain way to detect  whether the event was actually handled.
+state is the initial state, such as wxCBAR\_DOCKED\_HORIZONTALLY,
+wxCBAR\_FLOATING, wxCBAR\_HIDDEN.
 
 
 \membersection{wxFrameLayout::AddPlugin}\label{wxframelayoutaddplugin}
 
 \func{void}{AddPlugin}{\param{wxClassInfo* }{pPlInfo}, \param{int }{paneMask = wxALL\_PANES}}
 
-"Advanced" methods for plugin-configuration    using their dynamic class information (e.g. CLASSINFO(pluginClass) ) first checks if plugin of the given class is already "hooked up",
-if not, adds it to the top of plugins chain
+An advanced methods for plugin configuration    using their
+dynamic class information, for example CLASSINFO(pluginClass).
+First checks if the plugin of the given class is already "hooked up".
+If not, adds it to the top of the plugins chain.
 
 
 \membersection{wxFrameLayout::AddPluginBefore}\label{wxframelayoutaddpluginbefore}
 
 \func{void}{AddPluginBefore}{\param{wxClassInfo* }{pNextPlInfo}, \param{wxClassInfo* }{pPlInfo}, \param{int }{paneMask = wxALL\_PANES}}
 
-first checks if plugin of the givne class already hooked,
-if so, removes it, and then inserts it to the chain
-before plugin of the class given by "pNextPlInfo"
-NOTE:: this method is "handy" in some cases, where the order
-of plugin-chain could be important, e.g. one plugin overrides
-some functionallity of the other already hooked plugin,
-thefore the former should be hooked before the one
-who's functionality is being overriden
+First checks if the plugin of the given class is already hooked.
+If so, removes it, and then inserts it into the chain
+before the plugin of the class given by pNextPlInfo.
+Note: this method is handy in some cases where the order
+of the plugin-chain could be important, for example when one plugin overrides
+some functionality of another already-hooked plugin,
+so that the former plugin should be hooked before the one
+whose functionality is being overridden.
 
 
 \membersection{wxFrameLayout::ApplyBarProperties}\label{wxframelayoutapplybarproperties}
 
 \func{void}{ApplyBarProperties}{\param{cbBarInfo* }{pBar}}
 
-reflects changes in bar information structure visually
-(e.g. moves bar, changes it's dimension info, pane to which it is docked)
+Reflects changes in bar information structure visually.
+For example, moves the bar, changes its dimension information,
+or changes the pane to which it is docked.
 
 
 \membersection{wxFrameLayout::CanReparent}\label{wxframelayoutcanreparent}
 
 \func{bool}{CanReparent}{\void}
 
-NOTE:: reparenting of windows may NOT work on all platforms
-(reparenting allows control-bars to be floated)
+Returns TRUE if the platform allows reparenting. This may not return TRUE
+for all platforms. Reparenting allows control bars to be floated.
 
 
 \membersection{wxFrameLayout::CaptureEventsForPane}\label{wxframelayoutcaptureeventsforpane}
 
 \func{void}{CaptureEventsForPane}{\param{cbDockPane* }{toPane}}
 
-called by plugins ( also captures/releases mouse in parent frame)
+Called by plugins; also captures the mouse in the parent frame.
 
 
 \membersection{wxFrameLayout::CaptureEventsForPlugin}\label{wxframelayoutcaptureeventsforplugin}
 
 \func{void}{CaptureEventsForPlugin}{\param{cbPluginBase* }{pPlugin}}
 
-captures/releases user-input event's for the given plugin
-Input events are: mouse movement, mouse clicks, keyboard input
+Captures user input events for the given plugin.
+Input events are: mouse movement, mouse clicks, keyboard input.
 
 
 \membersection{wxFrameLayout::CreateCursors}\label{wxframelayoutcreatecursors}
 
 \func{void}{CreateCursors}{\void}
 
+Creates the cursors.
+
 
 \membersection{wxFrameLayout::CreateUpdatesManager}\label{wxframelayoutcreateupdatesmanager}
 
 \func{cbUpdatesManagerBase*}{CreateUpdatesManager}{\void}
 
-factory method
+Returns a new cbGCUpdatesMgr object.
 
 
 \membersection{wxFrameLayout::Deactivate}\label{wxframelayoutdeactivate}
 
 \func{void}{Deactivate}{\void}
 
-unhooks itself from frame window, and hides all not-hidden windows
-NOTE:: two frame-layouts should not be active at the same time in the
-same frame window, it would cause messy overlapping of bar windows
-from both layouts
+Deactivate unhooks itself from frame window, and hides all non-hidden windows.
+Note: two frame layouts should not be active at the same time in the
+same frame window, since it would cause messy overlapping of bar windows
+from both layouts.
 
 
 \membersection{wxFrameLayout::DestroyBarWindows}\label{wxframelayoutdestroybarwindows}
 
 \func{void}{DestroyBarWindows}{\void}
 
+Destroys the bar windows.
+
 
 \membersection{wxFrameLayout::DoSetBarState}\label{wxframelayoutdosetbarstate}
 
 \func{void}{DoSetBarState}{\param{cbBarInfo* }{pBar}}
 
+Applies the state to the window objects.
+
 
 \membersection{wxFrameLayout::EnableFloating}\label{wxframelayoutenablefloating}
 
 \func{void}{EnableFloating}{\param{bool }{enable = TRUE}}
 
-(by default floating of control-bars is ON)
+Enables floating behaviour. By default floating of control bars is on.
 
 
 \membersection{wxFrameLayout::FindBarByName}\label{wxframelayoutfindbarbyname}
 
 \func{cbBarInfo*}{FindBarByName}{\param{const wxString\& }{name}}
 
-methods for access and modification of bars in frame layout
+Finds the bar in the framelayout, by name.
 
 
 \membersection{wxFrameLayout::FindBarByWindow}\label{wxframelayoutfindbarbywindow}
 
 \func{cbBarInfo*}{FindBarByWindow}{\param{const wxWindow* }{pWnd}}
 
+Finds the bar in the framelayout, by window.
+
 
 \membersection{wxFrameLayout::FindPlugin}\label{wxframelayoutfindplugin}
 
 \func{cbPluginBase*}{FindPlugin}{\param{wxClassInfo* }{pPlInfo}}
 
-returns NULL, if plugin of the given class is not hooked
+Finds a plugin with the given class, or returns NULL if a plugin of the given
+class is not hooked.
 
 
 \membersection{wxFrameLayout::FirePluginEvent}\label{wxframelayoutfirepluginevent}
 
 \func{void}{FirePluginEvent}{\param{cbPluginEvent\& }{event}}
 
-plugin-related methods **should be used, instead of passing the event to ProcessEvent(..) method
-of the top-plugin directly. This method checks if events are currently
+This function should be used instead of passing the event to the ProcessEvent method
+of the top-level plugin directly. This method checks if events are currently
 captured and ensures that plugin-event is routed correctly.
 
 
@@ -185,361 +217,439 @@ captured and ensures that plugin-event is routed correctly.
 
 \func{void}{ForwardMouseEvent}{\param{wxMouseEvent\& }{event}, \param{cbDockPane* }{pToPane}, \param{int }{eventType}}
 
-delegated from "bar-spy"
+Delegated from "bar-spy".
 
 
 \membersection{wxFrameLayout::GetBarPane}\label{wxframelayoutgetbarpane}
 
 \func{cbDockPane*}{GetBarPane}{\param{cbBarInfo* }{pBar}}
 
-returns panes, to which the given bar belongs
+Returns the pane to which the given bar belongs.
 
 
 \membersection{wxFrameLayout::GetBars}\label{wxframelayoutgetbars}
 
 \func{BarArrayT\&}{GetBars}{\void}
 
+Gets an array of bars.
+
 
 \membersection{wxFrameLayout::GetClientHeight}\label{wxframelayoutgetclientheight}
 
 \func{int}{GetClientHeight}{\void}
 
+Returns the client height.
+
 
 \membersection{wxFrameLayout::GetClientRect}\label{wxframelayoutgetclientrect}
 
 \func{wxRect\&}{GetClientRect}{\void}
 
+Returns the client's rectangle.
+
 
 \membersection{wxFrameLayout::GetClientWidth}\label{wxframelayoutgetclientwidth}
 
 \func{int}{GetClientWidth}{\void}
 
+Returns the client width.
+
 
 \membersection{wxFrameLayout::GetFrameClient}\label{wxframelayoutgetframeclient}
 
 \func{wxWindow*}{GetFrameClient}{\void}
 
+Returns the frame client, or NULL if not present.
+
 
 \membersection{wxFrameLayout::GetPane}\label{wxframelayoutgetpane}
 
 \func{cbDockPane*}{GetPane}{\param{int }{alignment}}
 
-see pane alignment types
+Returns a pane for the given alignment. See pane alignment types.
 
 
 \membersection{wxFrameLayout::GetPaneProperties}\label{wxframelayoutgetpaneproperties}
 
 \func{void}{GetPaneProperties}{\param{cbCommonPaneProperties\& }{props}, \param{int }{alignment = FL\_ALIGN\_TOP}}
 
-NOTE:: changing properties of panes, does not result immediate on-screen update
+Gets the pane properties for the given alignment.
 
 
 \membersection{wxFrameLayout::GetPanesArray}\label{wxframelayoutgetpanesarray}
 
 \func{cbDockPane**}{GetPanesArray}{\void}
 
-used by updates-managers
+Returns an array of panes. Used by update managers.
 
 
 \membersection{wxFrameLayout::GetParentFrame}\label{wxframelayoutgetparentframe}
 
 \func{wxWindow\&}{GetParentFrame}{\void}
 
+Returns the parent frame.
+
 
 \membersection{wxFrameLayout::GetPrevClientRect}\label{wxframelayoutgetprevclientrect}
 
 \func{wxRect\&}{GetPrevClientRect}{\void}
 
+Returns the previous client window rectangle.
+
 
 \membersection{wxFrameLayout::GetTopPlugin}\label{wxframelayoutgettopplugin}
 
 \func{cbPluginBase\&}{GetTopPlugin}{\void}
 
-returns current top-level plugin (the one which receives events first,
-with an exception if input-events are currently captured by some other plugin)
+Returns the current top-level plugin (the one that receives events first,
+except if input events are currently captured by some other plugin).
 
 
 \membersection{wxFrameLayout::GetUpdatesManager}\label{wxframelayoutgetupdatesmanager}
 
 \func{cbUpdatesManagerBase\&}{GetUpdatesManager}{\void}
 
-NOTE:: in future ubdates-manager will become a normal plugin
+Returns a reference to the updates manager.
+Note: in future, the updates manager will become a normal plugin.
 
 
 \membersection{wxFrameLayout::HasTopPlugin}\label{wxframelayouthastopplugin}
 
 \func{bool}{HasTopPlugin}{\void}
 
+Returns true if there is a top plugin.
+
 
 \membersection{wxFrameLayout::HideBarWindows}\label{wxframelayouthidebarwindows}
 
 \func{void}{HideBarWindows}{\void}
 
-also hides the client window if presents
+Hides the bar windows, and also the client window if present.
 
 
 \membersection{wxFrameLayout::HitTestPane}\label{wxframelayouthittestpane}
 
 \func{bool}{HitTestPane}{\param{cbDockPane* }{pPane}, \param{int }{x}, \param{int }{y}}
 
+Returns TRUE if the position is within the given pane.
+
 
 \membersection{wxFrameLayout::HitTestPanes}\label{wxframelayouthittestpanes}
 
 \func{cbDockPane*}{HitTestPanes}{\param{const wxRect\& }{rect}, \param{cbDockPane* }{pCurPane}}
 
+Returns the pane for which the rectangle hit test succeeds, giving
+preference to the given pane if supplied.
+
 
 \membersection{wxFrameLayout::HookUpToFrame}\label{wxframelayouthookuptoframe}
 
 \func{void}{HookUpToFrame}{\void}
 
+Hooks the layout up to the frame (pushes the layout onto the
+frame's event handler stack).
+
 
 \membersection{wxFrameLayout::InverseVisibility}\label{wxframelayoutinversevisibility}
 
 \func{void}{InverseVisibility}{\param{cbBarInfo* }{pBar}}
 
+Toggles the bar between visible and hidden.
+
 
 \membersection{wxFrameLayout::LocateBar}\label{wxframelayoutlocatebar}
 
 \func{bool}{LocateBar}{\param{cbBarInfo* }{pBarInfo}, \param{cbRowInfo** }{ppRow}, \param{cbDockPane** }{ppPane}}
 
+The purpose of this function is unknown.
+
 
 \membersection{wxFrameLayout::OnActivate}\label{wxframelayoutonactivate}
 
 \func{void}{OnActivate}{\param{wxActivateEvent\& }{event}}
 
+Handles activation events. Currently does nothing.
+
 
 \membersection{wxFrameLayout::OnEraseBackground}\label{wxframelayoutonerasebackground}
 
 \func{void}{OnEraseBackground}{\param{wxEraseEvent\& }{event}}
 
+Handles background erase events. Currently does nothing.
+
 
 \membersection{wxFrameLayout::OnIdle}\label{wxframelayoutonidle}
 
 \func{void}{OnIdle}{\param{wxIdleEvent\& }{event}}
 
+Handles idle events.
+
 
 \membersection{wxFrameLayout::OnKillFocus}\label{wxframelayoutonkillfocus}
 
 \func{void}{OnKillFocus}{\param{wxFocusEvent\& }{event}}
 
+Handles focus kill events. Currently does nothing.
+
 
 \membersection{wxFrameLayout::OnLButtonDown}\label{wxframelayoutonlbuttondown}
 
 \func{void}{OnLButtonDown}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a left down button event.
+
 
 \membersection{wxFrameLayout::OnLButtonUp}\label{wxframelayoutonlbuttonup}
 
 \func{void}{OnLButtonUp}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a left button up event.
+
 
 \membersection{wxFrameLayout::OnLDblClick}\label{wxframelayoutonldblclick}
 
 \func{void}{OnLDblClick}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a left doubleclick button event.
+
 
 \membersection{wxFrameLayout::OnMouseMove}\label{wxframelayoutonmousemove}
 
 \func{void}{OnMouseMove}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a mouse move event.
+
 
 \membersection{wxFrameLayout::OnPaint}\label{wxframelayoutonpaint}
 
 \func{void}{OnPaint}{\param{wxPaintEvent\& }{event}}
 
+Handles paint events, calling PaintPane for each pane.
+
 
 \membersection{wxFrameLayout::OnRButtonDown}\label{wxframelayoutonrbuttondown}
 
 \func{void}{OnRButtonDown}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a right button down event.
+
 
 \membersection{wxFrameLayout::OnRButtonUp}\label{wxframelayoutonrbuttonup}
 
 \func{void}{OnRButtonUp}{\param{wxMouseEvent\& }{event}}
 
+Event handler for a right button up event.
+
 
 \membersection{wxFrameLayout::OnSetFocus}\label{wxframelayoutonsetfocus}
 
 \func{void}{OnSetFocus}{\param{wxFocusEvent\& }{event}}
 
+Handles focus set events. Currently does nothing.
+
 
 \membersection{wxFrameLayout::OnSize}\label{wxframelayoutonsize}
 
 \func{void}{OnSize}{\param{wxSizeEvent\& }{event}}
 
-event handlers
+Event handler for a size event.
 
 
 \membersection{wxFrameLayout::PopAllPlugins}\label{wxframelayoutpopallplugins}
 
 \func{void}{PopAllPlugins}{\void}
 
+Pop all plugins.
+
 
 \membersection{wxFrameLayout::PopPlugin}\label{wxframelayoutpopplugin}
 
 \func{void}{PopPlugin}{\void}
 
+Similar to wxWindow's "push/pop-event-handler" methods, execept
+that the plugin is deleted upon "popping".
+
 
 \membersection{wxFrameLayout::PositionClientWindow}\label{wxframelayoutpositionclientwindow}
 
 \func{void}{PositionClientWindow}{\void}
 
-called to set calculated layout to window objects
+Called to apply the calculated layout to window objects.
 
 
 \membersection{wxFrameLayout::PositionPanes}\label{wxframelayoutpositionpanes}
 
 \func{void}{PositionPanes}{\void}
 
+Called to apply the calculated layout to window objects.
+
 
 \membersection{wxFrameLayout::PushDefaultPlugins}\label{wxframelayoutpushdefaultplugins}
 
 \func{void}{PushDefaultPlugins}{\void}
 
-default plugins are : cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin,
-cbAntiflickerPlugin, cbSimpleCustomizePlugin
-this method is automatically invoked, if no plugins were found upon
-fireing of the first plugin-event, i.e. wxFrameLayout *CONFIGURES* itself
+Adds the default plugins. These are cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin,
+cbAntiflickerPlugin, cbSimpleCustomizePlugin.
+This method is automatically invoked if no plugins were found upon
+firing of the first plugin-event, i.e. when wxFrameLayout configures itself.
 
 
 \membersection{wxFrameLayout::PushPlugin}\label{wxframelayoutpushplugin}
 
 \func{void}{PushPlugin}{\param{cbPluginBase* }{pPugin}}
 
-similar to wxWindow's "push/pop-event-handler" methods, execept
-that plugin is *deleted* upon "popping"
+Similar to wxWindow's "push/pop-event-handler" methods, execept
+that the plugin is deleted upon "popping".
 
 
 \membersection{wxFrameLayout::RecalcLayout}\label{wxframelayoutrecalclayout}
 
 \func{void}{RecalcLayout}{\param{bool }{repositionBarsNow = FALSE}}
 
-recalcualtes layout of panes, and all bars/rows in each pane
+Recalculates the layout of panes, and all bars/rows in each pane.
 
 
 \membersection{wxFrameLayout::RedockBar}\label{wxframelayoutredockbar}
 
 \func{bool}{RedockBar}{\param{cbBarInfo* }{pBar}, \param{const wxRect\& }{shapeInParent}, \param{cbDockPane* }{pToPane = NULL}, \param{bool }{updateNow = TRUE}}
 
-can be used for repositioning already existing bars. The given bar is first removed
+ReddockBar can be used for repositioning existing bars. The given bar is first removed
 from the pane it currently belongs to, and inserted into the pane, which "matches"
-the given recantular area. If pToPane is not NULL, bar is docked to this given pane
-to dock the bar which is floated, use wxFrameLayout::DockBar(..) method
+the given rectangular area. If pToPane is not NULL, the bar is docked to this given pane.
+To dock a bar which is floating, use the wxFrameLayout::DockBar method.
 
 
 \membersection{wxFrameLayout::RefreshNow}\label{wxframelayoutrefreshnow}
 
 \func{void}{RefreshNow}{\param{bool }{recalcLayout = TRUE}}
 
-recalculates layoute and performs on-screen update of all panes
+Recalculates layout and performs on-screen update of all panes.
 
 
 \membersection{wxFrameLayout::ReleaseEventsFromPane}\label{wxframelayoutreleaseeventsfrompane}
 
 \func{void}{ReleaseEventsFromPane}{\param{cbDockPane* }{fromPane}}
 
+Called by plugins; also releases mouse in the parent frame.
+
 
 \membersection{wxFrameLayout::ReleaseEventsFromPlugin}\label{wxframelayoutreleaseeventsfromplugin}
 
 \func{void}{ReleaseEventsFromPlugin}{\param{cbPluginBase* }{pPlugin}}
 
+Releases user input events for the given plugin.
+Input events are: mouse movement, mouse clicks, keyboard input
+
 
 \membersection{wxFrameLayout::RemoveBar}\label{wxframelayoutremovebar}
 
 \func{void}{RemoveBar}{\param{cbBarInfo* }{pBar}}
 
-removes bar from layout permanently, hides it's corresponding window if present
+Removes the bar from the layout permanently, and hides its corresponding window if present.
 
 
 \membersection{wxFrameLayout::RemovePlugin}\label{wxframelayoutremoveplugin}
 
 \func{void}{RemovePlugin}{\param{wxClassInfo* }{pPlInfo}}
 
-checks if plugin of the given class is hooked, removes
-it if found
-@param pPlInfo class information structure for the plugin
-@note
-@see wxFrameLayout::Method
+Checks if the plugin of the given class is hooked, and removes
+it if found.
 
 
 \membersection{wxFrameLayout::ReparentWindow}\label{wxframelayoutreparentwindow}
 
 \func{void}{ReparentWindow}{\param{wxWindow* }{pChild}, \param{wxWindow* }{pNewParent}}
 
+Reparents pChild to have parent pNewParent.
+
 
 \membersection{wxFrameLayout::RepositionFloatedBar}\label{wxframelayoutrepositionfloatedbar}
 
 \func{void}{RepositionFloatedBar}{\param{cbBarInfo* }{pBar}}
 
+Applies the calculated layout to a floating bar.
+
 
 \membersection{wxFrameLayout::RouteMouseEvent}\label{wxframelayoutroutemouseevent}
 
 \func{void}{RouteMouseEvent}{\param{wxMouseEvent\& }{event}, \param{int }{pluginEvtType}}
 
+Routes the mouse event to the appropriate pane.
+
 
 \membersection{wxFrameLayout::SetBarState}\label{wxframelayoutsetbarstate}
 
 \func{void}{SetBarState}{\param{cbBarInfo* }{pBar}, \param{int }{newStatem}, \param{bool }{updateNow}}
 
-changes bar's docking state (see possible control bar states)
+Changes the bar's docking state (see possible control bar states).
 
 
 \membersection{wxFrameLayout::SetFrameClient}\label{wxframelayoutsetframeclient}
 
 \func{void}{SetFrameClient}{\param{wxWindow* }{pFrameClient}}
 
-passes the client window (e.g. MDI-client frame) to be controled by
+Passes the client window (e.g. MDI client window) to be controlled by
 frame layout, the size and position of which should be adjusted to be
-surrounded by controlbar panes, whenever frame is resized, or dimensions
-of control panes change
+surrounded by controlbar panes, whenever the frame is resized or the dimensions
+of control panes change.
 
 
 \membersection{wxFrameLayout::SetMargins}\label{wxframelayoutsetmargins}
 
 \func{void}{SetMargins}{\param{int }{top}, \param{int }{bottom}, \param{int }{left}, \param{int }{right}, \param{int }{paneMask = wxALL\_PANES}}
 
-TODO:: margins should go into cbCommonPaneProperties in the future
-NOTE:: this method should be called before any custom plugins are attached
+Sets the margins for the given panes.
+The margins should go into cbCommonPaneProperties in the future.
+Note: this method should be called before any custom plugins are attached.
 
 
 \membersection{wxFrameLayout::SetPaneBackground}\label{wxframelayoutsetpanebackground}
 
 \func{void}{SetPaneBackground}{\param{const wxColour\& }{colour}}
 
+Sets the pane background colour.
+
 
 \membersection{wxFrameLayout::SetPaneProperties}\label{wxframelayoutsetpaneproperties}
 
 \func{void}{SetPaneProperties}{\param{const cbCommonPaneProperties\& }{props}, \param{int }{paneMask = wxALL\_PANES}}
 
+Sets the pane properties for the given alignment.
+Note: changing properties of panes does not result immediate on-screen update.
+
 
 \membersection{wxFrameLayout::SetTopPlugin}\label{wxframelayoutsettopplugin}
 
 \func{void}{SetTopPlugin}{\param{cbPluginBase* }{pPlugin}}
 
-hooking custom plugins to frame layout
-NOTE:: when hooking one plugin on top of the other -
-use SetNextHandler(..) or similar methods
+Hooking custom plugins to frame layout.
+Note: when hooking one plugin on top of the other,
+use SetNextHandler or similar methods
 of wxEvtHandler class to compose the chain of plugins,
 than pass the left-most handler in this chain to
 the above methods (assuming that events are delegated
-from left-most towards right-most handler)
-NOTE2:: this secenario is very inconvenient and "low-level",
-use Add/Push/PopPlugin methods instead
+from left-most towards right-most handler).
+This secenario is very inconvenient and "low-level",
+so use the Add/Push/PopPlugin methods instead.
 
 
 \membersection{wxFrameLayout::SetUpdatesManager}\label{wxframelayoutsetupdatesmanager}
 
 \func{void}{SetUpdatesManager}{\param{cbUpdatesManagerBase* }{pUMgr}}
 
-destroys the previous manager if any, set the new one
+Destroys the previous manager if any, and sets the new one.
 
 
 \membersection{wxFrameLayout::ShowFloatedWindows}\label{wxframelayoutshowfloatedwindows}
 
 \func{void}{ShowFloatedWindows}{\param{bool }{show}}
 
+Shows all floated windows.
+
 
 \membersection{wxFrameLayout::UnhookFromFrame}\label{wxframelayoutunhookfromframe}
 
 \func{void}{UnhookFromFrame}{\void}
 
+Unhooks the layout from the frame.
+
index 2f851e4375a42f9b3dc964da11bb5dc5846bed89..71f31dfdb2302645dc1c843dd91882c637c2a928 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% garbagec.h at 05/Jan/02 22:50:57
+% garbagec.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{GarbageCollector}}\label{garbagecollector}
 
 
-class implements extremely slow, but probably one of the most simple GC algorithms
+This class implements an extremely slow but simple garbage collection algorithm.
 
 \wxheading{Derived from}
 
 No base class
 
+\wxheading{Include files}
+
+<garbagec.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,71 +26,89 @@ No base class
 
 \func{}{GarbageCollector}{\void}
 
+Default constructor.
+
 
 \membersection{GarbageCollector::\destruct{GarbageCollector}}\label{garbagecollectordtor}
 
 \func{}{\destruct{GarbageCollector}}{\void}
 
+Destructor.
+
 
 \membersection{GarbageCollector::AddDependency}\label{garbagecollectoradddependency}
 
 \func{void}{AddDependency}{\param{void* }{pObj}, \param{void* }{pDependsOnObj}}
 
+Prepare data for garbage collection.
+
 
 \membersection{GarbageCollector::AddObject}\label{garbagecollectoraddobject}
 
 \func{void}{AddObject}{\param{void* }{pObj}, \param{int }{refCnt = 1}}
 
-prepare data for GC alg.
+Prepare data for garbage collection.
 
 
 \membersection{GarbageCollector::ArrangeCollection}\label{garbagecollectorarrangecollection}
 
 \func{void}{ArrangeCollection}{\void}
 
-executes GC alg.
+Executes garbage collection algorithm.
 
 
 \membersection{GarbageCollector::DestroyItemList}\label{garbagecollectordestroyitemlist}
 
 \func{void}{DestroyItemList}{\param{wxList\& }{lst}}
 
+Destroys a list of items.
+
 
 \membersection{GarbageCollector::FindItemNode}\label{garbagecollectorfinditemnode}
 
 \func{wxNode*}{FindItemNode}{\param{void* }{pForObj}}
 
+Internal method for finding a node.
+
 
 \membersection{GarbageCollector::FindReferenceFreeItemNode}\label{garbagecollectorfindreferencefreeitemnode}
 
 \func{wxNode*}{FindReferenceFreeItemNode}{\void}
 
+Internal method for findind and freeing a node.
+
 
 \membersection{GarbageCollector::GetCycledObjects}\label{garbagecollectorgetcycledobjects}
 
 \func{wxList\&}{GetCycledObjects}{\void}
 
+Get cycled objects.
+
 
 \membersection{GarbageCollector::GetRegularObjects}\label{garbagecollectorgetregularobjects}
 
 \func{wxList\&}{GetRegularObjects}{\void}
 
-access results of the alg.
+Accesses the results of the algorithm.
 
 
 \membersection{GarbageCollector::RemoveReferencesToNode}\label{garbagecollectorremovereferencestonode}
 
 \func{void}{RemoveReferencesToNode}{\param{wxNode* }{pItemNode}}
 
+Remove references to this node.
+
 
 \membersection{GarbageCollector::Reset}\label{garbagecollectorreset}
 
 \func{void}{Reset}{\void}
 
-removes all data from GC
+Removes all data from the garbage collector.
 
 
 \membersection{GarbageCollector::ResolveReferences}\label{garbagecollectorresolvereferences}
 
 \func{void}{ResolveReferences}{\void}
 
+Internal method for resolving references.
+
index 633d9daac1953aa0b50c9c8813e5837f2f3656b8..6e24a96f746bdd7372668068f25cf767054e4fb3 100644 (file)
@@ -1,6 +1,6 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% garbagec.h at 05/Jan/02 22:50:57
+% garbagec.h at 21/Jan/02 21:14:19
 %
 
 
@@ -10,5 +10,9 @@
 
 No base class
 
+\wxheading{Include files}
+
+<garbagec.h>
+
 \wxheading{Data structures}
 
index 65fd6ea7b05d0e7284773461f16fadd182f86fea..9c99450260113acd7b9ea17ab857b2c22c4ad2dc 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbar.h at 05/Jan/02 22:50:56
+% dyntbar.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{LayoutManagerBase}}\label{layoutmanagerbase}
 
 
-base class for layouting algorithm implementations
+This is a base class for layout algorithm implementations.
 
 \wxheading{Derived from}
 
 No base class
 
+\wxheading{Include files}
+
+<dyntbar.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,8 +26,12 @@ No base class
 
 \func{}{\destruct{LayoutManagerBase}}{\void}
 
+Destructor.
+
 
 \membersection{LayoutManagerBase::Layout}\label{layoutmanagerbaselayout}
 
 \func{void}{Layout}{\param{const wxSize\& }{parentDim}, \param{wxSize\& }{resultingDim}, \param{wxLayoutItemArrayT\& }{items}, \param{int }{horizGap}, \param{int }{vertGap}}
 
+Constructor.
+
index 3a06374fb1deac286d54a99f1ae160f4e2a8fd4b..eabac7bd2f12de33ef6b7c3f16dcb7a43280da45 100644 (file)
@@ -85,7 +85,7 @@ $(DOCDIR)\htb\fl.htb: $(DOCDIR)\html\fl\fl.htm
 
 # In order to force document reprocessing
 touchmanual:
-    -touch $(WXDIR)\docs\latex\fl\manual.tex
+    -touch $(WXDIR)\contrib\docs\latex\fl\manual.tex
 
 updatedocs: touchmanual alldocs
 
index 8f3ca3c89c6237a73a02fc88751f90684d1aea94..2b84131b7ae88259f7c1a4318033978b740fb1bf 100644 (file)
@@ -1,17 +1,21 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% hintanimpl.h at 05/Jan/02 22:50:57
+% hintanimpl.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{MorphInfoT}}\label{morphinfot}
 
 
-helper classes
+A private helper class.
 
 \wxheading{Derived from}
 
 No base class
 
+\wxheading{Include files}
+
+<hintanimpl.h>
+
 \wxheading{Data structures}
 
index ba7282490d067c50a46a2ceeb7c6b3ffaa5531d7..43c2b487626ae65f1f4be0b058b2ba221e133c62 100644 (file)
@@ -1,18 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% newbmpbtn.h at 05/Jan/02 22:50:57
+% newbmpbtn.h at 21/Jan/02 21:14:19
 %
 
 
 \section{\class{wxNewBitmapButton}}\label{wxnewbitmapbutton}
 
 
-alternative class for wxBmpButton
+This is an alternative class to wxBitmapButton. It is used
+in the implementation of dynamic toolbars.
 
 \wxheading{Derived from}
 
 \helpref{wxPanel}{wxpanel}
 
+\wxheading{Include files}
+
+<newbmpbtn.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
@@ -22,116 +27,151 @@ alternative class for wxBmpButton
 
 \func{}{wxNewBitmapButton}{\param{const wxBitmap\& }{labelBitmap = wxNullBitmap}, \param{const wxString\& }{labelText = ""}, \param{int }{alignText = NB\_ALIGN\_TEXT\_BOTTOM}, \param{bool }{isFlat = TRUE}, \param{int }{firedEventType = wxEVT\_COMMAND\_MENU\_SELECTED}, \param{int }{marginX = 2}, \param{int }{marginY = 2}, \param{int }{textToLabelGap = 2}, \param{bool }{isSticky = FALSE}}
 
+Constructor.
+
 
 \func{}{wxNewBitmapButton}{\param{const wxString\& }{bitmapFileName}, \param{const wxBitmapType }{bitmapFileType = wxBITMAP\_TYPE\_BMP}, \param{const wxString\& }{labelText = ""}, \param{int }{alignText = NB\_ALIGN\_TEXT\_BOTTOM}, \param{bool }{isFlat = TRUE}, \param{int }{firedEventType = wxEVT\_COMMAND\_MENU\_SELECTED}, \param{int }{marginX = 2}, \param{int }{marginY = 2}, \param{int }{textToLabelGap = 2}, \param{bool }{isSticky = FALSE}}
 
-use this constructor if buttons have to be persistant 
+Use this constructor if buttons have to be persistant
 
 
 \membersection{wxNewBitmapButton::\destruct{wxNewBitmapButton}}\label{wxnewbitmapbuttondtor}
 
 \func{}{\destruct{wxNewBitmapButton}}{\void}
 
+Destructor.
+
 
 \membersection{wxNewBitmapButton::DestroyLabels}\label{wxnewbitmapbuttondestroylabels}
 
 \func{void}{DestroyLabels}{\void}
 
+Internal function for destroying labels.
+
 
 \membersection{wxNewBitmapButton::DrawDecorations}\label{wxnewbitmapbuttondrawdecorations}
 
 \func{void}{DrawDecorations}{\param{wxDC\& }{dc}}
 
+Draws the decorations.
+
 
 \membersection{wxNewBitmapButton::DrawLabel}\label{wxnewbitmapbuttondrawlabel}
 
 \func{void}{DrawLabel}{\param{wxDC\& }{dc}}
 
+Draws the label.
+
 
 \membersection{wxNewBitmapButton::DrawShade}\label{wxnewbitmapbuttondrawshade}
 
 \func{void}{DrawShade}{\param{int }{outerLevel}, \param{wxDC\& }{dc}, \param{wxPen\& }{upperLeftSidePen}, \param{wxPen\& }{lowerRightSidePen}}
 
+Draws shading on the button.
+
 
 \membersection{wxNewBitmapButton::GetStateLabel}\label{wxnewbitmapbuttongetstatelabel}
 
 \func{wxBitmap*}{GetStateLabel}{\void}
 
-returns the label which match the current button state
+Returns the label that matches the current button state.
 
 
 \membersection{wxNewBitmapButton::IsInWindow}\label{wxnewbitmapbuttonisinwindow}
 
 \func{bool}{IsInWindow}{\param{int }{x}, \param{int }{y}}
 
+Returns TRUE if the given point is in the window.
+
 
 \membersection{wxNewBitmapButton::OnEraseBackground}\label{wxnewbitmapbuttononerasebackground}
 
 \func{void}{OnEraseBackground}{\param{wxEraseEvent\& }{event}}
 
+Responds to an erase background event.
+
 
 \membersection{wxNewBitmapButton::OnKillFocus}\label{wxnewbitmapbuttononkillfocus}
 
 \func{void}{OnKillFocus}{\param{wxFocusEvent\& }{event}}
 
+Responds to a kill focus event.
+
 
 \membersection{wxNewBitmapButton::OnLButtonDown}\label{wxnewbitmapbuttononlbuttondown}
 
 \func{void}{OnLButtonDown}{\param{wxMouseEvent\& }{event}}
 
-event handlers
+Responds to a left mouse button down event.
 
 
 \membersection{wxNewBitmapButton::OnLButtonUp}\label{wxnewbitmapbuttononlbuttonup}
 
 \func{void}{OnLButtonUp}{\param{wxMouseEvent\& }{event}}
 
+Responds to a left mouse button up event.
+
 
 \membersection{wxNewBitmapButton::OnMouseMove}\label{wxnewbitmapbuttononmousemove}
 
 \func{void}{OnMouseMove}{\param{wxMouseEvent\& }{event}}
 
+Responds to a mouse move event.
+
 
 \membersection{wxNewBitmapButton::OnPaint}\label{wxnewbitmapbuttononpaint}
 
 \func{void}{OnPaint}{\param{wxPaintEvent\& }{event}}
 
+Responds to a paint event.
+
 
 \membersection{wxNewBitmapButton::OnSize}\label{wxnewbitmapbuttononsize}
 
 \func{void}{OnSize}{\param{wxSizeEvent\& }{event}}
 
+Responds to a size event.
+
 
 \membersection{wxNewBitmapButton::RenderAllLabelImages}\label{wxnewbitmapbuttonrenderalllabelimages}
 
 \func{void}{RenderAllLabelImages}{\void}
 
+Renders label images.
+
 
 \membersection{wxNewBitmapButton::RenderLabelImage}\label{wxnewbitmapbuttonrenderlabelimage}
 
 \func{void}{RenderLabelImage}{\param{wxBitmap*\& }{destBmp}, \param{wxBitmap* }{srcBmp}, \param{bool }{isEnabled = TRUE}, \param{bool }{isPressed = FALSE}}
 
+Renders the label image.
+
 
 \membersection{wxNewBitmapButton::RenderLabelImages}\label{wxnewbitmapbuttonrenderlabelimages}
 
 \func{void}{RenderLabelImages}{\void}
 
+Renders label images.
+
 
 \membersection{wxNewBitmapButton::Reshape}\label{wxnewbitmapbuttonreshape}
 
 \func{void}{Reshape}{\void}
 
-should be called after Create();
+This function should be called after Create. It renders the labels, having
+reloaded the button image if necessary.
 
 
 \membersection{wxNewBitmapButton::SetAlignments}\label{wxnewbitmapbuttonsetalignments}
 
 \func{void}{SetAlignments}{\param{int }{alignText = NB\_ALIGN\_TEXT\_BOTTOM}, \param{int }{marginX = 2}, \param{int }{marginY = 2}, \param{int }{textToLabelGap = 2}}
 
+Sets the text alignment and margins.
+
 
 \membersection{wxNewBitmapButton::SetLabel}\label{wxnewbitmapbuttonsetlabel}
 
 \func{void}{SetLabel}{\param{const wxBitmap\& }{labelBitmap}, \param{const wxString\& }{labelText = ""}}
 
-overridables
+Sets the label and optionally label text.
 
index 6ec5293718f7c9ec3160a0c13bace813765c9edb..525ce6fb62bb8c6faff9cec847fe0553b6219912 100644 (file)
@@ -1,18 +1,22 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% dyntbar.h at 05/Jan/02 22:50:56
+% dyntbar.h at 21/Jan/02 21:14:18
 %
 
 
 \section{\class{wxToolLayoutItem}}\label{wxtoollayoutitem}
 
 
-layout item
+Tool layout item.
 
 \wxheading{Derived from}
 
 \helpref{wxObject}{wxobject}
 
+\wxheading{Include files}
+
+<dyntbar.h>
+
 \wxheading{Data structures}
 
 {\small \begin{verbatim}
index 3e9e474f14538fe9531821f4cc290766db1ab811..3e1eabbbec4e13cc0c14dc3e43f8f285ca60960f 100644 (file)
@@ -1,15 +1,23 @@
 %
 % automatically generated by HelpGen $Revision$ from
-% toolwnd.h at 05/Jan/02 22:50:58
+% toolwnd.h at 21/Jan/02 21:14:17
 %
 
 
 \section{\class{wxToolWindow}}\label{wxtoolwindow}
 
+
+A tool window is a special kind of frame that paints its own title, and
+can be used to implement small floating windows.
+
 \wxheading{Derived from}
 
 \helpref{wxFrame}{wxframe}
 
+\wxheading{Include files}
+
+<toolwnd.h>
+
 \wxheading{Data structures}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 \func{}{wxToolWindow}{\void}
 
+Default constructor.
+
 
 \membersection{wxToolWindow::\destruct{wxToolWindow}}\label{wxtoolwindowdtor}
 
 \func{}{\destruct{wxToolWindow}}{\void}
 
+Destructor.
+
 
 \membersection{wxToolWindow::AddMiniButton}\label{wxtoolwindowaddminibutton}
 
 \func{void}{AddMiniButton}{\param{cbMiniButton* }{pBtn}}
 
-buttons are added in right-to-left order
+Adds a button. Buttons are added in right-to-left order.
 
 
 \membersection{wxToolWindow::AdjustRectPos}\label{wxtoolwindowadjustrectpos}
 
 \func{void}{AdjustRectPos}{\param{const wxRect\& }{original}, \param{const wxSize\& }{newDim}, \param{wxRect\& }{newRect}}
 
+Helper function.
+
 
 \membersection{wxToolWindow::CalcResizedRect}\label{wxtoolwindowcalcresizedrect}
 
 \func{void}{CalcResizedRect}{\param{wxRect\& }{rect}, \param{wxPoint\& }{delta}, \param{const wxSize\& }{minDim}}
 
+Calculate resized rectangle.
+
 
 \membersection{wxToolWindow::DrawHintRect}\label{wxtoolwindowdrawhintrect}
 
 \func{void}{DrawHintRect}{\param{const wxRect\& }{r}}
 
+Draws the hint rectangle.
+
 
 \membersection{wxToolWindow::GetClient}\label{wxtoolwindowgetclient}
 
 \func{wxWindow*}{GetClient}{\void}
 
+Returns the client window.
+
 
 \membersection{wxToolWindow::GetMinimalWndDim}\label{wxtoolwindowgetminimalwnddim}
 
 \func{wxSize}{GetMinimalWndDim}{\void}
 
+Helper function.
+
 
 \membersection{wxToolWindow::GetPreferredSize}\label{wxtoolwindowgetpreferredsize}
 
 \func{wxSize}{GetPreferredSize}{\param{const wxSize\& }{given}}
 
-overridables:
+Returns the preferred size for the window.
 
 
 \membersection{wxToolWindow::GetScrMousePos}\label{wxtoolwindowgetscrmousepos}
 
 \func{void}{GetScrMousePos}{\param{wxMouseEvent\& }{event}, \param{wxPoint\& }{pos}}
 
+Gets the mouse position in screen coordinates.
+
 
 \membersection{wxToolWindow::GetScrWindowRect}\label{wxtoolwindowgetscrwindowrect}
 
 \func{void}{GetScrWindowRect}{\param{wxRect\& }{r}}
 
+Maps client coordinates to screen coordinates.
+
 
 \membersection{wxToolWindow::HandleTitleClick}\label{wxtoolwindowhandletitleclick}
 
 \func{bool}{HandleTitleClick}{\param{wxMouseEvent\& }{event}}
 
+Handles clicking on the title. By default, does nothing.
+
 
 \membersection{wxToolWindow::HitTestWindow}\label{wxtoolwindowhittestwindow}
 
 \func{int}{HitTestWindow}{\param{wxMouseEvent\& }{event}}
 
+Tests if the mouse position is in this window.
+
 
 \membersection{wxToolWindow::LayoutMiniButtons}\label{wxtoolwindowlayoutminibuttons}
 
 \func{void}{LayoutMiniButtons}{\void}
 
+Lays out the buttons.
+
 
 \membersection{wxToolWindow::OnEraseBackground}\label{wxtoolwindowonerasebackground}
 
 \func{void}{OnEraseBackground}{\param{wxEraseEvent\& }{event}}
 
+Responds to an erase background event.
+
 
 \membersection{wxToolWindow::OnLeftDown}\label{wxtoolwindowonleftdown}
 
 \func{void}{OnLeftDown}{\param{wxMouseEvent\& }{event}}
 
+Responds to a mouse left down event.
+
 
 \membersection{wxToolWindow::OnLeftUp}\label{wxtoolwindowonleftup}
 
 \func{void}{OnLeftUp}{\param{wxMouseEvent\& }{event}}
 
+Responds to a mouse left up event.
+
 
 \membersection{wxToolWindow::OnMiniButtonClicked}\label{wxtoolwindowonminibuttonclicked}
 
 \func{void}{OnMiniButtonClicked}{\param{int }{btnIdx}}
 
+Called when a mini button is clicked.
+By default, does nothing.
+
 
 \membersection{wxToolWindow::OnMotion}\label{wxtoolwindowonmotion}
 
 \func{void}{OnMotion}{\param{wxMouseEvent\& }{event}}
 
+Responds to a mouse move event.
+
 
 \membersection{wxToolWindow::OnPaint}\label{wxtoolwindowonpaint}
 
 \func{void}{OnPaint}{\param{wxPaintEvent\& }{event}}
 
+Responds to a paint event.
+
 
 \membersection{wxToolWindow::OnSize}\label{wxtoolwindowonsize}
 
 \func{void}{OnSize}{\param{wxSizeEvent\& }{event}}
 
+Responds to a size event.
+
 
 \membersection{wxToolWindow::SetClient}\label{wxtoolwindowsetclient}
 
 \func{void}{SetClient}{\param{wxWindow* }{pWnd}}
 
+Sets the client for this tool window.
+
 
 \membersection{wxToolWindow::SetHintCursor}\label{wxtoolwindowsethintcursor}
 
 \func{void}{SetHintCursor}{\param{int }{type}}
 
+Sets the hint cursor.
+
 
 \membersection{wxToolWindow::SetTitleFont}\label{wxtoolwindowsettitlefont}
 
 \func{void}{SetTitleFont}{\param{wxFont\& }{font}}
 
+Sets the title font.
+
index 332c45ea33dbe06e94ba690fb857a99378fe8b09..0ede3dfce66d62c06120271a68c023e38e97c4b3 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     23/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __ANTIFLICKPL_G__
 
 /*
 Implements double-buffering to reduce flicker.
-Bitmap and memory DC buffers are shared "resources" among all instances of
+Bitmap and memory DC buffers are shared 'resources' among all instances of
 antiflicker plugins within the application.
 
-Locking for multithreaded applications is  not yet implemented.
+Locking for multithreaded applications is not yet implemented.
 */
 
 class cbAntiflickerPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbAntiflickerPlugin )
+    DECLARE_DYNAMIC_CLASS( cbAntiflickerPlugin )
 protected:
 
-       static wxBitmap*   mpVertBuf;
-       static wxBitmap*   mpHorizBuf;
-       static wxMemoryDC* mpVertBufDc;
-       static wxMemoryDC* mpHorizBufDc;
+    static wxBitmap*   mpVertBuf;
+    static wxBitmap*   mpHorizBuf;
+    static wxMemoryDC* mpVertBufDc;
+    static wxMemoryDC* mpHorizBufDc;
 
-       static int mRefCount;
+    static int mRefCount;
 
-       wxDC*  mpLRUBufDc; // last-recently-used buffer
-       wxRect mLRUArea;   // last-recently-used area
+    wxDC*  mpLRUBufDc; // last-recently-used buffer
+    wxRect mLRUArea;   // last-recently-used area
 
 protected:
-       // Finds a suitable buffer. Returns NULL if a suitable buffer is not present.
-       wxDC* FindSuitableBuffer( const wxRect& forArea );
-       // Allocates a suitable buffer.
-       wxDC* AllocNewBuffer( const wxRect& forArea );
+        // Finds a suitable buffer. Returns NULL if a suitable buffer is not present.
 
-       wxDC& GetWindowDC();
-       wxDC& GetClientDC();
+    wxDC* FindSuitableBuffer( const wxRect& forArea );
+
+        // Allocates a suitable buffer.
+
+    wxDC* AllocNewBuffer( const wxRect& forArea );
+
+        // Gets the window device context.
+
+    wxDC& GetWindowDC();
+
+        // Gets the client device context.
+
+    wxDC& GetClientDC();
 public:
 
-       cbAntiflickerPlugin(void);
+        // Default constructor.
+
+    cbAntiflickerPlugin(void);
+
+        // Constructor taking frame layout panel, and pane mask.
+
+    cbAntiflickerPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+
+        // Destructor.
+
+    virtual ~cbAntiflickerPlugin();
 
-       cbAntiflickerPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Handler for plugin event.
 
-       virtual ~cbAntiflickerPlugin();
+    void OnStartDrawInArea ( cbStartDrawInAreaEvent& event );
 
-       // Handler for plugin event.
-       void OnStartDrawInArea ( cbStartDrawInAreaEvent& event );
+        // Handler for plugin event.
 
-       // Handler for plugin event.
-       void OnFinishDrawInArea( cbFinishDrawInAreaEvent& event );
+    void OnFinishDrawInArea( cbFinishDrawInAreaEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __ANTIFLICKPL_G__ */
index c314c169fa8beadee0a93f5f0c5d3cbd4723e689..4c42338af1dbc2a71d706c97aec1ea21db877e45 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     23/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __BARDRAGPL_G__
 #include "wx/fl/controlbar.h"
 #include "wx/fl/toolwnd.h"
 
+/*
+Plugin class implementing bar dragging.
+*/
+
 class cbBarDragPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbBarDragPlugin )
+    DECLARE_DYNAMIC_CLASS( cbBarDragPlugin )
 protected:
 
-       // plugin is active only in bar-dragging state
-       bool           mBarDragStarted;
-       bool           mCanStick;          // flag used to prevent "bouncing" of hint-rectangle
-       wxScreenDC*    mpScrDc;            // created while tracking hint-rect
-       wxCursor*      mpCurCursor;
+    // plugin is active only in bar-dragging state
+    bool           mBarDragStarted;
+    bool           mCanStick;          // flag used to prevent "bouncing" of hint-rectangle
+    wxScreenDC*    mpScrDc;            // created while tracking hint-rect
+    wxCursor*      mpCurCursor;
 
-       // rectangle shows the position/dimensions of the bar,
-       // if it would be docked now
+    // rectangle shows the position/dimensions of the bar,
+    // if it would be docked now
 
-       wxRect         mPrevHintRect;
-       wxRect         mHintRect;
+    wxRect         mPrevHintRect;
+    wxRect         mHintRect;
 
 
-       int            mMouseInRectX;
-       int            mMouseInRectY;
+    int            mMouseInRectX;
+    int            mMouseInRectY;
 
-       cbDockPane*    mpSrcPane;          // pane, from which the bar was originally taken
-       int            mBarWidthInSrcPane;
+    cbDockPane*    mpSrcPane;          // pane, from which the bar was originally taken
+    int            mBarWidthInSrcPane;
 
-       cbDockPane*    mpCurPane;
+    cbDockPane*    mpCurPane;
 
-       cbBarInfo*     mpDraggedBar;       // bar, which is being dragged
-       bool           mBarWasFloating;
-       wxRect         mFloatedBarBounds;
+    cbBarInfo*     mpDraggedBar;       // bar, which is being dragged
+    bool           mBarWasFloating;
+    wxRect         mFloatedBarBounds;
 
 public: /*** public properties ***/
 
-       int            mInClientHintBorder; // when hint-rect moves within client window area,
+    int            mInClientHintBorder; // when hint-rect moves within client window area,
                                         // the thicker rectangle is drawn using hatched brush,
-                                                                               // the default border width for this rectangle is 8 pix.
+                                        // the default border width for this rectangle is 8 pix.
 
 protected:
 
-    // Internal implementation function.
-       void AdjustHintRect( wxPoint& mousePos );
+        // Internal implementation function.
+    void AdjustHintRect( wxPoint& mousePos );
+
+        // Internal implementation function.
+    void ClipRectInFrame( wxRect& rect );
 
-    // Internal implementation function.
-       void ClipRectInFrame( wxRect& rect );
+        // Internal implementation function.
+    void ClipPosInFrame( wxPoint& pos );
 
-    // Internal implementation function.
-       void ClipPosInFrame( wxPoint& pos );
+        // Internal implementation function. Finds the pane
+        // under the specified rectangle.
+    cbDockPane* HitTestPanes( wxRect& rect );
 
-    // Internal implementation function. Finds the pane
-    // under the specified rectangle.
-       cbDockPane* HitTestPanes( wxRect& rect );
+        // Internal implementation function. Finds the pane
+        // under the specified point.
+    cbDockPane* HitTestPanes( wxPoint& pos );
 
-    // Internal implementation function. Finds the pane
-    // under the specified point.
-       cbDockPane* HitTestPanes( wxPoint& pos );
+        // Internal implementation function.
+    bool HitsPane( cbDockPane* pPane, wxRect& rect );
 
-    // Internal implementation function.
-       bool HitsPane( cbDockPane* pPane, wxRect& rect );
+        // Internal implementation function.
+    void CalcOnScreenDims( wxRect& rect );
 
-    // Internal implementation function.
-       void CalcOnScreenDims( wxRect& rect );
+        // Internal implementation function.
+    int  GetDistanceToPane( cbDockPane* pPane, wxPoint& mousePos );
 
-    // Internal implementation function.
-       int  GetDistanceToPane( cbDockPane* pPane, wxPoint& mousePos );
+        // Internal implementation function.
+    bool IsInOtherPane ( wxPoint& mousePos );
 
-    // Internal implementation function.
-       bool IsInOtherPane ( wxPoint& mousePos );
+        // Internal implementation function.
+    bool IsInClientArea( wxPoint& mousePos );
 
-    // Internal implementation function.
-       bool IsInClientArea( wxPoint& mousePos );
+        // Internal implementation function.
+    bool IsInClientArea( wxRect& rect );
 
-    // Internal implementation function.
-       bool IsInClientArea( wxRect& rect );
+        // Internal implementation function.
+    void StickToPane( cbDockPane* pPane, wxPoint& mousePos );
 
-    // Internal implementation function.
-       void StickToPane( cbDockPane* pPane, wxPoint& mousePos );
+        // Internal implementation function.
+    void UnstickFromPane( cbDockPane* pPane, wxPoint& mousePos );
 
-    // Internal implementation function.
-       void UnstickFromPane( cbDockPane* pPane, wxPoint& mousePos );
+        // Internal implementation function.
+    int GetBarWidthInPane( cbDockPane* pPane );
 
-    // Internal implementation function.
-       int GetBarWidthInPane( cbDockPane* pPane );
+        // Internal implementation function.
+    int GetBarHeightInPane( cbDockPane* pPane );
 
-    // Internal implementation function.
-       int GetBarHeightInPane( cbDockPane* pPane );
+        // on-screen hint-tracking related methods
 
-       // on-screen hint-tracking related methods
+        // Internal implementation function.
+        // Start showing a visual hint while dragging.
+    void StartTracking();
 
-    // Internal implementation function.
-    // Start showing a visual hint while dragging.
-       void StartTracking();
+        // Internal implementation function.
+        // Draw the visual hint while dragging.
+    void DrawHintRect ( wxRect& rect, bool isInClientRect);
 
-    // Internal implementation function.
-    // Draw the visual hint while dragging.
-       void DrawHintRect ( wxRect& rect, bool isInClientRect);
-    // Internal implementation function.
-    // Erase the visual hint while dragging.
-       void EraseHintRect( wxRect& rect, bool isInClientRect);
+        // Internal implementation function.
+        // Erase the visual hint while dragging.
+    void EraseHintRect( wxRect& rect, bool isInClientRect);
 
-    // Internal implementation function.
-    // Stop showing the visual hint while dragging.
-       void FinishTracking();
+        // Internal implementation function.
+        // Stop showing the visual hint while dragging.
+    void FinishTracking();
 
-    // Internal implementation function.
-    // Draw the hint rectangle.
-       void DoDrawHintRect( wxRect& rect, bool isInClientRect);
+        // Internal implementation function.
+        // Draw the hint rectangle.
+    void DoDrawHintRect( wxRect& rect, bool isInClientRect);
 
-    // Internal implementation function.
-    // Converts the given rectangle from window to screen coordinates.
-       void RectToScr( wxRect& frameRect, wxRect& scrRect );
+        // Internal implementation function.
+        // Converts the given rectangle from window to screen coordinates.
+    void RectToScr( wxRect& frameRect, wxRect& scrRect );
 
-    // Internal implementation function.
-    // Show the hint; called within OnMouseMove.
-       void ShowHint( bool prevWasInClient );
+        // Internal implementation function.
+        // Show the hint; called within OnMouseMove.
+    void ShowHint( bool prevWasInClient );
 
 public:
-    // Default constructor.
-       cbBarDragPlugin(void);
+        // Default constructor.
+    cbBarDragPlugin(void);
 
-    // Constructor taking a parent frame, and flag. See cbPluginBase.
-       cbBarDragPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Constructor taking a parent frame, and flag. See cbPluginBase.
+    cbBarDragPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
 
-    // Destructor.
-       virtual ~cbBarDragPlugin();
+        // Destructor.
+    virtual ~cbBarDragPlugin();
 
-       // Handler for plugin event.
-       void OnMouseMove( cbMotionEvent& event );
+        // Handler for plugin event.
+    void OnMouseMove( cbMotionEvent& event );
 
-       // Handler for plugin event.
-       void OnLButtonUp( cbLeftUpEvent& event );
+        // Handler for plugin event.
+    void OnLButtonUp( cbLeftUpEvent& event );
 
-       // Handler for plugin event.
-       void OnLButtonDown( cbLeftDownEvent& event );
+        // Handler for plugin event.
+    void OnLButtonDown( cbLeftDownEvent& event );
 
-       // Handler for plugin event.
-       void OnLDblClick( cbLeftDClickEvent& event );
+        // Handler for plugin event.
+    void OnLDblClick( cbLeftDClickEvent& event );
 
-       // Handles event, which originates from itself.
-       void OnDrawHintRect( cbDrawHintRectEvent& event );        
+        // Handles event, which originates from itself.
+    void OnDrawHintRect( cbDrawHintRectEvent& event );
 
-       // Handler for plugin event.
-       void OnStartBarDragging( cbStartBarDraggingEvent& event );
+        // Handler for plugin event.
+    void OnStartBarDragging( cbStartBarDraggingEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __BARDRAGPL_G__ */
index d6e0eb2954135448bbbf94bfa805c4a4b57fce95..c283cc1a7199634459fc8ab1c5df8d6ef5311ee7 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     30/11/98 (my 22th birthday :-)
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __DRAGHINTSPL_G__
@@ -26,89 +26,89 @@ around fixed and flexible bars, similar to those in Microsoft DevStudio 6.x
 
 class cbBarHintsPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbBarHintsPlugin )
+    DECLARE_DYNAMIC_CLASS( cbBarHintsPlugin )
 
 protected:
-       cbDockPane* mpPane; // is set up temorarely, while handling event
+    cbDockPane* mpPane; // is set up temorarely, while handling event
 
-       cbMiniButton* mBoxes[2];
+    cbMiniButton* mBoxes[2];
 
-       bool        mBtnPressed;
-       bool        mClosePressed;
-       cbBarInfo*  mpClickedBar;
-       bool        mDepressed;
+    bool        mBtnPressed;
+    bool        mClosePressed;
+    cbBarInfo*  mpClickedBar;
+    bool        mDepressed;
 
 protected:
-    // Helper function: draws a 3D box.
-       void Draw3DBox      ( wxDC& dc, const wxPoint& pos, bool pressed );
+        // Helper function: draws a 3D box.
+    void Draw3DBox      ( wxDC& dc, const wxPoint& pos, bool pressed );
 
-    // Helper function: draws a close box.
-       void DrawCloseBox   ( wxDC& dc, const wxPoint& pos, bool pressed );
+        // Helper function: draws a close box.
+    void DrawCloseBox   ( wxDC& dc, const wxPoint& pos, bool pressed );
 
-    // Helper function: draws a collapse box.
-       void DrawCollapseBox( wxDC& dc, const wxPoint& pos, 
-                                                 bool atLeft, bool disabled, bool pressed );
+        // Helper function: draws a collapse box.
+    void DrawCollapseBox( wxDC& dc, const wxPoint& pos,
+                          bool atLeft, bool disabled, bool pressed );
 
-    // Helper function: draws grooves.
-       void DrawGrooves    ( wxDC& dc, const wxPoint& pos, int length );
+        // Helper function: draws grooves.
+    void DrawGrooves    ( wxDC& dc, const wxPoint& pos, int length );
 
-    // Helper function: draws a hint.
-       void DoDrawHint( wxDC& dc, wxRect& rect, int pos, int boxOfs, int grooveOfs, bool isFixed );
-       
-    // Helper function: gets the layout of a hint.
-       void GetHintsLayout( wxRect& rect, cbBarInfo& info, 
-                                                int& boxOfs, int& grooveOfs, int& pos );
+        // Helper function: draws a hint.
+    void DoDrawHint( wxDC& dc, wxRect& rect, int pos, int boxOfs, int grooveOfs, bool isFixed );
 
-    // Helper function: returns information about the hint under the given position.
-       int HitTestHints( cbBarInfo& info, const wxPoint& pos );
+        // Helper function: gets the layout of a hint.
+    void GetHintsLayout( wxRect& rect, cbBarInfo& info,
+                         int& boxOfs, int& grooveOfs, int& pos );
 
-    // Helper function.
-       void ExcludeHints( wxRect& rect, cbBarInfo& info );
+        // Helper function: returns information about the hint under the given position.
+    int HitTestHints( cbBarInfo& info, const wxPoint& pos );
 
-    // Helper function: creates close and collapse boxes.
-       void CreateBoxes();
+        // Helper function.
+    void ExcludeHints( wxRect& rect, cbBarInfo& info );
+
+        // Helper function: creates close and collapse boxes.
+    void CreateBoxes();
 
 public:
-       /* public properties */
+    /* public properties */
 
-       bool mCloseBoxOn;    // default: ON
-       bool mCollapseBoxOn; // default: ON
-       int  mGrooveCount;   // default: 2 (two shaded bars)
-       int  mHintGap;       // default: 5 (pixels from above, below, right and left)
-       int  mXWeight;       // default: 2 (width in pixels of lines which used for drawing cross)
+    bool mCloseBoxOn;    // default: ON
+    bool mCollapseBoxOn; // default: ON
+    int  mGrooveCount;   // default: 2 (two shaded bars)
+    int  mHintGap;       // default: 5 (pixels from above, below, right and left)
+    int  mXWeight;       // default: 2 (width in pixels of lines which used for drawing cross)
 
 public:
-    // Default constructor.
-       cbBarHintsPlugin(void);
+        // Default constructor.
+    cbBarHintsPlugin(void);
 
-    // Constructor, taking parent frame and pane mask flag.
-       cbBarHintsPlugin( wxFrameLayout* pLayout, int paneMask = wxALL_PANES );
+        // Constructor, taking parent frame and pane mask flag.
+    cbBarHintsPlugin( wxFrameLayout* pLayout, int paneMask = wxALL_PANES );
 
-    // Destructor.
+        // Destructor.
     ~cbBarHintsPlugin();
 
-    // Set the number of grooves to be shown in the pane.
-       void SetGrooveCount( int nGrooves );
+        // Set the number of grooves to be shown in the pane.
+    void SetGrooveCount( int nGrooves );
 
-    // Called to initialize this plugin.
-       void OnInitPlugin();
+        // Called to initialize this plugin.
+    void OnInitPlugin();
 
-       // Handles a plugin event.
-       void OnSizeBarWindow( cbSizeBarWndEvent& event );
+        // Handles a plugin event.
+    void OnSizeBarWindow( cbSizeBarWndEvent& event );
 
-       // Handles a plugin event.
-       void OnDrawBarDecorations( cbDrawBarDecorEvent& event );
+        // Handles a plugin event.
+    void OnDrawBarDecorations( cbDrawBarDecorEvent& event );
 
-       // Handles a plugin event.
-       void OnLeftDown( cbLeftDownEvent& event );
+        // Handles a plugin event.
+    void OnLeftDown( cbLeftDownEvent& event );
 
-       // Handles a plugin event.
-       void OnLeftUp  ( cbLeftUpEvent&   event );
+        // Handles a plugin event.
+    void OnLeftUp  ( cbLeftUpEvent&   event );
 
-       // Handles a plugin event.
-       void OnMotion  ( cbMotionEvent&   event );
+        // Handles a plugin event.
+    void OnMotion  ( cbMotionEvent&   event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __DRAGHINTSPL_G__ */
index f6955f79acb117708a857a2c476de1a18b666714..0445a23f62ea1c423802288193b6b9e562987e6f 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     28/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __CBCUSTOM_G__
@@ -27,27 +27,27 @@ and horizontal/vertical alignment of the bar.
 class cbSimpleCustomizationPlugin : public cbPluginBase
 {
 public:
-       DECLARE_DYNAMIC_CLASS( cbSimpleCustomizationPlugin )
+    DECLARE_DYNAMIC_CLASS( cbSimpleCustomizationPlugin )
 
-       int mCustMenuItemId;
+    int mCustMenuItemId;
 public:
 
-    // Default constructor.
-       cbSimpleCustomizationPlugin(void);
+        // Default constructor.
+    cbSimpleCustomizationPlugin(void);
 
-    // Constructor, taking parent pane and a pane mask flag.
-       cbSimpleCustomizationPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Constructor, taking parent pane and a pane mask flag.
+    cbSimpleCustomizationPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
 
-       // Plugin event handler for cbCustomizeBarEvent.
-       void OnCustomizeBar( cbCustomizeBarEvent& event );
+        // Plugin event handler for cbCustomizeBarEvent.
+    void OnCustomizeBar( cbCustomizeBarEvent& event );
 
-       // Plugin event handler for cbCustomizeLayoutEvent.
-       void OnCustomizeLayout( cbCustomizeLayoutEvent& event );
+        // Plugin event handler for cbCustomizeLayoutEvent.
+    void OnCustomizeLayout( cbCustomizeLayoutEvent& event );
 
-       // Menu event handler.
-       void OnMenuItemSelected( wxCommandEvent& event );
+        // Menu event handler.
+    void OnMenuItemSelected( wxCommandEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __CBCUSTOM_G__ */
index 9073a4905c366f8191c5ebf8d03d85b3075b60ef..168a718d0bf0248ec0f1fe08cdfea33bfd0e5ea3 100644 (file)
@@ -7,7 +7,7 @@
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __CONTROLBAR_G__
@@ -72,9 +72,9 @@ WX_DEFINE_ARRAY( RowInfoPtrT, RowArrayT );
 
 // masks for each pane
 
-#define FL_ALIGN_TOP_PANE         0x0001
+#define FL_ALIGN_TOP_PANE        0x0001
 #define FL_ALIGN_BOTTOM_PANE   0x0002
-#define FL_ALIGN_LEFT_PANE        0x0004
+#define FL_ALIGN_LEFT_PANE       0x0004
 #define FL_ALIGN_RIGHT_PANE   0x0008
 
 #define wxALL_PANES    0x000F
@@ -83,20 +83,15 @@ WX_DEFINE_ARRAY( RowInfoPtrT, RowArrayT );
 
 enum CB_HITTEST_RESULT
 {
-       CB_NO_ITEMS_HITTED,
+    CB_NO_ITEMS_HITTED,
 
-       CB_UPPER_ROW_HANDLE_HITTED,
-       CB_LOWER_ROW_HANDLE_HITTED,
-       CB_LEFT_BAR_HANDLE_HITTED,
-       CB_RIGHT_BAR_HANDLE_HITTED,
-       CB_BAR_CONTENT_HITTED
+    CB_UPPER_ROW_HANDLE_HITTED,
+    CB_LOWER_ROW_HANDLE_HITTED,
+    CB_LEFT_BAR_HANDLE_HITTED,
+    CB_RIGHT_BAR_HANDLE_HITTED,
+    CB_BAR_CONTENT_HITTED
 };
 
-// FIXME:: somehow in debug v. original wxASSERT's are not compiled in...
-
-//#undef  wxASSERT
-//#define wxASSERT(x) if ( !(x) ) throw;
-
 /*
 Helper class, used for spying for unhandled mouse events on control bars
 and forwarding them to the frame layout.
@@ -105,27 +100,27 @@ and forwarding them to the frame layout.
 class cbBarSpy : public wxEvtHandler
 {
 public:
-       DECLARE_DYNAMIC_CLASS( cbBarSpy )
+    DECLARE_DYNAMIC_CLASS( cbBarSpy )
 
-       wxFrameLayout* mpLayout;
-       wxWindow*      mpBarWnd;
+    wxFrameLayout* mpLayout;
+    wxWindow*      mpBarWnd;
 
 public:
-    // Default constructor.
+        // Default constructor.
 
-       cbBarSpy(void);
+    cbBarSpy(void);
 
-    // Constructor, taking a parent pane.
+        // Constructor, taking a parent pane.
 
-       cbBarSpy( wxFrameLayout* pPanel );
+    cbBarSpy( wxFrameLayout* pPanel );
 
-    // Sets the bar window.
+        // Sets the bar window.
 
-       void SetBarWindow( wxWindow* pWnd );
+    void SetBarWindow( wxWindow* pWnd );
 
-       // Performs special event processing.
+        // Performs special event processing.
 
-       virtual bool ProcessEvent(wxEvent& event);
+    virtual bool ProcessEvent(wxEvent& event);
 };
 
 /*
@@ -137,513 +132,513 @@ parent frame.
 class wxFrameLayout : public wxEvtHandler
 {
 public:
-    // Default constructor, used only for serialization.
+        // Default constructor, used only for serialization.
 
-       wxFrameLayout();
+    wxFrameLayout();
 
-    // Constructor, taking parent window, the (MDI) client of the parent if there
-    // is one, and flag specifying whether to activate the layout.
+        // Constructor, taking parent window, the (MDI) client of the parent if there
+        // is one, and flag specifying whether to activate the layout.
 
-       wxFrameLayout( wxWindow* pParentFrame,
-                                  wxWindow* pFrameClient = NULL,
-                                  bool      activateNow  = TRUE );
+    wxFrameLayout( wxWindow* pParentFrame,
+                   wxWindow* pFrameClient = NULL,
+                   bool      activateNow  = TRUE );
 
-       // Destructor. It does not destroy the bar windows.
+        // Destructor. It does not destroy the bar windows.
 
-       virtual ~wxFrameLayout();
+    virtual ~wxFrameLayout();
 
-       // Enables floating behaviour. By default floating of control bars is on.
+        // Enables floating behaviour. By default floating of control bars is on.
 
-       virtual void EnableFloating( bool enable = TRUE );
+    virtual void EnableFloating( bool enable = TRUE );
 
-       // Activate can be called after some other layout has been deactivated,
-       // and this one must take over the current contents of the frame window.
-       //
-       // Effectively hooks itself to the frame window, re-displays all non-hidden
-       // bar windows and repaints the decorations.
+        // Activate can be called after some other layout has been deactivated,
+        // and this one must take over the current contents of the frame window.
+        //
+        // Effectively hooks itself to the frame window, re-displays all non-hidden
+        // bar windows and repaints the decorations.
 
-       virtual void Activate();
+    virtual void Activate();
 
-       // Deactivate unhooks itself from frame window, and hides all non-hidden windows.
-       //
-       // Note: two frame layouts should not be active at the same time in the
-       // same frame window, since it would cause messy overlapping of bar windows
-       // from both layouts.
+        // Deactivate unhooks itself from frame window, and hides all non-hidden windows.
+        //
+        // Note: two frame layouts should not be active at the same time in the
+        // same frame window, since it would cause messy overlapping of bar windows
+        // from both layouts.
 
-       virtual void Deactivate();
+    virtual void Deactivate();
 
-       // Hides the bar windows, and also the client window if present.
+        // Hides the bar windows, and also the client window if present.
 
-       void HideBarWindows();
+    void HideBarWindows();
 
-    // Destroys the bar windows.
+        // Destroys the bar windows.
 
-       virtual void DestroyBarWindows();
+    virtual void DestroyBarWindows();
 
-       // Passes the client window (e.g. MDI client window) to be controlled by
-       // frame layout, the size and position of which should be adjusted to be
-       // surrounded by controlbar panes, whenever the frame is resized or the dimensions
-       // of control panes change.
+        // Passes the client window (e.g. MDI client window) to be controlled by
+        // frame layout, the size and position of which should be adjusted to be
+        // surrounded by controlbar panes, whenever the frame is resized or the dimensions
+        // of control panes change.
 
-       void SetFrameClient( wxWindow* pFrameClient );
+    void SetFrameClient( wxWindow* pFrameClient );
 
-    // Returns the frame client, or NULL if not present.
+        // Returns the frame client, or NULL if not present.
 
-       wxWindow* GetFrameClient();
+    wxWindow* GetFrameClient();
 
-    // Returns the parent frame.
+        // Returns the parent frame.
 
-       wxWindow& GetParentFrame() { return *mpFrame; }
+    wxWindow& GetParentFrame() { return *mpFrame; }
 
-       // Returns an array of panes. Used by update managers.
+        // Returns an array of panes. Used by update managers.
 
-       cbDockPane** GetPanesArray() { return mPanes; }
+    cbDockPane** GetPanesArray() { return mPanes; }
 
-       // Returns a pane for the given alignment. See pane alignment types.
+        // Returns a pane for the given alignment. See pane alignment types.
 
-       cbDockPane* GetPane( int alignment )
+    cbDockPane* GetPane( int alignment )
 
-               { return mPanes[alignment]; }
+        { return mPanes[alignment]; }
 
-       // Adds bar information to the frame layout. The appearance of the layout is not refreshed
-       // immediately; RefreshNow() can be called if necessary.
-       //
-       // Notes: the argument pBarWnd can by NULL, resulting in bar decorations to be drawn
-       // around the empty rectangle (filled with default background colour).
-       // Argument dimInfo can be reused for adding any number of bars, since
-       // it is not used directly - instead its members are copied. If the dimensions
-       // handler is present, its instance is shared (reference counted). The dimension
-       // handler should always be allocated on the heap.
+        // Adds bar information to the frame layout. The appearance of the layout is not refreshed
+        // immediately; RefreshNow() can be called if necessary.
+        //
+        // Notes: the argument pBarWnd can by NULL, resulting in bar decorations to be drawn
+        // around the empty rectangle (filled with default background colour).
+        // Argument dimInfo can be reused for adding any number of bars, since
+        // it is not used directly - instead its members are copied. If the dimensions
+        // handler is present, its instance is shared (reference counted). The dimension
+        // handler should always be allocated on the heap.
 
-    // pBarWnd is the window to be managed.
+        // pBarWnd is the window to be managed.
 
-    // dimInfo contains dimension information.
+        // dimInfo contains dimension information.
 
-    // alignment is a value such as FL_ALIGN_TOP.
+        // alignment is a value such as FL_ALIGN_TOP.
 
-       // rowNo is the vertical position or row in the pane (if in docked state).
+        // rowNo is the vertical position or row in the pane (if in docked state).
 
-       // columnPos is the horizontal position within the row in pixels (if in docked state).
+        // columnPos is the horizontal position within the row in pixels (if in docked state).
 
-       // name is a name by which the bar can be referred in layout customization dialogs.
+        // name is a name by which the bar can be referred in layout customization dialogs.
 
-       // If spyEvents is TRUE, input events for the bar should be "spyed" in order
-    // to forward unhandled mouse clicks to the frame layout, for example to enable
-    // easy draggablity of toolbars just by clicking on their interior regions.
-    // For widgets like text/tree control this value should be FALSE,
-       // since there's no certain way to detect  whether the event was actually handled.
+        // If spyEvents is TRUE, input events for the bar should be "spyed" in order
+        // to forward unhandled mouse clicks to the frame layout, for example to enable
+        // easy draggablity of toolbars just by clicking on their interior regions.
+        // For widgets like text/tree control this value should be FALSE,
+        // since there's no certain way to detect  whether the event was actually handled.
 
-       // state is the initial state, such as wxCBAR_DOCKED_HORIZONTALLY,
-    // wxCBAR_FLOATING, wxCBAR_HIDDEN.
+        // state is the initial state, such as wxCBAR_DOCKED_HORIZONTALLY,
+        // wxCBAR_FLOATING, wxCBAR_HIDDEN.
 
-       virtual void AddBar( wxWindow*        pBarWnd,
+    virtual void AddBar( wxWindow*        pBarWnd,
                          const cbDimInfo&       dimInfo,
 
-                                                // defaults:
-                                                int alignment    = FL_ALIGN_TOP,
-                                                int rowNo        = 0,
-                                                int columnPos    = 0,
-                                                const wxString& name="bar",
-                                                bool spyEvents    = FALSE,
-                                                int state        = wxCBAR_DOCKED_HORIZONTALLY
-                                          );
+                         // defaults:
+                         int alignment    = FL_ALIGN_TOP,
+                         int rowNo        = 0,
+                         int columnPos    = 0,
+                         const wxString& name="bar",
+                         bool spyEvents    = FALSE,
+                         int state        = wxCBAR_DOCKED_HORIZONTALLY
+                       );
 
-       // ReddockBar can be used for repositioning existing bars. The given bar is first removed
-       // from the pane it currently belongs to, and inserted into the pane, which "matches"
-       // the given rectangular area. If pToPane is not NULL, the bar is docked to this given pane.
-       // To dock a bar which is floating, use the wxFrameLayout::DockBar method.
+        // ReddockBar can be used for repositioning existing bars. The given bar is first removed
+        // from the pane it currently belongs to, and inserted into the pane, which "matches"
+        // the given rectangular area. If pToPane is not NULL, the bar is docked to this given pane.
+        // To dock a bar which is floating, use the wxFrameLayout::DockBar method.
 
-       virtual bool RedockBar( cbBarInfo* pBar, const wxRect& shapeInParent,
-                                                       cbDockPane* pToPane = NULL, bool updateNow = TRUE );
+    virtual bool RedockBar( cbBarInfo* pBar, const wxRect& shapeInParent,
+                            cbDockPane* pToPane = NULL, bool updateNow = TRUE );
 
-       // Finds the bar in the framelayout, by name.
+        // Finds the bar in the framelayout, by name.
 
-       cbBarInfo* FindBarByName( const wxString& name );
+    cbBarInfo* FindBarByName( const wxString& name );
 
-       // Finds the bar in the framelayout, by window.
+        // Finds the bar in the framelayout, by window.
 
-       cbBarInfo* FindBarByWindow( const wxWindow* pWnd );
+    cbBarInfo* FindBarByWindow( const wxWindow* pWnd );
 
-    // Gets an array of bars.
+        // Gets an array of bars.
 
-       BarArrayT& GetBars();
+    BarArrayT& GetBars();
 
-       // Changes the bar's docking state (see possible control bar states).
+        // Changes the bar's docking state (see possible control bar states).
 
-       void SetBarState( cbBarInfo* pBar, int newStatem, bool updateNow );
+    void SetBarState( cbBarInfo* pBar, int newStatem, bool updateNow );
 
-    // Toggles the bar between visible and hidden.
+        // Toggles the bar between visible and hidden.
 
-       void InverseVisibility( cbBarInfo* pBar );
+    void InverseVisibility( cbBarInfo* pBar );
 
-       // Reflects changes in bar information structure visually.
-       // For example, moves the bar, changes its dimension information,
-    // or changes the pane to which it is docked.
+        // Reflects changes in bar information structure visually.
+        // For example, moves the bar, changes its dimension information,
+        // or changes the pane to which it is docked.
 
-       void ApplyBarProperties( cbBarInfo* pBar );
+    void ApplyBarProperties( cbBarInfo* pBar );
 
-       // Removes the bar from the layout permanently, and hides its corresponding window if present.
+        // Removes the bar from the layout permanently, and hides its corresponding window if present.
 
-       void RemoveBar( cbBarInfo* pBar );
+    void RemoveBar( cbBarInfo* pBar );
 
-       // Recalculates the layout of panes, and all bars/rows in each pane.
+        // Recalculates the layout of panes, and all bars/rows in each pane.
 
-       virtual void RecalcLayout( bool repositionBarsNow = FALSE );
+    virtual void RecalcLayout( bool repositionBarsNow = FALSE );
 
-    // Returns the client height.
+        // Returns the client height.
 
-       int     GetClientHeight();
+    int     GetClientHeight();
 
-    // Returns the client width.
+        // Returns the client width.
 
-       int     GetClientWidth();
+    int     GetClientWidth();
 
-    // Returns the client's rectangle.
+        // Returns the client's rectangle.
 
-       wxRect& GetClientRect()         { return mClntWndBounds;     }
+    wxRect& GetClientRect()        { return mClntWndBounds;     }
 
-       // Returns a reference to the updates manager.
-    // Note: in future, the updates manager will become a normal plugin.
+        // Returns a reference to the updates manager.
+        // Note: in future, the updates manager will become a normal plugin.
 
-       cbUpdatesManagerBase& GetUpdatesManager();
+    cbUpdatesManagerBase& GetUpdatesManager();
 
-       // Destroys the previous manager if any, and sets the new one.
+        // Destroys the previous manager if any, and sets the new one.
 
-       void SetUpdatesManager( cbUpdatesManagerBase* pUMgr );
+    void SetUpdatesManager( cbUpdatesManagerBase* pUMgr );
 
-       // Gets the pane properties for the given alignment.
+        // Gets the pane properties for the given alignment.
 
-       virtual void GetPaneProperties( cbCommonPaneProperties& props, int alignment = FL_ALIGN_TOP );
+    virtual void GetPaneProperties( cbCommonPaneProperties& props, int alignment = FL_ALIGN_TOP );
 
-       // Sets the pane properties for the given alignment.
-    // Note: changing properties of panes does not result immediate on-screen update.
+        // Sets the pane properties for the given alignment.
+        // Note: changing properties of panes does not result immediate on-screen update.
 
-       virtual void SetPaneProperties( const cbCommonPaneProperties& props,
-                                           int paneMask = wxALL_PANES );
+    virtual void SetPaneProperties( const cbCommonPaneProperties& props,
+                                    int paneMask = wxALL_PANES );
 
-       // Sets the margins for the given panes.
-    // The margins should go into cbCommonPaneProperties in the future.
-       //
-       // Note: this method should be called before any custom plugins are attached.
+        // Sets the margins for the given panes.
+        // The margins should go into cbCommonPaneProperties in the future.
+        //
+        // Note: this method should be called before any custom plugins are attached.
 
-       virtual void SetMargins( int top, int bottom, int left, int right,
-                                    int paneMask = wxALL_PANES );
+    virtual void SetMargins( int top, int bottom, int left, int right,
+                             int paneMask = wxALL_PANES );
 
-    // Sets the pane background colour.
+        // Sets the pane background colour.
 
-       virtual void SetPaneBackground( const wxColour& colour );
+    virtual void SetPaneBackground( const wxColour& colour );
 
-       // Recalculates layout and performs on-screen update of all panes.
+        // Recalculates layout and performs on-screen update of all panes.
 
-       void RefreshNow( bool recalcLayout = TRUE );
+    void RefreshNow( bool recalcLayout = TRUE );
 
-       // Event handler for a size event.
+        // Event handler for a size event.
 
-       void OnSize       ( wxSizeEvent&  event );
+    void OnSize       ( wxSizeEvent&  event );
 
-       // Event handler for a left down button event.
+        // Event handler for a left down button event.
 
-       void OnLButtonDown( wxMouseEvent& event );
+    void OnLButtonDown( wxMouseEvent& event );
 
-       // Event handler for a left doubleclick button event.
+        // Event handler for a left doubleclick button event.
 
-       void OnLDblClick  ( wxMouseEvent& event );
+    void OnLDblClick  ( wxMouseEvent& event );
 
-       // Event handler for a left button up event.
+        // Event handler for a left button up event.
 
-       void OnLButtonUp  ( wxMouseEvent& event );
+    void OnLButtonUp  ( wxMouseEvent& event );
 
-       // Event handler for a right button down event.
+        // Event handler for a right button down event.
 
-       void OnRButtonDown( wxMouseEvent& event );
+    void OnRButtonDown( wxMouseEvent& event );
 
-       // Event handler for a right button up event.
+        // Event handler for a right button up event.
 
-       void OnRButtonUp  ( wxMouseEvent& event );
+    void OnRButtonUp  ( wxMouseEvent& event );
 
-       // Event handler for a mouse move event.
+        // Event handler for a mouse move event.
 
-       void OnMouseMove  ( wxMouseEvent& event );
+    void OnMouseMove  ( wxMouseEvent& event );
 
-       // This function should be used instead of passing the event to the ProcessEvent method
-       // of the top-level plugin directly. This method checks if events are currently
-       // captured and ensures that plugin-event is routed correctly.
+        // This function should be used instead of passing the event to the ProcessEvent method
+        // of the top-level plugin directly. This method checks if events are currently
+        // captured and ensures that plugin-event is routed correctly.
 
-       virtual void FirePluginEvent( cbPluginEvent& event );
+    virtual void FirePluginEvent( cbPluginEvent& event );
 
-       // Captures user input events for the given plugin.
-       // Input events are: mouse movement, mouse clicks, keyboard input.
+        // Captures user input events for the given plugin.
+        // Input events are: mouse movement, mouse clicks, keyboard input.
 
-       virtual void CaptureEventsForPlugin ( cbPluginBase* pPlugin );
+    virtual void CaptureEventsForPlugin ( cbPluginBase* pPlugin );
 
-       // Releases user input events for the given plugin.
-       // Input events are: mouse movement, mouse clicks, keyboard input
+        // Releases user input events for the given plugin.
+        // Input events are: mouse movement, mouse clicks, keyboard input
 
-       virtual void ReleaseEventsFromPlugin( cbPluginBase* pPlugin );
+    virtual void ReleaseEventsFromPlugin( cbPluginBase* pPlugin );
 
-       // Called by plugins; also captures the mouse in the parent frame.
+        // Called by plugins; also captures the mouse in the parent frame.
 
-       void CaptureEventsForPane( cbDockPane* toPane );
+    void CaptureEventsForPane( cbDockPane* toPane );
 
-       // Called by plugins; also releases mouse in the parent frame.
+        // Called by plugins; also releases mouse in the parent frame.
 
-       void ReleaseEventsFromPane( cbDockPane* fromPane );
+    void ReleaseEventsFromPane( cbDockPane* fromPane );
 
-       // Returns the current top-level plugin (the one that receives events first,
-       // except if input events are currently captured by some other plugin).
+        // Returns the current top-level plugin (the one that receives events first,
+        // except if input events are currently captured by some other plugin).
 
-       virtual cbPluginBase& GetTopPlugin();
+    virtual cbPluginBase& GetTopPlugin();
 
-       // Hooking custom plugins to frame layout.
-       //
-       // Note: when hooking one plugin on top of the other,
-       // use SetNextHandler or similar methods
-       // of wxEvtHandler class to compose the chain of plugins,
-       // than pass the left-most handler in this chain to
-       // the above methods (assuming that events are delegated
-       // from left-most towards right-most handler).
-       //
-       // This secenario is very inconvenient and "low-level",
-       // so use the Add/Push/PopPlugin methods instead.
+        // Hooking custom plugins to frame layout.
+        //
+        // Note: when hooking one plugin on top of the other,
+        // use SetNextHandler or similar methods
+        // of wxEvtHandler class to compose the chain of plugins,
+        // than pass the left-most handler in this chain to
+        // the above methods (assuming that events are delegated
+        // from left-most towards right-most handler).
+        //
+        // This secenario is very inconvenient and "low-level",
+        // so use the Add/Push/PopPlugin methods instead.
 
-       virtual void SetTopPlugin( cbPluginBase* pPlugin );
+    virtual void SetTopPlugin( cbPluginBase* pPlugin );
 
-       // Similar to wxWindow's "push/pop-event-handler" methods, execept
-       // that the plugin is deleted upon "popping".
+        // Similar to wxWindow's "push/pop-event-handler" methods, execept
+        // that the plugin is deleted upon "popping".
 
-       virtual void PushPlugin( cbPluginBase* pPugin );
+    virtual void PushPlugin( cbPluginBase* pPugin );
 
-       // Similar to wxWindow's "push/pop-event-handler" methods, execept
-       // that the plugin is deleted upon "popping".
+        // Similar to wxWindow's "push/pop-event-handler" methods, execept
+        // that the plugin is deleted upon "popping".
 
-       virtual void PopPlugin();
+    virtual void PopPlugin();
 
-    // Pop all plugins.
-       virtual void PopAllPlugins();
+        // Pop all plugins.
+    virtual void PopAllPlugins();
 
-       // Adds the default plugins. These are cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin,
-       // cbAntiflickerPlugin, cbSimpleCustomizePlugin.
-       //
-       // This method is automatically invoked if no plugins were found upon
-       // firing of the first plugin-event, i.e. when wxFrameLayout configures itself.
+        // Adds the default plugins. These are cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin,
+        // cbAntiflickerPlugin, cbSimpleCustomizePlugin.
+        //
+        // This method is automatically invoked if no plugins were found upon
+        // firing of the first plugin-event, i.e. when wxFrameLayout configures itself.
 
-       virtual void PushDefaultPlugins();
+    virtual void PushDefaultPlugins();
 
-       // An advanced methods for plugin configuration using their
-       // dynamic class information, for example CLASSINFO(pluginClass).
+        // An advanced methods for plugin configuration    using their
+        // dynamic class information, for example CLASSINFO(pluginClass).
 
-       // First checks if the plugin of the given class is already "hooked up".
-       // If not, adds it to the top of the plugins chain.
+        // First checks if the plugin of the given class is already "hooked up".
+        // If not, adds it to the top of the plugins chain.
 
-       virtual void AddPlugin( wxClassInfo* pPlInfo, int paneMask = wxALL_PANES );
+    virtual void AddPlugin( wxClassInfo* pPlInfo, int paneMask = wxALL_PANES );
 
-       // First checks if the plugin of the given class is already hooked.
-       // If so, removes it, and then inserts it into the chain
-       // before the plugin of the class given by pNextPlInfo.
-       //
-       // Note: this method is handy in some cases where the order
-       // of the plugin-chain could be important, for example when one plugin overrides
-       // some functionality of another already-hooked plugin,
-       // so that the former plugin should be hooked before the one
-       // whose functionality is being overridden.
+        // First checks if the plugin of the given class is already hooked.
+        // If so, removes it, and then inserts it into the chain
+        // before the plugin of the class given by pNextPlInfo.
+        //
+        // Note: this method is handy in some cases where the order
+        // of the plugin-chain could be important, for example when one plugin overrides
+        // some functionality of another already-hooked plugin,
+        // so that the former plugin should be hooked before the one
+        // whose functionality is being overridden.
 
-       virtual void AddPluginBefore( wxClassInfo* pNextPlInfo, wxClassInfo* pPlInfo,
-                                                                 int paneMask = wxALL_PANES );
+    virtual void AddPluginBefore( wxClassInfo* pNextPlInfo, wxClassInfo* pPlInfo,
+                                  int paneMask = wxALL_PANES );
 
-       // Checks if the plugin of the given class is hooked, and removes
-       // it if found.
+        // Checks if the plugin of the given class is hooked, and removes
+        // it if found.
 
-       virtual void RemovePlugin( wxClassInfo* pPlInfo );
+    virtual void RemovePlugin( wxClassInfo* pPlInfo );
 
-       // Finds a plugin with the given class, or returns NULL if a plugin of the given
-    // class is not hooked.
+        // Finds a plugin with the given class, or returns NULL if a plugin of the given
+        // class is not hooked.
 
-       virtual cbPluginBase* FindPlugin( wxClassInfo* pPlInfo );
+    virtual cbPluginBase* FindPlugin( wxClassInfo* pPlInfo );
 
-    // Returns true if there is a top plugin.
+        // Returns true if there is a top plugin.
 
-       bool HasTopPlugin();
+    bool HasTopPlugin();
 
-       DECLARE_EVENT_TABLE()
-       DECLARE_DYNAMIC_CLASS( wxFrameLayout )
+    DECLARE_EVENT_TABLE()
+    DECLARE_DYNAMIC_CLASS( wxFrameLayout )
 
 public: /* protected really, acessed only by plugins and serializers */
 
-       friend class cbDockPane;
-       friend class wxBarHandler;
+    friend class cbDockPane;
+    friend class wxBarHandler;
 
-       wxWindow*    mpFrame;           // parent frame
-       wxWindow*    mpFrameClient;         // client window
-       cbDockPane*  mPanes[MAX_PANES]; // panes in the panel
+    wxWindow*    mpFrame;           // parent frame
+    wxWindow*    mpFrameClient;        // client window
+    cbDockPane*  mPanes[MAX_PANES];    // panes in the panel
 
-       // misc. cursors
-       wxCursor*    mpHorizCursor;
-       wxCursor*    mpVertCursor;
-       wxCursor*    mpNormalCursor;
-       wxCursor*    mpDragCursor;
-       wxCursor*    mpNECursor; // no-entry cursor
+    // misc. cursors
+    wxCursor*    mpHorizCursor;
+    wxCursor*    mpVertCursor;
+    wxCursor*    mpNormalCursor;
+    wxCursor*    mpDragCursor;
+    wxCursor*    mpNECursor; // no-entry cursor
 
-       // pens for decoration and shades
+    // pens for decoration and shades
 
-       wxPen        mDarkPen;   // default wxSYS_COLOUR_3DSHADOW
-       wxPen        mLightPen;  // default wxSYS_COLOUR_3DHILIGHT
-       wxPen        mGrayPen;   // default wxSYS_COLOUR_3DFACE
-       wxPen        mBlackPen;  // default wxColour(  0,  0,  0)
-       wxPen        mBorderPen; // default wxSYS_COLOUR_3DFACE
+    wxPen        mDarkPen;     // default wxSYS_COLOUR_3DSHADOW
+    wxPen        mLightPen;  // default wxSYS_COLOUR_3DHILIGHT
+    wxPen        mGrayPen;     // default wxSYS_COLOUR_3DFACE
+    wxPen        mBlackPen;  // default wxColour(  0,  0,  0)
+    wxPen        mBorderPen; // default wxSYS_COLOUR_3DFACE
 
-       wxPen        mNullPen;   // transparent pen
+    wxPen        mNullPen;   // transparent pen
 
-       // pane to which the all mouse input is currently directed (caputred)
+        // pane to which the all mouse input is currently directed (caputred)
 
-       cbDockPane*  mpPaneInFocus;
+    cbDockPane*  mpPaneInFocus;
 
-       // pane, from which mouse pointer had just left
+        // pane, from which mouse pointer had just left
 
-       cbDockPane*  mpLRUPane;
+    cbDockPane*  mpLRUPane;
 
-       // bounds of client window in parent frame's coordinates
+        // bounds of client window in parent frame's coordinates
 
-       wxRect       mClntWndBounds;
-       wxRect       mPrevClntWndBounds;
+    wxRect       mClntWndBounds;
+    wxRect       mPrevClntWndBounds;
 
-       bool         mFloatingOn;
-       wxPoint      mNextFloatedWndPos;
-       wxSize       mFloatingPosStep;
+    bool         mFloatingOn;
+    wxPoint      mNextFloatedWndPos;
+    wxSize       mFloatingPosStep;
 
-       // current plugin (right-most) plugin which receives events first
+        // current plugin (right-most) plugin which receives events first
 
-       cbPluginBase* mpTopPlugin;
+    cbPluginBase* mpTopPlugin;
 
-       // plugin, which currently has captured all input events, otherwise NULL
+        // plugin, which currently has captured all input events, otherwise NULL
 
-       cbPluginBase* mpCaputesInput;
+    cbPluginBase* mpCaputesInput;
 
-       // list of event handlers which are "pushed" onto each bar, to catch
-       // mouse events which are not handled by bars, and froward them to the ,
-       // frome-layout and further to plugins
+        // list of event handlers which are "pushed" onto each bar, to catch
+        // mouse events which are not handled by bars, and froward them to the ,
+        // frome-layout and further to plugins
 
-       wxList        mBarSpyList;
+    wxList        mBarSpyList;
 
-       // list of top-most frames which contain floated bars
+        // list of top-most frames which contain floated bars
 
-       wxList        mFloatedFrames;
+    wxList        mFloatedFrames;
 
-       // linked list of references to all bars (docked/floated/hidden)
+        // linked list of references to all bars (docked/floated/hidden)
 
-       BarArrayT    mAllBars;
+    BarArrayT    mAllBars;
 
-       // FOR NOW:: dirty stuff...
-       bool         mClientWndRefreshPending;
-       bool         mRecalcPending;
-       bool         mCheckFocusWhenIdle;
+    // FOR NOW:: dirty stuff...
+    bool         mClientWndRefreshPending;
+    bool         mRecalcPending;
+    bool         mCheckFocusWhenIdle;
 
 public: /* protected really (accessed only by plugins) */
 
-       // refrence to custom updates manager
-       cbUpdatesManagerBase* mpUpdatesMgr;
+        // refrence to custom updates manager
+    cbUpdatesManagerBase* mpUpdatesMgr;
 
-       // Called to apply the calculated layout to window objects.
+        // Called to apply the calculated layout to window objects.
 
-       void PositionClientWindow();
+    void PositionClientWindow();
 
-       // Called to apply the calculated layout to window objects.
+        // Called to apply the calculated layout to window objects.
 
-       void PositionPanes();
+    void PositionPanes();
 
-    // Creates the cursors.
+        // Creates the cursors.
 
-       void CreateCursors();
+    void CreateCursors();
 
-    // Applies the calculated layout to a floating bar.
+        // Applies the calculated layout to a floating bar.
 
-       void RepositionFloatedBar( cbBarInfo* pBar );
+    void RepositionFloatedBar( cbBarInfo* pBar );
 
-    // Applies the state to the window objects.
+        // Applies the state to the window objects.
 
-       void DoSetBarState( cbBarInfo* pBar );
+    void DoSetBarState( cbBarInfo* pBar );
 
-    // The purpose of this function is unknown.
+        // The purpose of this function is unknown.
 
-       bool LocateBar( cbBarInfo* pBarInfo,
-                                       cbRowInfo**  ppRow,
-                                       cbDockPane** ppPane );
+    bool LocateBar( cbBarInfo* pBarInfo,
+                    cbRowInfo**  ppRow,
+                    cbDockPane** ppPane );
 
 
-    // Returns TRUE if the position is within the given pane.
+        // Returns TRUE if the position is within the given pane.
 
-       bool HitTestPane( cbDockPane* pPane, int x, int y );
+    bool HitTestPane( cbDockPane* pPane, int x, int y );
 
-    // Returns the pane for which the rectangle hit test succeeds, giving
-    // preference to the given pane if supplied.
+        // Returns the pane for which the rectangle hit test succeeds, giving
+        // preference to the given pane if supplied.
 
-       cbDockPane* HitTestPanes( const wxRect& rect, cbDockPane* pCurPane );
+    cbDockPane* HitTestPanes( const wxRect& rect, cbDockPane* pCurPane );
 
-       // Returns the pane to which the given bar belongs.
+        // Returns the pane to which the given bar belongs.
 
-       cbDockPane* GetBarPane( cbBarInfo* pBar );
+    cbDockPane* GetBarPane( cbBarInfo* pBar );
 
-       // Delegated from "bar-spy".
-       void ForwardMouseEvent( wxMouseEvent& event,
-                                                       cbDockPane*   pToPane,
-                                                       int           eventType );
+        // Delegated from "bar-spy".
+    void ForwardMouseEvent( wxMouseEvent& event,
+                            cbDockPane*   pToPane,
+                            int           eventType );
 
-    // Routes the mouse event to the appropriate pane.
+        // Routes the mouse event to the appropriate pane.
 
-       void RouteMouseEvent( wxMouseEvent& event, int pluginEvtType );
+    void RouteMouseEvent( wxMouseEvent& event, int pluginEvtType );
 
-    // Shows all floated windows.
+        // Shows all floated windows.
 
-       void ShowFloatedWindows( bool show );
+    void ShowFloatedWindows( bool show );
 
-    // Unhooks the layout from the frame.
+        // Unhooks the layout from the frame.
 
-       void UnhookFromFrame();
+    void UnhookFromFrame();
 
-    // Hooks the layout up to the frame (pushes the layout onto the
-    // frame's event handler stack).
+        // Hooks the layout up to the frame (pushes the layout onto the
+        // frame's event handler stack).
 
-       void HookUpToFrame();
+    void HookUpToFrame();
 
-       // Returns TRUE if the platform allows reparenting. This may not return TRUE
-    // for all platforms. Reparenting allows control bars to be floated.
+        // Returns TRUE if the platform allows reparenting. This may not return TRUE
+        // for all platforms. Reparenting allows control bars to be floated.
 
-       bool CanReparent();
+    bool CanReparent();
 
-    // Reparents pChild to have parent pNewParent.
+        // Reparents pChild to have parent pNewParent.
 
-       void ReparentWindow( wxWindow* pChild, wxWindow* pNewParent );
+    void ReparentWindow( wxWindow* pChild, wxWindow* pNewParent );
 
-    // Returns the previous client window rectangle.
+        // Returns the previous client window rectangle.
 
-       wxRect& GetPrevClientRect() { return mPrevClntWndBounds; }
+    wxRect& GetPrevClientRect() { return mPrevClntWndBounds; }
 
-    // Handles paint events, calling PaintPane for each pane.
+        // Handles paint events, calling PaintPane for each pane.
 
-       void OnPaint( wxPaintEvent& event );
+    void OnPaint( wxPaintEvent& event );
 
-    // Handles background erase events. Currently does nothing.
+        // Handles background erase events. Currently does nothing.
 
-       void OnEraseBackground( wxEraseEvent& event );
+    void OnEraseBackground( wxEraseEvent& event );
 
-    // Handles focus kill events. Currently does nothing.
+        // Handles focus kill events. Currently does nothing.
 
-       void OnKillFocus( wxFocusEvent& event );
+    void OnKillFocus( wxFocusEvent& event );
 
-    // Handles focus set events. Currently does nothing.
+        // Handles focus set events. Currently does nothing.
 
-       void OnSetFocus( wxFocusEvent& event );
+    void OnSetFocus( wxFocusEvent& event );
 
-    // Handles activation events. Currently does nothing.
+        // Handles activation events. Currently does nothing.
 
-       void OnActivate( wxActivateEvent& event );
+    void OnActivate( wxActivateEvent& event );
 
-    // Handles idle events.
+        // Handles idle events.
 
-       void OnIdle( wxIdleEvent& event );
+    void OnIdle( wxIdleEvent& event );
 
-       // Returns a new cbGCUpdatesMgr object.
+        // Returns a new cbGCUpdatesMgr object.
 
-       virtual cbUpdatesManagerBase* CreateUpdatesManager();
+    virtual cbUpdatesManagerBase* CreateUpdatesManager();
 };
 
 /*
@@ -654,34 +649,34 @@ auxiliary information to be used by its updating algorithm.
 
 class cbUpdateMgrData : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbUpdateMgrData )
+    DECLARE_DYNAMIC_CLASS( cbUpdateMgrData )
 public:
-       wxRect mPrevBounds;      // previous state of layout item (in parent frame's coordinates)
+    wxRect mPrevBounds;      // previous state of layout item (in parent frame's coordinates)
 
-       bool   mIsDirty;         // overrides result of current-against-previous bounds comparison,
-                                // i.e. requires item to be updated, regardless of it's current area
+    bool   mIsDirty;         // overrides result of current-against-previous bounds comparison,
+                             // i.e. requires item to be updated, regardless of it's current area
 
-       wxObject*  mpCustomData; // any custom data stored by specific updates mgr.
+    wxObject*  mpCustomData; // any custom data stored by specific updates mgr.
 
-    // Default constructor. Is-dirty flag is set TRUE initially.
+        // Default constructor. Is-dirty flag is set TRUE initially.
 
-       cbUpdateMgrData();
+    cbUpdateMgrData();
 
-    // Store the item state.
+        // Store the item state.
 
-       void StoreItemState( const wxRect& boundsInParent );
+    void StoreItemState( const wxRect& boundsInParent );
 
-    // Set the dirty flag.
+        // Set the dirty flag.
 
-       void SetDirty( bool isDirty = TRUE );
+    void SetDirty( bool isDirty = TRUE );
 
-    // Set custom data.
+        // Set custom data.
 
-       void SetCustomData( wxObject* pCustomData );
+    void SetCustomData( wxObject* pCustomData );
 
-    // Returns the is-dirty flag.
+        // Returns the is-dirty flag.
 
-       inline bool IsDirty() { return mIsDirty; }
+    inline bool IsDirty() { return mIsDirty; }
 };
 
 /*
@@ -694,82 +689,120 @@ Specific handlers can be hooked up to specific types of bar.
 
 class cbBarDimHandlerBase : public wxObject
 {
-       DECLARE_ABSTRACT_CLASS( cbBarDimHandlerBase )
+    DECLARE_ABSTRACT_CLASS( cbBarDimHandlerBase )
 
 public:
-       int mRefCount; // since one dim-handler can be assigned
-                      // to multiple bars, it's instance is
-                                  // reference-counted
+    int mRefCount; // since one dim-handler can be assigned
+                   // to multiple bars, it's instance is
+                   // reference-counted
 public:
 
-       // initial reference count is 0, since handler is not used, until the
-       // first invocation of AddRef()
+        // Default constructor. The initial reference count is 0, since
+        // the handler is not used until the first invocation of AddRef().
 
-       cbBarDimHandlerBase();
+    cbBarDimHandlerBase();
 
-       void AddRef();
-       void RemoveRef();
+        // Increments the reference count.
 
-       // "bar-state-changes" notification
-       virtual void OnChangeBarState(cbBarInfo* pBar, int newState ) = 0;
-       virtual void OnResizeBar( cbBarInfo* pBar, const wxSize& given, wxSize& preferred ) = 0;
-};
+    void AddRef();
+
+        // Decrements the reference count, and if the count is at zero,
+        // delete 'this'.
+
+    void RemoveRef();
 
-/* helper classes (used internally by wxFrameLayout class) */
+        // Responds to "bar-state-changes" notifications.
+
+    virtual void OnChangeBarState(cbBarInfo* pBar, int newState ) = 0;
+
+        // Responds to bar resize notifications.
+
+    virtual void OnResizeBar( cbBarInfo* pBar, const wxSize& given, wxSize& preferred ) = 0;
+};
 
-// holds and manages information about bar dimensions
+/*
+Helper class used internally by the wxFrameLayout class.
+Holds and manages information about bar dimensions.
+*/
 
 class cbDimInfo : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbDimInfo )
+    DECLARE_DYNAMIC_CLASS( cbDimInfo )
 public:
-       wxSize mSizes[MAX_BAR_STATES];  // preferred sizes for each possible bar state
+    wxSize mSizes[MAX_BAR_STATES];  // preferred sizes for each possible bar state
 
-       wxRect mBounds[MAX_BAR_STATES]; // saved positions and sizes for each
-                                                                       // possible state, values contain (-1)s if
-                                                                   // not initialized yet
+    wxRect mBounds[MAX_BAR_STATES]; // saved positions and sizes for each
+                                    // possible state, values contain (-1)s if
+                                    // not initialized yet
 
-       int    mLRUPane; // pane to which this bar was docked before it was floated
-                        // (FL_ALIGN_TOP,FL_ALIGN_BOTTOM,..)
+    int    mLRUPane; // pane to which this bar was docked before it was floated
+                     // (FL_ALIGN_TOP,FL_ALIGN_BOTTOM,..)
 
-       // top/bottom gap, separates decorations
-       // from the bar's actual window, filled
-       // with frame's beckground color, default: 0
+    // top/bottom gap, separates decorations
+    // from the bar's actual window, filled
+    // with frame's beckground color, default: 0
 
-       int    mVertGap;
+    int    mVertGap;
 
-       // left/right gap, separates decorations
-       // from the bar's actual window, filled
-       // with frame's beckground colour, default: 0
+    // left/right gap, separates decorations
+    // from the bar's actual wndow, filled
+    // with frame's beckground colour, default: 0
 
-       int    mHorizGap;       // NOTE:: gaps are given in frame's coord. orientation
+    int    mHorizGap;    // NOTE:: gaps are given in frame's coord. orientation
 
-       // TRUE, if vertical/horizotal dimensions cannot be mannualy adjusted
-       //       by user using resizing handles. If FALSE, the frame-layout
-       //       *automatically* places resizing handles among not-fixed bars
+    // TRUE, if vertical/horizontal dimensions cannot be mannualy adjusted
+    //       by user using resizing handles. If FALSE, the frame-layout
+    //       *automatically* places resizing handles among not-fixed bars
 
-       bool   mIsFixed;
+    bool   mIsFixed;
 
-       cbBarDimHandlerBase* mpHandler; // NULL, if no handler present
+    cbBarDimHandlerBase* mpHandler; // NULL, if no handler present
 
 public:
 
-       cbDimInfo(void);
+        // Default constructor.
+
+    cbDimInfo(void);
 
-       cbDimInfo( cbBarDimHandlerBase* pDimHandler,
-                          bool                 isFixed          // (see comments on mIsFixed member)
-                        );
+        // Constructor.
+        // isFixed is TRUE if vertical/horizontal dimensions cannot be manually adjusted
+        // by the user using resizing handles. If FALSE, the frame-layout
+        // automatically places resizing handles among bars that do are not fixed.
+
+    cbDimInfo( cbBarDimHandlerBase* pDimHandler,
+               bool                 isFixed         // (see comments on mIsFixed member)
+             );
 
-       cbDimInfo( int dh_x, int dh_y, // dims when docked horizontally
-                          int dv_x, int dv_y, // dims when docked vertically
-                          int f_x,  int f_y,  // dims when floating
+        // Constructor taking dimenstion information.
+        //
+        // dh_x, dh_y are the dimensions when docked horizontally.
+        //
+        // dv_x, dv_y are the dimensions when docked vertically.
+        //
+        // f_x, f_y are the dimensions when floating.
+        //
+        // For information on isFixed, see comments above.
+        //
+        // horizGap is the left/right gap, separating decorations
+        // from the bar's actual wndow, filled with the frame's background colour.
+        // The dimension is given in the frame's coordinates.
+        //
+        // vertGap is the top/bottom gap, separating decorations
+        // from the bar's actual wndow, filled with the frame's background colour.
+        // The dimension is given in the frame's coordinates.
+
+    cbDimInfo( int dh_x, int dh_y,
+               int dv_x, int dv_y,
+               int f_x,  int f_y,
 
-                          bool isFixed  = TRUE,// (see comments on mIsFixed member)
-                          int  horizGap = 6,   // (see comments on mHorizGap member)
-                          int  vertGap  = 6,   // -/-
+               bool isFixed  = TRUE,
+               int  horizGap = 6,
+               int  vertGap  = 6,
+
+               cbBarDimHandlerBase* pDimHandler = NULL
+             );
 
-                          cbBarDimHandlerBase* pDimHandler = NULL
-                        );
+        // Constructor.
 
     cbDimInfo( int x, int y,
                bool isFixed  = TRUE,
@@ -777,568 +810,770 @@ public:
                cbBarDimHandlerBase* pDimHandler = NULL
              );
 
-       const cbDimInfo& operator=( const cbDimInfo& other );
+        // Destructor. Destroys handler automatically, if present.
 
-       // destroys handler automatically, if present
-       ~cbDimInfo();
+    ~cbDimInfo();
 
-       inline cbBarDimHandlerBase* GetDimHandler() { return mpHandler; }
+         // Assignment operator.
+
+    const cbDimInfo& operator=( const cbDimInfo& other );
+
+         // Returns the handler, if any.
+
+    inline cbBarDimHandlerBase* GetDimHandler() { return mpHandler; }
 };
 
 WX_DEFINE_ARRAY(float, cbArrayFloat);
 
+/*
+Helper class used internally by the wxFrameLayout class.
+Holds and manages information about bar rows.
+*/
+
 class cbRowInfo : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbRowInfo )
+    DECLARE_DYNAMIC_CLASS( cbRowInfo )
 public:
 
-       BarArrayT  mBars;  // row content
+    BarArrayT  mBars;  // row content
 
-       // row flags (set up according to row-relations)
+    // row flags (set up according to row-relations)
 
-       bool    mHasUpperHandle;
-       bool    mHasLowerHandle;
-       bool    mHasOnlyFixedBars;
-       int     mNotFixedBarsCnt;
+    bool    mHasUpperHandle;
+    bool    mHasLowerHandle;
+    bool    mHasOnlyFixedBars;
+    int     mNotFixedBarsCnt;
 
-       int             mRowWidth;
-       int             mRowHeight;
-       int             mRowY;
+    int        mRowWidth;
+    int        mRowHeight;
+    int        mRowY;
 
-       // stores precalculated row's bounds in parent frame's coordinates
-       wxRect mBoundsInParent;
+    // stores precalculated row's bounds in parent frame's coordinates
+    wxRect mBoundsInParent;
 
-       // info stored for updates-manager
-       cbUpdateMgrData mUMgrData;
+    // info stored for updates-manager
+    cbUpdateMgrData mUMgrData;
 
-       cbRowInfo*    mpNext;
-       cbRowInfo*    mpPrev;
+    cbRowInfo*    mpNext;
+    cbRowInfo*    mpPrev;
 
-       cbBarInfo*    mpExpandedBar; // NULL, if non of the bars is currently expanded
+    cbBarInfo*    mpExpandedBar; // NULL, if non of the bars is currently expanded
 
-       cbArrayFloat  mSavedRatios;  // length-ratios bofore some of the bars was expanded
+    cbArrayFloat  mSavedRatios;  // length-ratios bofore some of the bars was expanded
 
 public:
-       cbRowInfo(void);
+        // Constructor.
+
+    cbRowInfo(void);
 
-       ~cbRowInfo();
+        // Destructor.
 
-       // convenience method
+    ~cbRowInfo();
 
-       inline cbBarInfo* GetFirstBar()
+        // Returns the first bar.
 
-               { return mBars.GetCount() ? mBars[0] : NULL; }
+    inline cbBarInfo* GetFirstBar()
+
+        { return mBars.GetCount() ? mBars[0] : NULL; }
 };
 
+/*
+Helper class used internally by the wxFrameLayout class.
+Holds and manages bar information.
+*/
+
 class cbBarInfo : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbBarInfo )
+    DECLARE_DYNAMIC_CLASS( cbBarInfo )
 public:
-       // textual name, by which this bar is refered in layout-customization dialogs
-       wxString      mName;
+    // textual name, by which this bar is refered in layout-customization dialogs
+    wxString      mName;
 
-       // stores bar's bounds in pane's coordinates
-       wxRect        mBounds;
+    // stores bar's bounds in pane's coordinates
+    wxRect        mBounds;
 
-       // stores precalculated bar's bounds in parent frame's coordinates
-       wxRect        mBoundsInParent;
+    // stores precalculated bar's bounds in parent frame's coordinates
+    wxRect        mBoundsInParent;
 
-       // back-ref to the row, which contains this bar
-       cbRowInfo*    mpRow;
+    // back-ref to the row, which contains this bar
+    cbRowInfo*    mpRow;
 
-       // are set up according to the types of the surrounding bars in the row
-       bool          mHasLeftHandle;
-       bool          mHasRightHandle;
+    // are set up according to the types of the surrounding bars in the row
+    bool          mHasLeftHandle;
+    bool          mHasRightHandle;
 
-       cbDimInfo     mDimInfo;       // preferred sizes for each, control bar state
+    cbDimInfo     mDimInfo;       // preferred sizes for each, control bar state
 
-       int           mState;         // (see definition of controlbar states)
+    int           mState;         // (see definition of controlbar states)
 
-       int           mAlignment;     // alignment of the pane to which this
-                                     // bar is currently placed
+    int           mAlignment;     // alignment of the pane to which this
+                                  // bar is currently placed
 
-       int           mRowNo;         // row, into which this bar would be placed,
-                                     // when in the docking state
+    int           mRowNo;         // row, into which this bar would be placed,
+                                  // when in the docking state
 
-       wxWindow*     mpBarWnd;           // the actual window object, NULL if no window
-                                     // is attached to the control bar (possible!)
+    wxWindow*     mpBarWnd;          // the actual window object, NULL if no window
+                                  // is attached to the control bar (possible!)
 
-       double        mLenRatio;      // length ratio among not-fixed-size bars
+    double        mLenRatio;      // length ratio among not-fixed-size bars
 
-       wxPoint       mPosIfFloated;  // stored last position when bar was in "floated" state
-                                                                 // poistion is stored in parent-window's coordinates
+    wxPoint       mPosIfFloated;  // stored last position when bar was in "floated" state
+                                  // poistion is stored in parent-window's coordinates
 
-       cbUpdateMgrData mUMgrData;    // info stored for updates-manager
+    cbUpdateMgrData mUMgrData;    // info stored for updates-manager
 
-       cbBarInfo*    mpNext;         // next. bar in the row
-       cbBarInfo*    mpPrev;         // prev. bar in the row
+    cbBarInfo*    mpNext;         // next. bar in the row
+    cbBarInfo*    mpPrev;         // prev. bar in the row
 
 public:
-       cbBarInfo(void);
+        // Constructor.
+
+    cbBarInfo(void);
+
+        // Destructor.
 
-       ~cbBarInfo();
+    ~cbBarInfo();
 
-       inline bool IsFixed() const { return mDimInfo.mIsFixed; }
+        // Returns TRUE if this bar is fixed.
 
-       inline bool IsExpanded() const { return this == mpRow->mpExpandedBar; }
+    inline bool IsFixed() const { return mDimInfo.mIsFixed; }
+
+        // Returns TRUE if this bar is expanded.
+
+    inline bool IsExpanded() const { return this == mpRow->mpExpandedBar; }
 };
 
-// used for storing original bar's postions in the row, when the "non-destructive-friction"
-// option is turned ON
+/*
+Used for storing the original bar's positions in the row, when the 'non-destructive-friction'
+option is turned on.
+*/
 
 class cbBarShapeData : public wxObject
 {
 public:
-       wxRect mBounds;
-       double mLenRatio;
+    wxRect mBounds;
+    double mLenRatio;
 };
 
-// used for traversing through all bars of all rows in the pane
+/*
+Used for traversing through all bars of all rows in the pane.
+*/
 
 class wxBarIterator
 {
-       RowArrayT*  mpRows;
-       cbRowInfo*  mpRow;
-       cbBarInfo*  mpBar;
+    RowArrayT*  mpRows;
+    cbRowInfo*  mpRow;
+    cbBarInfo*  mpBar;
 
 public:
-       wxBarIterator( RowArrayT& rows );
+        // Constructor, taking row array.
+
+    wxBarIterator( RowArrayT& rows );
+
+        // Resets the iterator to the start of the first row.
+
+    void Reset();
 
-       void Reset();
-       bool Next(); // TRUE, if next bar is available
+        // Advances the iterator and returns TRUE if a bar is available.
 
-       cbBarInfo& BarInfo();
+    bool Next();
 
-       // returns reference to currently traversed row
-       cbRowInfo& RowInfo();
+        // Gets the current bar information.
+
+    cbBarInfo& BarInfo();
+
+        // Returns a reference to the currently traversed row.
+
+    cbRowInfo& RowInfo();
 };
 
-/* structure holds configuration options,
- * which are usually the same for all panes in
- * frame layout
- */
+/*
+A structure holding configuration options,
+which are usually the same for all panes in
+a frame layout.
+*/
 
 class cbCommonPaneProperties : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbCommonPaneProperties )
+    DECLARE_DYNAMIC_CLASS( cbCommonPaneProperties )
+
+    // look-and-feel configuration
 
-       // look-and-feel configuration
+    bool mRealTimeUpdatesOn;     // default: ON
+    bool mOutOfPaneDragOn;       // default: ON
+    bool mExactDockPredictionOn; // default: OFF
+    bool mNonDestructFirctionOn; // default: OFF
 
-       bool mRealTimeUpdatesOn;     // default: ON
-       bool mOutOfPaneDragOn;       // default: ON
-       bool mExactDockPredictionOn; // default: OFF
-       bool mNonDestructFirctionOn; // default: OFF
+    bool mShow3DPaneBorderOn;    // default: ON
 
-       bool mShow3DPaneBorderOn;    // default: ON
+    // FOR NOW:: the below properties are reserved for the "future"
 
-       // FOR NOW:: the below properties are reserved for the "future"
+    bool mBarFloatingOn;         // default: OFF
+    bool mRowProportionsOn;      // default: OFF
+    bool mColProportionsOn;      // default: ON
+    bool mBarCollapseIconsOn;    // default: OFF
+    bool mBarDragHintsOn;        // default: OFF
 
-       bool mBarFloatingOn;         // default: OFF
-       bool mRowProportionsOn;      // default: OFF
-       bool mColProportionsOn;      // default: ON
-       bool mBarCollapseIconsOn;    // default: OFF
-       bool mBarDragHintsOn;        // default: OFF
+    // minimal dimensions for not-fixed bars in this pane (16x16 default)
 
-       // minimal dimensions for not-fixed bars in this pane (16x16 default)
+    wxSize mMinCBarDim;
 
-       wxSize mMinCBarDim;
+    // width/height of resizing sash
 
-       // width/height of resizing sash
+    int    mResizeHandleSize;
 
-       int    mResizeHandleSize;
+        // Default constructor.
 
-       cbCommonPaneProperties(void);
+    cbCommonPaneProperties(void);
 };
 
-/* class manages containment and control of control-bars
- * along one of the four edges of the parent frame
- */
+/*
+This class manages containment and control of control bars
+along one of the four edges of the parent frame.
+*/
 
 class cbDockPane : public wxObject
 {
 public:
-       DECLARE_DYNAMIC_CLASS( cbDockPane )
+    DECLARE_DYNAMIC_CLASS( cbDockPane )
 
-       // look-and-feel configuration for this pane
-       cbCommonPaneProperties mProps;
+    // look-and-feel configuration for this pane
+    cbCommonPaneProperties mProps;
 
-       // pane margins (in frame's coordinate-syst. orientation)
+    // pane margins (in frame's coordinate-syst. orientation)
 
-       int             mLeftMargin;     // default: 2 pixels
-       int             mRightMargin;    // default: 2 pixels
-       int             mTopMargin;              // default: 2 pixels
-       int             mBottomMargin;   // default: 2 pixels
+    int             mLeftMargin;     // default: 2 pixels
+    int             mRightMargin;     // default: 2 pixels
+    int             mTopMargin;         // default: 2 pixels
+    int             mBottomMargin;   // default: 2 pixels
 
 public:
-       // position of the pane in frame's coordinates
-       wxRect          mBoundsInParent;
+    // position of the pane in frame's coordinates
+    wxRect          mBoundsInParent;
 
-       // pane width and height in pane's coordinates
-       int             mPaneWidth;
-       int             mPaneHeight;
+    // pane width and height in pane's coordinates
+    int             mPaneWidth;
+    int             mPaneHeight;
 
-       int                             mAlignment;
+    int                mAlignment;
 
-       // info stored for updates-manager
-       cbUpdateMgrData mUMgrData;
+    // info stored for updates-manager
+    cbUpdateMgrData mUMgrData;
 
 public: /* protected really */
 
-       RowArrayT           mRows;
-       wxFrameLayout*  mpLayout;                // back-ref
+    RowArrayT        mRows;
+    wxFrameLayout*  mpLayout;         // back-ref
 
-       // transient properties
+    // transient properties
 
-       wxList          mRowShapeData;   // shapes of bars of recently modified row,
-                                                                    // stored when in "non-destructive-firction" mode
-       cbRowInfo*      mpStoredRow;     // row-info for which the shapes are stored
+    wxList          mRowShapeData;   // shapes of bars of recently modified row,
+                                     // stored when in "non-destructive-firction" mode
+    cbRowInfo*      mpStoredRow;     // row-info for which the shapes are stored
 
-       friend class wxFrameLayout;
+    friend class wxFrameLayout;
 
 public: /* protected really (accessed only by plugins) */
 
-       cbRowInfo* GetRow( int row );
+        // Returns the row info for a row index. Internal function called by plugins.
+
+    cbRowInfo* GetRow( int row );
+
+        // Returns the row index for the given row info.  Internal function called by plugins.
+
+    int GetRowIndex( cbRowInfo* pRow );
+
+        // Returns the row at the given vertical position.
+        // Returns -1 if the row is not present at given vertical position.
+        // Internal function called by plugins.
+
+    int     GetRowAt( int paneY );
+
+        // Returns the row between the given vertical positions.
+        // Returns -1 if the row is not present.
+        // Internal function called by plugins.
+
+    int     GetRowAt( int upperY, int lowerY );
+
+        // Sets up flags in the row information structure, so that
+        // they match the changed state of row items correctly.
+        // Internal function called by plugins.
+
+    void SyncRowFlags( cbRowInfo* pRow );
+
+        // Returns TRUE if the bar's dimension information indicates a fixed size.
+        // Internal function called by plugins.
+
+    bool IsFixedSize( cbBarInfo* pInfo );
+
+        // Returns the number of bars whose size is not fixed.
+        // Internal function called by plugins.
+
+    int  GetNotFixedBarsCount( cbRowInfo* pRow );
+
+        // Gets the vertical position at the given row.
+        // Internal function called by plugins.
+
+    int GetRowY( cbRowInfo* pRow );
+
+        // Returns TRUE if there are any variable-sized rows above this one.
+        // Internal function called by plugins.
+
+    bool HasNotFixedRowsAbove( cbRowInfo* pRow );
+
+        // Returns TRUE if there are any variable-sized rows below this one.
+        // Internal function called by plugins.
+
+    bool HasNotFixedRowsBelow( cbRowInfo* pRow );
+
+        // Returns TRUE if there are any variable-sized rows to the left of this one.
+        // Internal function called by plugins.
+
+    bool HasNotFixedBarsLeft ( cbBarInfo* pBar );
+
+        // Returns TRUE if there are any variable-sized rows to the right of this one.
+        // Internal function called by plugins.
 
-       int GetRowIndex( cbRowInfo* pRow );
+    bool HasNotFixedBarsRight( cbBarInfo* pBar );
 
-       // return -1, if row is not present at given vertical position
-       int     GetRowAt( int paneY );
-       int     GetRowAt( int upperY, int lowerY );
+        // Calculate lengths.
+        // Internal function called by plugins.
 
-       // re-setups flags in the row-information structure, so that
-       // the would match the changed state of row-items correctly
-       void SyncRowFlags( cbRowInfo* pRow );
+    virtual void CalcLengthRatios( cbRowInfo* pInRow );
 
-       // layout "AI" helpers:
+        // Generates a cbLayoutRowEvent event to recalculate row layouts.
+        // Internal function called by plugins.
 
-       bool IsFixedSize( cbBarInfo* pInfo );
-       int  GetNotFixedBarsCount( cbRowInfo* pRow );
+    virtual void RecalcRowLayout( cbRowInfo* pRow );
 
-       int GetRowWidth( wxList* pRow );
+        // Expands the bar.
+        // Internal function called by plugins.
 
-       int GetRowY( cbRowInfo* pRow );
+    virtual void ExpandBar( cbBarInfo* pBar );
 
-       bool HasNotFixedRowsAbove( cbRowInfo* pRow );
-       bool HasNotFixedRowsBelow( cbRowInfo* pRow );
-       bool HasNotFixedBarsLeft ( cbBarInfo* pBar );
-       bool HasNotFixedBarsRight( cbBarInfo* pBar );
+        // Contracts the bar.
+        // Internal function called by plugins.
 
-       virtual void CalcLengthRatios( cbRowInfo* pInRow );
-       virtual void RecalcRowLayout( cbRowInfo* pRow );
+    virtual void ContractBar( cbBarInfo* pBar );
 
-       virtual void ExpandBar( cbBarInfo* pBar );
-       virtual void ContractBar( cbBarInfo* pBar );
+        // Sets up links between bars.
+        // Internal function called by plugins.
 
-       void InitLinksForRow( cbRowInfo* pRow );
-       void InitLinksForRows();
+    void InitLinksForRow( cbRowInfo* pRow );
 
-       // coordinate translation between parent's frame and this pane
+        // Sets up links between bars.
+        // Internal function called by plugins.
 
-       void FrameToPane( int* x, int* y );
-       void PaneToFrame( int* x, int* y );
-       void FrameToPane( wxRect* pRect );
-       void PaneToFrame( wxRect* pRect );
+    void InitLinksForRows();
 
-       inline bool HasPoint( const wxPoint& pos, int x, int y, int width, int height );
+        // Coordinate translation between parent's frame and this pane.
+        // Internal function called by plugins.
 
-       int GetMinimalRowHeight( cbRowInfo* pRow );
+    void FrameToPane( int* x, int* y );
 
-       // given row height includes height of row handles, if present
-       void SetRowHeight( cbRowInfo* pRow, int newHeight );
+        // Coordinate translation between parent's frame and this pane.
+        // Internal function called by plugins.
 
-       void DoInsertBar( cbBarInfo* pBar, int rowNo );
+    void PaneToFrame( int* x, int* y );
+
+        // Coordinate translation between parent's frame and this pane.
+        // Internal function called by plugins.
+
+    void FrameToPane( wxRect* pRect );
+
+        // Coordinate translation between parent's frame and this pane.
+        // Internal function called by plugins.
+
+    void PaneToFrame( wxRect* pRect );
+
+        // Returns TRUE if pos is within the given rectangle.
+        // Internal function called by plugins.
+
+    inline bool HasPoint( const wxPoint& pos, int x, int y, int width, int height );
+
+        // Returns the minimal row height for the given row.
+        // Internal function called by plugins.
+
+    int GetMinimalRowHeight( cbRowInfo* pRow );
+
+        // Sets the row height for the given height. newHeight includes the height of row handles, if present.
+        // Internal function called by plugins.
+
+    void SetRowHeight( cbRowInfo* pRow, int newHeight );
+
+        // Inserts the bar at the given row number.
+        // Internal function called by plugins.
+
+    void DoInsertBar( cbBarInfo* pBar, int rowNo );
 
 public: /* protected really (accessed only by plugins) */
 
-       // methods for incramental on-screen refreshing of the pane
-       // (simply, they are wrappers around corresponding plugin-events)
-
-       virtual void PaintBarDecorations( cbBarInfo* pBar, wxDC& dc );
-       virtual void PaintBarHandles( cbBarInfo* pBar, wxDC& dc );
-       virtual void PaintBar( cbBarInfo* pBar, wxDC& dc );
-       virtual void PaintRowHandles( cbRowInfo* pRow, wxDC& dc );
-       virtual void PaintRowBackground ( cbRowInfo* pRow, wxDC& dc );
-       virtual void PaintRowDecorations( cbRowInfo* pRow, wxDC& dc );
-       virtual void PaintRow( cbRowInfo* pRow, wxDC& dc );
-       virtual void PaintPaneBackground( wxDC& dc );
-       virtual void PaintPaneDecorations( wxDC& dc );
-       virtual void PaintPane( wxDC& dc );
-       virtual void SizeBar( cbBarInfo* pBar );
-       virtual void SizeRowObjects( cbRowInfo* pRow );
-       virtual void SizePaneObjects();
-
-       virtual wxDC* StartDrawInArea ( const wxRect& area );
-       virtual void  FinishDrawInArea( const wxRect& area );
+        // Generates a cbDrawBarDecorEvent and sends it to the layout to paint the bar decorations.
+        // Internal function called by plugins.
+
+    virtual void PaintBarDecorations( cbBarInfo* pBar, wxDC& dc );
+
+        // Generates a cbDrawBarHandlesEvent and sends it to the layout to paint the bar handles.
+        // Internal function called by plugins.
+
+    virtual void PaintBarHandles( cbBarInfo* pBar, wxDC& dc );
+
+        // Calls PaintBarDecorations and PaintBarHandles.
+        // Internal function called by plugins.
+
+    virtual void PaintBar( cbBarInfo* pBar, wxDC& dc );
+
+        // Generates cbDrawRowHandlesEvent and cbDrawRowDecorEvent and sends them to the layout.
+        // Internal function called by plugins.
+
+    virtual void PaintRowHandles( cbRowInfo* pRow, wxDC& dc );
+
+        // Generates cbDrawRowBkGroundEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual void PaintRowBackground ( cbRowInfo* pRow, wxDC& dc );
+
+        // Calls PaintBarDecorations for each row.
+        // Internal function called by plugins.
+
+    virtual void PaintRowDecorations( cbRowInfo* pRow, wxDC& dc );
+
+        // Calls PaintRowBackground, PaintRowDecorations, PaintRowHandles.
+        // Internal function called by plugins.
+
+    virtual void PaintRow( cbRowInfo* pRow, wxDC& dc );
+
+        // Generates cbDrawPaneBkGroundEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual void PaintPaneBackground( wxDC& dc );
+
+        // Generates cbDrawPaneDecorEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual void PaintPaneDecorations( wxDC& dc );
+
+        // Paints the pane background, the row background and decorations,
+        // and finally the pane decorations.
+        // Internal function called by plugins.
+
+    virtual void PaintPane( wxDC& dc );
+
+        // Generates a cbSizeBarWndEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual void SizeBar( cbBarInfo* pBar );
+
+        // Calls SizeBar for each bar in the row.
+        // Internal function called by plugins.
+
+    virtual void SizeRowObjects( cbRowInfo* pRow );
+
+        // Calls SizeRowObjects for each row.
+        // Internal function called by plugins.
+
+    virtual void SizePaneObjects();
+
+        // Generates cbStartDrawInAreaEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual wxDC* StartDrawInArea ( const wxRect& area );
+
+        // Generates cbFinishDrawInAreaEvent and sends it to the layout.
+        // Internal function called by plugins.
+
+    virtual void  FinishDrawInArea( const wxRect& area );
 
 public: /* public members */
 
-       cbDockPane(void);
+        // Default constructor.
+
+    cbDockPane(void);
+
+        // Constructor, taking alignment and layout panel.
+
+    cbDockPane( int alignment, wxFrameLayout* pPanel );
+
+        // Sets pane's margins in frame's coordinate orientations.
+
+    void SetMargins( int top, int bottom, int left, int right );
+
+        // Destructor.
+
+    virtual ~cbDockPane();
+
+        // Removes the bar from this pane. Does not destroy the bar.
+
+    virtual void RemoveBar( cbBarInfo* pBar );
+
+        // Inserts the bar into this pane. rect is given in the parent frame's coordinates.
+
+    virtual void InsertBar( cbBarInfo* pBar, const wxRect& rect );
 
-       cbDockPane( int alignment, wxFrameLayout* pPanel );
+        // Inserts the bar into the given row, with dimensions and position
+        // stored in pBarInfo->mBounds. Returns the node of inserted bar.
 
-       // sets pane's margins in frame's coordinate orientations
-       void SetMargins( int top, int bottom, int left, int right );
+    virtual void InsertBar( cbBarInfo* pBar, cbRowInfo* pIntoRow );
 
-       virtual ~cbDockPane();
+        // Inserts bar and sets its position according to the preferred settings
+        // given in pBarInfo.
 
-       // does not destroys the info bar , only removes it's reference
-       // from this pane
+    virtual void InsertBar( cbBarInfo* pBarInfo );
 
-       virtual void RemoveBar( cbBarInfo* pBar );
+        // Removes the row from this pane. Does not destroy the row object.
 
-       // rect given in the parent frame's coordinates
+    virtual void RemoveRow( cbRowInfo* pRow );
 
-       virtual void InsertBar( cbBarInfo* pBar, const wxRect& atRect );
+        // Inserts a row. Does not refresh the inserted row immediately.
+        // If pBeforeRowNode is NULL, the row is appended to the end of pane's row list.
 
-       // inserts bar into the given row, with dimensions and position
-       // stored in pBarInfo->mBounds. Returns the node of inserted bar
+    virtual void InsertRow( cbRowInfo* pRow, cbRowInfo* pBeforeRow );
 
-       virtual void InsertBar( cbBarInfo* pBar, cbRowInfo* pIntoRow );
+        // Sets pane's width in the pane's coordinates (including margins).
 
-       // inserts bar, sets its position according to the preferred settings
-       // given in (*pBarInfo) structure
+    void SetPaneWidth(int width);
 
-       virtual void InsertBar( cbBarInfo* pBarInfo );
+        // Set the position and dimensions of the pane in the parent frame's coordinates.
 
-       // does not destroy the row object, only removes the corresponding
-       // node from this pane
-       virtual void RemoveRow( cbRowInfo* pRow );
+    void SetBoundsInParent( const wxRect& rect );
 
-       // does not refresh the inserted row immediately,
-       // if pBeforeRowNode arg. is NULL, row is appended to the end of pane's row list
-       virtual void InsertRow( cbRowInfo* pRow, cbRowInfo* pBeforeRow );
+        // Returns the bounds of the pane, in parent coordinates.
 
-       // sets pane's width in pane's coordinates (including margins)
-       void SetPaneWidth(int width);
+    inline wxRect& GetRealRect() { return mBoundsInParent; }
 
-       // set the position and dims. of the pane in parent frame's coordinates
-       void SetBoundsInParent( const wxRect& rect );
+        // Returns an array of rows. Used by updates-managers.
 
-       inline wxRect& GetRealRect() { return mBoundsInParent; }
+    inline RowArrayT& GetRowList() { return mRows; }
 
-       // used by updates-managers
-       inline RowArrayT& GetRowList() { return mRows; }
+        // Returns the first row.
 
-       // convenience method
+    inline cbRowInfo* GetFirstRow()
 
-       inline cbRowInfo* GetFirstRow()
+        { return mRows.GetCount() ? mRows[0] : NULL; }
 
-               { return mRows.GetCount() ? mRows[0] : NULL; }
+        // Returns TRUE if the given bar is present in this pane.
 
-       // TRUE, if the given bar node presents in this pane
+    bool BarPresent( cbBarInfo* pBar );
 
-       bool BarPresent( cbBarInfo* pBar );
+        // Returns the height in the pane's coordinates.
 
-       // retuns height, in pane's coordinates
-       int GetPaneHeight();
+    int GetPaneHeight();
 
-       int GetAlignment();
+        // Returns the alignment for this pane. The value is one of
+        // FL_ALIGN_TOP, FL_ALIGN_BOTTOM, FL_ALIGN_LEFT, FL_ALIGN_RIGHT.
 
-       bool MatchesMask( int paneMask );
+    int GetAlignment();
 
-       inline bool IsHorizontal()
-       {
-               return (mAlignment == FL_ALIGN_TOP ||
-                           mAlignment == FL_ALIGN_BOTTOM );
-       }
+        // Returns TRUE if the given mask matches the pane's mask.
 
-       virtual void RecalcLayout();
+    bool MatchesMask( int paneMask );
 
-       virtual int GetDockingState();
+        // Returns TRUE if the pane is aligned to the top or bottom.
 
-       // returns result of hit-testing items in the pane,
-       // see CB_HITTEST_RESULTS enumeration
+    inline bool IsHorizontal()
+    {
+        return (mAlignment == FL_ALIGN_TOP ||
+                mAlignment == FL_ALIGN_BOTTOM );
+    }
 
-       virtual int HitTestPaneItems( const wxPoint& pos,   // position in pane's coordinates
-                                                                 cbRowInfo**    ppRow,
-                                                                 cbBarInfo**    ppBar
-                                                               );
+        // Generates events to perform layout calculations.
 
-       void GetBarResizeRange( cbBarInfo* pBar, int* from, int *till, bool forLeftHandle );
-       void GetRowResizeRange( cbRowInfo* pRow, int* from, int* till, bool forUpperHandle );
+    virtual void RecalcLayout();
 
-       cbBarInfo* GetBarInfoByWindow( wxWindow* pBarWnd );
+        // Returns wxCBAR_DOCKED_HORIZONTALLY if the alignment is top or bottom,
+        // or wxCBAR_DOCKED_VERTICALLY otherwise.
+
+    virtual int GetDockingState();
+
+        // Returns the result of hit-testing items in the pane.
+        // See CB_HITTEST_RESULT enumerated type.
+        // pos is the position in this pane's coordinates.
+
+    virtual int HitTestPaneItems( const wxPoint& pos,
+                                  cbRowInfo**    ppRow,
+                                  cbBarInfo**    ppBar
+                                );
+
+        // Returns the bar's resize range.
+
+    void GetBarResizeRange( cbBarInfo* pBar, int* from, int *till, bool forLeftHandle );
+
+        // Returns the row's resize range.
+
+    void GetRowResizeRange( cbRowInfo* pRow, int* from, int* till, bool forUpperHandle );
+
+        // Finds the bar information by corresponding window.
+
+    cbBarInfo* GetBarInfoByWindow( wxWindow* pBarWnd );
 
 public: /* protected really (accessed only by plugins) */
 
-       // row/bar resizing related helper-methods
+        // Row/bar resizing related helper-method.
 
-       void DrawVertHandle ( wxDC& dc, int x, int y, int height );
-       void DrawHorizHandle( wxDC& dc, int x, int y, int width  );
+    void DrawVertHandle ( wxDC& dc, int x, int y, int height );
 
-       void ResizeRow( cbRowInfo* pRow, int ofs, bool forUpperHandle );
-       void ResizeBar( cbBarInfo* pBar, int ofs, bool forLeftHandle );
+        // Row/bar resizing related helper-method.
 
-       // cbBarShapeData objects will be placed to given pLst (see comments on cbBarShapeData)
+    void DrawHorizHandle( wxDC& dc, int x, int y, int width  );
 
-       void GetRowShapeData( cbRowInfo* pRow, wxList* pLst );
+        // Row/bar resizing related helper-method.
 
-       // sets the shape to the given row, using the data provided in pLst
-       void SetRowShapeData( cbRowInfo* pRowNode, wxList* pLst );
+    void ResizeRow( cbRowInfo* pRow, int ofs, bool forUpperHandle );
+
+        // Row/bar resizing related helper-method.
+
+    void ResizeBar( cbBarInfo* pBar, int ofs, bool forLeftHandle );
+
+        // Returns row shape data.
+        // cbBarShapeData objects will be added to the given pLst.
+        // cbBarShapeData is used for storing the original bar's positions in the row,
+        // when the 'non-destructive-friction' option is turned on.
+
+    void GetRowShapeData( cbRowInfo* pRow, wxList* pLst );
+
+        // Sets the shape data for the given row, using the data provided in pLst.
+        // cbBarShapeData is used for storing the original bar's positions in the row,
+        // when the 'non-destructive-friction' option is turned on.
+
+    void SetRowShapeData( cbRowInfo* pRowNode, wxList* pLst );
 };
 
 /*
- * class declares abstract interface for optimized logic, which should refresh
- * areas of frame layout - that actually need to be updated. Should be extended,
- * to implement custom updating strategy
- */
+This class declares an abstract interface for optimized logic that should refresh
+areas of frame layout that actually need to be updated. This should be extended in future
+to implement a custom updating strategy.
+*/
 
 class cbUpdatesManagerBase : public wxObject
 {
-       DECLARE_ABSTRACT_CLASS( cbUpdatesManagerBase )
+    DECLARE_ABSTRACT_CLASS( cbUpdatesManagerBase )
 
 public: /* protected really, accessed by serializer (if any) */
 
-       wxFrameLayout* mpLayout;
+    wxFrameLayout* mpLayout;
 
 public:
-       cbUpdatesManagerBase(void)
-               : mpLayout( 0 ) {}
+        // Default constructor
 
-       cbUpdatesManagerBase( wxFrameLayout* pPanel )
-               : mpLayout( pPanel ) {}
+    cbUpdatesManagerBase(void)
+        : mpLayout( 0 ) {}
 
-       virtual ~cbUpdatesManagerBase() {}
+        // Constructor taking layout panel.
 
-       void SetLayout( wxFrameLayout* pLayout ) { mpLayout = pLayout; }
+    cbUpdatesManagerBase( wxFrameLayout* pPanel )
+        : mpLayout( pPanel ) {}
 
-       // notificiactions received from frame-layout (in the order, in which
-       // they usually would be invoked). Custom updates-managers may utilize
-       // these notifications to implement more "fine-grained" updating strategy
+        // Destructor.
 
-       virtual void OnStartChanges() = 0;
+    virtual ~cbUpdatesManagerBase() {}
 
-       virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane ) {}
-       virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane ) {}
-       virtual void OnPaneMarginsWillChange( cbDockPane* pPane ) {}
-       virtual void OnPaneWillChange( cbDockPane* pPane ) {}
+        // Sets the associated layout.
 
-       virtual void OnFinishChanges() {}
+    void SetLayout( wxFrameLayout* pLayout ) { mpLayout = pLayout; }
 
-       // refreshes parts of the frame layout, which need an update
-       virtual void UpdateNow() = 0;
-};
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
 
-/*------------------------------------------------------------
- * "API" for developing custom plugins of Frame Layout Engine
- * TODO:: documentation
- *------------------------------------------------------------
- */
+    virtual void OnStartChanges() = 0;
 
-// base class for all control-bar plugin events
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
 
-class cbPluginEvent : public wxEvent
-{
-       // NOTE:: plugin-event does not need to be a dynamic class
+    virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane ) {}
 
-public:
-       cbDockPane* mpPane; // NULL, if event is not addressed to any specific pane
-
-       /* OLD STUFF::
-       // FOR NOW FOR NOW:: all-in-one plugin event structure
-       wxNode* mpObjNode;
-       wxNode* mpObjNodeAux;
-       wxPoint mPos;
-       wxSize  mSize;
-       wxDC*   mpDC;
-       bool    mAuxBoolVal;
-       */
-
-       // Not used, but required
-    virtual wxEvent* Clone() const { return NULL; }
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
 
-#if wxCHECK_VERSION(2,3,0)
-       cbPluginEvent( wxEventType eventType, cbDockPane* pPane )
-               : mpPane( pPane )
+    virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane ) {}
 
-               { m_eventType = eventType; }
-#else
-       cbPluginEvent( int eventType, cbDockPane* pPane )
-               : mpPane( pPane )
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
 
-               { m_eventType = eventType; }
-#endif
-};
+    virtual void OnPaneMarginsWillChange( cbDockPane* pPane ) {}
 
-// event types handled by plugins
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
+
+    virtual void OnPaneWillChange( cbDockPane* pPane ) {}
+
+        // This function receives a notification from the frame layout (in the order in which
+        // they would usually be invoked). Custom updates-managers may utilize
+        // these notifications to implement a more fine-grained updating strategy.
 
-#if wxCHECK_VERSION(2,3,0)
+    virtual void OnFinishChanges() {}
 
-       extern wxEventType cbEVT_PL_LEFT_DOWN;
-       extern wxEventType cbEVT_PL_LEFT_UP;
-       extern wxEventType cbEVT_PL_RIGHT_DOWN;
-       extern wxEventType cbEVT_PL_RIGHT_UP;
-       extern wxEventType cbEVT_PL_MOTION;
+        // Refreshes parts of the frame layout that need an update.
 
-       extern wxEventType cbEVT_PL_LEFT_DCLICK;
+    virtual void UpdateNow() = 0;
+};
 
-       extern wxEventType cbEVT_PL_LAYOUT_ROW;
-       extern wxEventType cbEVT_PL_RESIZE_ROW;
-       extern wxEventType cbEVT_PL_LAYOUT_ROWS;
-       extern wxEventType cbEVT_PL_INSERT_BAR;
-       extern wxEventType cbEVT_PL_RESIZE_BAR;
-       extern wxEventType cbEVT_PL_REMOVE_BAR;
-       extern wxEventType cbEVT_PL_SIZE_BAR_WND;
+/*
+Base class for all control-bar plugin events.
+This is not a dynamically-creatable class.
+*/
 
-       extern wxEventType cbEVT_PL_DRAW_BAR_DECOR;
-       extern wxEventType cbEVT_PL_DRAW_ROW_DECOR;
-       extern wxEventType cbEVT_PL_DRAW_PANE_DECOR;
-       extern wxEventType cbEVT_PL_DRAW_BAR_HANDLES;
-       extern wxEventType cbEVT_PL_DRAW_ROW_HANDLES;
-       extern wxEventType cbEVT_PL_DRAW_ROW_BKGROUND;
-       extern wxEventType cbEVT_PL_DRAW_PANE_BKGROUND;
+class cbPluginEvent : public wxEvent
+{
+public:
+        // NULL if event is not addressed to any specific pane.
 
-       extern wxEventType cbEVT_PL_START_BAR_DRAGGING;
-       extern wxEventType cbEVT_PL_DRAW_HINT_RECT;
+    cbDockPane* mpPane;
 
-       extern wxEventType cbEVT_PL_START_DRAW_IN_AREA;
-       extern wxEventType cbEVT_PL_FINISH_DRAW_IN_AREA;
+        // Not used, but required.
 
-       extern wxEventType cbEVT_PL_CUSTOMIZE_BAR;
-       extern wxEventType cbEVT_PL_CUSTOMIZE_LAYOUT;
+    virtual wxEvent* Clone() const { return NULL; }
 
-       extern wxEventType wxCUSTOM_CB_PLUGIN_EVENTS_START_AT;
+        // Constructor, taking event type and pane.
 
-#else
+    cbPluginEvent( wxEventType eventType, cbDockPane* pPane )
+        : mpPane( pPane )
 
-       #define cbEVT_PL_LEFT_DOWN           0
-       #define cbEVT_PL_LEFT_UP                 1
-       #define cbEVT_PL_RIGHT_DOWN          2
-       #define cbEVT_PL_RIGHT_UP                3
-       #define cbEVT_PL_MOTION              4
+        { m_eventType = eventType; }
+};
 
-       #define cbEVT_PL_LEFT_DCLICK         5
+// event types handled by plugins
 
-       #define cbEVT_PL_LAYOUT_ROW          6
-       #define cbEVT_PL_RESIZE_ROW          7
-       #define cbEVT_PL_LAYOUT_ROWS         8
-       #define cbEVT_PL_INSERT_BAR          9
-       #define cbEVT_PL_RESIZE_BAR          10
-       #define cbEVT_PL_REMOVE_BAR          11
-       #define cbEVT_PL_SIZE_BAR_WND        12
+extern wxEventType cbEVT_PL_LEFT_DOWN;
+extern wxEventType cbEVT_PL_LEFT_UP;
+extern wxEventType cbEVT_PL_RIGHT_DOWN;
+extern wxEventType cbEVT_PL_RIGHT_UP;
+extern wxEventType cbEVT_PL_MOTION;
 
-       #define cbEVT_PL_DRAW_BAR_DECOR      13
-       #define cbEVT_PL_DRAW_ROW_DECOR      14
-       #define cbEVT_PL_DRAW_PANE_DECOR     15
-       #define cbEVT_PL_DRAW_BAR_HANDLES    16
-       #define cbEVT_PL_DRAW_ROW_HANDLES    17
-       #define cbEVT_PL_DRAW_ROW_BKGROUND   18
-       #define cbEVT_PL_DRAW_PANE_BKGROUND  19
+extern wxEventType cbEVT_PL_LEFT_DCLICK;
 
-       #define cbEVT_PL_START_BAR_DRAGGING  20
-       #define cbEVT_PL_DRAW_HINT_RECT      21
+extern wxEventType cbEVT_PL_LAYOUT_ROW;
+extern wxEventType cbEVT_PL_RESIZE_ROW;
+extern wxEventType cbEVT_PL_LAYOUT_ROWS;
+extern wxEventType cbEVT_PL_INSERT_BAR;
+extern wxEventType cbEVT_PL_RESIZE_BAR;
+extern wxEventType cbEVT_PL_REMOVE_BAR;
+extern wxEventType cbEVT_PL_SIZE_BAR_WND;
 
-       #define cbEVT_PL_START_DRAW_IN_AREA  22
-       #define cbEVT_PL_FINISH_DRAW_IN_AREA 23
+extern wxEventType cbEVT_PL_DRAW_BAR_DECOR;
+extern wxEventType cbEVT_PL_DRAW_ROW_DECOR;
+extern wxEventType cbEVT_PL_DRAW_PANE_DECOR;
+extern wxEventType cbEVT_PL_DRAW_BAR_HANDLES;
+extern wxEventType cbEVT_PL_DRAW_ROW_HANDLES;
+extern wxEventType cbEVT_PL_DRAW_ROW_BKGROUND;
+extern wxEventType cbEVT_PL_DRAW_PANE_BKGROUND;
 
-       #define cbEVT_PL_CUSTOMIZE_BAR       24
-       #define cbEVT_PL_CUSTOMIZE_LAYOUT    25
+extern wxEventType cbEVT_PL_START_BAR_DRAGGING;
+extern wxEventType cbEVT_PL_DRAW_HINT_RECT;
 
-       #define wxCUSTOM_CB_PLUGIN_EVENTS_START_AT 100
+extern wxEventType cbEVT_PL_START_DRAW_IN_AREA;
+extern wxEventType cbEVT_PL_FINISH_DRAW_IN_AREA;
 
-#endif // wxCHECK_VERSION(2,3,0) else
+extern wxEventType cbEVT_PL_CUSTOMIZE_BAR;
+extern wxEventType cbEVT_PL_CUSTOMIZE_LAYOUT;
 
-// forward decls, separated by categories
+extern wxEventType wxCUSTOM_CB_PLUGIN_EVENTS_START_AT;
+
+// Forward declarations, separated by categories.
 
 class cbLeftDownEvent;
 class cbLeftUpEvent;
@@ -1372,7 +1607,7 @@ class cbFinishDrawInAreaEvent;
 class cbCustomizeBarEvent;
 class cbCustomizeLayoutEvent;
 
-// defs. for handler-methods
+// Definitions for for handler-methods.
 
 typedef void (wxEvtHandler::*cbLeftDownHandler        )(cbLeftDownEvent&);
 typedef void (wxEvtHandler::*cbLeftUpHandler          )(cbLeftUpEvent&);
@@ -1406,485 +1641,615 @@ typedef void (wxEvtHandler::*cbFinishDrawInAreaHandler)(cbFinishDrawInAreaEvent&
 typedef void (wxEvtHandler::*cbCustomizeBarHandler    )(cbCustomizeBarEvent&);
 typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&);
 
-// macros for creating event table entries for plugin-events
-
-#if wxCHECK_VERSION(2,3,0)
-       #define EVT_PL_LEFT_DOWN(func)               wxEventTableEntry( cbEVT_PL_LEFT_DOWN,                  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDownHandler        ) & func, (wxObject *) NULL ),
-       #define EVT_PL_LEFT_UP(func)                 wxEventTableEntry( cbEVT_PL_LEFT_UP,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftUpHandler          ) & func, (wxObject *) NULL ),
-       #define EVT_PL_RIGHT_DOWN(func)              wxEventTableEntry( cbEVT_PL_RIGHT_DOWN,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightDownHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_RIGHT_UP(func)                wxEventTableEntry( cbEVT_PL_RIGHT_UP,                   -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightUpHandler         ) & func, (wxObject *) NULL ),
-       #define EVT_PL_MOTION(func)                          wxEventTableEntry( cbEVT_PL_MOTION,                         -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbMotionHandler          ) & func, (wxObject *) NULL ),
-       #define EVT_PL_LEFT_DCLICK(func)             wxEventTableEntry( cbEVT_PL_LEFT_DCLICK,            -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDClickHandler      ) & func, (wxObject *) NULL ),
-
-       #define EVT_PL_LAYOUT_ROW(func)              wxEventTableEntry( cbEVT_PL_LAYOUT_ROW,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_RESIZE_ROW(func)              wxEventTableEntry( cbEVT_PL_RESIZE_ROW,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeRowHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_LAYOUT_ROWS(func)             wxEventTableEntry( cbEVT_PL_LAYOUT_ROWS,        -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowsHandler      ) & func, (wxObject *) NULL ),
-       #define EVT_PL_INSERT_BAR(func)              wxEventTableEntry( cbEVT_PL_INSERT_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbInsertBarHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_RESIZE_BAR(func)              wxEventTableEntry( cbEVT_PL_RESIZE_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeBarHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_REMOVE_BAR(func)              wxEventTableEntry( cbEVT_PL_REMOVE_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRemoveBarHandler       ) & func, (wxObject *) NULL ),
-       #define EVT_PL_SIZE_BAR_WND(func)            wxEventTableEntry( cbEVT_PL_SIZE_BAR_WND,       -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbSizeBarWndHandler      ) & func, (wxObject *) NULL ),
-
-       #define EVT_PL_DRAW_BAR_DECOR(func)      wxEventTableEntry( cbEVT_PL_DRAW_BAR_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarDecorHandler    ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_ROW_DECOR(func)      wxEventTableEntry( cbEVT_PL_DRAW_ROW_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowDecorHandler    ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_PANE_DECOR(func)     wxEventTableEntry( cbEVT_PL_DRAW_PANE_DECOR,     -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneDecorHandler   ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_BAR_HANDLES(func)    wxEventTableEntry( cbEVT_PL_DRAW_BAR_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarHandlesHandler  ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_ROW_HANDLES(func)    wxEventTableEntry( cbEVT_PL_DRAW_ROW_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowHandlesHandler  ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_ROW_BKGROUND(func)   wxEventTableEntry( cbEVT_PL_DRAW_ROW_BKGROUND,   -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowBkGroundHandler ) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_PANE_BKGROUND(func)  wxEventTableEntry( cbEVT_PL_DRAW_PANE_BKGROUND,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneBkGroundHandler) & func, (wxObject *) NULL ),
-
-       #define EVT_PL_START_BAR_DRAGGING(func)  wxEventTableEntry( cbEVT_PL_START_BAR_DRAGGING,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartBarDraggingHandler) & func, (wxObject *) NULL ),
-       #define EVT_PL_DRAW_HINT_RECT(func)      wxEventTableEntry( cbEVT_PL_DRAW_HINT_RECT,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawHintRectHandler    ) & func, (wxObject *) NULL ),
-
-
-       #define EVT_PL_START_DRAW_IN_AREA(func)  wxEventTableEntry( cbEVT_PL_START_DRAW_IN_AREA,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartDrawInAreaHandler)  & func, (wxObject *) NULL ),
-       #define EVT_PL_FINISH_DRAW_IN_AREA(func) wxEventTableEntry( cbEVT_PL_FINISH_DRAW_IN_AREA, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbFinishDrawInAreaHandler) & func, (wxObject *) NULL ),
-
-       #define EVT_PL_CUSTOMIZE_BAR(func)       wxEventTableEntry( cbEVT_PL_CUSTOMIZE_BAR,       -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeBarHandler)     & func, (wxObject *) NULL ),
-       #define EVT_PL_CUSTOMIZE_LAYOUT(func)    wxEventTableEntry( cbEVT_PL_CUSTOMIZE_LAYOUT,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeLayoutHandler)  & func, (wxObject *) NULL ),
-#else
-       #define EVT_PL_LEFT_DOWN(func)               { cbEVT_PL_LEFT_DOWN,                   -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDownHandler        ) & func },
-       #define EVT_PL_LEFT_UP(func)                 { cbEVT_PL_LEFT_UP,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftUpHandler          ) & func },
-       #define EVT_PL_RIGHT_DOWN(func)              { cbEVT_PL_RIGHT_DOWN,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightDownHandler       ) & func },
-       #define EVT_PL_RIGHT_UP(func)                { cbEVT_PL_RIGHT_UP,                    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightUpHandler         ) & func },
-       #define EVT_PL_MOTION(func)                          { cbEVT_PL_MOTION,                  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbMotionHandler          ) & func },
-       #define EVT_PL_LEFT_DCLICK(func)             { cbEVT_PL_LEFT_DCLICK,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDClickHandler      ) & func },
-
-       #define EVT_PL_LAYOUT_ROW(func)              { cbEVT_PL_LAYOUT_ROW,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowHandler       ) & func },
-       #define EVT_PL_RESIZE_ROW(func)              { cbEVT_PL_RESIZE_ROW,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeRowHandler       ) & func },
-       #define EVT_PL_LAYOUT_ROWS(func)             { cbEVT_PL_LAYOUT_ROWS,         -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowsHandler      ) & func },
-       #define EVT_PL_INSERT_BAR(func)              { cbEVT_PL_INSERT_BAR,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbInsertBarHandler       ) & func },
-       #define EVT_PL_RESIZE_BAR(func)              { cbEVT_PL_RESIZE_BAR,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeBarHandler       ) & func },
-       #define EVT_PL_REMOVE_BAR(func)              { cbEVT_PL_REMOVE_BAR,              -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRemoveBarHandler       ) & func },
-       #define EVT_PL_SIZE_BAR_WND(func)            { cbEVT_PL_SIZE_BAR_WND,        -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbSizeBarWndHandler      ) & func },
-
-       #define EVT_PL_DRAW_BAR_DECOR(func)      { cbEVT_PL_DRAW_BAR_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarDecorHandler    ) & func },
-       #define EVT_PL_DRAW_ROW_DECOR(func)      { cbEVT_PL_DRAW_ROW_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowDecorHandler    ) & func },
-       #define EVT_PL_DRAW_PANE_DECOR(func)     { cbEVT_PL_DRAW_PANE_DECOR,     -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneDecorHandler   ) & func },
-       #define EVT_PL_DRAW_BAR_HANDLES(func)    { cbEVT_PL_DRAW_BAR_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarHandlesHandler  ) & func },
-       #define EVT_PL_DRAW_ROW_HANDLES(func)    { cbEVT_PL_DRAW_ROW_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowHandlesHandler  ) & func },
-       #define EVT_PL_DRAW_ROW_BKGROUND(func)   { cbEVT_PL_DRAW_ROW_BKGROUND,   -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowBkGroundHandler ) & func },
-       #define EVT_PL_DRAW_PANE_BKGROUND(func)  { cbEVT_PL_DRAW_PANE_BKGROUND,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneBkGroundHandler) & func },
-
-       #define EVT_PL_START_BAR_DRAGGING(func)  { cbEVT_PL_START_BAR_DRAGGING,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartBarDraggingHandler) & func },
-       #define EVT_PL_DRAW_HINT_RECT(func)      { cbEVT_PL_DRAW_HINT_RECT,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawHintRectHandler    ) & func },
-
-       #define EVT_PL_START_DRAW_IN_AREA(func)  { cbEVT_PL_START_DRAW_IN_AREA,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartDrawInAreaHandler)  & func },
-       #define EVT_PL_FINISH_DRAW_IN_AREA(func) { cbEVT_PL_FINISH_DRAW_IN_AREA, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbFinishDrawInAreaHandler) & func },
-
-       #define EVT_PL_CUSTOMIZE_BAR(func)       { cbEVT_PL_CUSTOMIZE_BAR,       -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeBarHandler)     & func },
-       #define EVT_PL_CUSTOMIZE_LAYOUT(func)    { cbEVT_PL_CUSTOMIZE_LAYOUT,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeLayoutHandler)  & func },
-#endif
+// Macros for creating event table entries for plugin-events.
+
+#define EVT_PL_LEFT_DOWN(func)             wxEventTableEntry( cbEVT_PL_LEFT_DOWN,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDownHandler        ) & func, (wxObject *) NULL ),
+#define EVT_PL_LEFT_UP(func)             wxEventTableEntry( cbEVT_PL_LEFT_UP,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftUpHandler          ) & func, (wxObject *) NULL ),
+#define EVT_PL_RIGHT_DOWN(func)             wxEventTableEntry( cbEVT_PL_RIGHT_DOWN,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightDownHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_RIGHT_UP(func)             wxEventTableEntry( cbEVT_PL_RIGHT_UP,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightUpHandler         ) & func, (wxObject *) NULL ),
+#define EVT_PL_MOTION(func)                 wxEventTableEntry( cbEVT_PL_MOTION,                 -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbMotionHandler          ) & func, (wxObject *) NULL ),
+#define EVT_PL_LEFT_DCLICK(func)         wxEventTableEntry( cbEVT_PL_LEFT_DCLICK,         -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDClickHandler      ) & func, (wxObject *) NULL ),
+
+#define EVT_PL_LAYOUT_ROW(func)             wxEventTableEntry( cbEVT_PL_LAYOUT_ROW,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_RESIZE_ROW(func)             wxEventTableEntry( cbEVT_PL_RESIZE_ROW,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeRowHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_LAYOUT_ROWS(func)         wxEventTableEntry( cbEVT_PL_LAYOUT_ROWS,         -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowsHandler      ) & func, (wxObject *) NULL ),
+#define EVT_PL_INSERT_BAR(func)             wxEventTableEntry( cbEVT_PL_INSERT_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbInsertBarHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_RESIZE_BAR(func)             wxEventTableEntry( cbEVT_PL_RESIZE_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeBarHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_REMOVE_BAR(func)             wxEventTableEntry( cbEVT_PL_REMOVE_BAR,             -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRemoveBarHandler       ) & func, (wxObject *) NULL ),
+#define EVT_PL_SIZE_BAR_WND(func)         wxEventTableEntry( cbEVT_PL_SIZE_BAR_WND,         -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbSizeBarWndHandler      ) & func, (wxObject *) NULL ),
+
+#define EVT_PL_DRAW_BAR_DECOR(func)      wxEventTableEntry( cbEVT_PL_DRAW_BAR_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarDecorHandler    ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_ROW_DECOR(func)      wxEventTableEntry( cbEVT_PL_DRAW_ROW_DECOR,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowDecorHandler    ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_PANE_DECOR(func)     wxEventTableEntry( cbEVT_PL_DRAW_PANE_DECOR,     -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneDecorHandler   ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_BAR_HANDLES(func)    wxEventTableEntry( cbEVT_PL_DRAW_BAR_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarHandlesHandler  ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_ROW_HANDLES(func)    wxEventTableEntry( cbEVT_PL_DRAW_ROW_HANDLES,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowHandlesHandler  ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_ROW_BKGROUND(func)   wxEventTableEntry( cbEVT_PL_DRAW_ROW_BKGROUND,   -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowBkGroundHandler ) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_PANE_BKGROUND(func)  wxEventTableEntry( cbEVT_PL_DRAW_PANE_BKGROUND,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneBkGroundHandler) & func, (wxObject *) NULL ),
+
+#define EVT_PL_START_BAR_DRAGGING(func)  wxEventTableEntry( cbEVT_PL_START_BAR_DRAGGING,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartBarDraggingHandler) & func, (wxObject *) NULL ),
+#define EVT_PL_DRAW_HINT_RECT(func)      wxEventTableEntry( cbEVT_PL_DRAW_HINT_RECT,      -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawHintRectHandler    ) & func, (wxObject *) NULL ),
+
+
+#define EVT_PL_START_DRAW_IN_AREA(func)  wxEventTableEntry( cbEVT_PL_START_DRAW_IN_AREA,  -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartDrawInAreaHandler)  & func, (wxObject *) NULL ),
+#define EVT_PL_FINISH_DRAW_IN_AREA(func) wxEventTableEntry( cbEVT_PL_FINISH_DRAW_IN_AREA, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbFinishDrawInAreaHandler) & func, (wxObject *) NULL ),
+
+#define EVT_PL_CUSTOMIZE_BAR(func)       wxEventTableEntry( cbEVT_PL_CUSTOMIZE_BAR,       -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeBarHandler)     & func, (wxObject *) NULL ),
+#define EVT_PL_CUSTOMIZE_LAYOUT(func)    wxEventTableEntry( cbEVT_PL_CUSTOMIZE_LAYOUT,    -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeLayoutHandler)  & func, (wxObject *) NULL ),
+
 /*
- * abstract base class for all control-bar related plugins
- */
+Abstract base class for all control-bar related plugins.
+Note: pointer positions of mouse events sent to plugins
+are always in the pane's coordinates (the pane to which
+this plugin is hooked).
+*/
 
 class cbPluginBase : public wxEvtHandler
 {
-       DECLARE_ABSTRACT_CLASS( cbPluginBase )
+    DECLARE_ABSTRACT_CLASS( cbPluginBase )
 public:
+        // Back-reference to the frame layout.
+
+    wxFrameLayout* mpLayout;
+
+        // Specifies panes for which this plugin receives events
+        // (see pane masks definitions).
 
-       wxFrameLayout* mpLayout; // back-reference to the frame layout
+    int            mPaneMask;
 
-       // specifies panes, for which this plugin receives events
-       // (see pane masks definitions)
-       int            mPaneMask;
+        // Is TRUE when plugin is ready to handle events.
 
-       bool           mIsReady; // is TRUE, when plugin is ready to handle events
+    bool           mIsReady;
 
 public:
-       cbPluginBase(void)
+        // Default constructor.
 
-               : mpLayout  ( 0 ),
-                 mPaneMask( wxALL_PANES ),
-                 mIsReady ( FALSE )
-       {}
+    cbPluginBase()
 
-       cbPluginBase( wxFrameLayout* pPanel, int paneMask = wxALL_PANES )
+        : mpLayout  ( 0 ),
+          mPaneMask( wxALL_PANES ),
+          mIsReady ( FALSE )
+    {}
 
-               : mpLayout  ( pPanel ),
-                 mPaneMask( paneMask ),
-                 mIsReady ( FALSE )
-       {}
+        // Constructor taking layout panel and a mask.
 
-       inline int GetPaneMask() { return mPaneMask; }
+    cbPluginBase( wxFrameLayout* pPanel, int paneMask = wxALL_PANES )
 
-       // NOTE:: pointer positions of mouse-events sent to plugins
-       //        are always in pane's coordinates (pane's to which
-       //        this plugin is hooked)
+        : mpLayout  ( pPanel ),
+          mPaneMask( paneMask ),
+          mIsReady ( FALSE )
+    {}
 
-       // destroys the whole plugin chain of connected plagins
-       virtual ~cbPluginBase();
+        // Returns the pane mask.
 
-       // override this method to do plugin-specific initialization
-       // (at this point plugin is already attached to the frame layout,
-       //  and pane masks are set)
-       virtual void OnInitPlugin() { mIsReady = TRUE; }
+    inline int GetPaneMask() { return mPaneMask; }
 
-       bool IsReady() { return mIsReady; }
+        // Destructor. Destroys the whole plugin chain of connected plugins.
 
-       // overriden, to determine whether the target pane specified in the
-       // event, matches the pane mask of this plugin (specific plugins
-       // do not override this method)
+    virtual ~cbPluginBase();
 
-       virtual bool ProcessEvent(wxEvent& event);
-};
+        // Override this method to do plugin-specific initialization.
+        // At this point plugin is already attached to the frame layout,
+        // and pane masks are set.
+
+    virtual void OnInitPlugin() { mIsReady = TRUE; }
+
+        // Returns TRUE if the plugin is ready to receive events.
+
+    bool IsReady() { return mIsReady; }
 
-/*** event classes, for each corresponding event type (24 currnetly...uhh) ***/
+        // Overridden to determine whether the target pane specified in the
+        // event matches the pane mask of this plugin (specific plugins
+        // do not override this method).
 
-// mouse-events category
+    virtual bool ProcessEvent(wxEvent& event);
+};
+
+/*
+Class for mouse left down events.
+*/
 
 class cbLeftDownEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
+
+        // Constructor, taking mouse position and pane.
 
-       cbLeftDownEvent( const wxPoint& pos, cbDockPane* pPane )
+    cbLeftDownEvent( const wxPoint& pos, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_LEFT_DOWN, pPane ),
-                 mPos( pos )
-       {}
+        : cbPluginEvent( cbEVT_PL_LEFT_DOWN, pPane ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for mouse left up events.
+*/
+
 class cbLeftUpEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
+
+        // Constructor, taking mouse position and pane.
 
-       cbLeftUpEvent( const wxPoint& pos, cbDockPane* pPane )
+    cbLeftUpEvent( const wxPoint& pos, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_LEFT_UP, pPane ),
-                 mPos( pos )
-       {}
+        : cbPluginEvent( cbEVT_PL_LEFT_UP, pPane ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for mouse right down events.
+*/
+
 class cbRightDownEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
 
-       cbRightDownEvent( const wxPoint& pos, cbDockPane* pPane )
+        // Constructor, taking mouse position and pane.
 
-               : cbPluginEvent( cbEVT_PL_RIGHT_DOWN, pPane ),
-                 mPos( pos )
-       {}
+    cbRightDownEvent( const wxPoint& pos, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_RIGHT_DOWN, pPane ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for mouse right up events.
+*/
+
 class cbRightUpEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
 
-       cbRightUpEvent( const wxPoint& pos, cbDockPane* pPane )
+        // Constructor, taking mouse position and pane.
 
-               : cbPluginEvent( cbEVT_PL_RIGHT_UP, pPane ),
-                 mPos( pos )
-       {}
+    cbRightUpEvent( const wxPoint& pos, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_RIGHT_UP, pPane ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for mouse motion events.
+*/
+
 class cbMotionEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
+
+        // Constructor, taking mouse position and pane.
 
-       cbMotionEvent( const wxPoint& pos, cbDockPane* pPane )
+    cbMotionEvent( const wxPoint& pos, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_MOTION, pPane ),
-                 mPos( pos )
-       {}
+        : cbPluginEvent( cbEVT_PL_MOTION, pPane ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for mouse left double click events.
+*/
+
 class cbLeftDClickEvent : public cbPluginEvent
 {
 public:
-       wxPoint mPos;
+    wxPoint mPos;
+
+        // Constructor, taking mouse position and pane.
 
-       cbLeftDClickEvent( const wxPoint& pos, cbDockPane* pPane )
+    cbLeftDClickEvent( const wxPoint& pos, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_LEFT_DCLICK, pPane ),
-                 mPos( pos )
-       {}
+        : cbPluginEvent( cbEVT_PL_LEFT_DCLICK, pPane ),
+          mPos( pos )
+    {}
 };
 
-// bar/row events category
+/*
+Class for single row layout events.
+*/
 
 class cbLayoutRowEvent : public cbPluginEvent
 {
 public:
-       cbRowInfo* mpRow;
+    cbRowInfo* mpRow;
 
-       cbLayoutRowEvent( cbRowInfo* pRow, cbDockPane* pPane )
+        // Constructor, taking row information and pane.
 
-               : cbPluginEvent( cbEVT_PL_LAYOUT_ROW, pPane ),
-                 mpRow( pRow )
-       {}
+    cbLayoutRowEvent( cbRowInfo* pRow, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_LAYOUT_ROW, pPane ),
+          mpRow( pRow )
+    {}
 };
 
+/*
+Class for row resize events.
+*/
+
 class cbResizeRowEvent : public cbPluginEvent
 {
 public:
-       cbRowInfo* mpRow;
-       int        mHandleOfs;
-       bool       mForUpperHandle;
+    cbRowInfo* mpRow;
+    int        mHandleOfs;
+    bool       mForUpperHandle;
 
-       cbResizeRowEvent( cbRowInfo* pRow, int handleOfs, bool forUpperHandle, cbDockPane* pPane )
+        // Constructor, taking row information, two parameters of currently unknown use, and pane.
 
-               : cbPluginEvent( cbEVT_PL_RESIZE_ROW, pPane ),
-                 mpRow( pRow ),
-                 mHandleOfs( handleOfs ),
-                 mForUpperHandle( forUpperHandle )
-       {}
+    cbResizeRowEvent( cbRowInfo* pRow, int handleOfs, bool forUpperHandle, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_RESIZE_ROW, pPane ),
+          mpRow( pRow ),
+          mHandleOfs( handleOfs ),
+          mForUpperHandle( forUpperHandle )
+    {}
 };
 
+/*
+Class for multiple rows layout events.
+*/
+
 class cbLayoutRowsEvent : public cbPluginEvent
 {
 public:
 
-       cbLayoutRowsEvent( cbDockPane* pPane )
+        // Constructor, taking pane.
 
-               : cbPluginEvent( cbEVT_PL_LAYOUT_ROWS, pPane )
-       {}
+    cbLayoutRowsEvent( cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_LAYOUT_ROWS, pPane )
+    {}
 };
 
+/*
+Class for bar insertion events.
+*/
+
 class cbInsertBarEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo*  mpBar;
-       cbRowInfo*  mpRow;
+    cbBarInfo*  mpBar;
+    cbRowInfo*  mpRow;
+
+        // Constructor, taking bar information, row information, and pane.
 
-       cbInsertBarEvent( cbBarInfo* pBar, cbRowInfo* pIntoRow, cbDockPane* pPane )
+    cbInsertBarEvent( cbBarInfo* pBar, cbRowInfo* pIntoRow, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_INSERT_BAR, pPane ),
+        : cbPluginEvent( cbEVT_PL_INSERT_BAR, pPane ),
 
-                 mpBar( pBar     ),
-                 mpRow( pIntoRow )
-       {}
+          mpBar( pBar     ),
+          mpRow( pIntoRow )
+    {}
 };
 
+/*
+Class for bar resize events.
+*/
+
 class cbResizeBarEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
-       cbRowInfo* mpRow;
+    cbBarInfo* mpBar;
+    cbRowInfo* mpRow;
+
+        // Constructor, taking bar information, row information, and pane.
 
-       cbResizeBarEvent( cbBarInfo* pBar, cbRowInfo* pRow, cbDockPane* pPane )
+    cbResizeBarEvent( cbBarInfo* pBar, cbRowInfo* pRow, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_RESIZE_BAR, pPane ),
-                 mpBar( pBar ),
-                 mpRow( pRow )
-       {}
+        : cbPluginEvent( cbEVT_PL_RESIZE_BAR, pPane ),
+          mpBar( pBar ),
+          mpRow( pRow )
+    {}
 };
 
+/*
+Class for bar removal events.
+*/
+
 class cbRemoveBarEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
+    cbBarInfo* mpBar;
 
-       cbRemoveBarEvent( cbBarInfo* pBar, cbDockPane* pPane )
+        // Constructor, taking bar information and pane.
 
-               : cbPluginEvent( cbEVT_PL_REMOVE_BAR, pPane ),
-                 mpBar( pBar )
-       {}
+    cbRemoveBarEvent( cbBarInfo* pBar, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_REMOVE_BAR, pPane ),
+          mpBar( pBar )
+    {}
 };
 
+/*
+Class for bar window resize events.
+*/
+
 class cbSizeBarWndEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
-       wxRect     mBoundsInParent;
+    cbBarInfo* mpBar;
+    wxRect     mBoundsInParent;
 
-       cbSizeBarWndEvent( cbBarInfo* pBar, cbDockPane* pPane )
+        // Constructor, taking bar information and pane.
 
-               : cbPluginEvent( cbEVT_PL_SIZE_BAR_WND, pPane ),
-                 mpBar( pBar ),
-                 mBoundsInParent( pBar->mBoundsInParent )
-       {}
+    cbSizeBarWndEvent( cbBarInfo* pBar, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_SIZE_BAR_WND, pPane ),
+          mpBar( pBar ),
+          mBoundsInParent( pBar->mBoundsInParent )
+    {}
 };
 
+/*
+Class for bar decoration drawing events.
+*/
+
 class cbDrawBarDecorEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
-       wxDC*      mpDc;
-       wxRect     mBoundsInParent;
+    cbBarInfo* mpBar;
+    wxDC*      mpDc;
+    wxRect     mBoundsInParent;
+
+        // Constructor, taking bar information, device context, and pane.
 
-       cbDrawBarDecorEvent( cbBarInfo* pBar, wxDC& dc, cbDockPane* pPane )
+    cbDrawBarDecorEvent( cbBarInfo* pBar, wxDC& dc, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_DRAW_BAR_DECOR, pPane ),
-                 mpBar( pBar ),
-                 mpDc( &dc ),
-                 mBoundsInParent( pBar->mBoundsInParent )
-       {}
+        : cbPluginEvent( cbEVT_PL_DRAW_BAR_DECOR, pPane ),
+          mpBar( pBar ),
+          mpDc( &dc ),
+          mBoundsInParent( pBar->mBoundsInParent )
+    {}
 };
 
+/*
+Class for row decoration drawing events.
+*/
+
 class cbDrawRowDecorEvent : public cbPluginEvent
 {
 public:
-       cbRowInfo* mpRow;
-       wxDC*      mpDc;
+    cbRowInfo* mpRow;
+    wxDC*      mpDc;
+
+        // Constructor, taking row information, device context, and pane.
 
-       cbDrawRowDecorEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
+    cbDrawRowDecorEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_DRAW_ROW_DECOR, pPane ),
-                 mpRow( pRow ),
-                 mpDc( &dc )
-       {}
+        : cbPluginEvent( cbEVT_PL_DRAW_ROW_DECOR, pPane ),
+          mpRow( pRow ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for pane decoration drawing events.
+*/
+
 class cbDrawPaneDecorEvent : public cbPluginEvent
 {
 public:
-       wxDC* mpDc;
+    wxDC* mpDc;
+
+        // Constructor, taking device context and pane.
 
-       cbDrawPaneDecorEvent( wxDC& dc, cbDockPane* pPane )
+    cbDrawPaneDecorEvent( wxDC& dc, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_DRAW_PANE_DECOR, pPane ),
-                 mpDc( &dc )
-       {}
+        : cbPluginEvent( cbEVT_PL_DRAW_PANE_DECOR, pPane ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for bar handles drawing events.
+*/
+
 class cbDrawBarHandlesEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
-       wxDC*   mpDc;
+    cbBarInfo* mpBar;
+    wxDC*   mpDc;
+
+        // Constructor, taking bar information, device context, and pane.
 
-       cbDrawBarHandlesEvent( cbBarInfo* pBar, wxDC& dc, cbDockPane* pPane )
+    cbDrawBarHandlesEvent( cbBarInfo* pBar, wxDC& dc, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_DRAW_BAR_HANDLES, pPane ),
-                 mpBar( pBar ),
-                 mpDc( &dc )
-       {}
+        : cbPluginEvent( cbEVT_PL_DRAW_BAR_HANDLES, pPane ),
+          mpBar( pBar ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for row handles drawing events.
+*/
+
 class cbDrawRowHandlesEvent : public cbPluginEvent
 {
 public:
-       cbRowInfo* mpRow;
-       wxDC*      mpDc;
+    cbRowInfo* mpRow;
+    wxDC*      mpDc;
+
+        // Constructor, taking row information, device context, and pane.
 
-       cbDrawRowHandlesEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
+    cbDrawRowHandlesEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_DRAW_ROW_HANDLES, pPane ),
-                 mpRow( pRow ),
-                 mpDc( &dc )
-       {}
+        : cbPluginEvent( cbEVT_PL_DRAW_ROW_HANDLES, pPane ),
+          mpRow( pRow ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for row background drawing events.
+*/
+
 class cbDrawRowBkGroundEvent : public cbPluginEvent
 {
 public:
-       cbRowInfo* mpRow;
-       wxDC*   mpDc;
+    cbRowInfo* mpRow;
+    wxDC*   mpDc;
 
-       cbDrawRowBkGroundEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
+        // Constructor, taking row information, device context, and pane.
 
-               : cbPluginEvent( cbEVT_PL_DRAW_ROW_BKGROUND, pPane ),
-                 mpRow( pRow ),
-                 mpDc( &dc )
-       {}
+    cbDrawRowBkGroundEvent( cbRowInfo* pRow, wxDC& dc, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_DRAW_ROW_BKGROUND, pPane ),
+          mpRow( pRow ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for pane background drawing events.
+*/
+
 class cbDrawPaneBkGroundEvent : public cbPluginEvent
 {
 public:
-       wxDC* mpDc;
+    wxDC* mpDc;
 
-       cbDrawPaneBkGroundEvent( wxDC& dc, cbDockPane* pPane )
+        // Constructor, taking device context and pane.
 
-               : cbPluginEvent( cbEVT_PL_DRAW_PANE_BKGROUND, pPane ),
-                 mpDc( &dc )
-       {}
+    cbDrawPaneBkGroundEvent( wxDC& dc, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_DRAW_PANE_BKGROUND, pPane ),
+          mpDc( &dc )
+    {}
 };
 
+/*
+Class for start-bar-dragging events.
+*/
+
 class cbStartBarDraggingEvent : public cbPluginEvent
 {
 public:
-       cbBarInfo* mpBar;
-       wxPoint    mPos;  // is given in frame's coordinates
+    cbBarInfo* mpBar;
+    wxPoint    mPos;  // is given in frame's coordinates
 
-       cbStartBarDraggingEvent( cbBarInfo* pBar, const wxPoint& pos, cbDockPane* pPane )
+        // Constructor, taking bar information, mouse position, and pane.
 
-               : cbPluginEvent( cbEVT_PL_START_BAR_DRAGGING, pPane ),
-                 mpBar( pBar ),
-                 mPos( pos )
-       {}
+    cbStartBarDraggingEvent( cbBarInfo* pBar, const wxPoint& pos, cbDockPane* pPane )
+
+        : cbPluginEvent( cbEVT_PL_START_BAR_DRAGGING, pPane ),
+          mpBar( pBar ),
+          mPos( pos )
+    {}
 };
 
+/*
+Class for hint-rectangle drawing events.
+*/
+
 class cbDrawHintRectEvent : public cbPluginEvent
 {
 public:
-       wxRect mRect;      // is given in frame's coordinates
+    wxRect mRect;       // is given in frame's coordinates
 
 
-       bool   mLastTime;  // indicates that this event finishes "session" of on-screen drawing,
-                                          // thus associated resources can be freed now
-       bool   mEraseRect; // does not have any impact, if recangle is drawn using XOR-mask
+    bool   mLastTime;  // indicates that this event finishes "session" of on-screen drawing,
+                       // thus associated resources can be freed now
+    bool   mEraseRect; // does not have any impact, if recangle is drawn using XOR-mask
 
-       bool   mIsInClient;// in cleint area hint could be drawn differently,
-                          // e.g. with fat/hatched border
+    bool   mIsInClient;// in cleint area hint could be drawn differently,
+                       // e.g. with fat/hatched border
 
 
-       cbDrawHintRectEvent( const wxRect& rect, bool isInClient, bool eraseRect, bool lastTime )
+        // Constructor, taking hint rectangle and three flags.
 
-               : cbPluginEvent( cbEVT_PL_DRAW_HINT_RECT, 0 ),
-                 mRect      ( rect       ),
-                 mLastTime  ( lastTime   ),
-                 mEraseRect ( eraseRect  ),
-                 mIsInClient( isInClient )
-       {}
+    cbDrawHintRectEvent( const wxRect& rect, bool isInClient, bool eraseRect, bool lastTime )
+
+        : cbPluginEvent( cbEVT_PL_DRAW_HINT_RECT, 0 ),
+          mRect      ( rect       ),
+          mLastTime  ( lastTime   ),
+          mEraseRect ( eraseRect  ),
+          mIsInClient( isInClient )
+    {}
 };
 
+/*
+Class for start drawing in area events.
+*/
+
 class cbStartDrawInAreaEvent : public cbPluginEvent
 {
 public:
-       wxRect mArea;
-       wxDC** mppDc; // points to pointer, where the reference
-                     // to the obtained buffer-context should be placed
+    wxRect mArea;
+    wxDC** mppDc; // points to pointer, where the reference
+                  // to the obtained buffer-context should be placed
+
+        // Constructor, taking rectangular area, device context pointer to a pointer, and pane.
 
-       cbStartDrawInAreaEvent( const wxRect& area, wxDC** ppDCForArea, cbDockPane* pPane )
+    cbStartDrawInAreaEvent( const wxRect& area, wxDC** ppDCForArea, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_START_DRAW_IN_AREA, pPane ),
-                 mArea( area ),
-                 mppDc( ppDCForArea )
-       {}
+        : cbPluginEvent( cbEVT_PL_START_DRAW_IN_AREA, pPane ),
+          mArea( area ),
+          mppDc( ppDCForArea )
+    {}
 };
 
+/*
+Class for finish drawing in area events.
+*/
+
 class cbFinishDrawInAreaEvent : public cbPluginEvent
 {
 public:
-       wxRect mArea;
+    wxRect mArea;
+
+        // Constructor, taking rectangular area and pane.
 
-       cbFinishDrawInAreaEvent( const wxRect& area, cbDockPane* pPane )
+    cbFinishDrawInAreaEvent( const wxRect& area, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_FINISH_DRAW_IN_AREA, pPane ),
-                 mArea( area )
-       {}
+        : cbPluginEvent( cbEVT_PL_FINISH_DRAW_IN_AREA, pPane ),
+          mArea( area )
+    {}
 };
 
+/*
+Class for bar customization events.
+*/
+
 class cbCustomizeBarEvent : public cbPluginEvent
 {
 public:
-       wxPoint    mClickPos; // in parent frame's coordinates
-       cbBarInfo* mpBar;
+    wxPoint    mClickPos; // in parent frame's coordinates
+    cbBarInfo* mpBar;
+
+        // Constructor, taking bar information, mouse position, and pane.
 
-       cbCustomizeBarEvent( cbBarInfo* pBar, const wxPoint& clickPos, cbDockPane* pPane )
+    cbCustomizeBarEvent( cbBarInfo* pBar, const wxPoint& clickPos, cbDockPane* pPane )
 
-               : cbPluginEvent( cbEVT_PL_CUSTOMIZE_BAR, pPane ),
-                 mClickPos( clickPos ),
-                 mpBar( pBar )
-       {}
+        : cbPluginEvent( cbEVT_PL_CUSTOMIZE_BAR, pPane ),
+          mClickPos( clickPos ),
+          mpBar( pBar )
+    {}
 };
 
+/*
+Class for layout customization events.
+*/
+
 class cbCustomizeLayoutEvent : public cbPluginEvent
 {
 public:
-       wxPoint mClickPos; // in parent frame's coordinates
+    wxPoint mClickPos; // in parent frame's coordinates
+
+        // Constructor, taking mouse position.
 
-       cbCustomizeLayoutEvent( const wxPoint& clickPos )
+    cbCustomizeLayoutEvent( const wxPoint& clickPos )
 
-               : cbPluginEvent( cbEVT_PL_CUSTOMIZE_LAYOUT, 0 ),
-                 mClickPos( clickPos )
-       {}
+        : cbPluginEvent( cbEVT_PL_CUSTOMIZE_LAYOUT, 0 ),
+          mClickPos( clickPos )
+    {}
 };
 
 #endif /* __CONTROLBAR_G__ */
index 9b2933c054d409e4d0fd9900eb365b73b370b7ae..84520cce7c8688af68faf3da8800f4fb6a9b1cf7 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        dynbarhnd.h
+// Purpose:     This header simply includes controlbar.h.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     23/01/99
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __DYNBARHND_G__
index 644308277a3e8a9ab1713e68257b8490c832dd55..ea075be582edc430b048ae554749e56f044f1d55 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        dyntbar.h
+// Purpose:     wxDynamicToolBar header
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     ??/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __DYNTBAR_G__
 #include "wx/tbarbase.h"
 #include "wx/dynarray.h"
 
-// layout item
+/*
+Tool layout item.
+*/
 
 class wxToolLayoutItem : public wxObject
 {
 public:
-       wxRect    mRect;
-       bool      mIsSeparator;
+    wxRect    mRect;
+    bool      mIsSeparator;
 };
 
 class wxDynToolInfo;
@@ -33,160 +35,215 @@ class wxDynToolInfo;
 typedef wxToolLayoutItem* wxToolLayoutItemPtrT;
 typedef wxDynToolInfo*    wxDynToolInfoPtrT;
 
-
 WX_DEFINE_ARRAY( wxToolLayoutItemPtrT, wxLayoutItemArrayT  );
 WX_DEFINE_ARRAY( wxDynToolInfoPtrT,    wxDynToolInfoArrayT );
 
-// base class for layouting algorithm implementations
+/*
+This is a base class for layout algorithm implementations.
+*/
 
 class LayoutManagerBase
 {
 public:
-       virtual void Layout( const wxSize&       parentDim, 
-                                                wxSize&                 resultingDim,
-                                                wxLayoutItemArrayT& items,
-                                                int                     horizGap,
-                                int                     vertGap   ) = 0;
-
-       virtual ~LayoutManagerBase() {}
+        // Constructor.
+    virtual void Layout( const wxSize&       parentDim,
+                         wxSize&             resultingDim,
+                         wxLayoutItemArrayT& items,
+                         int                 horizGap,
+                         int                 vertGap   ) = 0;
+
+        // Destructor.
+    virtual ~LayoutManagerBase() {}
 };
 
-// layouts items in left-to-right order from
-// top towards bottom
+/*
+BagLayout lays out items in left-to-right order from
+top to bottom.
+*/
 
 class BagLayout : public LayoutManagerBase
 {
 public:
-       virtual void Layout( const wxSize&       parentDim, 
-                                                wxSize&                 resultingDim,
-                                                wxLayoutItemArrayT& items,
-                                                int                     horizGap,
-                                int                     vertGap   );
+        // Constructor.
+    virtual void Layout( const wxSize&       parentDim, 
+                         wxSize&             resultingDim,
+                         wxLayoutItemArrayT& items,
+                         int                 horizGap,
+                         int                 vertGap   );
 };
 
+/*
+This class holds dynamic toolbar item information.
+*/
+
 class wxDynToolInfo : public wxToolLayoutItem
 {
-       DECLARE_DYNAMIC_CLASS(wxDynToolInfo)
+    DECLARE_DYNAMIC_CLASS(wxDynToolInfo)
 
 public:
-       wxWindow* mpToolWnd;
-       int       mIndex;
-       wxSize    mRealSize;
+    wxWindow* mpToolWnd;
+    int       mIndex;
+    wxSize    mRealSize;
 };
 
-// layouting orientations for tools
+// Layout orientations for tools
 
 #define LO_HORIZONTAL    0
 #define LO_VERTICAL      1
 #define LO_FIT_TO_WINDOW 2
 
-// class manages containment and layouting of tool-windows
+/*
+wxDynamicToolBar manages containment and layout of tool windows.
+*/
 
 class wxDynamicToolBar : public wxToolBarBase
 {
-       DECLARE_DYNAMIC_CLASS(wxDynamicToolBar)
+    DECLARE_DYNAMIC_CLASS(wxDynamicToolBar)
 protected:
 
-       friend class wxDynamicToolBarSerializer;
+    friend class wxDynamicToolBarSerializer;
 
-       wxDynToolInfoArrayT mTools;
-       LayoutManagerBase*  mpLayoutMan;
+    wxDynToolInfoArrayT mTools;
+    LayoutManagerBase*  mpLayoutMan;
 
 protected:
-       virtual void SizeToolWindows();
+        // Internal function for sizing tool windows.
+    virtual void SizeToolWindows();
 
 public: /* public properties */
 
-       int                mSepartorSize; // default: 8
-       int                mVertGap;      // default: 0
-       int                mHorizGap;     // default: 0
-       
+    int                mSepartorSize; // default: 8
+    int                mVertGap;      // default: 0
+    int                mHorizGap;      // default: 0
+
 public:
-       wxDynamicToolBar();
+        // Default constructor.
+
+    wxDynamicToolBar();
+
+        // Constructor: see the documentation for wxToolBar for details.
+
+    wxDynamicToolBar(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
+                 const long style = wxNO_BORDER, const int orientation = wxVERTICAL,
+                 const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr);
+
+        // Destructor.
 
-       wxDynamicToolBar(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-                    const long style = wxNO_BORDER, const int orientation = wxVERTICAL,
-                        const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr);
+    ~wxDynamicToolBar(void);
 
-       ~wxDynamicToolBar(void);
+        // Creation function: see the documentation for wxToolBar for details.
 
-       bool Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
-                               const long style = wxNO_BORDER, const int orientation = wxVERTICAL, const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr);
+    bool Create(wxWindow *parent, const wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
+                const long style = wxNO_BORDER, const int orientation = wxVERTICAL, const int RowsOrColumns = 1, const wxString& name = wxToolBarNameStr);
 
-       // overridables
+        // Adds a tool. See the documentation for wxToolBar for details.
 
-       virtual void AddTool( int toolIndex, 
-                              wxWindow* pToolWindow, 
+    virtual void AddTool( int toolIndex, 
+                              wxWindow* pToolWindow,
                               const wxSize& size = wxDefaultSize );
 
-        virtual void AddTool( int toolIndex, 
+        // Adds a tool. See the documentation for wxToolBar for details.
+
+    virtual void AddTool( int toolIndex,
                               const wxString& imageFileName,
                               wxBitmapType imageFileType = wxBITMAP_TYPE_BMP,
                               const wxString& labelText = "", bool alignTextRight = FALSE,
                               bool isFlat = TRUE );
-        virtual void AddTool( int toolIndex, wxBitmap labelBmp,
+        // Adds a tool. See the documentation for wxToolBar for details.
+
+    virtual void AddTool( int toolIndex, wxBitmap labelBmp,
                               const wxString& labelText = "", bool alignTextRight = FALSE,
                               bool isFlat = TRUE );
 
-       // method from wxToolBarBase (for compatibility), only
-       // first two arguments are valid
+    // Method from wxToolBarBase (for compatibility), only
+    // the first two arguments are valid.
+    // See the documentation for wxToolBar for details.
 
-  virtual wxToolBarToolBase *AddTool(const int toolIndex, const wxBitmap& bitmap, const wxBitmap& pushedBitmap = wxNullBitmap,
+    virtual wxToolBarToolBase *AddTool(const int toolIndex, const wxBitmap& bitmap, const wxBitmap& pushedBitmap = wxNullBitmap,
                const bool toggle = FALSE, const long xPos = -1, const long yPos = -1, wxObject *clientData = NULL,
                const wxString& helpString1 = "", const wxString& helpString2 = "");
 
-       virtual void AddSeparator( wxWindow* pSepartorWnd = NULL );
+        // Adds a separator. See the documentation for wxToolBar for details.
+
+    virtual void AddSeparator( wxWindow* pSepartorWnd = NULL );
+
+        // Returns tool information for the given tool index.
+
+    wxDynToolInfo* GetToolInfo( int toolIndex );
+
+        // Removes the given tool. Misspelt in order not to clash with a similar function
+        // in the base class.
+
+    void RemveTool( int toolIndex );
+
+        // Draws a separator. The default implementation draws a shaded line.
 
-       wxDynToolInfo* GetToolInfo( int toolIndex );
+    virtual void DrawSeparator( wxDynToolInfo& info, wxDC& dc );
 
-       void RemveTool( int toolIndex );
+        // Performs layout. See definitions of orientation types.
 
-       // the default implementation draws shaded line
-       virtual void DrawSeparator( wxDynToolInfo& info, wxDC& dc );
+    virtual bool Layout();
 
-       // see definitions of orientation types
-       virtual bool Layout();
+        // Returns the preferred dimension, taking the given dimension and a reference to the result.
 
-       virtual void GetPreferredDim( const wxSize& givenDim, wxSize& prefDim );
+    virtual void GetPreferredDim( const wxSize& givenDim, wxSize& prefDim );
 
-       virtual LayoutManagerBase* CreateDefaulLayout() { return new BagLayout(); }
+        // Creates the default layout (BagLayout).
 
-       virtual void SetLayout( LayoutManagerBase* pLayout );
+    virtual LayoutManagerBase* CreateDefaultLayout() { return new BagLayout(); }
 
-       virtual void EnableTool(const int toolIndex, const bool enable = TRUE);
+        // Sets the layout for this toolbar.
 
-       // event handlers
+    virtual void SetLayout( LayoutManagerBase* pLayout );
 
-       void OnSize( wxSizeEvent& event );
-       void OnPaint( wxPaintEvent& event );
-       void OnEraseBackground( wxEraseEvent& event );
+        // Enables or disables the given tool.
 
-       // overriden from wxToolBarBase
+    virtual void EnableTool(const int toolIndex, const bool enable = TRUE);
 
-       virtual bool Realize(void);
+        // Responds to size events, calling Layout.
 
-       // stuff from the 2.1.15 
+    void OnSize( wxSizeEvent& event );
+
+        // Responds to paint events, drawing separators.
+
+    void OnPaint( wxPaintEvent& event );
+
+        // Responds to background erase events. Currently does nothing.
+
+    void OnEraseBackground( wxEraseEvent& event );
+
+        // Overriden from wxToolBarBase; does nothing.
+
+    virtual bool Realize(void);
+
+        // Finds a tool for the given position.
 
     virtual wxToolBarToolBase *FindToolForPosition(wxCoord x,
                                                    wxCoord y) const;
 
+        // Inserts a tool at the given position.
 
     virtual bool DoInsertTool(size_t pos, wxToolBarToolBase *tool);
 
-    // the tool is still in m_tools list when this function is called, it will
-    // only be deleted from it if it succeeds
+        // Deletes a tool. The tool is still in m_tools list when this function is called, and it will
+        // only be deleted from it if it succeeds.
+
     virtual bool DoDeleteTool(size_t pos, wxToolBarToolBase *tool);
 
-    // called when the tools enabled flag changes
+        // Called when the tools enabled flag changes.
+
     virtual void DoEnableTool(wxToolBarToolBase *tool, bool enable);
 
-    // called when the tool is toggled
+        // Called when the tool is toggled.
+
     virtual void DoToggleTool(wxToolBarToolBase *tool, bool toggle);
 
-    // called when the tools "can be toggled" flag changes
+        // Called when the tools 'can be toggled' flag changes.
+
     virtual void DoSetToggle(wxToolBarToolBase *tool, bool toggle);
 
-    // the functions to create toolbar tools
+        // Creates a toolbar tool.
+
     virtual wxToolBarToolBase *CreateTool(int id,
                                           const wxBitmap& bitmap1,
                                           const wxBitmap& bitmap2,
@@ -194,10 +251,12 @@ public:
                                           wxObject *clientData,
                                           const wxString& shortHelpString,
                                           const wxString& longHelpString);
-    virtual wxToolBarToolBase *CreateTool(wxControl *control);
 
+        // Creates a toolbar tool.
+
+    virtual wxToolBarToolBase *CreateTool(wxControl *control);
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __DYNTBAR_G__ */
index 1fed738ccf17318a28247cb8c68154d80ba509c8..f0ceaa5621a5d3d4d5851a33b7b0d7ad9a575263 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
+// Name:        dyntbarhnd.h
 // Purpose:     Contrib. demo
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     23/01/99
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __DYNTBARHND_G__
 #include "wx/fl/controlbar.h"
 #include "wx/fl/dyntbar.h"
 
+/*
+Dynamic toolbar dimension handler.
+*/
+
 class cbDynToolBarDimHandler : public cbBarDimHandlerBase
 {
-       DECLARE_DYNAMIC_CLASS( cbDynToolBarDimHandler )
+    DECLARE_DYNAMIC_CLASS( cbDynToolBarDimHandler )
 public:
-       void OnChangeBarState(cbBarInfo* pBar, int newState );
-       void OnResizeBar( cbBarInfo* pBar, const wxSize& given, wxSize& preferred );
+
+        // Called when the bar changes state.
+
+    void OnChangeBarState(cbBarInfo* pBar, int newState );
+
+        // Called when a bar is resized.
+
+    void OnResizeBar( cbBarInfo* pBar, const wxSize& given, wxSize& preferred );
 };
 
 #endif /* __DYNTBARHND_G__ */
index 90f33702f63d1babb329db7b8c7a78c6d9ff8ab7..b12e3fbbc53f6b892ecba35187faf961b76527d8 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        frmview.h
+// Purpose:     wxFrameView and wxFrameManager classes.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     02/01/99
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __FRMVIEW_G__
@@ -28,112 +28,120 @@ class wxObjectStorage;
 
 class wxFrameManager;
 
+/*
+It is not clear what this class does. It is not used elsewhere in FL.
+*/
+
 class wxFrameView : public wxEvtHandler
 {
 protected:
-       wxStringList    mTopMenus;
-       wxFrameLayout*  mpLayout;
-       wxFrameManager* mpFrameMgr;
-       bool            mDoToolUpdates;
+    wxStringList    mTopMenus;
+    wxFrameLayout*  mpLayout;
+    wxFrameManager* mpFrameMgr;
+    bool            mDoToolUpdates;
 
-       friend class wxFrameManager;
-       friend class wxFrameViewSerializer;     
+    friend class wxFrameManager;
+    friend class wxFrameViewSerializer;
 
 protected:
-       void OnIdle( wxIdleEvent& event);
-       
+    void OnIdle( wxIdleEvent& event);
+
 public:
-       wxFrameView();
-       ~wxFrameView();
+    wxFrameView();
+    ~wxFrameView();
 
-       virtual void Activate();
-       virtual void Deactivate();
+    virtual void Activate();
+    virtual void Deactivate();
 
-       wxFrame* GetParentFrame();
-       wxWindow* GetClientWindow();
+    wxFrame* GetParentFrame();
+    wxWindow* GetClientWindow();
 
-       wxFrameManager& GetFrameManager();
+    wxFrameManager& GetFrameManager();
 
-       void RegisterMenu( const wxString& topMenuName );
+    void RegisterMenu( const wxString& topMenuName );
 
-       void CreateLayout();
-       wxFrameLayout* GetLayout();
-       void SetLayout( wxFrameLayout* pLayout );
-       void SetToolUpdates( bool doToolUpdates = TRUE );
+    void CreateLayout();
+    wxFrameLayout* GetLayout();
+    void SetLayout( wxFrameLayout* pLayout );
+    void SetToolUpdates( bool doToolUpdates = TRUE );
 
 
-       // hooks for specific frame-views
+    // hooks for specific frame-views
 
-       virtual void OnInit() {}
+    virtual void OnInit() {}
 
-       virtual void OnSerialize( wxObjectStorage& store ) {}
-       virtual void OnActiveate() {}
-       virtual void OnDeactivate() {}
+    virtual void OnSerialize( wxObjectStorage& store ) {}
+    virtual void OnActiveate() {}
+    virtual void OnDeactivate() {}
 
-       // imp. is mandatory
-       virtual void OnRecreate() {}
-       virtual void OnInitMenus() {}
+    // imp. is mandatory
+    virtual void OnRecreate() {}
+    virtual void OnInitMenus() {}
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 class wxFrame;
 
+/*
+It is not clear what this class does. It is not used elsewhere in FL.
+*/
+
 class wxFrameManager : wxObject
 {
 protected:
-       wxList       mViews;
-       wxWindow*    mpFrameWnd;
-       int          mActiveViewNo;
-       wxWindow*    mpClientWnd;
+    wxList       mViews;
+    wxWindow*    mpFrameWnd;
+    int          mActiveViewNo;
+    wxWindow*    mpClientWnd;
 
 #if 0
-       wxObjectStorage mStore;
+    wxObjectStorage mStore;
 #endif
 
-       wxString        mSettingsFile;
+    wxString        mSettingsFile;
 
 protected:
-       void DoSerialize( wxObjectStorage& store );
-       void DestroyViews();
-       int GetViewNo( wxFrameView* pView );
-       void EnableMenusForView( wxFrameView* pView, bool enable );
-       void SyncAllMenus();
+    void DoSerialize( wxObjectStorage& store );
+    void DestroyViews();
+    int GetViewNo( wxFrameView* pView );
+    void EnableMenusForView( wxFrameView* pView, bool enable );
+    void SyncAllMenus();
 
 public:
-       wxFrameManager();
-       ~wxFrameManager();
+    wxFrameManager();
+    ~wxFrameManager();
 
-       // if file name is empty, views are are not saved/loaded
+    // if file name is empty, views are are not saved/loaded
 
-       virtual void Init( wxWindow* pMainFrame, const wxString& settingsFile = "" );
+    virtual void Init( wxWindow* pMainFrame, const wxString& settingsFile = "" );
 
-       // synonyms
-       wxFrame* GetParentFrame();
-       wxWindow* GetParentWindow();
+    // synonyms
+    wxFrame* GetParentFrame();
+    wxWindow* GetParentWindow();
 
-       int GetActiveViewNo();
-       wxFrameView* GetActiveView();
-       wxNode* GetActiveViewNode();
+    int GetActiveViewNo();
+    wxFrameView* GetActiveView();
+    wxNode* GetActiveViewNode();
 
-       wxFrameView* GetView( int viewNo );
+    wxFrameView* GetView( int viewNo );
 
-       void SetClinetWindow( wxWindow* pFrameClient ); 
-       wxWindow* GetClientWindow();
+    void SetClinetWindow( wxWindow* pFrameClient ); 
+    wxWindow* GetClientWindow();
 
-       void AddView( wxFrameView* pFrmView );
-       void RemoveView( wxFrameView* pFrmView );
+    void AddView( wxFrameView* pFrmView );
+    void RemoveView( wxFrameView* pFrmView );
 
-       void ActivateView( int viewNo );
-       void ActivateView( wxFrameView* pFrmView );
-       void DeactivateCurrentView();
+    void ActivateView( int viewNo );
+    void ActivateView( wxFrameView* pFrmView );
+    void DeactivateCurrentView();
 
-       wxObjectStorage& GetObjectStore();
+    wxObjectStorage& GetObjectStore();
 
-       void SaveViewsNow();
-       bool ReloadViews();
+    void SaveViewsNow();
+    bool ReloadViews();
 
-       bool ViewsAreLoaded();
+    bool ViewsAreLoaded();
 };
 
 #endif /* __FRMVIEW_G__ */
index d710e9f7a3fbde226c10c81158c1988eed3fdb4d..1c70b6e84a38c27ff6520b4151c165eca5bccc10 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        garbagec.h
+// Purpose:     GarbageCollector class.
 // Author:      Aleksandras Gluchovas (@Lithuania)
 // Modified by:
 // Created:     ??/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GARBAGEC_G__
 
 struct GCItem
 {
-       void*     mpObj;
-       wxList    mRefs;   // references to other nodes
+    void*      mpObj;
+    wxList    mRefs;   // references to other nodes
 };
 
 inline void* gc_node_to_obj( wxNode* pGCNode )
 {
-       return ( (GCItem*) (pGCNode->Data()) )->mpObj;
+    return ( (GCItem*) (pGCNode->Data()) )->mpObj;
 }
 
-// class implements extremely slow, but probably one of the most simple GC algorithms
+/*
+This class implements an extremely slow but simple garbage collection algorithm.
+*/
 
 class GarbageCollector
 {
 protected:
-       wxList mAllNodes;
-       wxList mRegularLst;
-       wxList mCycledLst;
+    wxList mAllNodes;
+    wxList mRegularLst;
+    wxList mCycledLst;
 
-       wxNode* FindItemNode( void* pForObj );
-       void    ResolveReferences();
+        // Internal method for finding a node.
+    wxNode* FindItemNode( void* pForObj );
 
-       wxNode* FindReferenceFreeItemNode();
-       void    RemoveReferencesToNode( wxNode* pItemNode );
-       void    DestroyItemList( wxList& lst );
+        // Internal method for resolving references.
+    void    ResolveReferences();
+
+        // Internal method for findind and freeing a node.
+    wxNode* FindReferenceFreeItemNode();
+
+        // Remove references to this node.
+    void    RemoveReferencesToNode( wxNode* pItemNode );
+
+        // Destroys a list of items.
+    void    DestroyItemList( wxList& lst );
 
 public:
 
-       GarbageCollector() {}
+        // Default constructor.
+    GarbageCollector() {}
+
+        // Destructor.
+    virtual ~GarbageCollector();
+
+        // Prepare data for garbage collection.
+
+    virtual void AddObject( void* pObj, int refCnt = 1 );
+
+        // Prepare data for garbage collection.
 
-       virtual ~GarbageCollector();
+    virtual void AddDependency( void* pObj, void* pDependsOnObj );
 
-       // prepare data for GC alg.
+        // Executes garbage collection algorithm.
 
-       virtual void AddObject( void* pObj, int refCnt = 1 );
-       virtual void AddDependency( void* pObj, void* pDependsOnObj );
+    virtual void ArrangeCollection();
 
-       // executes GC alg.
+        // Accesses the results of the algorithm.
 
-       virtual void ArrangeCollection();
+    wxList& GetRegularObjects();
 
-       // access results of the alg.
+        // Get cycled objects.
 
-       wxList& GetRegularObjects();
-       wxList& GetCycledObjects();
+    wxList& GetCycledObjects();
 
-       // removes all data from GC
+        // Removes all data from the garbage collector.
 
-       void Reset();
+    void Reset();
 };
 
 #endif /* __GARBAGEC_G__ */
index e8fabc5acc4808d876541575bf2d624d25194610..544e43ea231b8b05bd872eaa6bc20f5f100b0bec 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        gcupdatesmgr.h
+// Purpose:     Header for cbGCUpdatesMgr class.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     19/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GCUPDATESMGR_G__
 #include "wx/fl/garbagec.h"
 
 /*
- * class implements optimized logic for refreshing
- * areas of frame layout - which actually need to be updated. 
- * Is used as default updates-manager by wxFrameLayout.
- *
- * it is called "Garbage Collecting" u.mgr for it's implementation
- * tries to find out dependencies between bars, and to order
- * them ito "hierarchy", this hierarchical sorting resembles
- * implemenation of heap-garbage collectors, which resolve
- * dependencies between references.
- *
- * Example: there are situations where the order of moving
- *          the windows does matter:
- *
- *   case 1)                
- *      ------             ---
- *      | A     |                  |B|  
- *             ------   --->   | |
- *                     ---                     --- ------ 
- *                     |B|                             | A  | 
- *                     | |                             ------
- *                     ---                             
- *                                             (future)
- *        (past)            
- *
- *  past/future positions of A and B windows completely overlapp, i.e.
- *  depend on each other, and there is not solution for
- *  moving the windows witout refreshing both of them,
- *  -- we have cyclic dependency here. The gc. alg will
- *  find this cyclic dependecy and will force "refresh"
- *  after movement.
- *
- *   case 2)
- *
- *      ------                                 
- *      | A     |                                      
- *             ------   --->                       
- *                     ---                               
- *                     |B|                                        ------   
- *                     | |                                        | A  |   
- *                     ---                                        ------         
- *                                              ---
- *                                              |B|
- *                                              | |
- *                                          ---
- *
- *                                             (future)                
- *        (past)       
- *
- *  in this case past/future positions do not overlapp, thus
- *  it's enough only to move windows, without refreshing them.
- *  GC will "notice" it.
- *
- *  there is also third case, when overlapping is partial
- *  in this case the refershing can be also avoided by
- *  moving windows in the order of "most-dependant" towards the
- *  "least-dependent". GC handles this automatically, by
- *  sorting windows by their dependency-level (or "hierarchy")
- *
- *  See garbagec.h for more details of this method, garbagec.h/cpp
- *  implement sorting of generic-dependencies (does not deal
- *  with graphical objects directly)
- *
- *  Summary: improves performance when complex/large windows are 
- *           moved around, by reducing number of repaints. Also helps 
- *           to avoid dirty non-client areas of moved windows
- *           in some special cases of "overlapping anomalies"
- */
+This class implements optimized logic for refreshing
+the areas of frame layout that actually need to be updated.
+It is used as the default updates manager by wxFrameLayout.
+
+It is called 'Garbage Collecting' updates manager because
+its implementation tries to find out dependencies between bars,
+and to order them into a 'hierarchy'. This hierarchical sorting resembles
+the implementation of heap-garbage collectors, which resolve
+dependencies between references.
+
+Example: there are situations where the order in which the user
+moves windows does matter.
+
+\begin{verbatim}
+  case 1)
+     ------            ---
+     | A     |             |B|
+        ------     --->      | |
+            ---               --- ------
+            |B|                   | A  |
+            | |                   ------
+            ---
+                        (future)
+       (past)
+\end{verbatim}
+
+Past/future positions of A and B windows completely overlap, i.e.
+depend on each other, and there is no solution for
+moving the windows without refreshing both of them
+-- we have a cyclic dependency here. The garbage collection algorithm will
+find this cyclic dependecy and will force refresh after movement.
+
+\begin{verbatim}
+  case 2)
+
+     ------
+     | A     |
+        ------     --->
+            ---
+            |B|                              ------
+            | |                              | A  |
+            ---                              ------
+                         ---
+                         |B|
+                         | |
+                         ---
+
+                        (future)
+       (past)
+\end{verbatim}
+
+In this case past/future positions do not overlap, so
+it is enough only to move windows without refreshing them.
+Garbage collection will 'notice' this.
+
+There is also a third case, when overlapping is partial.
+In this case the refreshing can also be avoided by
+moving windows in the order of 'most-dependant' towards the
+'least-dependent'. GC handles this automatically, by
+sorting windows by their dependency-level (or 'hierarchy').
+
+See garbagec.h for more details of this method; garbagec.h/cpp
+implement sorting of generic dependencies and does not deal
+with graphical objects directly.
+
+Summary: garbage collection improves performance when complex or large
+windows are moved around, by reducing the number of repaints. It also helps
+to avoid dirty non-client areas of moved windows
+in some special cases of 'overlapping anomalies'.
+*/
 
 class cbGCUpdatesMgr : public cbSimpleUpdatesMgr
 {
-       DECLARE_DYNAMIC_CLASS( cbGCUpdatesMgr )
+    DECLARE_DYNAMIC_CLASS( cbGCUpdatesMgr )
 protected:
 
-       GarbageCollector mGC;
+    GarbageCollector mGC;
 
-       void DoRepositionItems( wxList& items );
+        // Internal function for repositioning items.
+    void DoRepositionItems( wxList& items );
 
-       void AddItem( wxList&     itemList,
-                                 cbBarInfo*  pBar, 
-                         cbDockPane* pPane,
-                                 wxRect&     curBounds,
-                                 wxRect&     prevBounds );
+        // Internal function for repositioning items.
+    void AddItem( wxList&     itemList,
+                  cbBarInfo*  pBar,
+                  cbDockPane* pPane,
+                  wxRect&     curBounds,
+                  wxRect&     prevBounds );
 
 public:
 
-       cbGCUpdatesMgr(void) {}
+        // Default constructor.
+    cbGCUpdatesMgr(void) {}
 
-       cbGCUpdatesMgr( wxFrameLayout* pPanel );
+        // Constructor, taking a frame layout.
+    cbGCUpdatesMgr( wxFrameLayout* pPanel );
 
-       // notificiactions received from Frame Layout :
+        // Receives notifications from the frame layout.
+    virtual void OnStartChanges();
 
-       virtual void OnStartChanges();
-
-       // refreshes parts of the frame layout, which need an update
-       virtual void UpdateNow();
+        // Refreshes the parts of the frame layout which need an update.
+    virtual void UpdateNow();
 };
 
 #endif /* __GCUPDATESMGR_G__ */
index 4d8d07a64846b2c9f3aa89e30ff43eae3afe2e17..65a2d01b4c2afcd48769300c2f332b0dd4e75b6c 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        hintanimpl.h
+// Purpose:     Header for cbHintAnimationPlugin class.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     9/11/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __HINTANIMPL_G__
 
 class cbHintAnimTimer;
 
+/*
+A plugin to draw animated hints when the user drags a pane.
+*/
+
 class cbHintAnimationPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbHintAnimationPlugin )
+    DECLARE_DYNAMIC_CLASS( cbHintAnimationPlugin )
 protected:
-       friend class cbHintAnimTimer;
+    friend class cbHintAnimTimer;
 
-       wxScreenDC*      mpScrDc;     // created while tracking hint-rect
-       cbHintAnimTimer* mpAnimTimer;  
+    wxScreenDC*      mpScrDc;     // created while tracking hint-rect
+    cbHintAnimTimer* mpAnimTimer;
 
-       // FOR NOW:: try it without mutually exculisve locks
-       volatile wxRect  mCurRect;
+    // FOR NOW:: try it without mutually exculisve locks
+    volatile wxRect  mCurRect;
 
-       // state variables
+    // state variables
 
-       bool   mAnimStarted;
-       bool   mStopPending;
+    bool   mAnimStarted;
+    bool   mStopPending;
 
-       bool   mPrevInClient;
-       bool   mCurInClient;
+    bool   mPrevInClient;
+    bool   mCurInClient;
 
-       wxRect mPrevRect;
+    wxRect mPrevRect;
 
 public:
-       int    mMorphDelay;         // delay between frames in miliseconds,     default: 20
-       int    mMaxFrames;          // number  of iterations for hint morphing, default: 30
-                                                           // (morph duration = mMorphDelay * mMaxFrames msec)
+    int    mMorphDelay;         // delay between frames in miliseconds,     default: 20
+    int    mMaxFrames;          // number  of iterations for hint morphing, default: 30
+                                // (morph duration = mMorphDelay * mMaxFrames msec)
 
-       int    mInClientHintBorder; // default: 4 pixels
+    int    mInClientHintBorder; // default: 4 pixels
 
-       bool   mAccelerationOn;     // TRUE, if morph accelerates, otherwise morph
-                                                               // speed is constant. Default: TRUE
+    bool   mAccelerationOn;     // TRUE, if morph accelerates, otherwise morph
+                                // speed is constant. Default: TRUE
 
-       // TBD:: get/set methods for above members
+    // TBD:: get/set methods for above members
 
 protected:
-       void StartTracking();
 
-       void DrawHintRect ( wxRect& rect, bool isInClientRect);
-       void EraseHintRect( wxRect& rect, bool isInClientRect);
+        // Internal function for starting tracking.
+    void StartTracking();
+
+        // Internal function for drawing a hint rectangle.
+    void DrawHintRect ( wxRect& rect, bool isInClientRect);
 
-       void FinishTracking();
+        // Internal function for erasing a hint rectangle.
+    void EraseHintRect( wxRect& rect, bool isInClientRect);
 
-       void DoDrawHintRect( wxRect& rect, bool isInClientRect);
+        // Internal function for finishing tracking.
+    void FinishTracking();
 
-       void RectToScr( wxRect& frameRect, wxRect& scrRect );
+        // Internal function for drawing a hint rectangle.
+    void DoDrawHintRect( wxRect& rect, bool isInClientRect);
+
+        // Internal function for translating coordinates.
+    void RectToScr( wxRect& frameRect, wxRect& scrRect );
 
 public:
-       cbHintAnimationPlugin(void);
+        // Default constructor.
+    cbHintAnimationPlugin();
 
-       ~cbHintAnimationPlugin();
+        // Constructor, taking a layout panel and pane mask.
+    cbHintAnimationPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
 
-       cbHintAnimationPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Destructor.
+    ~cbHintAnimationPlugin();
 
-       void OnDrawHintRect( cbDrawHintRectEvent& event );        
+        // Event handler respoding to hint draw events.
+    void OnDrawHintRect( cbDrawHintRectEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 
-// helper classes
+/*
+A private helper class.
+*/
 
 struct MorphInfoT
 {
-       wxPoint mFrom;
-       wxPoint mTill;
+    wxPoint mFrom;
+    wxPoint mTill;
 };
 
+/*
+A private helper class.
+*/
+
 class cbHintAnimTimer : public wxTimer 
 {
 protected:
 
-       friend class cbHintAnimationPlugin;
+    friend class cbHintAnimationPlugin;
 
-       wxRect      mPrevMorphed;
+    wxRect      mPrevMorphed;
 
-       MorphInfoT  mUpperLeft;
-       MorphInfoT  mLowerRight;
-       int         mCurIter;
+    MorphInfoT  mUpperLeft;
+    MorphInfoT  mLowerRight;
+    int         mCurIter;
 
-       long        mLock;
+    long        mLock;
 
-       cbHintAnimationPlugin* mpPl;
+    cbHintAnimationPlugin* mpPl;
 
-       void MorphPoint( wxPoint& origin, MorphInfoT& info, wxPoint& point );
+    void MorphPoint( wxPoint& origin, MorphInfoT& info, wxPoint& point );
 
 public: 
 
-       cbHintAnimTimer(void);
+    cbHintAnimTimer(void);
 
-       virtual void Notify(void);
+    virtual void Notify(void);
 
-       virtual bool Init( cbHintAnimationPlugin* pAnimPl, bool reinit );
+    virtual bool Init( cbHintAnimationPlugin* pAnimPl, bool reinit );
 };
 
 #endif /* __HINTANIMPL_G__ */
index 1363d738295bcbee2860a755f05f8ffd6f1e3e90..609923f41797dc6fe2dec5a1427e007af6170014 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        newbmpbtn.h
+// Purpose:     wxNewBitmapButton header.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     ??/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __NEWBMPBTN_G__
@@ -19,7 +19,7 @@
 #include "wx/button.h"
 #include "wx/string.h"
 
-// button lable-text alignment types
+// button label-text alignment types
 
 #define NB_ALIGN_TEXT_RIGHT  0
 #define NB_ALIGN_TEXT_BOTTOM 1
 class wxNewBitmapButton;
 class wxBorderLessBitmapButton;
 
-// alternative class for wxBmpButton
+/*
+This is an alternative class to wxBitmapButton. It is used
+in the implementation of dynamic toolbars.
+*/
 
 class wxNewBitmapButton: public wxPanel
 {
-       DECLARE_DYNAMIC_CLASS(wxNewBitmapButton)
+    DECLARE_DYNAMIC_CLASS(wxNewBitmapButton)
 
 protected:
 
-       friend class wxNewBitmapButtonSerializer;
+    friend class wxNewBitmapButtonSerializer;
 
-       int      mTextToLabelGap;
-       int      mMarginX;
-       int      mMarginY;
-       int      mTextAlignment;
-       bool     mIsSticky;
-       bool     mIsFlat;
+    int      mTextToLabelGap;
+    int      mMarginX;
+    int      mMarginY;
+    int      mTextAlignment;
+    bool     mIsSticky;
+    bool     mIsFlat;
 
-       wxString mLabelText;
-       wxString mImageFileName;
-       wxBitmapType mImageFileType;
+    wxString mLabelText;
+    wxString mImageFileName;
+    wxBitmapType mImageFileType;
 
-       wxBitmap mDepressedBmp; // source image for rendering
-                               // labels for particular state
+    wxBitmap mDepressedBmp; // source image for rendering
+                            // labels for particular state
 
-       wxBitmap mFocusedBmp;   // may not be always present -
-                                                       // only if mHasFocusedBmp is TRUE
+    wxBitmap mFocusedBmp;   // may not be always present -
+                            // only if mHasFocusedBmp is TRUE
 
-       wxBitmap* mpDepressedImg;
-       wxBitmap* mpPressedImg;
-       wxBitmap* mpDisabledImg;
-       wxBitmap* mpFocusedImg;
+    wxBitmap* mpDepressedImg;
+    wxBitmap* mpPressedImg;
+    wxBitmap* mpDisabledImg;
+    wxBitmap* mpFocusedImg;
 
-       // button state variables;
-       bool      mDragStarted;
-       bool      mIsPressed; 
-       bool      mIsInFocus;
-       bool      mPrevPressedState;
-       bool      mPrevInFocusState;
+    // button state variables;
+    bool      mDragStarted;
+    bool      mIsPressed;
+    bool      mIsInFocus;
+    bool      mPrevPressedState;
+    bool      mPrevInFocusState;
 
-       bool      mHasFocusedBmp;
+    bool      mHasFocusedBmp;
 
-       // type of event which is fired upon depression of this button
-       int       mFiredEventType;
+    // type of event which is fired upon depression of this button
+    int       mFiredEventType;
 
-       // pens for drawing decorations (borders)
-       wxPen     mBlackPen;
-       wxPen     mDarkPen;
-       wxPen     mGrayPen;
-       wxPen     mLightPen;
+    // pens for drawing decorations (borders)
+    wxPen     mBlackPen;
+    wxPen     mDarkPen;
+    wxPen     mGrayPen;
+    wxPen     mLightPen;
 
-       bool      mIsCreated;
-       int       mSizeIsSet;
+    bool      mIsCreated;
+    int       mSizeIsSet;
 
 protected:
-       void DestroyLabels();
 
-       // returns the label which match the current button state
-       virtual wxBitmap* GetStateLabel();
+        // Internal function for destroying labels.
+    void DestroyLabels();
 
-       virtual void DrawShade( int outerLevel,
-                                                       wxDC&  dc,
-                                   wxPen& upperLeftSidePen,
-                                                   wxPen& lowerRightSidePen );
+        // Returns the label that matches the current button state.
+    virtual wxBitmap* GetStateLabel();
 
-       bool IsInWindow( int x,int y );
+        // Draws shading on the button.
+    virtual void DrawShade( int outerLevel,
+                            wxDC&  dc,
+                            wxPen& upperLeftSidePen,
+                            wxPen& lowerRightSidePen );
+
+        // Returns TRUE if the given point is in the window.
+    bool IsInWindow( int x, int y );
 
 public:
 
-       wxNewBitmapButton( const wxBitmap& labelBitmap = wxNullBitmap, 
-                                          const wxString& labelText   = "",
-                              int   alignText             = NB_ALIGN_TEXT_BOTTOM,
-                                          bool  isFlat                = TRUE,
-                                          // this is the default type of fired events
-                                          int firedEventType = wxEVT_COMMAND_MENU_SELECTED,
-                                          int marginX        = 2,
-                          int marginY        = 2,
-                                          int textToLabelGap = 2,
-                                          bool isSticky      = FALSE
-                            );
-
-       // use this constructor if buttons have to be persistant 
-        
-       wxNewBitmapButton( const wxString& bitmapFileName,
+        // Constructor.
+    wxNewBitmapButton( const wxBitmap& labelBitmap = wxNullBitmap,
+                       const wxString& labelText   = "",
+                       int   alignText             = NB_ALIGN_TEXT_BOTTOM,
+                       bool  isFlat                = TRUE,
+                       // this is the default type of fired events
+                       int firedEventType = wxEVT_COMMAND_MENU_SELECTED,
+                       int marginX        = 2,
+                       int marginY        = 2,
+                       int textToLabelGap = 2,
+                       bool isSticky      = FALSE
+                     );
+
+        // Use this constructor if buttons have to be persistant
+    wxNewBitmapButton( const wxString& bitmapFileName,
                            const wxBitmapType     bitmapFileType = wxBITMAP_TYPE_BMP,
                            const wxString& labelText      = "",
                            int alignText                  = NB_ALIGN_TEXT_BOTTOM,
@@ -126,39 +133,61 @@ public:
                            bool isSticky      = FALSE
                              );
 
-       ~wxNewBitmapButton();
+        // Destructor.
+    ~wxNewBitmapButton();
+
+        // This function should be called after Create. It renders the labels, having
+        // reloaded the button image if necessary.
+    virtual void Reshape();
+
+        // Sets the label and optionally label text.
+    virtual void SetLabel(const wxBitmap& labelBitmap, const wxString& labelText = "" );
+
+        // Sets the text alignment and margins.
+    virtual void SetAlignments( int alignText = NB_ALIGN_TEXT_BOTTOM,
+                                int marginX        = 2,
+                                int marginY        = 2,
+                                int textToLabelGap = 2);
+
+        // Draws the decorations.
+    virtual void DrawDecorations( wxDC& dc );
+
+        // Draws the label.
+    virtual void DrawLabel( wxDC& dc );
+
+        // Renders the label image.
+    virtual void RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp, 
+                                   bool isEnabled = TRUE,
+                                   bool isPressed = FALSE);
+
+        // Renders label images.
+    virtual void RenderLabelImages();
+
+        // Renders label images.
+    virtual void RenderAllLabelImages();
+
+        // Responds to a left mouse button down event.
+    void OnLButtonDown( wxMouseEvent& event );
 
-       // should be called after Create();
-       virtual void Reshape();
+        // Responds to a left mouse button up event.
+    void OnLButtonUp( wxMouseEvent& event );
 
-       // overridables
-       virtual void SetLabel(const wxBitmap& labelBitmap, const wxString& labelText = "" );
-       
-       virtual void SetAlignments( int alignText = NB_ALIGN_TEXT_BOTTOM,
-                                                               int marginX        = 2,
-                                                               int marginY        = 2,
-                                                               int textToLabelGap = 2);
+        // Responds to a mouse move event.
+    void OnMouseMove( wxMouseEvent& event );
 
-       virtual void DrawDecorations( wxDC& dc );
-       virtual void DrawLabel( wxDC& dc );
+        // Responds to a size event.
+    void OnSize( wxSizeEvent& event );
 
-       virtual void RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp, 
-                                                                  bool isEnabled = TRUE,
-                                                                  bool isPressed = FALSE);
+        // Responds to a paint event.
+    void OnPaint( wxPaintEvent& event );
 
-       virtual void RenderLabelImages();
-       virtual void RenderAllLabelImages();
+        // Responds to an erase background event.
+    void OnEraseBackground( wxEraseEvent& event );
 
-       // event handlers
-       void OnLButtonDown( wxMouseEvent& event );
-       void OnLButtonUp( wxMouseEvent& event );
-       void OnMouseMove( wxMouseEvent& event );
-       void OnSize( wxSizeEvent& event );
-       void OnPaint( wxPaintEvent& event );
-       void OnEraseBackground( wxEraseEvent& event );
-       void OnKillFocus( wxFocusEvent& event );
+        // Responds to a kill focus event.
+    void OnKillFocus( wxFocusEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __NEWBMPBTN_G__ */
index 4fe1adbdeead2a420bb01d2ce59ac37972a3b025..11272d30422fa005778681e5e95e3a180cebfe93 100644 (file)
@@ -1,13 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Central header file for control-bar related classes
-//
+// Name:        panedrawpl.h
+// Purpose:     cbPaneDrawPlugin class header.
 // Author:      Aleksandras Gluchovas <mailto:alex@soften.ktu.lt>
 // Modified by:
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __PANEDRAWPL_G__
 #include "wx/fl/controlbar.h"
 
 /*
- * Simple, but all-in-one plugin implementation. Resembles look & feel of
- * to MFC control-bars. Handles painting of pane and items in it.
- * Fires bar/layout customization event, when user right-clicks bar/pane. 
- * Hooking an instance of this and row-layouting plugins per each pane, 
- * would be enough for the frame layout to function properly.
- * (they are plugged in autimatically by wxFrameLayout class)
- */
+Simple but all-in-one plugin implementation. Resembles the look and feel of
+MFC control-bars. The class handles painting of the pane and the items in it;
+it generates bar/layout customization events, when the user right-clicks the bar/pane.
+Hooking an instance of this and row-layout plugins for each pane
+would be enough for the frame layout to function properly
+(they are plugged in automatically by the wxFrameLayout class).
+*/
 
 class cbPaneDrawPlugin : public cbPluginBase
 {
 public:
-       DECLARE_DYNAMIC_CLASS( cbPaneDrawPlugin )
+    DECLARE_DYNAMIC_CLASS( cbPaneDrawPlugin )
 protected:
 
-       // resizing bars/rows state variables
-       bool           mResizeStarted;
-       bool           mResizeCursorOn;
-       wxPoint        mDragOrigin;
+    // resizing bars/rows state variables
+    bool           mResizeStarted;
+    bool           mResizeCursorOn;
+    wxPoint        mDragOrigin;
 
-       cbBarInfo*     mpDraggedBar; // also used when in bar-drag action
-       cbRowInfo*     mpResizedRow;
+    cbBarInfo*     mpDraggedBar; // also used when in bar-drag action
+    cbRowInfo*     mpResizedRow;
 
-       bool           mRowHandleHitted;
-       bool           mIsUpperHandle;
-       bool           mBarHandleHitted;
-       bool           mIsLeftHandle;
-       bool           mBarContentHitted;
+    bool           mRowHandleHitted;
+    bool           mIsUpperHandle;
+    bool           mBarHandleHitted;
+    bool           mIsLeftHandle;
+    bool           mBarContentHitted;
 
-       // contstraints for dragging the handle
-       wxRect         mHandleDragArea; 
-       bool           mHandleIsVertical;
-       int            mHandleOfs;
-       int            mDraggedDelta;
-       wxPoint        mPrevPos;
+    // contstraints for dragging the handle
+    wxRect         mHandleDragArea;
+    bool           mHandleIsVertical;
+    int            mHandleOfs;
+    int            mDraggedDelta;
+    wxPoint        mPrevPos;
 
-       // used for handling, start-draw-in-area events
-       wxClientDC*    mpClntDc;      
+    // used for handling, start-draw-in-area events
+    wxClientDC*    mpClntDc;
 
-       cbDockPane*    mpPane; // is set up temorary short-cut, while handling event
+    cbDockPane*    mpPane; // is set up temorary short-cut, while handling event
 
 protected:
-       // helpers
-       void DrawDraggedHandle( const wxPoint& pos, cbDockPane& pane );
+        // Internal helper: draws the dragged handle.
+    void DrawDraggedHandle( const wxPoint& pos, cbDockPane& pane );
 
-       virtual void DrawPaneShade( wxDC& dc, int alignment );
-       virtual void DrawPaneShadeForRow( cbRowInfo* pRow, wxDC& dc );
+        // Internal helper: draws the pane shading.
+    virtual void DrawPaneShade( wxDC& dc, int alignment );
 
-       virtual void DrawUpperRowHandle( cbRowInfo* pRow, wxDC& dc );
-       virtual void DrawLowerRowHandle( cbRowInfo* pRow, wxDC& dc );
+        // Internal helper: draws the pane shading for a row.
+    virtual void DrawPaneShadeForRow( cbRowInfo* pRow, wxDC& dc );
 
-       virtual void DrawUpperRowShades( cbRowInfo* pRow, wxDC& dc, int level );
-       virtual void DrawLowerRowShades( cbRowInfo* pRow, wxDC& dc, int level );
+        // Internal helper: draws the upper row handle.
+    virtual void DrawUpperRowHandle( cbRowInfo* pRow, wxDC& dc );
 
-       virtual void DrawBarInnerShadeRect( cbBarInfo* pBar, wxDC& dc );
+        // Internal helper: draws the lower row handle.
+    virtual void DrawLowerRowHandle( cbRowInfo* pRow, wxDC& dc );
 
-       virtual void DrawShade( int level, wxRect& rect, int alignment, wxDC& dc );
-       virtual void DrawShade1( int level, wxRect& rect, int alignment, wxDC& dc );
+        // Internal helper: draws the upper row shading.
+    virtual void DrawUpperRowShades( cbRowInfo* pRow, wxDC& dc, int level );
 
-       inline void SetLightPixel( int x, int y, wxDC& dc );
-       inline void SetDarkPixel ( int x, int y, wxDC& dc );
+        // Internal helper: draws the lower row shading.
+    virtual void DrawLowerRowShades( cbRowInfo* pRow, wxDC& dc, int level );
+
+        // Internal helper: draws the inner bar shading.
+    virtual void DrawBarInnerShadeRect( cbBarInfo* pBar, wxDC& dc );
+
+        // Internal helper: draws shading.
+    virtual void DrawShade( int level, wxRect& rect, int alignment, wxDC& dc );
+
+        // Internal helper: draws shading.
+    virtual void DrawShade1( int level, wxRect& rect, int alignment, wxDC& dc );
+
+        // Internal helper: sets a light pixel at the given location.
+    inline void SetLightPixel( int x, int y, wxDC& dc );
+
+        // Internal helper: sets a dark pixel at the given location.
+    inline void SetDarkPixel ( int x, int y, wxDC& dc );
 
 public:
-       cbPaneDrawPlugin(void);
+        // Default constructor.
+    cbPaneDrawPlugin();
+
+        // Constructor taking frame layout pane and a pane mask.
+    cbPaneDrawPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+
+        // Destructor.
+    virtual ~cbPaneDrawPlugin();
+
+        // Clone function, returning a new instance of this class.
+    virtual cbPluginBase* Clone() { return new cbPaneDrawPlugin(0,0); }
+
+        // Handler for left mouse button down events.
+    void OnLButtonDown( cbLeftDownEvent&   event );
+
+        // Handler for left double-click mouse button down events.
+    void OnLDblClick  ( cbLeftDClickEvent& event );
+
+        // Handler for left mouse button up events.
+    void OnLButtonUp  ( cbLeftUpEvent&     event );
+
+        // Handler for right mouse button up events.
+    void OnRButtonUp  ( cbRightUpEvent&    event );
+
+        // Handler for mouse move events.
+    void OnMouseMove  ( cbMotionEvent&     event );
+
+        // Handler for draw pane background events.
+    void OnDrawPaneBackground ( cbDrawPaneBkGroundEvent& event );
+
+        // Handler for draw pane decoration events.
+    void OnDrawPaneDecorations( cbDrawPaneDecorEvent&    event );
 
-       cbPaneDrawPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Handler for draw row decoration events.
+    void OnDrawRowDecorations ( cbDrawRowDecorEvent&     event );
 
-       virtual ~cbPaneDrawPlugin();
+        // Handler for draw row handles events.
+    void OnDrawRowHandles     ( cbDrawRowHandlesEvent&   event );
 
-       virtual cbPluginBase* Clone() { return new cbPaneDrawPlugin(0,0); }
+        // Handler for draw row background events.
+    void OnDrawRowBackground  ( cbDrawRowBkGroundEvent&  event );
 
-       // handlers for plugin-events
+        // Handler for bar size events.
+    void OnSizeBarWindow      ( cbSizeBarWndEvent&       event );
 
-       void OnLButtonDown( cbLeftDownEvent&   event );
-       void OnLDblClick  ( cbLeftDClickEvent& event );
-       void OnLButtonUp  ( cbLeftUpEvent&     event );
-       void OnRButtonUp  ( cbRightUpEvent&    event );
-       void OnMouseMove  ( cbMotionEvent&     event );
+        // Handler for draw bar decorations events.
+    void OnDrawBarDecorations ( cbDrawBarDecorEvent&     event );
 
-       void OnDrawPaneBackground ( cbDrawPaneBkGroundEvent& event );
-       void OnDrawPaneDecorations( cbDrawPaneDecorEvent&    event );
+        // Handler for draw bar handles events.
+    void OnDrawBarHandles     ( cbDrawBarHandlesEvent&   event );
 
-       void OnDrawRowDecorations ( cbDrawRowDecorEvent&     event );
-       void OnDrawRowHandles     ( cbDrawRowHandlesEvent&   event );
-       void OnDrawRowBackground  ( cbDrawRowBkGroundEvent&  event );
-                                                         
-       void OnSizeBarWindow      ( cbSizeBarWndEvent&       event );
-       void OnDrawBarDecorations ( cbDrawBarDecorEvent&     event );
-       void OnDrawBarHandles     ( cbDrawBarHandlesEvent&   event );
+        // Handler for start draw in area events.
+    void OnStartDrawInArea    ( cbStartDrawInAreaEvent&  event );
 
-       void OnStartDrawInArea    ( cbStartDrawInAreaEvent&  event );
-       void OnFinishDrawInArea   ( cbFinishDrawInAreaEvent& event );
+        // Handler for finish draw in area events.
+    void OnFinishDrawInArea   ( cbFinishDrawInAreaEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __PANEDRAWPL_G__ */
index 6375d4f526ecb0f12ccd997ab044ca969a1a8a77..96036b57351c254a5993edd006c15a6733fa47c2 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        rowdragpl.h
+// Purpose:     cbRowDragPlugin class header.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __ROWDRAGPL_G__
 #include "wx/fl/controlbar.h"
 
 /*
- * Plugin adds row-dragging fuctionality to the pane.
- * Handles mouse/movement and pane-background erasing plugin-events.
- * Behaviour and appearence resembles drag & drop posotioning 
- * of the toolbar-rows int Netscape Comunicator 4.xx.
- */
+This plugin adds row-dragging functionality to the pane.
+It handles mouse movement and pane background-erasing plugin events.
+The behaviour and appearance resembles drag and drop positioning
+of the toolbar rows in Netscape Communicator 4.xx.
+*/
 
 class cbRowDragPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbRowDragPlugin )
+    DECLARE_DYNAMIC_CLASS( cbRowDragPlugin )
 public:
-       // background colours for the highlighted/unhighlighted icons
+    // background colours for the highlighted/unhighlighted icons
 
-       wxColour mHightColor;      // light-blue for NC-look
-       wxColour mLowColor;        // light-gray -/-
-       wxColour mTrianInnerColor; // blue       -/-
-       wxPen    mTrianInnerPen;   // black      -/-
+    wxColour mHightColor;      // light-blue for NC-look
+    wxColour mLowColor;        // light-gray -/-
+    wxColour mTrianInnerColor; // blue       -/-
+    wxPen    mTrianInnerPen;   // black      -/-
 
 protected:
-       friend class cbRowDragPluginSerializer;
+    friend class cbRowDragPluginSerializer;
 
-       // drag & drop state variables
-       bool    mDragStarted;
-       bool    mDecisionMode;
-       wxPoint mDragOrigin;
-       int     mCurDragOfs;
-       bool    mCaptureIsOn;
+    // drag & drop state variables
+    bool    mDragStarted;
+    bool    mDecisionMode;
+    wxPoint mDragOrigin;
+    int     mCurDragOfs;
+    bool    mCaptureIsOn;
 
-       // saved margins of the pane
-       int mSvTopMargin;
-       int mSvBottomMargin;
-       int mSvLeftMargin;
-       int mSvRightMargin;
+    // saved margins of the pane
+    int mSvTopMargin;
+    int mSvBottomMargin;
+    int mSvLeftMargin;
+    int mSvRightMargin;
 
-       //on-screen drawing state variables
-       wxBitmap* mpPaneImage;
-       wxBitmap* mpRowImage;
-       wxBitmap* mpCombinedImage;
+    // on-screen drawing state variables
+    wxBitmap* mpPaneImage;
+    wxBitmap* mpRowImage;
+    wxBitmap* mpCombinedImage;
 
-       wxScreenDC* mpScrDc;
-       wxRect    mCombRect;
-       wxSize    mRowImgDim;
-       int       mInitialRowOfs;
+    wxScreenDC* mpScrDc;
+    wxRect    mCombRect;
+    wxSize    mRowImgDim;
+    int       mInitialRowOfs;
 
-       // NOTE:: if mpRowInFocus is not NULL, then mCollapsedIconInFocus is -1,
-       //        and v.v. (two different items cannot be in focus at the same time)
+    // NOTE:: if mpRowInFocus is not NULL, then mCollapsedIconInFocus is -1,
+    //        and v.v. (two different items cannot be in focus at the same time)
 
-       cbRowInfo* mpRowInFocus;
-       int        mCollapsedIconInFocus;
+    cbRowInfo* mpRowInFocus;
+    int        mCollapsedIconInFocus;
 
-       cbDockPane* mpPane; // is set up temorarely, while handling event
+    cbDockPane* mpPane; // is set up temorarely, while handling event
 
-       wxList      mHiddenBars;
+    wxList      mHiddenBars;
 
-       wxBitmap* CaptureDCArea( wxDC& dc, wxRect& area );
+        // Helper for drag and drop.
+    wxBitmap* CaptureDCArea( wxDC& dc, wxRect& area );
 
-       // helpers for drag&drop
+        // Helper for drag and drop.
+    int GetHRowsCountForPane( cbDockPane* pPane );
 
-       int GetHRowsCountForPane( cbDockPane* pPane );
+        // Helper for drag and drop.
+    void SetMouseCapture( bool captureOn );
 
-       void SetMouseCapture( bool captureOn );
-       void PrepareForRowDrag();
-       void ShowDraggedRow( int offset );
-       void ShowPaneImage();
-       void FinishOnScreenDraw();
-       void CollapseRow( cbRowInfo* pRow );
-       void ExpandRow( int collapsedIconIdx );
-       void InsertDraggedRowBefore( cbRowInfo* pBeforeRow );
-       bool ItemIsInFocus();
-       void CheckPrevItemInFocus( cbRowInfo* pRow, int iconIdx );
-       void UnhiglightItemInFocus();
+        // Helper for drag and drop.
+    void PrepareForRowDrag();
 
-       cbRowInfo* GetFirstRow();
+        // Helper for drag and drop.
+    void ShowDraggedRow( int offset );
 
-       // "hard-coded metafile" for NN-look
+        // Helper for drag and drop.
+    void ShowPaneImage();
 
-       virtual void DrawTrianUp( wxRect& inRect, wxDC& dc );
-       virtual void DrawTrianDown( wxRect& inRect, wxDC& dc );
-       virtual void DrawTrianRight( wxRect& inRect, wxDC& dc );
-       virtual void Draw3DPattern( wxRect& inRect, wxDC& dc );
-       virtual void DrawRombShades( wxPoint& p1, wxPoint& p2, wxPoint& p3, wxPoint& p4, wxDC& dc );
-       virtual void DrawOrtoRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
-       virtual void DrawRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
-       virtual void Draw3DRect( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
-       virtual void DrawRectShade( wxRect& inRect, wxDC& dc, 
-                                                               int level, wxPen& upperPen, wxPen& lowerPen );
+        // Helper for drag and drop.
+    void FinishOnScreenDraw();
 
-       virtual void GetRowHintRect( cbRowInfo* pRow, wxRect& rect );
-       virtual void GetCollapsedInconRect( int iconIdx, wxRect& rect );
+        // Helper for drag and drop.
+    void CollapseRow( cbRowInfo* pRow );
 
-       virtual int  GetCollapsedIconsPos();
+        // Helper for drag and drop.
+    void ExpandRow( int collapsedIconIdx );
+
+        // Helper for drag and drop.
+    void InsertDraggedRowBefore( cbRowInfo* pBeforeRow );
+
+        // Helper for drag and drop.
+    bool ItemIsInFocus();
+
+        // Helper for drag and drop.
+    void CheckPrevItemInFocus( cbRowInfo* pRow, int iconIdx );
+
+        // Helper for drag and drop.
+    void UnhighlightItemInFocus();
+
+        // Helper for drag and drop.
+    cbRowInfo* GetFirstRow();
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawTrianUp( wxRect& inRect, wxDC& dc );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawTrianDown( wxRect& inRect, wxDC& dc );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawTrianRight( wxRect& inRect, wxDC& dc );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void Draw3DPattern( wxRect& inRect, wxDC& dc );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawRombShades( wxPoint& p1, wxPoint& p2, wxPoint& p3, wxPoint& p4, wxDC& dc );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawOrtoRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void Draw3DRect( wxRect& inRect, wxDC& dc, wxBrush& bkBrush );
+
+        // Implements 'hard-coded metafile' for Netscape Navigator look.
+    virtual void DrawRectShade( wxRect& inRect, wxDC& dc,
+                                int level, wxPen& upperPen, wxPen& lowerPen );
+
+        // Helper for drag and drop.
+    virtual void GetRowHintRect( cbRowInfo* pRow, wxRect& rect );
+
+        // Helper for drag and drop.
+    virtual void GetCollapsedInconRect( int iconIdx, wxRect& rect );
+
+        // Helper for drag and drop.
+    virtual int GetCollapsedIconsPos();
 
 public:
 
-       cbRowDragPlugin(void);
+        // Default constructor.
+    cbRowDragPlugin();
+
+        // Constructor, taking paren layout frame and pane mask.
+    cbRowDragPlugin( wxFrameLayout* pLayout, int paneMask = wxALL_PANES );
+
+        // Destructor.
+    virtual ~cbRowDragPlugin();
 
-       cbRowDragPlugin( wxFrameLayout* pLayout, int paneMask = wxALL_PANES );
-       virtual ~cbRowDragPlugin();
+        // Clone function, returning a new instance of this class.
+    virtual cbPluginBase* Clone() { return new cbRowDragPlugin(NULL,0); }
 
-       virtual cbPluginBase* Clone() { return new cbRowDragPlugin(NULL,0); }
+        // Called to initialize this plugin.
+    virtual void OnInitPlugin();
 
-       virtual void OnInitPlugin();
+        // Handles mouse move plugin events (appearance-independent logic).
+    void OnMouseMove  ( cbMotionEvent& event );
 
-       // handlers for plugin events (appearence-independent logic)
+        // Handles left button down plugin events (appearance-independent logic).
+    void OnLButtonDown( cbLeftDownEvent& event );
 
-       void OnMouseMove  ( cbMotionEvent& event );
-       void OnLButtonDown( cbLeftDownEvent& event );
-       void OnLButtonUp  ( cbLeftUpEvent& event );
-       void OnDrawPaneBackground( cbDrawPaneDecorEvent& event );
+        // Handles left button up plugin events (appearance-independent logic).
+    void OnLButtonUp  ( cbLeftUpEvent& event );
 
-       // overridables (appearence-depedent)
+        // Handles pane drawing plugin events (appearance-independent logic).
+    void OnDrawPaneBackground( cbDrawPaneDecorEvent& event );
 
-       virtual void DrawCollapsedRowIcon( int index, wxDC& dc, bool isHighlighted );
-       virtual void DrawCollapsedRowsBorder( wxDC& dc );
-       virtual void DrawRowsDragHintsBorder( wxDC& dc );
-       virtual void DrawRowDragHint( cbRowInfo* pRow, wxDC& dc, bool isHighlighted );
-       virtual void DrawEmptyRow( wxDC& dc, wxRect& rowBounds );
+        // Draws collapsed row icon (appearance-dependent).
+    virtual void DrawCollapsedRowIcon( int index, wxDC& dc, bool isHighlighted );
 
-       virtual int GetCollapsedRowIconHeight();
-       virtual int GetRowDragHintWidth();
+        // Draws collapsed rows border (appearance-dependent).
+    virtual void DrawCollapsedRowsBorder( wxDC& dc );
 
-       virtual void SetPaneMargins();
+        // Draws rows drag hints border (appearance-dependent).
+    virtual void DrawRowsDragHintsBorder( wxDC& dc );
 
+        // Draws row drag hint (appearance-dependent).
+    virtual void DrawRowDragHint( cbRowInfo* pRow, wxDC& dc, bool isHighlighted );
 
-       virtual bool HitTestCollapsedRowIcon( int iconIdx, const wxPoint& pos );
-       virtual bool HitTestRowDragHint( cbRowInfo* pRow, const wxPoint& pos );
+        // Draws empty row (appearance-dependent).
+    virtual void DrawEmptyRow( wxDC& dc, wxRect& rowBounds );
 
-       DECLARE_EVENT_TABLE()
+        // Gets the collapsed row icon height.
+    virtual int GetCollapsedRowIconHeight();
+
+        // Gets the row drag hint width.
+    virtual int GetRowDragHintWidth();
+
+        // Sets the pane margins.
+    virtual void SetPaneMargins();
+
+        // Test for the collapsed row icon position.
+    virtual bool HitTestCollapsedRowIcon( int iconIdx, const wxPoint& pos );
+
+        // Test for the row drag hint position.
+    virtual bool HitTestRowDragHint( cbRowInfo* pRow, const wxPoint& pos );
+
+    DECLARE_EVENT_TABLE()
 };
 
-// internal helper-class
+/*
+Internal helper class.
+*/
 
 class cbHiddenBarInfo : public wxObject
 {
-       DECLARE_DYNAMIC_CLASS( cbHiddenBarInfo )
+    DECLARE_DYNAMIC_CLASS( cbHiddenBarInfo )
 public:
-       cbBarInfo* mpBar;
-       int        mRowNo;
-       int        mIconNo;
-       int        mAlignment;
+    cbBarInfo* mpBar;
+    int        mRowNo;
+    int        mIconNo;
+    int        mAlignment;
 };
 
 #endif /* __ROWDRAGPL_G__ */
index f44c74a9d8eb6c348bd2dbd537dc57f07d7f784e..aa9a670d324cb1fa2ac36b18306ba30204208db1 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        rowlayoutpl.h
+// Purpose:     cbRowLayoutPlugin header.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     02/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __ROWLAYOUTPL_G__
 #include "wx/fl/controlbar.h"
 
 /*
- * Simple implementation of plugin, which handles row-layouting
- * requests sent from Frame Layout
- */
+Simple implementation of a plugin which handles row layout
+requests sent from a frame layout.
+*/
 
 class cbRowLayoutPlugin : public cbPluginBase
 {
-       DECLARE_DYNAMIC_CLASS( cbRowLayoutPlugin )
+    DECLARE_DYNAMIC_CLASS( cbRowLayoutPlugin )
 protected:
-       cbDockPane* mpPane; // is set up temorarely, while handling event
+    cbDockPane* mpPane; // is set up temporarily, while handling event
 protected:
 
-       // not-fixed-bars layouting related helpers
+        // Internal helper relating to not-fixed-bars layout.
+    void FitBarsToRange( int from, int till, cbBarInfo* pTheBar, cbRowInfo* pRow ); 
 
-       void FitBarsToRange( int from, int till, cbBarInfo* pTheBar, cbRowInfo* pRow ); 
-       void RelayoutNotFixedBarsAround( cbBarInfo* pTheBar, cbRowInfo* pRow ); 
-       void MinimzeNotFixedBars( cbRowInfo* pRow, cbBarInfo* pBarToPreserve );
-       int  GetRowFreeSpace( cbRowInfo* pRow );
-       
-       void RecalcLengthRatios( cbRowInfo* pRow );
-       void ApplyLengthRatios( cbRowInfo* pRow );
-       void ExpandNotFixedBars( cbRowInfo* pRow );
-       void AdjustLengthOfInserted( cbRowInfo* pRow, cbBarInfo* pTheBar );
+        // Internal helper relating to not-fixed-bars layout.
+    void RelayoutNotFixedBarsAround( cbBarInfo* pTheBar, cbRowInfo* pRow );
 
-       void DetectBarHandles( cbRowInfo* pRow );
-       void CheckIfAtTheBoundary( cbBarInfo* pTheBar, cbRowInfo& rowInfo );
+        // Internal helper relating to not-fixed-bars layout.
+    void MinimzeNotFixedBars( cbRowInfo* pRow, cbBarInfo* pBarToPreserve );
 
+        // Internal helper relating to not-fixed-bars layout.
+    int  GetRowFreeSpace( cbRowInfo* pRow );
 
-       // row-layouting helpers (simulate "bar-friction")
 
-       int  CalcRowHeight( cbRowInfo& row );
-       void LayoutItemsVertically( cbRowInfo& row );
+        // Internal helper relating to not-fixed-bars layout.
+    void RecalcLengthRatios( cbRowInfo* pRow );
 
-       void StickRightSideBars( cbBarInfo* pToBar );
+        // Internal helper relating to not-fixed-bars layout.
+    void ApplyLengthRatios( cbRowInfo* pRow );
 
-       void SlideLeftSideBars ( cbBarInfo* pTheBar );
-       void SlideRightSideBars( cbBarInfo* pTheBar );
+        // Internal helper relating to not-fixed-bars layout.
+    void ExpandNotFixedBars( cbRowInfo* pRow );
 
-       void ShiftLeftTrashold ( cbBarInfo* pTheBar, cbRowInfo& row );
-       void ShiftRightTrashold( cbBarInfo* pTheBar, cbRowInfo& row );
+        // Internal helper relating to not-fixed-bars layout.
+    void AdjustLengthOfInserted( cbRowInfo* pRow, cbBarInfo* pTheBar );
 
-       void InsertBefore( cbBarInfo* pBeforeBar, 
-                                          cbBarInfo* pTheBar,
-                                          cbRowInfo& row
-                                        );
 
-       void DoInsertBar( cbBarInfo* pTheBar, cbRowInfo& row );
+        // Internal helper relating to not-fixed-bars layout.
+    void DetectBarHandles( cbRowInfo* pRow );
+
+        // Internal helper relating to not-fixed-bars layout.
+    void CheckIfAtTheBoundary( cbBarInfo* pTheBar, cbRowInfo& rowInfo );
+
+
+        // Row layout helper simulating bar 'friction'.
+    int  CalcRowHeight( cbRowInfo& row );
+
+        // Row layout helper simulating bar 'friction'.
+    void LayoutItemsVertically( cbRowInfo& row );
+
+
+        // Row layout helper simulating bar 'friction'.
+    void StickRightSideBars( cbBarInfo* pToBar );
+
+
+        // Row layout helper simulating bar 'friction'.
+    void SlideLeftSideBars ( cbBarInfo* pTheBar );
+
+        // Row layout helper simulating bar 'friction'.
+    void SlideRightSideBars( cbBarInfo* pTheBar );
+
+
+        // Row layout helper simulating bar 'friction'.
+    void ShiftLeftTrashold ( cbBarInfo* pTheBar, cbRowInfo& row );
+
+        // Row layout helper simulating bar 'friction'.
+    void ShiftRightTrashold( cbBarInfo* pTheBar, cbRowInfo& row );
+
+
+        // Insert the bar before the given row.
+    void InsertBefore( cbBarInfo* pBeforeBar, 
+                       cbBarInfo* pTheBar,
+                       cbRowInfo& row
+                     );
+
+        // Insert the bar before the given row.
+    void DoInsertBar( cbBarInfo* pTheBar, cbRowInfo& row );
 
 public:
+        // Default constructor.
+    cbRowLayoutPlugin(void);
+
+        // Constructor taking frame layout pane and pane mask.
+    cbRowLayoutPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+
+        // Responds to row resize event.
+    void OnResizeRow ( cbResizeRowEvent&  event );
 
-       cbRowLayoutPlugin(void);
+        // Responds to bar insertion event.
+    void OnInsertBar ( cbInsertBarEvent&  event );
 
-       cbRowLayoutPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );
+        // Responds to bar removal event.
+    void OnRemoveBar ( cbRemoveBarEvent&  event );
 
-       // event handlers
+        // Responds to row layout event.
+    void OnLayoutRow ( cbLayoutRowEvent&  event );
 
-       void OnResizeRow ( cbResizeRowEvent&  event );
-       void OnInsertBar ( cbInsertBarEvent&  event );
-       void OnRemoveBar ( cbRemoveBarEvent&  event );
-       void OnLayoutRow ( cbLayoutRowEvent&  event );
-       void OnLayoutRows( cbLayoutRowsEvent& event );
+        // Responds to rows layout event.
+    void OnLayoutRows( cbLayoutRowsEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __ROWLAYOUTPL_G__ */
index 8f7fd5cf18d6b1f8669e3b68de9fc04af145348a..efe9d125fc5cafadf1095b86aef60d537cafa446 100644 (file)
@@ -1,12 +1,13 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        toolwnd.h
+// Purpose:     wxToolWindow, cbMiniButton, cbCloseBox, cbCollapseBox,
+//              cbDockBox, cbFloatedBarWindow class declarations.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __TOOLWND_G__
@@ -31,184 +32,272 @@ typedef cbMiniButton* cbMinitButtonPtrT;
 
 WX_DEFINE_ARRAY( cbMinitButtonPtrT, cbMiniButtonArrayT );
 
+/*
+A tool window is a special kind of frame that paints its own title, and
+can be used to implement small floating windows.
+*/
+
 class wxToolWindow : public wxFrame
 {
-       DECLARE_DYNAMIC_CLASS( wxToolWindow )
+    DECLARE_DYNAMIC_CLASS( wxToolWindow )
 
-public:        /** protected really, accessed only by serializers **/
+public:    /** protected really, accessed only by serializers **/
 
-       cbMiniButtonArrayT mButtons;
-       wxWindow* mpClientWnd;
+    cbMiniButtonArrayT mButtons;
+    wxWindow* mpClientWnd;
 
-       wxFont    mTitleFont;
+    wxFont    mTitleFont;
 
-       int       mTitleHeight;
-       int       mClntHorizGap;
-       int       mClntVertGap;
-       int       mWndVertGap;
-       int       mWndHorizGap;
-       int       mButtonGap;
-       int       mInTitleMargin;
-       int       mHintBorder;
+    int       mTitleHeight;
+    int       mClntHorizGap;
+    int       mClntVertGap;
+    int       mWndVertGap;
+    int       mWndHorizGap;
+    int       mButtonGap;
+    int       mInTitleMargin;
+    int       mHintBorder;
 
-       bool      mResizeStarted;
-       bool      mRealTimeUpdatesOn;
+    bool      mResizeStarted;
+    bool      mRealTimeUpdatesOn;
 
-       int       mMTolerance;
+    int       mMTolerance;
 
-       int       mCursorType;
-       bool      mMouseCaptured;
+    int       mCursorType;
+    bool      mMouseCaptured;
 
-       // drag&drop state variables
+    // drag&drop state variables
 
-       wxPoint     mDragOrigin;
-       wxRect      mInitialRect;
-       wxRect      mPrevHintRect;
-       wxScreenDC* mpScrDc;
+    wxPoint     mDragOrigin;
+    wxRect      mInitialRect;
+    wxRect      mPrevHintRect;
+    wxScreenDC* mpScrDc;
 
 protected:
-       void GetScrWindowRect( wxRect& r );
-       void GetScrMousePos  ( wxMouseEvent& event, wxPoint& pos );
-       void SetHintCursor   ( int type );
+        // Maps client coordinates to screen coordinates.
+    void GetScrWindowRect( wxRect& r );
+
+        // Gets the mouse position in screen coordinates.
+    void GetScrMousePos  ( wxMouseEvent& event, wxPoint& pos );
+
+        // Sets the hint cursor.
+    void SetHintCursor   ( int type );
 
-       void CalcResizedRect( wxRect& rect, wxPoint& delta, const wxSize& minDim );
-       void AdjustRectPos( const wxRect& original, const wxSize& newDim, wxRect& newRect );
-       wxSize GetMinimalWndDim();
+        // Calculate resized rectangle.
+    void CalcResizedRect( wxRect& rect, wxPoint& delta, const wxSize& minDim );
 
-       void DrawHintRect( const wxRect& r );
+        // Helper function.
+    void AdjustRectPos( const wxRect& original, const wxSize& newDim, wxRect& newRect );
 
-       int HitTestWindow( wxMouseEvent& event );
+        // Helper function.
+    wxSize GetMinimalWndDim();
 
-       void LayoutMiniButtons();
+        // Draws the hint rectangle.
+    void DrawHintRect( const wxRect& r );
+
+        // Tests if the mouse position is in this window.
+    int HitTestWindow( wxMouseEvent& event );
+
+        // Lays out the buttons.
+    void LayoutMiniButtons();
 
 public:
-       
-       wxToolWindow();
-       ~wxToolWindow();
 
-       void SetClient( wxWindow* pWnd );
-       wxWindow* GetClient();
+        // Default constructor.
+    wxToolWindow();
+
+        // Destructor.
+    ~wxToolWindow();
+
+        // Sets the client for this tool window.
+    void SetClient( wxWindow* pWnd );
+
+        // Returns the client window.
+    wxWindow* GetClient();
+
+        // Sets the title font.
+    void SetTitleFont( wxFont& font );
+
+        // Adds a button. Buttons are added in right-to-left order.
+    void AddMiniButton( cbMiniButton* pBtn );
+
+        // Responds to a paint event.
+    void OnPaint( wxPaintEvent& event );
+
+        // Responds to a mouse move event.
+    void OnMotion( wxMouseEvent& event );
 
-       void SetTitleFont( wxFont& font );
+        // Responds to a mouse left down event.
+    void OnLeftDown( wxMouseEvent& event );
 
-       // buttons are added in right-to-left order
-       void AddMiniButton( cbMiniButton* pBtn );
+        // Responds to a mouse left up event.
+    void OnLeftUp( wxMouseEvent& event );
 
-       void OnPaint( wxPaintEvent& event );
+        // Responds to a size event.
+    void OnSize( wxSizeEvent& event );
 
-       void OnMotion( wxMouseEvent& event );
-       void OnLeftDown( wxMouseEvent& event );
-       void OnLeftUp( wxMouseEvent& event );
-       void OnSize( wxSizeEvent& event );
+        // Responds to an erase background event.
+    void OnEraseBackground( wxEraseEvent& event );
 
-       void OnEraseBackground( wxEraseEvent& event );
+        // Returns the preferred size for the window.
+    virtual wxSize GetPreferredSize( const wxSize& given );
 
-       // overridables:
+        // Called when a mini button is clicked.
+        // By default, does nothing.
+    virtual void OnMiniButtonClicked( int btnIdx ) {}
 
-       virtual wxSize GetPreferredSize( const wxSize& given );
-       virtual void OnMiniButtonClicked( int btnIdx ) {}
-       virtual bool HandleTitleClick( wxMouseEvent& event ) { return FALSE; }
+        // Handles clicking on the title. By default, does nothing.
+    virtual bool HandleTitleClick( wxMouseEvent& event ) { return FALSE; }
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 // FIXME:: the code below should be moved to a separate file
 
 #include "wx/fl/controlbar.h"
 
+/*
+cbMiniButton is the base class for a small button that can be placed in a wxToolWindow
+titlebar.
+*/
+
 class cbMiniButton : public wxObject
 {
 public:
-       wxPoint   mPos;
-       wxSize    mDim;
-       bool      mVisible;
-       bool      mEnabled;
+    wxPoint   mPos;
+    wxSize    mDim;
+    bool      mVisible;
+    bool      mEnabled;
 
-       wxFrameLayout* mpLayout;
-       cbDockPane*    mpPane;
-       cbPluginBase*  mpPlugin;
+    wxFrameLayout* mpLayout;
+    cbDockPane*    mpPane;
+    cbPluginBase*  mpPlugin;
 
-       wxWindow*      mpWnd;
+    wxWindow*      mpWnd;
 
-       bool      mWasClicked;
-       bool      mDragStarted;
+    bool      mWasClicked;
+    bool      mDragStarted;
 
-       bool      mPressed;
+    bool      mPressed;
 public:
-       cbMiniButton();
+        // Default constructor.
+    cbMiniButton();
+
+        // Set the position of the button.
+    void SetPos( const wxPoint& pos );
+
+        // Returns TRUE if the given position was over the button.
+    bool HitTest( const wxPoint& pos );
+
+        // Responds to a left down event.
+    void OnLeftDown( const wxPoint& pos );
+
+        // Responds to a left up event.
+    void OnLeftUp( const wxPoint& pos );
+
+        // Responds to a mouse move event.
+    void OnMotion( const wxPoint& pos );
 
-       void SetPos( const wxPoint& pos );
-       bool HitTest( const wxPoint& pos );
+        // Refreshes the button.
+    void Refresh();
 
-       void OnLeftDown( const wxPoint& pos );
-       void OnLeftUp( const wxPoint& pos );
-       void OnMotion( const wxPoint& pos );
+        // Draws the button. Override this to implement
+        // the desired appearance.
+    virtual void Draw( wxDC& dc );
 
-       void Refresh();
-       virtual void Draw( wxDC& dc );
+        // Returns TRUE if the button was clicked.
+    bool WasClicked();
 
-       bool WasClicked();
-       void Reset();
+        // Reset the button.
+    void Reset();
 
-       void Enable( bool enable ) { mEnabled = enable; }
+        // Enable or disable the button.
+    void Enable( bool enable ) { mEnabled = enable; }
 
-       bool IsPressed() { return mPressed; }
+        // Returns TRUE if this button is pressed.
+    bool IsPressed() { return mPressed; }
 };
 
-// classes specific to wxFrameLayout engine (FOR NOW in here...)
+/*
+cbCloseBox is a window close button, used in a wxToolWindow titlebar.
+*/
 
 class cbCloseBox : public cbMiniButton
 {
 public:
-       virtual void Draw( wxDC& dc );
+        // Draws the close button appearance.
+    virtual void Draw( wxDC& dc );
 };
 
+/*
+cbCollapseBox is a window collapse button, used in a wxToolWindow titlebar.
+*/
+
 class cbCollapseBox  : public cbMiniButton
 {
 public:
-       bool mIsAtLeft;
+    bool mIsAtLeft;
 
-       virtual void Draw( wxDC& dc );
+        // Draws the collapse button appearance.
+    virtual void Draw( wxDC& dc );
 };
 
+/*
+cbDockBox is a window dock button, used in a wxToolWindow titlebar.
+*/
+
 class cbDockBox : public cbMiniButton
 {
 public:
-       virtual void Draw( wxDC& dc );
+        // Draws the dock button appearance.
+    virtual void Draw( wxDC& dc );
 };
 
+/*
+cbFloatedBarWindow is a kind of wxToolWindow,
+implementing floating toolbars.
+*/
+
 class cbFloatedBarWindow : public wxToolWindow
 {
-       DECLARE_DYNAMIC_CLASS( cbFloatedBarWindow )
+    DECLARE_DYNAMIC_CLASS( cbFloatedBarWindow )
 protected:
-       cbBarInfo*     mpBar;
-       wxFrameLayout* mpLayout;
+    cbBarInfo*     mpBar;
+    wxFrameLayout* mpLayout;
 
-       friend class cbFloatedBarWindowSerializer;
+    friend class cbFloatedBarWindowSerializer;
 
 public:
-       cbFloatedBarWindow();
+        // Default constructor.
+    cbFloatedBarWindow();
+
+        // Sets the bar information for this window.
+    void SetBar( cbBarInfo* pBar );
+
+        // Sets the layout for this window.
+    void SetLayout( wxFrameLayout* pLayout );
 
-       void SetBar( cbBarInfo* pBar );
-       void SetLayout( wxFrameLayout* pLayout );
-       cbBarInfo* GetBar();
+        // Returns the bar information for this window.
+    cbBarInfo* GetBar();
 
-       // given coordinates are those of the bar itself
-       // floated container window's position and size
-       // are ajusted accordingly
+        // Position the floating window. The given coordinates
+        // are those of the bar itself; the floated container window's
+        // position and size are ajusted accordingly.
+    void PositionFloatedWnd( int scrX,  int scrY,
+                             int width, int height );
 
-       void PositionFloatedWnd( int scrX,  int scrY,
-                                                        int width, int height );
+        // Overridden function returning the preferred size.
+    virtual wxSize GetPreferredSize( const wxSize& given );
 
-       // overriden methods of wxToolWindow
+        // Overridden function responding to mouse clicks on mini-buttons.
+    virtual void OnMiniButtonClicked( int btnIdx );
 
-       virtual wxSize GetPreferredSize( const wxSize& given );
-       virtual void OnMiniButtonClicked( int btnIdx );
-       virtual bool HandleTitleClick( wxMouseEvent& event );
+        // Overridden function responding to mouse button clicks on the titlebar.
+    virtual bool HandleTitleClick( wxMouseEvent& event );
 
-       void OnDblClick( wxMouseEvent& event );
+        // Responds to double-click mouse events.
+    void OnDblClick( wxMouseEvent& event );
 
-       DECLARE_EVENT_TABLE()
+    DECLARE_EVENT_TABLE()
 };
 
 #endif /* __TOOLWND_G__ */
index e0e21c500bd5306d227abace35ff04eb398b05b3..0e71f2e5b6db9b9597e801113c89a4200243d66c 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        updatesmgr.h
+// Purpose:     cbSimpleUpdatesMgr class declaration
 // Author:      Aleksandras Gluchovas (@Lithuania)
 // Modified by:
 // Created:     19/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __UPDATESMGR_G__
 #include "wx/fl/controlbar.h"
 
 /*
- * class implements slightly optimized logic for refreshing
- * areas of frame layout - which actually need to be updated. 
- */
+This class implements slightly optimized logic for refreshing
+the areas of frame layout that actually need to be updated.
+*/
 
 class cbSimpleUpdatesMgr : public cbUpdatesManagerBase
 {
-       DECLARE_DYNAMIC_CLASS( cbSimpleUpdatesMgr )
+    DECLARE_DYNAMIC_CLASS( cbSimpleUpdatesMgr )
 protected:
 
-       bool WasChanged( cbUpdateMgrData& data, wxRect& currentBounds );
+        // Helper function.
+    bool WasChanged( cbUpdateMgrData& data, wxRect& currentBounds );
 
 public:
+        // Default constructor.
+    cbSimpleUpdatesMgr() {}
 
-       cbSimpleUpdatesMgr(void) {}
+        // Constructor taking frame layout panel.
+    cbSimpleUpdatesMgr( wxFrameLayout* pPanel );
 
-       cbSimpleUpdatesMgr( wxFrameLayout* pPanel );
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnStartChanges();
 
-       // notificiactions received from Frame Layout (in the order, in which
-       // they usually would be invoked)
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane );
 
-       virtual void OnStartChanges();
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane );
 
-       virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane );
-       virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane );
-       virtual void OnPaneMarginsWillChange( cbDockPane* pPane );
-       virtual void OnPaneWillChange( cbDockPane* pPane );
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnPaneMarginsWillChange( cbDockPane* pPane );
 
-       virtual void OnFinishChanges();
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnPaneWillChange( cbDockPane* pPane );
 
-       // refreshes parts of the frame layout, which need an update
-       virtual void UpdateNow();
+        // Notification received from Frame Layout in the order in which
+        // they would usually be invoked.
+    virtual void OnFinishChanges();
+
+        // Refreshes the parts of the frame layoutthat need an update.
+    virtual void UpdateNow();
 };
 
 #endif /* __UPDATESMGR_G__ */
index 419b186756373da2e7a99413997949e3cfe43369..12ce48a1a7847c2a470b708bf6e8182b774158d6 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        antiflickpl.cpp
+// Purpose:     Double-buffering plugin class for reducing flickering.
 // Author:      Aleksandras Gluchovas (@Lithuania)
 // Modified by:
 // Created:     23/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
  
 #ifdef __GNUG__
@@ -115,7 +115,7 @@ wxDC* cbAntiflickerPlugin::AllocNewBuffer( const wxRect& forArea )
        //       excessive realocations later
 
        // check whether the given area is oriented horizontally
-       // or verticallya and choose correspoinding bitmap to create or
+       // or vertically and choose corresponding bitmap to create or
        // recreate
 
        if ( forArea.height > forArea.width )
index b48d2540383268baafd15037a4fdf2a89c0c7f81..83ac65f3959c1f8fbd2a3fd2ed293e847085ce83 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        bardragpl.cpp
+// Purpose:     cbBarDragPlugin implementation
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     23/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -293,8 +293,8 @@ void cbBarDragPlugin::StickToPane( cbDockPane* pPane, wxPoint& mousePos )
                                                 : mousePos.x > bounds.x;
 
        // NOTE:: about all the below min/max things: they are meant to ensure
-       //        that mouse pointer doesn't overrun (leave) the hint-rectangle
-       //        when dimensions it's are recalculated upon sticking it to the pane
+       //        that the mouse pointer doesn't overrun (leave) the hint-rectangle
+       //        when its dimensions are recalculated upon sticking it to the pane
 
        if ( pPane->IsHorizontal() && fromLowerEdge )
        {
@@ -341,10 +341,9 @@ void cbBarDragPlugin::StickToPane( cbDockPane* pPane, wxPoint& mousePos )
 
 void cbBarDragPlugin::UnstickFromPane( cbDockPane* pPane, wxPoint& mousePos )
 {
-       // unsticking causes rectangle to get the shape, in which
+       // unsticking causes rectangle to get the shape in which
        // dragged control-bar would be when floated
 
-
        int newWidth  = mpDraggedBar->mDimInfo.mSizes[wxCBAR_FLOATING].x;
        int newHeight = mpDraggedBar->mDimInfo.mSizes[wxCBAR_FLOATING].y;
 
@@ -471,7 +470,7 @@ void cbBarDragPlugin::ShowHint( bool prevWasInClient )
 
        if ( mpSrcPane->mProps.mRealTimeUpdatesOn == FALSE )
        {
-               // do hevy calculations first
+               // do heavy calculations first
 
                wxRect actualRect = mHintRect; // will be adjusted depending on drag-settings
 
index 90985f7d174567b462b2b2bd5ab9d2f4f47796df..eb1f67168508b0927896c15a2dead45bff92f1da 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        barhintspl.h
+// Purpose:     Implementation for cbBarHintsPlugin
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     30/11/98 (my 22th birthday :-)
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
  
 #ifdef __GNUG__
index 43f5683ff337a258148fcbc22bccccd1d02f807d..61a14859c4e83d35bd94e3de19f7f28d502c8c54 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        cbcustom.cpp
+// Purpose:     cbSimpleCustomizationPlugin class declaration
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
index f0c1d021052d288ac2cef3d23ca3f094005addb0..93234730f6736f0ea32765774caeb7a0bdd37f02 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        controlbar.cpp
+// Purpose:     Implementation for main controlbar classes.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/09/98
@@ -50,7 +50,6 @@
 // meet the new event paradigm as of wx2.3.0.  Probably we
 // should find a way to make these be non-global, but this
 // works for right now.
-#if wxCHECK_VERSION(2,3,0)
     wxEventType cbEVT_PL_LEFT_DOWN = wxNewEventType();
     wxEventType cbEVT_PL_LEFT_UP = wxNewEventType();
     wxEventType cbEVT_PL_RIGHT_DOWN = wxNewEventType();
@@ -85,7 +84,6 @@
     wxEventType cbEVT_PL_CUSTOMIZE_LAYOUT = wxNewEventType();
 
     wxEventType wxCUSTOM_CB_PLUGIN_EVENTS_START_AT = wxNewEventType();
-#endif // #if wxCHECK_VERSION(2,3,0)
 
 // some ascii-art, still can't get these *nice* cursors working on wx... :-(
 
@@ -347,7 +345,7 @@ wxFrameLayout::wxFrameLayout( wxWindow* pParentFrame, wxWindow* pFrameClient, bo
     mFloatingOn = CanReparent();
 }
 
-// NOTE:: below are the only plaftorm-check "ifdef"s in the docking system!
+// NOTE:: below are the only platform-check "ifdef"s in the docking system!
 
 bool wxFrameLayout::CanReparent()
 {
@@ -627,10 +625,10 @@ bool wxFrameLayout::RedockBar( cbBarInfo*    pBar,
 
     pBarPane->RemoveBar( pBar );
 
-    // FIXME FIXME:: the below recalc. may be a *huge* performance
+    // FIXME FIXME:: the recalculation below may be a *huge* performance
     //               hit, it could be eliminated though...
     //               but first the "pane-postion-changed" problem 
-    //               have to be fixed 
+    //               has to be fixed 
 
     RecalcLayout( FALSE );
 
@@ -710,8 +708,8 @@ void wxFrameLayout::SetBarState( cbBarInfo* pBar, int newState, bool updateNow )
 
     if ( pBar->mState == wxCBAR_FLOATING && newState != wxCBAR_FLOATING )
     {
-        // remove bar's window form the containing mini-frame
-        // and set it's parent to be layout's parent frame
+        // remove bar's window from the containing mini-frame
+        // and set its parent to be layout's parent frame
 
         if ( pBar->mpBarWnd )
         {
@@ -1176,15 +1174,15 @@ void wxFrameLayout::HideBarWindows()
 void wxFrameLayout::UnhookFromFrame()
 {
     // NOTE:: the SetEvtHandlerEnabled() method is not used
-    //        here, since it is assumed, that unhooking layout
+    //        here, since it is assumed that unhooking layout
     //        from window may result destroying of the layout itself
     //       
     //        BUG BUG BUG (wx):: this would not be a problem if 
-    //                           wxEvtHandler's destructor would check if 
+    //                           wxEvtHandler's destructor checked if 
     //                           this handler is currently the top-most 
     //                           handler of some window, and additionally 
-    //                           to the reconnecting itself from the chain
-    //                           it would also re-setup current event handler 
+    //                           to the reconnecting itself from the chain.
+    //                           It would also re-setup current event handler 
     //                           of the window using wxWindow::SetEventHandler()
 
     // FOR NOW::
@@ -2576,7 +2574,7 @@ void cbDockPane::CalcLengthRatios( cbRowInfo* pInRow )
 
     size_t i = 0;
 
-    // clac current-maximal-total-length of all maximized bars
+    // calc current-maximal-total-length of all maximized bars
 
     for ( i = 0; i != pInRow->mBars.GetCount(); ++i )
     {
@@ -2586,7 +2584,7 @@ void cbDockPane::CalcLengthRatios( cbRowInfo* pInRow )
             totalWidth += bar.mBounds.width;
     }
 
-    // set up persentages of occupied space for each maximized bar
+    // set up percentages of occupied space for each maximized bar
 
     for ( i = 0; i != pInRow->mBars.Count(); ++i )
     {
index d575be3a13cbaf4a97cc170655ceacca19471b98..138f5a0b95be3b46c90f2137aac6d4d27d5e50cd 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        dyntbar.cpp
+// Purpose:     wxDynamicToolBar implementation
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     ??/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -16,7 +16,6 @@
 // For compilers that support precompilation, includes "wx/wx.h".
 #include "wx/wxprec.h"
 
-
 #ifdef __BORLANDC__
 #pragma hdrstop
 #endif
@@ -34,94 +33,94 @@ IMPLEMENT_DYNAMIC_CLASS(wxDynamicToolBar, wxControl )
 
 BEGIN_EVENT_TABLE( wxDynamicToolBar, wxControl )
 
-       EVT_SIZE ( wxDynamicToolBar::OnSize  )
-       EVT_PAINT( wxDynamicToolBar::OnPaint )
-       //EVT_ERASE_BACKGROUND( wxDynamicToolBar::OnEraseBackground )
+    EVT_SIZE ( wxDynamicToolBar::OnSize  )
+    EVT_PAINT( wxDynamicToolBar::OnPaint )
+    //EVT_ERASE_BACKGROUND( wxDynamicToolBar::OnEraseBackground )
 
 END_EVENT_TABLE()
 
 /***** Implementation for class wxDynToolInfo *****/
-               
+        
 IMPLEMENT_DYNAMIC_CLASS(wxDynToolInfo, wxToolLayoutItem)
 
 /***** Implementation for class wxDynamicToolBar *****/
 
 wxDynamicToolBar::wxDynamicToolBar()
-       : mpLayoutMan( NULL ),
-         mSepartorSize( 8 ),
-         mVertGap ( 0 ),
-         mHorizGap( 0 )
+    : mpLayoutMan( NULL ),
+      mSepartorSize( 8 ),
+      mVertGap ( 0 ),
+      mHorizGap( 0 )
 {
 }
 
 wxDynamicToolBar::wxDynamicToolBar(wxWindow *parent, const wxWindowID id, 
-                                                                  const wxPoint& pos, const wxSize& size,
-                                                                  const long style, const int orientation,
-                                                                  const int RowsOrColumns, const wxString& name )
-       : mpLayoutMan( NULL ),
-         mSepartorSize( 8 ),
-         mVertGap ( 0 ),
-         mHorizGap( 0 )
+                                   const wxPoint& pos, const wxSize& size,
+                                   const long style, const int orientation,
+                                   const int RowsOrColumns, const wxString& name )
+    : mpLayoutMan( NULL ),
+      mSepartorSize( 8 ),
+      mVertGap ( 0 ),
+      mHorizGap( 0 )
 {
-       Create(parent, id, pos, size, style, orientation, RowsOrColumns, name);
+    Create(parent, id, pos, size, style, orientation, RowsOrColumns, name);
 
-       SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE) );
+    SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE) );
 }
 
 bool wxDynamicToolBar::Create(wxWindow *parent, const wxWindowID id, 
-                                                     const wxPoint& pos, 
-                                                         const wxSize& size,
-                                                         const long style, 
-                                                         const int orientation, const int RowsOrColumns, 
-                                                         const wxString& name)
+                              const wxPoint& pos, 
+                              const wxSize& size,
+                              const long style, 
+                              const int orientation, const int RowsOrColumns, 
+                              const wxString& name)
 {
-       // cut&pasted from wxtbatsmpl.h
+    // cut&pasted from wxtbatsmpl.h
 
-       if ( ! wxWindow::Create(parent, id, pos, size, style, name) )
-               return FALSE;
+    if ( ! wxWindow::Create(parent, id, pos, size, style, name) )
+        return FALSE;
 
-       SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ));
+    SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ));
 
-       return TRUE;
+    return TRUE;
 }
 
 bool wxDynamicToolBar::Realize(void)
 {
-       // FOR NOW:: nothing
-       return TRUE;
+    // FOR NOW:: nothing
+    return TRUE;
 }
 
 wxDynamicToolBar::~wxDynamicToolBar(void)
 {
-       if ( mpLayoutMan )
+    if ( mpLayoutMan )
         delete mpLayoutMan;
 
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
+    for( i = 0; i != mTools.Count(); ++i )
     {
-               delete mTools[i];
+        delete mTools[i];
     }
 }
 
 void wxDynamicToolBar::AddTool( int toolIndex, 
-                                                               wxWindow* pToolWindow, 
-                                                               const wxSize& size
-                                                     )
+                                wxWindow* pToolWindow, 
+                                const wxSize& size
+                              )
 {
-       wxDynToolInfo* pInfo = new wxDynToolInfo();
+    wxDynToolInfo* pInfo = new wxDynToolInfo();
 
-       pInfo->mpToolWnd    = pToolWindow;
-       pInfo->mIndex       = toolIndex;
-       pInfo->mIsSeparator     = FALSE;
+    pInfo->mpToolWnd    = pToolWindow;
+    pInfo->mIndex       = toolIndex;
+    pInfo->mIsSeparator    = FALSE;
 
-       int x,y;
-       pToolWindow->GetSize( &x, &y );
-       pInfo->mRealSize.x = x;
-       pInfo->mRealSize.y = y;
-       pInfo->mRect.width = x;
-       pInfo->mRect.height = y;
+    int x,y;
+    pToolWindow->GetSize( &x, &y );
+    pInfo->mRealSize.x = x;
+    pInfo->mRealSize.y = y;
+    pInfo->mRect.width = x;
+    pInfo->mRect.height = y;
 
-       mTools.Add( pInfo );
+    mTools.Add( pInfo );
 }
 
 void wxDynamicToolBar::AddTool( int toolIndex, 
@@ -130,191 +129,191 @@ void wxDynamicToolBar::AddTool( int toolIndex,
                                 const wxString& labelText, bool alignTextRight,
                                 bool isFlat )
 {
-       wxNewBitmapButton* pBtn =
+    wxNewBitmapButton* pBtn =
 
-         new wxNewBitmapButton( imageFileName, imageFileType,
-                                                        labelText, 
-                                                        ( alignTextRight ) 
-                                                        ? NB_ALIGN_TEXT_RIGHT 
-                                                        : NB_ALIGN_TEXT_BOTTOM,
-                                                        isFlat
-                                                  );
+      new wxNewBitmapButton( imageFileName, imageFileType,
+                             labelText, 
+                             ( alignTextRight ) 
+                             ? NB_ALIGN_TEXT_RIGHT 
+                             : NB_ALIGN_TEXT_BOTTOM,
+                             isFlat
+                           );
 
-       pBtn->Create( this, toolIndex );
+    pBtn->Create( this, toolIndex );
 
-       pBtn->Reshape();
-       
-       AddTool( toolIndex, pBtn );
+    pBtn->Reshape();
+    
+    AddTool( toolIndex, pBtn );
 }
 void wxDynamicToolBar::AddTool( int toolIndex, wxBitmap labelBmp,
-                                                               const wxString& labelText, bool alignTextRight,
-                                                               bool isFlat )
+                                const wxString& labelText, bool alignTextRight,
+                                bool isFlat )
 {
-       wxNewBitmapButton* pBtn =
+    wxNewBitmapButton* pBtn =
 
-         new wxNewBitmapButton( labelBmp,
-                                                        labelText, 
-                                                        ( alignTextRight ) 
-                                                        ? NB_ALIGN_TEXT_RIGHT 
-                                                        : NB_ALIGN_TEXT_BOTTOM,
-                                                        isFlat
-                                                  );
+      new wxNewBitmapButton( labelBmp,
+                             labelText, 
+                             ( alignTextRight ) 
+                             ? NB_ALIGN_TEXT_RIGHT 
+                             : NB_ALIGN_TEXT_BOTTOM,
+                             isFlat
+                           );
 
-       pBtn->Create( this, toolIndex );
+    pBtn->Create( this, toolIndex );
 
-       pBtn->Reshape();
-       
-       AddTool( toolIndex, pBtn );
+    pBtn->Reshape();
+    
+    AddTool( toolIndex, pBtn );
 }
 
 
-  wxToolBarToolBase* 
-         wxDynamicToolBar::AddTool(const int toolIndex, const wxBitmap& bitmap, 
-                                                               const wxBitmap& pushedBitmap,
-                                                               const bool toggle, const long xPos, 
-                                                               const long yPos, wxObject *clientData,
-                                                               const wxString& helpString1, const wxString& helpString2)
+wxToolBarToolBase* 
+      wxDynamicToolBar::AddTool(const int toolIndex, const wxBitmap& bitmap, 
+                                const wxBitmap& pushedBitmap,
+                                const bool toggle, const long xPos, 
+                                const long yPos, wxObject *clientData,
+                                const wxString& helpString1, const wxString& helpString2)
 {
-       wxNewBitmapButton* pBmpBtn = new wxNewBitmapButton( bitmap );
+    wxNewBitmapButton* pBmpBtn = new wxNewBitmapButton( bitmap );
 
-       pBmpBtn->Create( this, toolIndex );
+    pBmpBtn->Create( this, toolIndex );
 
-       pBmpBtn->Reshape();
+    pBmpBtn->Reshape();
 
-       AddTool( toolIndex, pBmpBtn );
+    AddTool( toolIndex, pBmpBtn );
 
-       return NULL;
+    return NULL;
 }
 
 
 wxDynToolInfo* wxDynamicToolBar::GetToolInfo( int toolIndex )
 {
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
+    for( i = 0; i != mTools.Count(); ++i )
     {
-               if ( mTools[i]->mIndex == toolIndex )
+        if ( mTools[i]->mIndex == toolIndex )
             return mTools[i];
     }
 
-       return NULL;
+    return NULL;
 }
 
 void wxDynamicToolBar::RemveTool( int toolIndex )
 {
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
+    for( i = 0; i != mTools.Count(); ++i )
     {
-               if ( mTools[i]->mIndex == toolIndex ) 
-               {
-                   if ( mTools[i]->mpToolWnd )
-                   {
-                           mTools[i]->mpToolWnd->Destroy();
-                   }
+        if ( mTools[i]->mIndex == toolIndex ) 
+        {
+            if ( mTools[i]->mpToolWnd )
+            {
+                mTools[i]->mpToolWnd->Destroy();
+            }
             delete mTools[i]; // HVL To be tested!!!
 #if wxCHECK_VERSION(2,3,2)
-                       mTools.RemoveAt(i);
+            mTools.RemoveAt(i);
 #else
-                       mTools.Remove(i);
+            mTools.Remove(i);
 #endif
-                       Layout();
+            Layout();
 
-                       return;
-               }
+            return;
+        }
     }
-       // TODO:: if not found, should it be an assertion?
+    // TODO:: if not found, should it be an assertion?
 }
 
 void wxDynamicToolBar::AddSeparator( wxWindow* pSepartorWnd )
 {
-       wxDynToolInfo* pInfo = new wxDynToolInfo();
-
-       pInfo->mpToolWnd    = pSepartorWnd;
-       pInfo->mIndex       = -1;
-       pInfo->mIsSeparator     = TRUE;
-
-       if ( pSepartorWnd )
-       {
-               pSepartorWnd->Create( this, -1 );
-
-               int x,y;
-               pSepartorWnd->GetSize( &x, &y );
-               pInfo->mRealSize.x = x;
-               pInfo->mRealSize.y = y;
-
-               pInfo->mRect.width = x;
-               pInfo->mRect.height = y;
-       }
-       else
-       {
-               pInfo->mRealSize.x = mSepartorSize;
-               pInfo->mRealSize.y = 0;
-
-               pInfo->mRect.width  = mSepartorSize;
-               pInfo->mRect.height = 0;
-       }
-
-       mTools.Add( pInfo );
+    wxDynToolInfo* pInfo = new wxDynToolInfo();
+
+    pInfo->mpToolWnd    = pSepartorWnd;
+    pInfo->mIndex       = -1;
+    pInfo->mIsSeparator    = TRUE;
+
+    if ( pSepartorWnd )
+    {
+        pSepartorWnd->Create( this, -1 );
+
+        int x,y;
+        pSepartorWnd->GetSize( &x, &y );
+        pInfo->mRealSize.x = x;
+        pInfo->mRealSize.y = y;
+
+        pInfo->mRect.width = x;
+        pInfo->mRect.height = y;
+    }
+    else
+    {
+        pInfo->mRealSize.x = mSepartorSize;
+        pInfo->mRealSize.y = 0;
+
+        pInfo->mRect.width  = mSepartorSize;
+        pInfo->mRect.height = 0;
+    }
+
+    mTools.Add( pInfo );
 }
 
 void wxDynamicToolBar::OnEraseBackground( wxEraseEvent& event )
 {
-       // FOR NOW:: nothing
+    // FOR NOW:: nothing
 }
 
 void wxDynamicToolBar::OnSize( wxSizeEvent& event )
 {
-       //SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ) );
+    //SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_3DFACE ) );
 
-       Layout();
+    Layout();
 }
 
 void wxDynamicToolBar::DrawSeparator( wxDynToolInfo& info, wxDC& dc )
 {
-       // check the orientation of separator
-       if ( info.mRect.width < info.mRect.height )
-       {
-               int midX = info.mRect.x + info.mRect.width/2 - 1;
-
-               dc.SetPen( *wxGREY_PEN );
-               dc.DrawLine( midX, info.mRect.y,
-                                midX, info.mRect.y + info.mRect.height+1 );
-
-               dc.SetPen( *wxWHITE_PEN );
-               dc.DrawLine( midX+1, info.mRect.y,
-                                midX+1, info.mRect.y + info.mRect.height+1 );
-       }
-       else
-       {
-               int midY = info.mRect.y + info.mRect.height/2 - 1;
-
-               dc.SetPen( *wxGREY_PEN );
-               dc.DrawLine( info.mRect.x, midY,
-                                info.mRect.x + info.mRect.width+1, midY );
-
-               dc.SetPen( *wxWHITE_PEN );
-               dc.DrawLine( info.mRect.x, midY + 1,
-                                info.mRect.x + info.mRect.width+1, midY + 1 );
-       }
+    // check the orientation of separator
+    if ( info.mRect.width < info.mRect.height )
+    {
+        int midX = info.mRect.x + info.mRect.width/2 - 1;
+
+        dc.SetPen( *wxGREY_PEN );
+        dc.DrawLine( midX, info.mRect.y,
+                     midX, info.mRect.y + info.mRect.height+1 );
+
+        dc.SetPen( *wxWHITE_PEN );
+        dc.DrawLine( midX+1, info.mRect.y,
+                     midX+1, info.mRect.y + info.mRect.height+1 );
+    }
+    else
+    {
+        int midY = info.mRect.y + info.mRect.height/2 - 1;
+
+        dc.SetPen( *wxGREY_PEN );
+        dc.DrawLine( info.mRect.x, midY,
+                     info.mRect.x + info.mRect.width+1, midY );
+
+        dc.SetPen( *wxWHITE_PEN );
+        dc.DrawLine( info.mRect.x, midY + 1,
+                     info.mRect.x + info.mRect.width+1, midY + 1 );
+    }
 }
 
 void wxDynamicToolBar::OnPaint( wxPaintEvent& event )
 {
-       // draw separators if any
+    // draw separators if any
 
-       wxPaintDC dc(this);
+    wxPaintDC dc(this);
 
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
-       
-               if ( mTools[i]->mIsSeparator ) 
-               {
-                       // check if separator doesn't have it's own window
-                       // if so, then draw it using built-in drawing method
+    for( i = 0; i != mTools.Count(); ++i )
+    
+        if ( mTools[i]->mIsSeparator ) 
+        {
+            // check if separator doesn't have it's own window
+            // if so, then draw it using built-in drawing method
 
-                       if ( !mTools[i]->mpToolWnd )
+            if ( !mTools[i]->mpToolWnd )
 
-                               DrawSeparator( *mTools[i], dc );
-               }
+                DrawSeparator( *mTools[i], dc );
+        }
 }
 
 // FOR NOW:: quick fix
@@ -323,174 +322,174 @@ void wxDynamicToolBar::OnPaint( wxPaintEvent& event )
 void wxDynamicToolBar::SizeToolWindows()
 {
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
-       {
-               wxDynToolInfo& info = *mTools[i];
-
-               if ( !info.mIsSeparator ) 
-               {
-
-                       // center real rectangle within the rectangle 
-                       // provided by the layout manager
-
-                       int x = info.mRect.x;
-                       int y = info.mRect.y + (info.mRect.height - info.mRealSize.y)/2;
-
-                       // FOR NOW FOR NOW:: quick & dirty fix
-                       if ( info.mpToolWnd->IsKindOf( CLASSINFO( wxChoice ) ) )
-                       {
-                               info.mpToolWnd->SetSize( x,y, 
-                                                                               info.mRealSize.x - 3, 
-                                                                               info.mRealSize.y);
-                       }
-                       else
-                               info.mpToolWnd->SetSize( x,y, 
-                                                                               info.mRealSize.x, 
-                                                                               info.mRealSize.y );
-               }
-
-               // TBD:: size separator window if present
-       }
+    for( i = 0; i != mTools.Count(); ++i )
+    {
+        wxDynToolInfo& info = *mTools[i];
+
+        if ( !info.mIsSeparator ) 
+        {
+
+            // center real rectangle within the rectangle 
+            // provided by the layout manager
+
+            int x = info.mRect.x;
+            int y = info.mRect.y + (info.mRect.height - info.mRealSize.y)/2;
+
+            // FOR NOW FOR NOW:: quick & dirty fix
+            if ( info.mpToolWnd->IsKindOf( CLASSINFO( wxChoice ) ) )
+            {
+                info.mpToolWnd->SetSize( x,y, 
+                                        info.mRealSize.x - 3, 
+                                        info.mRealSize.y);
+            }
+            else
+                info.mpToolWnd->SetSize( x,y, 
+                                        info.mRealSize.x, 
+                                        info.mRealSize.y );
+        }
+
+        // TBD:: size separator window if present
+    }
 }
 
 bool wxDynamicToolBar::Layout()
 {
-       if ( !mpLayoutMan )
-        mpLayoutMan = CreateDefaulLayout();
+    if ( !mpLayoutMan )
+        mpLayoutMan = CreateDefaultLayout();
 
-       int x,y;
-       GetSize( &x, &y );
-       wxSize wndDim(x,y);
-       wxSize result;
+    int x,y;
+    GetSize( &x, &y );
+    wxSize wndDim(x,y);
+    wxSize result;
 
-       wxLayoutItemArrayT items;
+    wxLayoutItemArrayT items;
 
-       // safe conversion
+    // safe conversion
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
+    for( i = 0; i != mTools.Count(); ++i )
         items.Add( mTools[i] );
 
-       mpLayoutMan->Layout( wndDim, result, items, mVertGap, mHorizGap );;
+    mpLayoutMan->Layout( wndDim, result, items, mVertGap, mHorizGap );;
 
-       SizeToolWindows();
+    SizeToolWindows();
     return TRUE;
 }
 
 void wxDynamicToolBar::GetPreferredDim( const wxSize& givenDim, wxSize& prefDim )
 {
-       if ( !mpLayoutMan )
-        mpLayoutMan = CreateDefaulLayout();
+    if ( !mpLayoutMan )
+        mpLayoutMan = CreateDefaultLayout();
 
-       wxLayoutItemArrayT items;
+    wxLayoutItemArrayT items;
 
-       // safe conversion
+    // safe conversion
     size_t i;
-       for( i = 0; i != mTools.Count(); ++i )
+    for( i = 0; i != mTools.Count(); ++i )
         items.Add( mTools[i] );
 
-       mpLayoutMan->Layout( givenDim, prefDim, items, mVertGap, mHorizGap );;
+    mpLayoutMan->Layout( givenDim, prefDim, items, mVertGap, mHorizGap );;
 }
 
 void wxDynamicToolBar::SetLayout( LayoutManagerBase* pLayout )
 {
-       if ( mpLayoutMan )
+    if ( mpLayoutMan )
         delete mpLayoutMan;
 
-       mpLayoutMan = pLayout;
+    mpLayoutMan = pLayout;
 
-       Layout();
+    Layout();
 }
 
 void wxDynamicToolBar::EnableTool(const int toolIndex, const bool enable )
 {
-       wxDynToolInfo* pInfo = GetToolInfo( toolIndex );
+    wxDynToolInfo* pInfo = GetToolInfo( toolIndex );
 
-       if ( !pInfo )
+    if ( !pInfo )
         return;
 
-       if ( pInfo->mIsSeparator || !pInfo->mpToolWnd )
+    if ( pInfo->mIsSeparator || !pInfo->mpToolWnd )
         return;
 
-       pInfo->mpToolWnd->Enable( enable );
+    pInfo->mpToolWnd->Enable( enable );
 }
 
 /***** Implementation for class BagLayout *****/
 
 void BagLayout::Layout(  const wxSize&       parentDim, 
-                                                wxSize&                 resultingDim,
-                                                wxLayoutItemArrayT& items,
-                                                int                     horizGap,
-                                int                     vertGap  
-                                         )
+                         wxSize&             resultingDim,
+                         wxLayoutItemArrayT& items,
+                         int                 horizGap,
+                          int                 vertGap  
+                      )
 {
-       int maxWidth = 0;
-       int curY  = 0;
-       int nRows = 0;
+    int maxWidth = 0;
+    int curY  = 0;
+    int nRows = 0;
 
-       size_t i = 0;
+    size_t i = 0;
 
-       while( i < items.Count() )
-       {
-               int curX   = 0;
-               int height = 0;
-               // int nItems = 0;
+    while( i < items.Count() )
+    {
+        int curX   = 0;
+        int height = 0;
+        // int nItems = 0;
 
-               // int firstItem  = i;
-               int itemsInRow = 0;
+        // int firstItem  = i;
+        int itemsInRow = 0;
 
-               if ( nRows > 0 )
+        if ( nRows > 0 )
             curY += vertGap;
 
-               // step #1 - arrange horizontal positions of items in the row
+        // step #1 - arrange horizontal positions of items in the row
 
-               do
-               {
-                       if ( itemsInRow > 0 )
+        do
+        {
+            if ( itemsInRow > 0 )
                 curX += horizGap;
 
-                       wxRect& r = items[i]->mRect;
+            wxRect& r = items[i]->mRect;
 
-                       if ( curX + r.width > parentDim.x )
+            if ( curX + r.width > parentDim.x )
             {
-                               if ( itemsInRow > 0 ) 
+                if ( itemsInRow > 0 ) 
                     break;
             }
-                       r.x = curX;
-                       r.y = curY;
+            r.x = curX;
+            r.y = curY;
 
-                       curX += r.width;
+            curX += r.width;
 
-                       height = wxMax( height, r.height );
+            height = wxMax( height, r.height );
 
-                       ++itemsInRow;
-                       ++i;
+            ++itemsInRow;
+            ++i;
 
-               } while( i < items.Count() );
+        } while( i < items.Count() );
 
-               curY += height;
+        curY += height;
 
-               maxWidth = wxMax( maxWidth, curX );
-       }
+        maxWidth = wxMax( maxWidth, curX );
+    }
 
-       resultingDim.x = maxWidth;
-       resultingDim.y = curY;
+    resultingDim.x = maxWidth;
+    resultingDim.y = curY;
 }
 
 //////// stuff from 2.1.15 ///////////
 
 wxToolBarToolBase* wxDynamicToolBar::FindToolForPosition( wxCoord x, wxCoord y ) const
 {
-       return NULL;
+    return NULL;
 }
 
 bool wxDynamicToolBar::DoInsertTool( size_t pos, wxToolBarToolBase* tool )
 {
-       return TRUE;
+    return TRUE;
 }
 
 bool wxDynamicToolBar::DoDeleteTool( size_t pos, wxToolBarToolBase* tool )
 {
-       return TRUE;
+    return TRUE;
 }
 
 void wxDynamicToolBar::DoEnableTool( wxToolBarToolBase* tool, bool enable )
@@ -507,11 +506,11 @@ void wxDynamicToolBar::DoSetToggle( wxToolBarToolBase* tool, bool toggle )
 
 wxToolBarToolBase* wxDynamicToolBar::CreateTool( int id, const wxBitmap& bitmap1, const wxBitmap& bitmap2, bool toggle, wxObject* clientData, const wxString& shortHelpString, const wxString& longHelpString )
 {
-       return NULL;
+    return NULL;
 }
 
 wxToolBarToolBase* wxDynamicToolBar::CreateTool( wxControl* control )
 {
-       return NULL;
+    return NULL;
 }
 
index e375851436b3dae1ef7998e42b32a56c6dbe01cc..2a819c5b9b8e517cf5f2d76f75c627603a7624ab 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        dyntbarhnd.cpp
+// Purpose:     cbDynToolBarDimHandler implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     23/01/99
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
 #pragma hdrstop
 #endif
 
-
 #ifndef WX_PRECOMP
 #include "wx/wx.h"
 #endif
 
 #include "wx/fl/dyntbarhnd.h"
-
 /***** Implementation for class cbDynToolBarDimHandler *****/
 
 IMPLEMENT_DYNAMIC_CLASS( cbDynToolBarDimHandler, cbBarDimHandlerBase )
 
 void cbDynToolBarDimHandler::OnChangeBarState(cbBarInfo* pBar, int newState )
 {
-       // nothing
+    // nothing
 }
 
 void cbDynToolBarDimHandler::OnResizeBar( cbBarInfo* pBar, 
-                                                                                 const wxSize& given, 
-                                                                                 wxSize& preferred )
+                                          const wxSize& given, 
+                                          wxSize& preferred )
 {
-       wxASSERT( pBar->mpBarWnd ); // DBG:: should be present
+    wxASSERT( pBar->mpBarWnd ); // DBG:: should be present
 
-       wxDynamicToolBar* pTBar = (wxDynamicToolBar*)pBar->mpBarWnd;
+    wxDynamicToolBar* pTBar = (wxDynamicToolBar*)pBar->mpBarWnd;
 
-       pTBar->GetPreferredDim( given, preferred );
+    pTBar->GetPreferredDim( given, preferred );
 }
 
index 662777828e0e8921f48b9e9b97b89f51e5a0be79..0a653d8b0d20a62c81071241e01004ca439a51be 100644 (file)
@@ -12,7 +12,6 @@ FL_OBJECTS  = \
    newbmpbtn.$(OBJ_EXT) \
    updatesmgr.$(OBJ_EXT) \
    cbcustom.$(OBJ_EXT) \
-   frmview.$(OBJ_EXT) \
    panedrawpl.$(OBJ_EXT) \
    controlbar.$(OBJ_EXT) \
    garbagec.$(OBJ_EXT) \
index b01785d3a332e87c6e833477065087be1e6403b2..0d1adf1f9300b0caad285b6abab1f6e545741c7b 100644 (file)
@@ -188,10 +188,6 @@ SOURCE=.\dyntbarhnd.cpp
 # End Source File
 # Begin Source File
 
-SOURCE=.\frmview.cpp
-# End Source File
-# Begin Source File
-
 SOURCE=.\garbagec.cpp
 # End Source File
 # Begin Source File
index 8787fe0d10481d39298302d056d37e2bcc8816d8..0ed194084f204b2fe5d6e13a08df8cd18a169419 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        frmview.cpp
+// Purpose:     wxFrameView implementation. NOT USED IN FL.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     02/01/99
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
  
 #ifdef __GNUG__
index 049f944e93dc00f443ad284291aa9bc43f5a4128..564823928bb467c906eed98d78b78e6521597d9d 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        garbagec.cpp
+// Purpose:     Garbage collection algorithm for optimizing refresh.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     18/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 
 inline static GCItem& node_to_item( wxNode* pNode )
 {
-       return *( (GCItem*)(pNode->Data()) );
+    return *( (GCItem*)(pNode->Data()) );
 }
 
 GarbageCollector::~GarbageCollector()
 {
-       Reset();
+    Reset();
 }
 
 /*** GC alg. helpers ***/
 
 void GarbageCollector::DestroyItemList( wxList& lst )
 {
-       wxNode* pNode = lst.First();
+    wxNode* pNode = lst.First();
 
-       while( pNode )
-       {
-               delete &node_to_item( pNode );
+    while( pNode )
+    {
+        delete &node_to_item( pNode );
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       lst.Clear();
+    lst.Clear();
 }
 
 wxNode* GarbageCollector::FindItemNode( void* pForObj )
 {
-       wxNode* pNode = mAllNodes.First();
+    wxNode* pNode = mAllNodes.First();
 
-       while( pNode )
-       {
-               if ( node_to_item( pNode ).mpObj == pForObj )
+    while( pNode )
+    {
+        if ( node_to_item( pNode ).mpObj == pForObj )
 
-                       return pNode;
+            return pNode;
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       int avoidCompilerWarning = 0;
-       wxASSERT(avoidCompilerWarning); // DBG:: item should be present
+    int avoidCompilerWarning = 0;
+    wxASSERT(avoidCompilerWarning); // DBG:: item should be present
 
-       return 0;
+    return 0;
 }
 
 wxNode* GarbageCollector::FindReferenceFreeItemNode()
 {
-       wxNode* pNode = mAllNodes.First();
+    wxNode* pNode = mAllNodes.First();
 
-       while( pNode )
-       {
-               if ( node_to_item( pNode ).mRefs.Number() == 0 ) 
+    while( pNode )
+    {
+        if ( node_to_item( pNode ).mRefs.Number() == 0 ) 
 
-                       return pNode;
+            return pNode;
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       return 0;
+    return 0;
 }
 
 void GarbageCollector::RemoveReferencesToNode( wxNode* pItemNode )
 {
-       wxNode* pNode = mAllNodes.First();
+    wxNode* pNode = mAllNodes.First();
 
-       while( pNode )
-       {
-               wxList& refLst   = node_to_item( pNode ).mRefs;
-               wxNode* pRefNode = refLst.First();
+    while( pNode )
+    {
+        wxList& refLst   = node_to_item( pNode ).mRefs;
+        wxNode* pRefNode = refLst.First();
 
-               while( pRefNode )
-               {
-                       if ( pRefNode->Data() == (wxObject*)pItemNode )
-                       {
-                               wxNode* pNext = pRefNode->Next();
+        while( pRefNode )
+        {
+            if ( pRefNode->Data() == (wxObject*)pItemNode )
+            {
+                wxNode* pNext = pRefNode->Next();
 
-                               refLst.DeleteNode( pRefNode );
+                refLst.DeleteNode( pRefNode );
 
-                               pRefNode = pNext;
+                pRefNode = pNext;
 
-                               continue;
-                       }
-                       else pRefNode = pRefNode->Next();
-               }
+                continue;
+            }
+            else pRefNode = pRefNode->Next();
+        }
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 }
 
 void GarbageCollector::ResolveReferences()
 {
-       wxNode* pNode = mAllNodes.First();
+    wxNode* pNode = mAllNodes.First();
 
-       while( pNode )
-       {
-               GCItem& item = node_to_item( pNode );
+    while( pNode )
+    {
+        GCItem& item = node_to_item( pNode );
 
-               wxNode* pRefNode = item.mRefs.First();
+        wxNode* pRefNode = item.mRefs.First();
 
-               while( pRefNode )
-               {
-                       pRefNode->SetData( (wxObject*) FindItemNode( (void*)pRefNode->Data() ) );
+        while( pRefNode )
+        {
+            pRefNode->SetData( (wxObject*) FindItemNode( (void*)pRefNode->Data() ) );
 
-                       pRefNode = pRefNode->Next();
-               }
+            pRefNode = pRefNode->Next();
+        }
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 }
 
 void GarbageCollector::AddObject( void* pObj, int refCnt )
 {
-       // FOR NOW:: initial ref-count is not used
+    // FOR NOW:: initial ref-count is not used
 
-       GCItem* pItem = new GCItem();
+    GCItem* pItem = new GCItem();
 
-       pItem->mpObj  = pObj;
+    pItem->mpObj  = pObj;
 
-       mAllNodes.Append( (wxObject*) pItem );
+    mAllNodes.Append( (wxObject*) pItem );
 }
 
 void GarbageCollector::AddDependency( void* pObj, void* pDependsOnObj )
 {
-       node_to_item( FindItemNode( pObj ) ).mRefs.Append( (wxObject*)pDependsOnObj );
+    node_to_item( FindItemNode( pObj ) ).mRefs.Append( (wxObject*)pDependsOnObj );
 }
 
 /*** GC alg. implementation ***/
 
 void GarbageCollector::ArrangeCollection()
 {
-       ResolveReferences();
+    ResolveReferences();
 
-       do
-       {
-               // find node, which does not depend on anything
+    do
+    {
+        // find node, which does not depend on anything
 
-               wxNode* pItemNode = FindReferenceFreeItemNode();
+        wxNode* pItemNode = FindReferenceFreeItemNode();
 
-               if ( pItemNode )
-               {
-                       // append it to the list, where items are contained
-                       // in the increasing order of dependencies
+        if ( pItemNode )
+        {
+            // append it to the list, where items are contained
+            // in the increasing order of dependencies
 
-                       mRegularLst.Append( pItemNode->Data() );
+            mRegularLst.Append( pItemNode->Data() );
 
-                       mAllNodes.DeleteNode( pItemNode );
+            mAllNodes.DeleteNode( pItemNode );
 
-                       // remove references to this current "least-dependent" node
-                       // from reference lists of all the other nodes
+            // remove references to this current "least-dependent" node
+            // from reference lists of all the other nodes
 
-                       RemoveReferencesToNode( pItemNode );
-               }
-               else
-               {
-                       // otherwise, what is left - all nodes, which
-                       // are involved into cycled chains (rings)
+            RemoveReferencesToNode( pItemNode );
+        }
+        else
+        {
+            // otherwise, what is left - all nodes, which
+            // are involved into cycled chains (rings)
 
-                       wxNode* pNode = mAllNodes.First();
+            wxNode* pNode = mAllNodes.First();
 
-                       while( pNode )
-                       {
-                               mCycledLst.Append( pNode->Data() );
+            while( pNode )
+            {
+                mCycledLst.Append( pNode->Data() );
 
-                               pNode = pNode->Next();
-                       }
+                pNode = pNode->Next();
+            }
 
-                       break;
-               }
+            break;
+        }
 
-               // continue search for "least-dependent" nodes
+        // continue search for "least-dependent" nodes
 
-       } while(1);
+    } while(1);
 }
 
 wxList& GarbageCollector::GetRegularObjects()
 {
-       return mRegularLst;
+    return mRegularLst;
 }
 
 wxList& GarbageCollector::GetCycledObjects()
 {
-       return mCycledLst;
+    return mCycledLst;
 }
 
 void GarbageCollector::Reset()
 {
-       DestroyItemList( mAllNodes   );
+    DestroyItemList( mAllNodes   );
 
-       mRegularLst.Clear();
-       mCycledLst.Clear();
+    mRegularLst.Clear();
+    mCycledLst.Clear();
 }
 
index dfe73d3811f56e99cf3b90541dd3ac85f29fe4f9..5790666c9d70288a843aefab6dd0823e8d6f12a7 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        gcupdatesmgr.cpp
+// Purpose:     cbGCUpdatesMgr class, optimizing refresh using GarbageCollector
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     19/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas 
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
 
 static inline bool rect_hits_rect( const wxRect& r1, const wxRect& r2 )
 {
-       if ( ( r2.x >= r1.x && r2.x <= r1.x + r1.width ) ||
-                ( r1.x >= r2.x && r1.x <= r2.x + r2.width ) )
+    if ( ( r2.x >= r1.x && r2.x <= r1.x + r1.width ) ||
+         ( r1.x >= r2.x && r1.x <= r2.x + r2.width ) )
 
-               if ( ( r2.y >= r1.y && r2.y <= r1.y + r1.height ) ||
-                        ( r1.y >= r2.y && r1.y <= r2.y + r2.height ) )
-                        
-                       return 1;
+        if ( ( r2.y >= r1.y && r2.y <= r1.y + r1.height ) ||
+             ( r1.y >= r2.y && r1.y <= r2.y + r2.height ) )
+             
+            return 1;
 
-       return 0;
+    return 0;
 }
 
 // helper structure
 
 struct cbRectInfo
 {
-       cbBarInfo*  mpBar;
-       cbDockPane* mpPane;
-       wxRect*     mpCurBounds;
-       wxRect*     mpPrevBounds;
+    cbBarInfo*  mpBar;
+    cbDockPane* mpPane;
+    wxRect*     mpCurBounds;
+    wxRect*     mpPrevBounds;
 };
 
 static inline cbRectInfo& node_to_rect_info( wxNode* pNode )
 {
-       return *( (cbRectInfo*) (pNode->Data()) );
+    return *( (cbRectInfo*) (pNode->Data()) );
 }
 
 /***** Implementation for class cbSimpleUpdatesMgr *****/
@@ -61,350 +61,350 @@ static inline cbRectInfo& node_to_rect_info( wxNode* pNode )
 IMPLEMENT_DYNAMIC_CLASS( cbGCUpdatesMgr, cbSimpleUpdatesMgr )
 
 cbGCUpdatesMgr::cbGCUpdatesMgr( wxFrameLayout* pPanel )
-       : cbSimpleUpdatesMgr( pPanel )
+    : cbSimpleUpdatesMgr( pPanel )
 {}
 
 void cbGCUpdatesMgr::AddItem( wxList&     itemList,
-                                                     cbBarInfo*  pBar, 
-                                                         cbDockPane* pPane,
-                                                         wxRect&     curBounds,
-                                                         wxRect&     prevBounds )
+                              cbBarInfo*  pBar, 
+                              cbDockPane* pPane,
+                              wxRect&     curBounds,
+                              wxRect&     prevBounds )
 {
-       cbRectInfo* pInfo = new cbRectInfo();
+    cbRectInfo* pInfo = new cbRectInfo();
 
-       pInfo->mpBar     = pBar;
-       pInfo->mpPane       = pPane;
-       pInfo->mpCurBounds  = &curBounds;
-       pInfo->mpPrevBounds = &prevBounds;
+    pInfo->mpBar     = pBar;
+    pInfo->mpPane       = pPane;
+    pInfo->mpCurBounds  = &curBounds;
+    pInfo->mpPrevBounds = &prevBounds;
 
-       itemList.Append( (wxObject*) pInfo );
+    itemList.Append( (wxObject*) pInfo );
 }
 
 void cbGCUpdatesMgr::OnStartChanges()
 {
-       // memorize states of ALL items in the layout -
-       // this is quite excessive, but OK for the decent 
-       // implementation of updates manager
+    // memorize states of ALL items in the layout -
+    // this is quite excessive, but OK for the decent 
+    // implementation of updates manager
 
-       mpLayout->GetPrevClientRect() = mpLayout->GetClientRect();
+    mpLayout->GetPrevClientRect() = mpLayout->GetClientRect();
 
-       cbDockPane** panes = mpLayout->GetPanesArray();
+    cbDockPane** panes = mpLayout->GetPanesArray();
 
-       for( int n = 0; n != MAX_PANES; ++n )
-       {
-               cbDockPane& pane = *(panes[n]);
+    for( int n = 0; n != MAX_PANES; ++n )
+    {
+        cbDockPane& pane = *(panes[n]);
 
-               // store pane state
-               pane.mUMgrData.StoreItemState( pane.mBoundsInParent );
-               pane.mUMgrData.SetDirty( FALSE );
+        // store pane state
+        pane.mUMgrData.StoreItemState( pane.mBoundsInParent );
+        pane.mUMgrData.SetDirty( FALSE );
 
-               cbRowInfo* pRow = pane.GetFirstRow();
+        cbRowInfo* pRow = pane.GetFirstRow();
 
-               while ( pRow )
-               {
-                       cbBarInfo* pBar = pRow->GetFirstBar();
+        while ( pRow )
+        {
+            cbBarInfo* pBar = pRow->GetFirstBar();
 
-                       // store row state
-                       pRow->mUMgrData.StoreItemState( pRow->mBoundsInParent );
-                       pRow->mUMgrData.SetDirty( FALSE );
+            // store row state
+            pRow->mUMgrData.StoreItemState( pRow->mBoundsInParent );
+            pRow->mUMgrData.SetDirty( FALSE );
 
-                       while( pBar )
-                       {
-                               // store bar state
-                               pBar->mUMgrData.StoreItemState( pBar->mBoundsInParent );
-                               pBar->mUMgrData.SetDirty( FALSE );
+            while( pBar )
+            {
+                // store bar state
+                pBar->mUMgrData.StoreItemState( pBar->mBoundsInParent );
+                pBar->mUMgrData.SetDirty( FALSE );
 
-                               pBar = pBar->mpNext;
-                       }
+                pBar = pBar->mpNext;
+            }
 
-                       pRow = pRow->mpNext;
-               }
-       }
+            pRow = pRow->mpNext;
+        }
+    }
 }
 
 void cbGCUpdatesMgr::UpdateNow()
 {
-       cbDockPane** panes = mpLayout->GetPanesArray();
+    cbDockPane** panes = mpLayout->GetPanesArray();
 
-       wxRect& r1 = mpLayout->GetClientRect();
-       wxRect& r2 = mpLayout->GetPrevClientRect();
+    wxRect& r1 = mpLayout->GetClientRect();
+    wxRect& r2 = mpLayout->GetPrevClientRect();
 
-       // detect changes in client window's area
+    // detect changes in client window's area
 
-       bool clientWindowChanged = ( r1.x      != r2.x     ||
-                                        r1.y      != r2.y     ||
-                                                                r1.width  != r2.width ||
-                                                                r1.height != r2.height );
+    bool clientWindowChanged = ( r1.x      != r2.x     ||
+                                 r1.y      != r2.y     ||
+                                 r1.width  != r2.width ||
+                                 r1.height != r2.height );
 
-       // step #1 - detect changes in each row of each pane,
-       //           and repaint decorations around changed windows
+    // step #1 - detect changes in each row of each pane,
+    //           and repaint decorations around changed windows
 
-       wxList mBarsToResize;
+    wxList mBarsToResize;
 
-       int n;
-       for ( n = 0; n != MAX_PANES; ++n )
-       {
-               cbDockPane& pane = *(panes[n]);
+    int n;
+    for ( n = 0; n != MAX_PANES; ++n )
+    {
+        cbDockPane& pane = *(panes[n]);
 
-               bool paneChanged = WasChanged( pane.mUMgrData, pane.mBoundsInParent );
+        bool paneChanged = WasChanged( pane.mUMgrData, pane.mBoundsInParent );
 
-               if ( paneChanged )
-               {
-                       wxClientDC dc( &mpLayout->GetParentFrame() );
-                       pane.PaintPaneBackground( dc );
-               }
+        if ( paneChanged )
+        {
+            wxClientDC dc( &mpLayout->GetParentFrame() );
+            pane.PaintPaneBackground( dc );
+        }
 
-               wxRect realBounds;
+        wxRect realBounds;
 
-               cbRowInfo* pRow = pane.GetFirstRow();
+        cbRowInfo* pRow = pane.GetFirstRow();
 
-               while ( pRow )
-               {
-                       wxDC* pDc = 0;
+        while ( pRow )
+        {
+            wxDC* pDc = 0;
 
-                       cbBarInfo* pBar = pRow->GetFirstBar();
+            cbBarInfo* pBar = pRow->GetFirstBar();
 
-                       bool rowChanged = FALSE;
-//                     bool rowBkPainted  = FALSE;
+            bool rowChanged = FALSE;
+//            bool rowBkPainted  = FALSE;
 
-                       // FIXME:: the below should not be fixed
-                       cbBarInfo* barsToRepaint[128];
-                       // number of bars, that were changed in the current row
-                       int nBars = 0; 
+            // FIXME:: the below should not be fixed
+            cbBarInfo* barsToRepaint[128];
+            // number of bars, that were changed in the current row
+            int nBars = 0; 
 
-                       wxRect r1 = pRow->mUMgrData.mPrevBounds;
-                       wxRect r2 = pRow->mBoundsInParent;
+            wxRect r1 = pRow->mUMgrData.mPrevBounds;
+            wxRect r2 = pRow->mBoundsInParent;
 
-                       if ( WasChanged( pRow->mUMgrData, pRow->mBoundsInParent ) )
-                       
-                               rowChanged = TRUE;
-                       else
-                               while( pBar )
-                               {
-                                       if ( WasChanged( pBar->mUMgrData, pBar->mBoundsInParent ) )
-                                       
-                                               barsToRepaint[nBars++] = pBar;
+            if ( WasChanged( pRow->mUMgrData, pRow->mBoundsInParent ) )
+            
+                rowChanged = TRUE;
+            else
+                while( pBar )
+                {
+                    if ( WasChanged( pBar->mUMgrData, pBar->mBoundsInParent ) )
+                    
+                        barsToRepaint[nBars++] = pBar;
 
-                                       pBar = pBar->mpNext;
-                               }
+                    pBar = pBar->mpNext;
+                }
 
-                       if ( nBars || rowChanged )
-                       {
-                               realBounds = pRow->mBoundsInParent;
+            if ( nBars || rowChanged )
+            {
+                realBounds = pRow->mBoundsInParent;
 
-                               // include 1-pixel thick shades around the row
-                               realBounds.x -= 1;
-                               realBounds.y -= 1;
-                               realBounds.width  += 2;
-                               realBounds.height += 2;
+                // include 1-pixel thick shades around the row
+                realBounds.x -= 1;
+                realBounds.y -= 1;
+                realBounds.width  += 2;
+                realBounds.height += 2;
 
-                               pDc = pane.StartDrawInArea( realBounds );
-                       }
+                pDc = pane.StartDrawInArea( realBounds );
+            }
 
-                       if ( rowChanged )
-                       {
-                               // postphone the resizement and refreshing the changed
-                               // bar windows
+            if ( rowChanged )
+            {
+                // postphone the resizement and refreshing the changed
+                // bar windows
 
-                               cbBarInfo* pCurBar = pRow->GetFirstBar();
+                cbBarInfo* pCurBar = pRow->GetFirstBar();
 
-                               while ( pCurBar )
-                               {
-                                       if ( WasChanged( pCurBar->mUMgrData, 
-                                                                        pCurBar->mBoundsInParent ) )
+                while ( pCurBar )
+                {
+                    if ( WasChanged( pCurBar->mUMgrData, 
+                                     pCurBar->mBoundsInParent ) )
 
-                                               AddItem( mBarsToResize, pCurBar, &pane, 
-                                                                pCurBar->mBoundsInParent,
-                                                                pCurBar->mUMgrData.mPrevBounds );
+                        AddItem( mBarsToResize, pCurBar, &pane, 
+                                 pCurBar->mBoundsInParent,
+                                 pCurBar->mUMgrData.mPrevBounds );
 
-                                       pCurBar = pCurBar->mpNext;
-                               }
+                    pCurBar = pCurBar->mpNext;
+                }
 
-                               // draw only their decorations now
+                // draw only their decorations now
 
-                               pane.PaintRow( pRow, *pDc );
-                       }
-                       else
-                       if ( nBars != 0 )
-                       {
-                               for ( int i = 0; i != nBars; ++i )
+                pane.PaintRow( pRow, *pDc );
+            }
+            else
+            if ( nBars != 0 )
+            {
+                for ( int i = 0; i != nBars; ++i )
 
-                                       // postphone the resizement and refreshing the changed
-                                       // bar windows
+                    // postphone the resizement and refreshing the changed
+                    // bar windows
 
-                                       AddItem( mBarsToResize, 
-                                                        barsToRepaint[i], 
-                                                        &pane, 
-                                                    barsToRepaint[i]->mBoundsInParent,
-                                                        barsToRepaint[i]->mUMgrData.mPrevBounds );
+                    AddItem( mBarsToResize, 
+                             barsToRepaint[i], 
+                             &pane, 
+                             barsToRepaint[i]->mBoundsInParent,
+                             barsToRepaint[i]->mUMgrData.mPrevBounds );
 
-                               // redraw decorations of entire row, regardless of how much
-                               // of the bars were changed
+                // redraw decorations of entire row, regardless of how much
+                // of the bars were changed
 
-                               pane.PaintRow( pRow, *pDc );
-                       }
+                pane.PaintRow( pRow, *pDc );
+            }
 
-                       if ( pDc )
-               
-                               pane.FinishDrawInArea( realBounds );
+            if ( pDc )
+        
+                pane.FinishDrawInArea( realBounds );
 
-                       pRow = pRow->mpNext;
+            pRow = pRow->mpNext;
 
-               } // end of while
+        } // end of while
 
-               if ( paneChanged )
-               {
-                       wxClientDC dc( &mpLayout->GetParentFrame() );
-                       pane.PaintPaneDecorations( dc );
-               }
+        if ( paneChanged )
+        {
+            wxClientDC dc( &mpLayout->GetParentFrame() );
+            pane.PaintPaneDecorations( dc );
+        }
 
-       } // end of for
+    } // end of for
 
-       if ( clientWindowChanged && !mpLayout->mClientWndRefreshPending )
-       {
-               // ptr to client-window object is "marked" as NULL
+    if ( clientWindowChanged && !mpLayout->mClientWndRefreshPending )
+    {
+        // ptr to client-window object is "marked" as NULL
 
-               AddItem( mBarsToResize, NULL, NULL, 
-                            mpLayout->GetClientRect(),
-                                mpLayout->GetPrevClientRect() );
-       }
+        AddItem( mBarsToResize, NULL, NULL, 
+                 mpLayout->GetClientRect(),
+                 mpLayout->GetPrevClientRect() );
+    }
 
-       // step #2 - do ordered refreshing and resizing of bar window objects now
+    // step #2 - do ordered refreshing and resizing of bar window objects now
 
-       DoRepositionItems( mBarsToResize );
+    DoRepositionItems( mBarsToResize );
 }
 
 void cbGCUpdatesMgr::DoRepositionItems( wxList& items )
 {
-       wxNode* pNode1 = items.First();
+    wxNode* pNode1 = items.First();
 
-       while( pNode1 )
-       {
-               cbRectInfo& info = node_to_rect_info( pNode1 );
+    while( pNode1 )
+    {
+        cbRectInfo& info = node_to_rect_info( pNode1 );
 
-               wxNode* pNode2 = items.First();
+        wxNode* pNode2 = items.First();
 
-               // and node itself
+        // and node itself
 
-               mGC.AddObject( &info );
+        mGC.AddObject( &info );
 
-               while( pNode2 )
-               {
-                       if ( pNode2 != pNode1 ) // node should not depend on itself
-                       {
-                               // add references to objects, on which this object
-                               // depends. Dependecy here indicates intersection of current
-                               // bounds of this object with the initial bounds of the
-                               // other object
+        while( pNode2 )
+        {
+            if ( pNode2 != pNode1 ) // node should not depend on itself
+            {
+                // Add references to objects on which this object
+                // depends. Dependency here indicates intersection of current
+                // bounds of this object with the initial bounds of the
+                // other object.
 
-                               cbRectInfo& otherInfo = node_to_rect_info( pNode2 );
+                cbRectInfo& otherInfo = node_to_rect_info( pNode2 );
 
-                               if ( rect_hits_rect( *info.mpCurBounds, *otherInfo.mpPrevBounds ) )
-                               
-                                                                       // the node    depends on node
-                                       mGC.AddDependency( &info,      &otherInfo      );
-                       }
+                if ( rect_hits_rect( *info.mpCurBounds, *otherInfo.mpPrevBounds ) )
+                
+                                    // the node    depends on node
+                    mGC.AddDependency( &info,      &otherInfo      );
+            }
 
-                       pNode2 = pNode2->Next();
-               }
+            pNode2 = pNode2->Next();
+        }
 
-               pNode1 = pNode1->Next();
-       }
+        pNode1 = pNode1->Next();
+    }
 
-       mGC.ArrangeCollection(); // order nodes according "least-dependency" rule,
-                                    // and find out cycled chains
+    mGC.ArrangeCollection(); // order nodes according "least-dependency" rule,
+                             // and find out cycled chains
 
-       // regular item nodes need to be resized, but not repainted (since
-       // they stand in linear (not cyclic) dependency with other
-       // regular nodes)
+    // Regular item nodes need to be resized, but not repainted (since
+    // they stand in linear (not cyclic) dependency with other
+    // regular nodes).
 
-       wxNode* pNode = mGC.GetRegularObjects().First();
+    wxNode* pNode = mGC.GetRegularObjects().First();
 
-       while ( pNode )
-       {
-               cbRectInfo& info = *((cbRectInfo*)gc_node_to_obj(pNode));
+    while ( pNode )
+    {
+        cbRectInfo& info = *((cbRectInfo*)gc_node_to_obj(pNode));
 
-               if ( info.mpBar == NULL ) 
-                       
-                       mpLayout->PositionClientWindow();
-               else
-                       info.mpPane->SizeBar( info.mpBar );
+        if ( info.mpBar == NULL ) 
+            
+            mpLayout->PositionClientWindow();
+        else
+            info.mpPane->SizeBar( info.mpBar );
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       // cycled item nodes, need to be both resized and repainted
+    // cycled item nodes, need to be both resized and repainted
 
-       pNode = mGC.GetCycledObjects().First();
+    pNode = mGC.GetCycledObjects().First();
 
-       while ( pNode )
-       {
-               cbRectInfo& info = *((cbRectInfo*)gc_node_to_obj(pNode));
+    while ( pNode )
+    {
+        cbRectInfo& info = *((cbRectInfo*)gc_node_to_obj(pNode));
 
-               if ( info.mpBar == NULL ) 
-               {
-                       wxWindow* pClntWnd = mpLayout->GetFrameClient();
+        if ( info.mpBar == NULL ) 
+        {
+            wxWindow* pClntWnd = mpLayout->GetFrameClient();
 
-                       mpLayout->PositionClientWindow();
+            mpLayout->PositionClientWindow();
 
-                       // FIXME FIXME:: excessive!
+            // FIXME FIXME:: excessive!
 
-                       pClntWnd->Show( FALSE );
-                       pClntWnd->Show( TRUE  );
+            pClntWnd->Show( FALSE );
+            pClntWnd->Show( TRUE  );
 
-                       // OLD STUFF:: mpLayout->PositionClientWindow();
-               }
-               else
-               if ( info.mpBar->mpBarWnd )
-               {
-                       wxWindow* pWnd = info.mpBar->mpBarWnd;
+            // OLD STUFF:: mpLayout->PositionClientWindow();
+        }
+        else
+        if ( info.mpBar->mpBarWnd )
+        {
+            wxWindow* pWnd = info.mpBar->mpBarWnd;
 
-                       // resize
-                       info.mpPane->SizeBar( info.mpBar );
+            // resize
+            info.mpPane->SizeBar( info.mpBar );
 
-                       // repaint
+            // repaint
 
-                       /* OLD STUFF:: bool isChoice = info.mpBar->IsKindOf( CLASSINFO( wxChoice ) );
+            /* OLD STUFF:: bool isChoice = info.mpBar->IsKindOf( CLASSINFO( wxChoice ) );
 
-                       //#ifdef __WINDOWS__
-                       //int result = ::SendMessage( (HWND)pWnd->m_hWnd, WM_NCPAINT, 0, 0 );
-                       //#endif
-                       */
+            //#ifdef __WINDOWS__
+            //int result = ::SendMessage( (HWND)pWnd->m_hWnd, WM_NCPAINT, 0, 0 );
+            //#endif
+            */
 
-                       // FIXME FIXME:: there's no other way to repaint non-client area of the wxWindow!!
-                       //                               so we do *excessive* "hide 'n show"
+            // FIXME FIXME:: there's no other way to repaint non-client area of the wxWindow!!
+            //                 so we do *excessive* "hide 'n show"
 
-                       pWnd->Show(FALSE);
-                       pWnd->Show(TRUE);
-                               
-                       pWnd->Refresh();
-               }
+            pWnd->Show(FALSE);
+            pWnd->Show(TRUE);
+                
+            pWnd->Refresh();
+        }
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       // release data prepared for GC alg.
+    // release data prepared for GC alg.
 
-       pNode = items.First();
+    pNode = items.First();
 
-       while( pNode )
-       {
-               cbRectInfo* pInfo = (cbRectInfo*)(pNode->Data());
+    while( pNode )
+    {
+        cbRectInfo* pInfo = (cbRectInfo*)(pNode->Data());
 
-               delete pInfo;
+        delete pInfo;
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       mGC.Reset(); // reinit GC
+    mGC.Reset(); // reinit GC
 
-       // FIXME:: this is a dirty-workaround for messy client-area,
-       //         as a result of docking bar out of floated-container window
+    // FIXME:: this is a dirty-workaround for messy client-area,
+    //         as a result of docking bar out of floated-container window
 
-       if ( mpLayout->mClientWndRefreshPending )
-       {
-               mpLayout->PositionClientWindow();
-               mpLayout->GetFrameClient()->Refresh();
-       }
+    if ( mpLayout->mClientWndRefreshPending )
+    {
+        mpLayout->PositionClientWindow();
+        mpLayout->GetFrameClient()->Refresh();
+    }
 }
 
index 3453fe877fea20a2823e5b70d9303a8cf60f5fed..56752d6f1df95ec73e305b29bee1ffd546e3d3ee 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        hintanimpl.cpp
+// Purpose:     cbHintAnimationPlugin implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     9/11/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -37,111 +37,111 @@ IMPLEMENT_DYNAMIC_CLASS( cbHintAnimationPlugin, cbPluginBase )
 
 BEGIN_EVENT_TABLE( cbHintAnimationPlugin, cbPluginBase )
 
-       EVT_PL_DRAW_HINT_RECT( cbHintAnimationPlugin::OnDrawHintRect )
+    EVT_PL_DRAW_HINT_RECT( cbHintAnimationPlugin::OnDrawHintRect )
 
 END_EVENT_TABLE()
 
 cbHintAnimationPlugin::cbHintAnimationPlugin(void)
 
-       : mpScrDc( NULL ),
-         mpAnimTimer( 0 ),
-         mAnimStarted( FALSE ),
-         
-         mMorphDelay    ( 5   ),
-         mMaxFrames     ( 20   ),
+    : mpScrDc( NULL ),
+      mpAnimTimer( 0 ),
+      mAnimStarted( FALSE ),
+      
+      mMorphDelay    ( 5   ),
+      mMaxFrames     ( 20   ),
       mInClientHintBorder( 4 ),
-         mAccelerationOn( TRUE )
+      mAccelerationOn( TRUE )
 {}
 
 cbHintAnimationPlugin::cbHintAnimationPlugin( wxFrameLayout* pPanel, int paneMask )
 
-       : cbPluginBase( pPanel, paneMask ),
-         mpScrDc( NULL ),
-         mpAnimTimer( 0 ),
-         mAnimStarted( FALSE ),
+    : cbPluginBase( pPanel, paneMask ),
+      mpScrDc( NULL ),
+      mpAnimTimer( 0 ),
+      mAnimStarted( FALSE ),
 
-         mMorphDelay    ( 5   ),
-         mMaxFrames     ( 20   ),
-         mInClientHintBorder( 4 ),
-         mAccelerationOn( TRUE )
+      mMorphDelay    ( 5   ),
+      mMaxFrames     ( 20   ),
+      mInClientHintBorder( 4 ),
+      mAccelerationOn( TRUE )
 {}
 
 cbHintAnimationPlugin::~cbHintAnimationPlugin()
 {
-       if ( mpScrDc ) delete mpScrDc;
+    if ( mpScrDc ) delete mpScrDc;
 }
 
 /*** rect-tracking related methods ***/
 
 void cbHintAnimationPlugin::OnDrawHintRect( cbDrawHintRectEvent& event )
 {
-       if ( !mAnimStarted && !mpScrDc ) 
-       {
-               StartTracking();
+    if ( !mAnimStarted && !mpScrDc ) 
+    {
+        StartTracking();
 
-               mPrevInClient = event.mIsInClient;
+        mPrevInClient = event.mIsInClient;
 
-               mPrevRect = event.mRect;
+        mPrevRect = event.mRect;
 
-               mStopPending = FALSE;
-       }
+        mStopPending = FALSE;
+    }
 
-       if ( !event.mEraseRect )
-       {
-               // pass on current hint-rect info to the animation "thread", in 
-               // order to make adjustments to the morph-target on-the-fly
+    if ( !event.mEraseRect )
+    {
+        // pass on current hint-rect info to the animation "thread", in 
+        // order to make adjustments to the morph-target on-the-fly
 
-               mCurRect.x = event.mRect.x;
-               mCurRect.y = event.mRect.y;
-               mCurRect.width  = event.mRect.width;
-               mCurRect.height = event.mRect.height;
-       }
+        mCurRect.x = event.mRect.x;
+        mCurRect.y = event.mRect.y;
+        mCurRect.width  = event.mRect.width;
+        mCurRect.height = event.mRect.height;
+    }
 
-       // check the amount of change in the shape of hint,
-       // and start morph-effect if change is "sufficient"
+    // check the amount of change in the shape of hint,
+    // and start morph-effect if change is "sufficient"
 
-       int change = abs( mCurRect.width  - mPrevRect.width  ) +
-                            abs( mCurRect.height - mPrevRect.height );
+    int change = abs( mCurRect.width  - mPrevRect.width  ) +
+                 abs( mCurRect.height - mPrevRect.height );
 
-       if ( change > 10 && !event.mLastTime && !event.mEraseRect )
-       {
-               if ( !mpAnimTimer )
+    if ( change > 10 && !event.mLastTime && !event.mEraseRect )
+    {
+        if ( !mpAnimTimer )
 
-                       mpAnimTimer  = new cbHintAnimTimer();
+            mpAnimTimer  = new cbHintAnimTimer();
 
-               // init the animation "thread", or reinit if already started
+        // init the animation "thread", or reinit if already started
 
-               mpAnimTimer->Init( this, mAnimStarted );
+        mpAnimTimer->Init( this, mAnimStarted );
 
-               mAnimStarted = TRUE;
-       }
-       else
-       if ( !mAnimStarted )
-       {
-               DoDrawHintRect( event.mRect, event.mIsInClient );
+        mAnimStarted = TRUE;
+    }
+    else
+    if ( !mAnimStarted )
+    {
+        DoDrawHintRect( event.mRect, event.mIsInClient );
 
-               if ( event.mLastTime )
+        if ( event.mLastTime )
 
-                       FinishTracking();
+            FinishTracking();
 
-               mPrevInClient = event.mIsInClient;
-       }
-       else
-       {
-               mCurInClient = event.mIsInClient;
+        mPrevInClient = event.mIsInClient;
+    }
+    else
+    {
+        mCurInClient = event.mIsInClient;
 
-               if ( event.mLastTime && mpAnimTimer ) 
-               {
-                       mStopPending = TRUE;
+        if ( event.mLastTime && mpAnimTimer ) 
+        {
+            mStopPending = TRUE;
 
-                       if ( mpAnimTimer->mPrevMorphed.x != POS_UNDEFINED )
+            if ( mpAnimTimer->mPrevMorphed.x != POS_UNDEFINED )
 
-                               // erase previous rect
-                               DoDrawHintRect( mpAnimTimer->mPrevMorphed, mPrevInClient );
-               }
-       }
+                // erase previous rect
+                DoDrawHintRect( mpAnimTimer->mPrevMorphed, mPrevInClient );
+        }
+    }
 
-       mPrevRect = event.mRect;
+    mPrevRect = event.mRect;
 }
 
 #define _IMG_A  0xAA    // Note: modified from _A to _IMG_A, _A was already defined (cygwin)
@@ -150,109 +150,109 @@ void cbHintAnimationPlugin::OnDrawHintRect( cbDrawHintRectEvent& event )
 #define _IMG_D  0x00    // Note: modified from _D to _IMG_D, for consistency reasons.
 
 static const unsigned char _gCheckerImg[16] = { _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D
-                                                                                         };
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D,
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D,
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D
+                                              };
 
 void cbHintAnimationPlugin::StartTracking()
 {
-       mpScrDc = new wxScreenDC;
+    mpScrDc = new wxScreenDC;
 
-       wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
+    wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
 }
 
 void cbHintAnimationPlugin::DoDrawHintRect( wxRect& rect, bool isInClientRect)
 {
-       wxRect scrRect;
+    wxRect scrRect;
 
-       RectToScr( rect, scrRect );
+    RectToScr( rect, scrRect );
 
-       int prevLF = mpScrDc->GetLogicalFunction();
+    int prevLF = mpScrDc->GetLogicalFunction();
 
-       mpScrDc->SetLogicalFunction( wxXOR );
+    mpScrDc->SetLogicalFunction( wxXOR );
 
-       if ( isInClientRect )
-       {
-               // BUG BUG BUG (wx):: somehow stippled brush works only  
-               //                                        when the bitmap created on stack, not
-               //                                        as a member of the class
+    if ( isInClientRect )
+    {
+        // BUG BUG BUG (wx):: somehow stippled brush works only  
+        //                      when the bitmap created on stack, not
+        //                      as a member of the class
 
-               wxBitmap checker( (const char*)_gCheckerImg, 8,8 );
+        wxBitmap checker( (const char*)_gCheckerImg, 8,8 );
 
-               wxBrush checkerBrush( checker );
+        wxBrush checkerBrush( checker );
 
-               mpScrDc->SetPen( mpLayout->mNullPen );
-               mpScrDc->SetBrush( checkerBrush );
+        mpScrDc->SetPen( mpLayout->mNullPen );
+        mpScrDc->SetBrush( checkerBrush );
 
-               int half = mInClientHintBorder / 2;
+        int half = mInClientHintBorder / 2;
 
-               mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y - half,
-                                           scrRect.width + 2*half, mInClientHintBorder );
+        mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y - half,
+                                scrRect.width + 2*half, mInClientHintBorder );
 
-               mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y + scrRect.height - half,
-                                           scrRect.width + 2*half, mInClientHintBorder );
+        mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y + scrRect.height - half,
+                                scrRect.width + 2*half, mInClientHintBorder );
 
-               mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y + half - 1,
-                                           mInClientHintBorder, scrRect.height - 2*half + 2);
+        mpScrDc->DrawRectangle( scrRect.x - half, scrRect.y + half - 1,
+                                mInClientHintBorder, scrRect.height - 2*half + 2);
 
-               mpScrDc->DrawRectangle( scrRect.x + scrRect.width - half,
-                                                               scrRect.y + half - 1,
-                                           mInClientHintBorder, scrRect.height - 2*half + 2);
+        mpScrDc->DrawRectangle( scrRect.x + scrRect.width - half,
+                                scrRect.y + half - 1,
+                                mInClientHintBorder, scrRect.height - 2*half + 2);
 
-               mpScrDc->SetBrush( wxNullBrush );
-       }
-       else
-       {
-               // otherwise draw 1-pixel thin borders
+        mpScrDc->SetBrush( wxNullBrush );
+    }
+    else
+    {
+        // otherwise draw 1-pixel thin borders
 
-               mpScrDc->SetPen( mpLayout->mBlackPen );
+        mpScrDc->SetPen( mpLayout->mBlackPen );
 
-               mpScrDc->DrawLine( scrRect.x, scrRect.y, 
-                                                  scrRect.x + scrRect.width, scrRect.y );
+        mpScrDc->DrawLine( scrRect.x, scrRect.y, 
+                           scrRect.x + scrRect.width, scrRect.y );
 
-               mpScrDc->DrawLine( scrRect.x, scrRect.y + 1, 
-                                                  scrRect.x, scrRect.y + scrRect.height );
+        mpScrDc->DrawLine( scrRect.x, scrRect.y + 1, 
+                           scrRect.x, scrRect.y + scrRect.height );
 
-               mpScrDc->DrawLine( scrRect.x+1, scrRect.y + scrRect.height, 
-                                                  scrRect.x + scrRect.width, scrRect.y + scrRect.height );
+        mpScrDc->DrawLine( scrRect.x+1, scrRect.y + scrRect.height, 
+                           scrRect.x + scrRect.width, scrRect.y + scrRect.height );
 
-               mpScrDc->DrawLine( scrRect.x + scrRect.width , scrRect.y, 
-                                                  scrRect.x + scrRect.width, scrRect.y + scrRect.height + 1);
-       }
+        mpScrDc->DrawLine( scrRect.x + scrRect.width , scrRect.y, 
+                           scrRect.x + scrRect.width, scrRect.y + scrRect.height + 1);
+    }
 
-       mpScrDc->SetLogicalFunction( prevLF );
+    mpScrDc->SetLogicalFunction( prevLF );
 }
 
 void cbHintAnimationPlugin::DrawHintRect ( wxRect& rect, bool isInClientRect)
 {
-       DoDrawHintRect( rect, isInClientRect ); 
+    DoDrawHintRect( rect, isInClientRect );    
 }
 
 void cbHintAnimationPlugin::EraseHintRect( wxRect& rect, bool isInClientRect)
 {
-       DoDrawHintRect( rect, isInClientRect ); 
+    DoDrawHintRect( rect, isInClientRect );    
 }
 
 void cbHintAnimationPlugin::FinishTracking()
 {
-       wxScreenDC::EndDrawingOnTop();
+    wxScreenDC::EndDrawingOnTop();
 
-       delete mpScrDc;
+    delete mpScrDc;
 
-       mpScrDc = NULL;
+    mpScrDc = NULL;
 }
 
 void cbHintAnimationPlugin::RectToScr( wxRect& frameRect, wxRect& scrRect )
 {
-       scrRect = frameRect;
+    scrRect = frameRect;
 
-       int x = frameRect.x, y = frameRect.y;
+    int x = frameRect.x, y = frameRect.y;
 
-       mpLayout->GetParentFrame().ClientToScreen( &x, &y );
+    mpLayout->GetParentFrame().ClientToScreen( &x, &y );
 
-       scrRect.x = x;
-       scrRect.y = y;
+    scrRect.x = x;
+    scrRect.y = y;
 }
 
 /***** Implementation for class cbHintAnimTimer *****/
@@ -260,138 +260,138 @@ void cbHintAnimationPlugin::RectToScr( wxRect& frameRect, wxRect& scrRect )
 cbHintAnimTimer::cbHintAnimTimer(void)
 {
 #ifdef __WINDOWS__
-       mLock = 0L;
+    mLock = 0L;
 #endif
 
-       mPrevMorphed.x = POS_UNDEFINED;
+    mPrevMorphed.x = POS_UNDEFINED;
 }
 
 void cbHintAnimTimer::MorphPoint( wxPoint& origin, MorphInfoT& info, wxPoint& point )
 {
-       // simulate lienar movement (FOR NOW:: without acceleration)
+    // simulate lienar movement (FOR NOW:: without acceleration)
 
-       double k;
-       
-       if ( mpPl->mAccelerationOn )
-               
-               k = double( mCurIter*mCurIter ) / 
-                   double( (mpPl->mMaxFrames - 1)*(mpPl->mMaxFrames - 1) );
-       else
-               k = double( mCurIter ) / double( mpPl->mMaxFrames - 1 );
+    double k;
+    
+    if ( mpPl->mAccelerationOn )
+        
+        k = double( mCurIter*mCurIter ) / 
+            double( (mpPl->mMaxFrames - 1)*(mpPl->mMaxFrames - 1) );
+    else
+        k = double( mCurIter ) / double( mpPl->mMaxFrames - 1 );
 
-       point.x = int ( double ( info.mFrom.x + double (info.mTill.x - info.mFrom.x) * k ) );
+    point.x = int ( double ( info.mFrom.x + double (info.mTill.x - info.mFrom.x) * k ) );
 
-       point.y = int ( double ( info.mFrom.y + double (info.mTill.y - info.mFrom.y) * k ) );
+    point.y = int ( double ( info.mFrom.y + double (info.mTill.y - info.mFrom.y) * k ) );
 
-       point.x += origin.x;
-       point.y += origin.y;
+    point.x += origin.x;
+    point.y += origin.y;
 }
 
 void cbHintAnimTimer::Notify(void)
 {
-       // FIXME:: "clean" implementation should use mutex to sync
-       //         between GUI and animation threads
+    // FIXME:: "clean" implementation should use mutex to sync
+    //         between GUI and animation threads
 
-       if ( mpPl->mStopPending )
-       {
-               Stop(); // top timer
+    if ( mpPl->mStopPending )
+    {
+        Stop(); // top timer
 
-               mpPl->FinishTracking();
+        mpPl->FinishTracking();
 
-               mpPl->mStopPending = FALSE;
-               mpPl->mpAnimTimer  = NULL;
-               mpPl->mAnimStarted = FALSE;
+        mpPl->mStopPending = FALSE;
+        mpPl->mpAnimTimer  = NULL;
+        mpPl->mAnimStarted = FALSE;
 
-               mPrevMorphed.x = POS_UNDEFINED;
+        mPrevMorphed.x = POS_UNDEFINED;
 
-               delete this;
+        delete this;
 
-               return;
-       }
+        return;
+    }
 
-       wxPoint origin( mpPl->mCurRect.x, mpPl->mCurRect.y );
+    wxPoint origin( mpPl->mCurRect.x, mpPl->mCurRect.y );
 
-       wxPoint curUpper, curLower;
+    wxPoint curUpper, curLower;
 
-       MorphPoint( origin, mUpperLeft,  curUpper  );
-       MorphPoint( origin, mLowerRight, curLower );
+    MorphPoint( origin, mUpperLeft,  curUpper  );
+    MorphPoint( origin, mLowerRight, curLower );
 
-       if ( mPrevMorphed.x != POS_UNDEFINED )
+    if ( mPrevMorphed.x != POS_UNDEFINED )
 
-               // erase previous rect
-               mpPl->DoDrawHintRect( mPrevMorphed, mpPl->mPrevInClient );
+        // erase previous rect
+        mpPl->DoDrawHintRect( mPrevMorphed, mpPl->mPrevInClient );
 
-       wxRect morphed( curUpper.x,  curUpper.y,
-                               curLower.x - curUpper.x,
-                                       curLower.y - curUpper.y );
+    wxRect morphed( curUpper.x,  curUpper.y,
+                    curLower.x - curUpper.x,
+                    curLower.y - curUpper.y );
 
-       // draw rect of current iteration
-       mpPl->DoDrawHintRect( morphed, 
-                                                 ( mCurIter != mpPl->mMaxFrames - 1 ) 
-                                                 ? mpPl->mPrevInClient : mpPl->mCurInClient );
+    // draw rect of current iteration
+    mpPl->DoDrawHintRect( morphed, 
+                          ( mCurIter != mpPl->mMaxFrames - 1 ) 
+                          ? mpPl->mPrevInClient : mpPl->mCurInClient );
 
-       mPrevMorphed = morphed;
+    mPrevMorphed = morphed;
 
-       if ( mCurIter == mpPl->mMaxFrames - 1 ) 
-       {
-               Stop(); // top timer
-               
-               mpPl->FinishTracking();
-               mpPl->mpAnimTimer  = NULL;
-               mpPl->mAnimStarted = FALSE;
+    if ( mCurIter == mpPl->mMaxFrames - 1 ) 
+    {
+        Stop(); // top timer
+        
+        mpPl->FinishTracking();
+        mpPl->mpAnimTimer  = NULL;
+        mpPl->mAnimStarted = FALSE;
 
-               mPrevMorphed.x = POS_UNDEFINED;
+        mPrevMorphed.x = POS_UNDEFINED;
 
-               delete this;
-       }
-       else
-               ++mCurIter;
+        delete this;
+    }
+    else
+        ++mCurIter;
 }
 
 bool cbHintAnimTimer::Init( cbHintAnimationPlugin* pAnimPl, bool reinit )
 {
 
-       mpPl = pAnimPl;
+    mpPl = pAnimPl;
 
-       // morph-points are set up relatively to the upper-left corner
-       // of the current hint-rectangle
+    // morph-points are set up relatively to the upper-left corner
+    // of the current hint-rectangle
 
-       if ( !reinit )
-       {
-               mUpperLeft.mFrom.x = mpPl->mPrevRect.x - mpPl->mCurRect.x;
-               mUpperLeft.mFrom.y = mpPl->mPrevRect.y - mpPl->mCurRect.y;
+    if ( !reinit )
+    {
+        mUpperLeft.mFrom.x = mpPl->mPrevRect.x - mpPl->mCurRect.x;
+        mUpperLeft.mFrom.y = mpPl->mPrevRect.y - mpPl->mCurRect.y;
 
-               mLowerRight.mFrom.x = ( mUpperLeft.mFrom.x + mpPl->mPrevRect.width  );
-               mLowerRight.mFrom.y = ( mUpperLeft.mFrom.y + mpPl->mPrevRect.height );
-       }
-       else
-       {
-               wxPoint origin( mpPl->mPrevRect.x, mpPl->mPrevRect.y );
+        mLowerRight.mFrom.x = ( mUpperLeft.mFrom.x + mpPl->mPrevRect.width  );
+        mLowerRight.mFrom.y = ( mUpperLeft.mFrom.y + mpPl->mPrevRect.height );
+    }
+    else
+    {
+        wxPoint origin( mpPl->mPrevRect.x, mpPl->mPrevRect.y );
 
-               wxPoint curUpper, curLower;
+        wxPoint curUpper, curLower;
 
-               MorphPoint( origin, mUpperLeft,  curUpper  );
-               MorphPoint( origin, mLowerRight, curLower );
+        MorphPoint( origin, mUpperLeft,  curUpper  );
+        MorphPoint( origin, mLowerRight, curLower );
 
-               mUpperLeft.mFrom.x = curUpper.x - mpPl->mCurRect.x;
-               mUpperLeft.mFrom.y = curUpper.y - mpPl->mCurRect.y;
+        mUpperLeft.mFrom.x = curUpper.x - mpPl->mCurRect.x;
+        mUpperLeft.mFrom.y = curUpper.y - mpPl->mCurRect.y;
 
-               mLowerRight.mFrom.x = ( mUpperLeft.mFrom.x + curLower.x - curUpper.x );
-               mLowerRight.mFrom.y = ( mUpperLeft.mFrom.y + curLower.y - curUpper.y );
-       }
+        mLowerRight.mFrom.x = ( mUpperLeft.mFrom.x + curLower.x - curUpper.x );
+        mLowerRight.mFrom.y = ( mUpperLeft.mFrom.y + curLower.y - curUpper.y );
+    }
 
-       mUpperLeft.mTill.x = 0;
-       mUpperLeft.mTill.y = 0;
+    mUpperLeft.mTill.x = 0;
+    mUpperLeft.mTill.y = 0;
 
-       mLowerRight.mTill.x = mpPl->mCurRect.width;
-       mLowerRight.mTill.y = mpPl->mCurRect.height;
+    mLowerRight.mTill.x = mpPl->mCurRect.width;
+    mLowerRight.mTill.y = mpPl->mCurRect.height;
 
-       mCurIter = 1;
-       
-       if ( !reinit )
+    mCurIter = 1;
+    
+    if ( !reinit )
 
-               Start( mpPl->mMorphDelay );
+        Start( mpPl->mMorphDelay );
 
-       return TRUE;
+    return TRUE;
 }
 
index 63adb414a0193a2125b9b7b7711486044c98293c..968302b68f585333b625b2ea0792b7143b33da6f 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        newbmpbtn.cpp
+// Purpose:     wxNewBitmapButton enhanced bitmap button class.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     ??/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -142,7 +142,7 @@ static void gray_out_pixmap( int* src, int* dest, int width, int height )
     } while (1);
 }
 
-// alg. for making the image look "grayed" (e.g. disabled button)
+// algorithm for making the image look "grayed" (e.g. disabled button)
 // NOTE:: used GetPixel(), which is Windows-Only!
 
 void gray_out_image_on_dc( wxDC& dc, int width, int height )
@@ -198,7 +198,7 @@ void gray_out_image_on_dc( wxDC& dc, int width, int height )
 
 ///////////////////////////////
 
-/***** Impelementation for class wxNewBitmapButton *****/
+/***** Implementation for class wxNewBitmapButton *****/
 
 IMPLEMENT_DYNAMIC_CLASS(wxNewBitmapButton, wxPanel)
 
@@ -382,7 +382,7 @@ void wxNewBitmapButton::RenderLabelImage( wxBitmap*& destBmp, wxBitmap* srcBmp,
 {
     if ( destBmp != 0 ) return;
 
-    // render lables on-demand
+    // render labels on-demand
 
     wxMemoryDC srcDc;
     srcDc.SelectObject( *srcBmp );
@@ -756,8 +756,7 @@ void wxNewBitmapButton::OnSize( wxSizeEvent& event )
 }
 
 void wxNewBitmapButton::Reshape( )
-{
-    
+{   
     bool wasCreated = mIsCreated;
     mIsCreated = TRUE;
 
index 7feaa75290b5b627b3895e024f3e355f14a95293..b5b06d3880ebb25c20d1a7004e2381e53872566b 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        panedrawpl.cpp
+// Purpose:     cbPaneDrawPlugin implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
 #define _IMG_D  0x00    // Note: modified from _D to _IMG_D, for consistency reasons.
 
 static const unsigned char _gCheckerImg[16] = { _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D,
-                                                                                           _IMG_A,_IMG_B,_IMG_C,_IMG_D
-                                                                                         };
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D,
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D,
+                                                _IMG_A,_IMG_B,_IMG_C,_IMG_D
+                                              };
 
 // FIXME:: The below code somehow doesn't work - cursors remain unchanged
-// Used: controlbar.cpp(1268): set_cursor_bits( _gHorizCursorImg, bits, 32, 16 );
-// Used: controlbar.cpp(1272): set_cursor_bits( _gVertCursorImg, bits, 32, 16 );
+// Used: controlbar.cpp(1268):    set_cursor_bits( _gHorizCursorImg, bits, 32, 16 );
+// Used: controlbar.cpp(1272):    set_cursor_bits( _gVertCursorImg, bits, 32, 16 );
 /*
 static void set_cursor_bits( const char** img, char* bits, int width, int height )
 {
-       for( int i = 0; i != (width*height)/8; ++i )
-               bits[i] = 0;
+    for( int i = 0; i != (width*height)/8; ++i )
+        bits[i] = 0;
 
-       for( int y = 0; y != height; ++y )
-       {
-               const char* row = img[0];
+    for( int y = 0; y != height; ++y )
+    {
+        const char* row = img[0];
 
-               for( int x = 0; x != width; ++x )
-               {
-                       int bitNo = y*width + x;
+        for( int x = 0; x != width; ++x )
+        {
+            int bitNo = y*width + x;
 
-                       char value = ( row[x] != '.' ) ? 1 : 0;
+            char value = ( row[x] != '.' ) ? 1 : 0;
 
-                       bits[ bitNo / sizeof(char) ] |= 
-                               ( ( bitNo %sizeof(char) ) << value );
-               }
+            bits[ bitNo / sizeof(char) ] |= 
+                ( ( bitNo %sizeof(char) ) << value );
+        }
 
-               ++img;
-       }
+        ++img;
+    }
 }
 */
 
@@ -78,1189 +78,1189 @@ IMPLEMENT_DYNAMIC_CLASS( cbPaneDrawPlugin, cbPluginBase )
 
 BEGIN_EVENT_TABLE( cbPaneDrawPlugin, cbPluginBase )
 
-       EVT_PL_LEFT_DOWN                   ( cbPaneDrawPlugin::OnLButtonDown         )
-       EVT_PL_LEFT_UP                     ( cbPaneDrawPlugin::OnLButtonUp                 )
-//     EVT_PL_LEFT_DCLICK                 ( cbPaneDrawPlugin::OnLDblClick                 )
-       EVT_PL_RIGHT_UP                    ( cbPaneDrawPlugin::OnRButtonUp                 )
-       EVT_PL_MOTION                      ( cbPaneDrawPlugin::OnMouseMove                 )
+    EVT_PL_LEFT_DOWN           ( cbPaneDrawPlugin::OnLButtonDown         )
+    EVT_PL_LEFT_UP               ( cbPaneDrawPlugin::OnLButtonUp           )
+//    EVT_PL_LEFT_DCLICK           ( cbPaneDrawPlugin::OnLDblClick           )
+    EVT_PL_RIGHT_UP               ( cbPaneDrawPlugin::OnRButtonUp           )
+    EVT_PL_MOTION               ( cbPaneDrawPlugin::OnMouseMove           )
 
 
-       EVT_PL_DRAW_PANE_BKGROUND  ( cbPaneDrawPlugin::OnDrawPaneBackground  )
-       EVT_PL_DRAW_PANE_DECOR     ( cbPaneDrawPlugin::OnDrawPaneDecorations )
+    EVT_PL_DRAW_PANE_BKGROUND  ( cbPaneDrawPlugin::OnDrawPaneBackground  )
+    EVT_PL_DRAW_PANE_DECOR     ( cbPaneDrawPlugin::OnDrawPaneDecorations )
 
-       EVT_PL_DRAW_ROW_DECOR      ( cbPaneDrawPlugin::OnDrawRowDecorations  )
-       EVT_PL_DRAW_ROW_HANDLES    ( cbPaneDrawPlugin::OnDrawRowHandles      )
-       EVT_PL_DRAW_ROW_BKGROUND   ( cbPaneDrawPlugin::OnDrawRowBackground   )
+    EVT_PL_DRAW_ROW_DECOR      ( cbPaneDrawPlugin::OnDrawRowDecorations  )
+    EVT_PL_DRAW_ROW_HANDLES    ( cbPaneDrawPlugin::OnDrawRowHandles      )
+    EVT_PL_DRAW_ROW_BKGROUND   ( cbPaneDrawPlugin::OnDrawRowBackground   )
 
-       EVT_PL_SIZE_BAR_WND                ( cbPaneDrawPlugin::OnSizeBarWindow       )
-       EVT_PL_DRAW_BAR_DECOR      ( cbPaneDrawPlugin::OnDrawBarDecorations  )
-       EVT_PL_DRAW_BAR_HANDLES    ( cbPaneDrawPlugin::OnDrawBarHandles      )
+    EVT_PL_SIZE_BAR_WND           ( cbPaneDrawPlugin::OnSizeBarWindow       )
+    EVT_PL_DRAW_BAR_DECOR       ( cbPaneDrawPlugin::OnDrawBarDecorations  )
+    EVT_PL_DRAW_BAR_HANDLES       ( cbPaneDrawPlugin::OnDrawBarHandles      )
 
-       EVT_PL_START_DRAW_IN_AREA  ( cbPaneDrawPlugin::OnStartDrawInArea     )
-       EVT_PL_FINISH_DRAW_IN_AREA ( cbPaneDrawPlugin::OnFinishDrawInArea    )
+    EVT_PL_START_DRAW_IN_AREA  ( cbPaneDrawPlugin::OnStartDrawInArea     )
+    EVT_PL_FINISH_DRAW_IN_AREA ( cbPaneDrawPlugin::OnFinishDrawInArea    )
 
 END_EVENT_TABLE()
 
 cbPaneDrawPlugin::cbPaneDrawPlugin(void)
 
-       : mResizeStarted          ( FALSE ),
+    : mResizeStarted          ( FALSE ),
 
-         mResizeCursorOn         ( FALSE ),
-         mpDraggedBar                    ( NULL  ),
-         mpResizedRow            ( NULL  ),
+      mResizeCursorOn         ( FALSE ),
+      mpDraggedBar              ( NULL  ),
+      mpResizedRow            ( NULL  ),
 
       mRowHandleHitted        ( FALSE ),
-         mIsUpperHandle          ( FALSE ),
-         mBarHandleHitted        ( FALSE ),
-         mIsLeftHandle           ( FALSE ),
-         mBarContentHitted       ( FALSE ),
+      mIsUpperHandle          ( FALSE ),
+      mBarHandleHitted        ( FALSE ),
+      mIsLeftHandle           ( FALSE ),
+      mBarContentHitted       ( FALSE ),
 
-         mpClntDc ( NULL ),
-         mpPane   ( NULL )
+      mpClntDc ( NULL ),
+      mpPane   ( NULL )
 {}
 
 cbPaneDrawPlugin::cbPaneDrawPlugin( wxFrameLayout* pPanel, int paneMask )
 
-       : cbPluginBase( pPanel, paneMask ),
-       
-         // bar-row resizing state varaibles
+    : cbPluginBase( pPanel, paneMask ),
+    
+      // bar-row resizing state varaibles
 
-         mResizeStarted          ( FALSE ),
+      mResizeStarted          ( FALSE ),
 
-         mResizeCursorOn         ( FALSE ),
-         mpDraggedBar                    ( NULL ),
-         mpResizedRow            ( NULL ),
+      mResizeCursorOn         ( FALSE ),
+      mpDraggedBar              ( NULL ),
+      mpResizedRow            ( NULL ),
 
-         mRowHandleHitted        ( FALSE ),
-         mIsUpperHandle          ( FALSE ),
-         mBarHandleHitted        ( FALSE ),
-         mIsLeftHandle           ( FALSE ),
-         mBarContentHitted       ( FALSE ),
+      mRowHandleHitted        ( FALSE ),
+      mIsUpperHandle          ( FALSE ),
+      mBarHandleHitted        ( FALSE ),
+      mIsLeftHandle           ( FALSE ),
+      mBarContentHitted       ( FALSE ),
 
-         mpClntDc ( NULL ),
-         mpPane   ( NULL )
+      mpClntDc ( NULL ),
+      mpPane   ( NULL )
 {}
 
 cbPaneDrawPlugin::~cbPaneDrawPlugin()
 {
-       // DBG::
-       wxASSERT( mpClntDc == NULL );
+    // DBG::
+    wxASSERT( mpClntDc == NULL );
 }
 
 void cbPaneDrawPlugin::DrawDraggedHandle( const wxPoint& pos, cbDockPane& pane )
 {
-       wxScreenDC dc;
-       int ofsX = 0;
-       int ofsY = 0;
+    wxScreenDC dc;
+    int ofsX = 0;
+    int ofsY = 0;
 
-       wxPoint fpos = pos;
-       pane.PaneToFrame( &fpos.x, &fpos.y );
+    wxPoint fpos = pos;
+    pane.PaneToFrame( &fpos.x, &fpos.y );
 
-       // short-cut
-       int resizeHndSize = pane.mProps.mResizeHandleSize;
+    // short-cut
+    int resizeHndSize = pane.mProps.mResizeHandleSize;
 
     // "Required for X to specify that
     // that we wish to draw on top of all windows
     // - and we optimise by specifying the area
     // for creating the overlap window." --J.S.
 
-       wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
+    wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
 
-       mpLayout->GetParentFrame().ClientToScreen( &ofsX, &ofsY );
+    mpLayout->GetParentFrame().ClientToScreen( &ofsX, &ofsY );
 
-       int prevLF = dc.GetLogicalFunction();
+    int prevLF = dc.GetLogicalFunction();
 
-       // BUG BUG BUG (wx):: somehow stippled brush works only  
-       //                                        when the bitmap created on stack, not
-       //                                        as a member of the class
+    // BUG BUG BUG (wx):: somehow stippled brush works only  
+    //                      when the bitmap created on stack, not
+    //                      as a member of the class
 
-       wxBitmap checker( (const char*)_gCheckerImg, 8,8 );
+    wxBitmap checker( (const char*)_gCheckerImg, 8,8 );
 
-       wxBrush checkerBrush( checker );
+    wxBrush checkerBrush( checker );
 
-       dc.SetPen( mpLayout->mNullPen );
-       dc.SetBrush( checkerBrush );
-       dc.SetLogicalFunction( wxXOR );
+    dc.SetPen( mpLayout->mNullPen );
+    dc.SetBrush( checkerBrush );
+    dc.SetLogicalFunction( wxXOR );
 
-       if ( mHandleIsVertical )
-       {
-               int delta = pos.x - mDragOrigin.x;
+    if ( mHandleIsVertical )
+    {
+        int delta = pos.x - mDragOrigin.x;
 
-               if ( !pane.IsHorizontal() )
+        if ( !pane.IsHorizontal() )
 
-                       delta = pos.y - mDragOrigin.y;
+            delta = pos.y - mDragOrigin.y;
 
-               int realHndOfs;
-               realHndOfs = pane.mBoundsInParent.x + pane.mLeftMargin + mHandleOfs;
+        int realHndOfs;
+        realHndOfs = pane.mBoundsInParent.x + pane.mLeftMargin + mHandleOfs;
 
-               int newX = realHndOfs + delta;
+        int newX = realHndOfs + delta;
 
-               if ( newX + resizeHndSize > mHandleDragArea.x + mHandleDragArea.width )
+        if ( newX + resizeHndSize > mHandleDragArea.x + mHandleDragArea.width )
 
-                       newX = mHandleDragArea.x + mHandleDragArea.width  - 1;
+            newX = mHandleDragArea.x + mHandleDragArea.width  - 1;
 
-               if ( newX < mHandleDragArea.x ) 
+        if ( newX < mHandleDragArea.x ) 
 
-                       newX = mHandleDragArea.x;
+            newX = mHandleDragArea.x;
 
-               mDraggedDelta = newX - realHndOfs;
+        mDraggedDelta = newX - realHndOfs;
 
-               dc.DrawRectangle( newX + ofsX, mHandleDragArea.y + ofsY,
-                                     resizeHndSize + 1,
-                                                 mHandleDragArea.height+1 );
-       }
-       else
-       {
-               // otherwise, draw horizontal handle
+        dc.DrawRectangle( newX + ofsX, mHandleDragArea.y + ofsY,
+                          resizeHndSize + 1,
+                          mHandleDragArea.height+1 );
+    }
+    else
+    {
+        // otherwise, draw horizontal handle
 
-               int delta = pos.y - mDragOrigin.y;
+        int delta = pos.y - mDragOrigin.y;
 
-               if ( !pane.IsHorizontal() )
+        if ( !pane.IsHorizontal() )
 
-                       delta = pos.x - mDragOrigin.x;
+            delta = pos.x - mDragOrigin.x;
 
-               int realHndOfs;
-               realHndOfs = pane.mBoundsInParent.y + pane.mTopMargin + mHandleOfs;
+        int realHndOfs;
+        realHndOfs = pane.mBoundsInParent.y + pane.mTopMargin + mHandleOfs;
 
-               int newY = realHndOfs + delta;
+        int newY = realHndOfs + delta;
 
-               if ( newY + resizeHndSize > mHandleDragArea.y + mHandleDragArea.height )
+        if ( newY + resizeHndSize > mHandleDragArea.y + mHandleDragArea.height )
 
-                       newY = mHandleDragArea.y + mHandleDragArea.height - 1;
+            newY = mHandleDragArea.y + mHandleDragArea.height - 1;
 
-               if ( newY < mHandleDragArea.y ) 
+        if ( newY < mHandleDragArea.y ) 
 
-                       newY = mHandleDragArea.y;
+            newY = mHandleDragArea.y;
 
-               mDraggedDelta = newY - realHndOfs;
+        mDraggedDelta = newY - realHndOfs;
 
-               dc.DrawRectangle( mHandleDragArea.x + ofsX, newY + ofsY,
-                                     mHandleDragArea.width + 1,
-                                                 resizeHndSize + 1 );
-       }
+        dc.DrawRectangle( mHandleDragArea.x + ofsX, newY + ofsY,
+                          mHandleDragArea.width + 1,
+                          resizeHndSize + 1 );
+    }
 
-       dc.SetLogicalFunction( prevLF );
+    dc.SetLogicalFunction( prevLF );
 
     // "End drawing on top (frees the window used for drawing
     // over the screen)" --J.S.
-       wxScreenDC::EndDrawingOnTop();
+    wxScreenDC::EndDrawingOnTop();
 }
 
 void cbPaneDrawPlugin::OnMouseMove( cbMotionEvent& event ) 
 {
-       if ( !mResizeStarted )
-       {
-               // if nothing is started, do hit-tests
+    if ( !mResizeStarted )
+    {
+        // if nothing is started, do hit-tests
 
-               bool prevWasRowHandle = mRowHandleHitted;
+        bool prevWasRowHandle = mRowHandleHitted;
 
-               mBarContentHitted = FALSE;
-               mBarHandleHitted  = FALSE;
-               mRowHandleHitted  = FALSE;
+        mBarContentHitted = FALSE;
+        mBarHandleHitted  = FALSE;
+        mRowHandleHitted  = FALSE;
 
-               int testResult =  
-                       event.mpPane->HitTestPaneItems( event.mPos,         // in pane's coordiantes
-                                                                                   &mpResizedRow,
-                                                                                   &mpDraggedBar );
+        int testResult =  
+            event.mpPane->HitTestPaneItems( event.mPos,        // in pane's coordiantes
+                                            &mpResizedRow,
+                                            &mpDraggedBar );
 
-               if ( testResult != CB_NO_ITEMS_HITTED )
-               {
-                       if ( testResult == CB_BAR_CONTENT_HITTED )
-                       {
-                               // restore cursor, if non of the handles were hit
-                               if ( mResizeCursorOn )
-                               {
-                                       // remove resizing hints
+        if ( testResult != CB_NO_ITEMS_HITTED )
+        {
+            if ( testResult == CB_BAR_CONTENT_HITTED )
+            {
+                // restore cursor, if non of the handles were hit
+                if ( mResizeCursorOn )
+                {
+                    // remove resizing hints
 
-                                       mpLayout->ReleaseEventsFromPane( event.mpPane );
-                                       mpLayout->ReleaseEventsFromPlugin( this );
-       
-                                       mResizeCursorOn = FALSE;
+                    mpLayout->ReleaseEventsFromPane( event.mpPane );
+                    mpLayout->ReleaseEventsFromPlugin( this );
+    
+                    mResizeCursorOn = FALSE;
 
-                                       mBarContentHitted = TRUE;
+                    mBarContentHitted = TRUE;
 
-                                       mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
-                               }
+                    mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
+                }
 
-                               // TBD:: fire something like "mouse-over-bar" event
+                // TBD:: fire something like "mouse-over-bar" event
 
-                               event.Skip(); // pass event to the next handler in the chain
-                               return;
-                       }
+                event.Skip(); // pass event to the next handler in the chain
+                return;
+            }
 
-                       wxCursor* pCurs = NULL;
+            wxCursor* pCurs = NULL;
 
-                       if ( testResult == CB_UPPER_ROW_HANDLE_HITTED ||
-                                testResult == CB_LOWER_ROW_HANDLE_HITTED)
-                       {
-                               if ( event.mpPane->IsHorizontal() )
+            if ( testResult == CB_UPPER_ROW_HANDLE_HITTED ||
+                 testResult == CB_LOWER_ROW_HANDLE_HITTED)
+            {
+                if ( event.mpPane->IsHorizontal() )
 
-                                       pCurs = mpLayout->mpVertCursor;
-                               else
-                                       pCurs = mpLayout->mpHorizCursor;
+                    pCurs = mpLayout->mpVertCursor;
+                else
+                    pCurs = mpLayout->mpHorizCursor;
 
-                               mRowHandleHitted = TRUE;
-                               mIsUpperHandle    = ( testResult == CB_UPPER_ROW_HANDLE_HITTED );
-                       }
-                       else
-                       {
-                               // otherwise, if inter-bar handle was hitted
+                mRowHandleHitted = TRUE;
+                mIsUpperHandle    = ( testResult == CB_UPPER_ROW_HANDLE_HITTED );
+            }
+            else
+            {
+                // otherwise, if inter-bar handle was hitted
 
-                               if ( event.mpPane->IsHorizontal() )
+                if ( event.mpPane->IsHorizontal() )
 
-                                       pCurs = mpLayout->mpHorizCursor;
-                               else
-                                       pCurs = mpLayout->mpVertCursor;
+                    pCurs = mpLayout->mpHorizCursor;
+                else
+                    pCurs = mpLayout->mpVertCursor;
 
-                               mBarHandleHitted = TRUE;
-                               mIsLeftHandle    = ( testResult == CB_LEFT_BAR_HANDLE_HITTED );
-                       }
+                mBarHandleHitted = TRUE;
+                mIsLeftHandle    = ( testResult == CB_LEFT_BAR_HANDLE_HITTED );
+            }
 
-                       // avoid setting the same cursor twice
+            // avoid setting the same cursor twice
 
-                       if ( !mResizeCursorOn || prevWasRowHandle != mRowHandleHitted )
-                       {
-                               if ( !mResizeCursorOn )
-                               {
-                                       // caputre if not captured yet
-                                       mpLayout->CaptureEventsForPane( event.mpPane );
-                                       mpLayout->CaptureEventsForPlugin( this );
-                               }
+            if ( !mResizeCursorOn || prevWasRowHandle != mRowHandleHitted )
+            {
+                if ( !mResizeCursorOn )
+                {
+                    // caputre if not captured yet
+                    mpLayout->CaptureEventsForPane( event.mpPane );
+                    mpLayout->CaptureEventsForPlugin( this );
+                }
 
-                               mpLayout->GetParentFrame().SetCursor( *pCurs );
-                       }
+                mpLayout->GetParentFrame().SetCursor( *pCurs );
+            }
 
-                       mResizeCursorOn = TRUE;
+            mResizeCursorOn = TRUE;
 
-                       // handled is being dragged now, thus event is "eaten" by this plugin
+            // handled is being dragged now, thus event is "eaten" by this plugin
 
-                       return;
+            return;
 
-               } // end of if (HitTestBarHandles())
+        } // end of if (HitTestBarHandles())
 
-               // restore cursor, if non of the handles were hit
-               if ( mResizeCursorOn )
-               {
-                       mpLayout->ReleaseEventsFromPane( event.mpPane );
-                       mpLayout->ReleaseEventsFromPlugin( this );
+        // restore cursor, if non of the handles were hit
+        if ( mResizeCursorOn )
+        {
+            mpLayout->ReleaseEventsFromPane( event.mpPane );
+            mpLayout->ReleaseEventsFromPlugin( this );
 
-                       mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
+            mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
 
-                       mResizeCursorOn = FALSE;
-               }
+            mResizeCursorOn = FALSE;
+        }
 
-               event.Skip(); // pass event to the next plugin
-       }
+        event.Skip(); // pass event to the next plugin
+    }
 
-       // othewise series of actions, if something has already started
+    // othewise series of actions, if something has already started
 
-       else
-       if ( mResizeStarted )
-       {
-               // apply xor-mask twice 
-               DrawDraggedHandle( mPrevPos,   *event.mpPane );
+    else
+    if ( mResizeStarted )
+    {
+        // apply xor-mask twice 
+        DrawDraggedHandle( mPrevPos,   *event.mpPane );
 
-               // draw handle in the new position
-               DrawDraggedHandle( event.mPos, *event.mpPane );
-               mPrevPos = event.mPos;
+        // draw handle in the new position
+        DrawDraggedHandle( event.mPos, *event.mpPane );
+        mPrevPos = event.mPos;
 
-               // handled is dragged, thus event is "eaten" by this plugin
-       }
-       else
-               event.Skip(); // pass event to the next plugin
+        // handled is dragged, thus event is "eaten" by this plugin
+    }
+    else
+        event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnLDblClick( cbLeftDClickEvent& event )
 {
-       if ( !mResizeCursorOn )
-       {
-               cbBarInfo* pBarToFloat;
-
-               if ( event.mpPane->HitTestPaneItems( event.mPos,          // in pane's coordiantes
-                                                                                    &mpResizedRow,
-                                                                                        &pBarToFloat ) == CB_BAR_CONTENT_HITTED
-                  )
-                       {
-                       return;
-                       }
-
-               event.Skip();
-       }
+    if ( !mResizeCursorOn )
+    {
+        cbBarInfo* pBarToFloat;
+
+        if ( event.mpPane->HitTestPaneItems( event.mPos,       // in pane's coordiantes
+                                             &mpResizedRow,
+                                             &pBarToFloat ) == CB_BAR_CONTENT_HITTED
+           )
+            {
+            return;
+            }
+
+        event.Skip();
+    }
 }
 
 void cbPaneDrawPlugin::OnLButtonDown( cbLeftDownEvent& event ) 
 {
-       wxASSERT( !mResizeStarted );
+    wxASSERT( !mResizeStarted );
 
-       if ( mResizeCursorOn )
-       {
-               mResizeStarted = TRUE;
-               mDragOrigin    = event.mPos;
-               
-               // setup constraints for the dragging handle
+    if ( mResizeCursorOn )
+    {
+        mResizeStarted = TRUE;
+        mDragOrigin    = event.mPos;
+        
+        // setup constraints for the dragging handle
 
-               int from, till;
-               mHandleOfs        = 0;
-               mHandleIsVertical = FALSE;
+        int from, till;
+        mHandleOfs        = 0;
+        mHandleIsVertical = FALSE;
 
-               if ( mRowHandleHitted )
+        if ( mRowHandleHitted )
 
-                       event.mpPane->GetRowResizeRange( mpResizedRow, &from, &till, mIsUpperHandle );
-               else
-                       // otherwise if bar handle was hitted
-                       event.mpPane->GetBarResizeRange( mpDraggedBar, &from, &till, mIsLeftHandle );
-                
-               if ( mRowHandleHitted )
-               {
-                       mHandleIsVertical = ( event.mpPane->IsHorizontal() ) ? FALSE : TRUE;
+            event.mpPane->GetRowResizeRange( mpResizedRow, &from, &till, mIsUpperHandle );
+        else
+            // otherwise if bar handle was hitted
+            event.mpPane->GetBarResizeRange( mpDraggedBar, &from, &till, mIsLeftHandle );
+         
+        if ( mRowHandleHitted )
+        {
+            mHandleIsVertical = ( event.mpPane->IsHorizontal() ) ? FALSE : TRUE;
 
-                       mHandleDragArea.x      = 0;
-                       mHandleDragArea.width  = event.mpPane->mPaneWidth;
+            mHandleDragArea.x      = 0;
+            mHandleDragArea.width  = event.mpPane->mPaneWidth;
 
-                       mHandleDragArea.y      = from;
-                       mHandleDragArea.height = till - from;
+            mHandleDragArea.y      = from;
+            mHandleDragArea.height = till - from;
 
-                       if ( mIsUpperHandle )
+            if ( mIsUpperHandle )
 
-                               mHandleOfs = mpResizedRow->mRowY;
-                       else
-                               mHandleOfs = mpResizedRow->mRowY + 
-                                            mpResizedRow->mRowHeight -
-                                                        event.mpPane->mProps.mResizeHandleSize;
-               }
-               else
-               {
-                       // otehrwise if bar handle dragged
+                mHandleOfs = mpResizedRow->mRowY;
+            else
+                mHandleOfs = mpResizedRow->mRowY + 
+                             mpResizedRow->mRowHeight -
+                             event.mpPane->mProps.mResizeHandleSize;
+        }
+        else
+        {
+            // otehrwise if bar handle dragged
 
-//                     cbRowInfo& rowInfo     = *mpDraggedBar->mpRow;
-                       wxRect& bounds         = mpDraggedBar->mBounds;
+//            cbRowInfo& rowInfo     = *mpDraggedBar->mpRow;
+            wxRect& bounds         = mpDraggedBar->mBounds;
 
-                       mHandleIsVertical = ( event.mpPane->IsHorizontal() ) ? TRUE : FALSE;
+            mHandleIsVertical = ( event.mpPane->IsHorizontal() ) ? TRUE : FALSE;
 
-                       mHandleDragArea.x      = from;
-                       mHandleDragArea.width  = till - from;
+            mHandleDragArea.x      = from;
+            mHandleDragArea.width  = till - from;
 
 
-                       mHandleDragArea.y      = bounds.y;
-                       mHandleDragArea.height = bounds.height;
+            mHandleDragArea.y      = bounds.y;
+            mHandleDragArea.height = bounds.height;
 
-                       // left-side-handle mBounds
-                       if ( mIsLeftHandle )
+            // left-side-handle mBounds
+            if ( mIsLeftHandle )
 
-                               mHandleOfs = bounds.x;
-                       else
-                               mHandleOfs = bounds.x + 
-                                                        bounds.width - event.mpPane->mProps.mResizeHandleSize;
+                mHandleOfs = bounds.x;
+            else
+                mHandleOfs = bounds.x + 
+                             bounds.width - event.mpPane->mProps.mResizeHandleSize;
 
-               }
+        }
 
-               event.mpPane->PaneToFrame( &mHandleDragArea );
-               DrawDraggedHandle(mDragOrigin, *event.mpPane);
+        event.mpPane->PaneToFrame( &mHandleDragArea );
+        DrawDraggedHandle(mDragOrigin, *event.mpPane);
 
-               mPrevPos = mDragOrigin;
+        mPrevPos = mDragOrigin;
 
-               return;
-               // handled is dragged, thus event is "eaten" by this plugin
-       }
-       else
-       {
-               cbBarInfo* pDraggedBar;
+        return;
+        // handled is dragged, thus event is "eaten" by this plugin
+    }
+    else
+    {
+        cbBarInfo* pDraggedBar;
 
-               if ( event.mpPane->HitTestPaneItems( event.mPos,          // in pane's coordiantes
-                                                                                    &mpResizedRow,
-                                                                                        &pDraggedBar ) == CB_BAR_CONTENT_HITTED 
-                  )
-               {
-                       int x = event.mPos.x,
-                           y = event.mPos.y;
+        if ( event.mpPane->HitTestPaneItems( event.mPos,       // in pane's coordiantes
+                                             &mpResizedRow,
+                                             &pDraggedBar ) == CB_BAR_CONTENT_HITTED 
+           )
+        {
+            int x = event.mPos.x,
+                y = event.mPos.y;
 
-                       event.mpPane->PaneToFrame( &x, &y );
+            event.mpPane->PaneToFrame( &x, &y );
 
-                       cbStartBarDraggingEvent dragEvt( pDraggedBar, wxPoint(x,y), event.mpPane );
+            cbStartBarDraggingEvent dragEvt( pDraggedBar, wxPoint(x,y), event.mpPane );
 
-                       mpLayout->FirePluginEvent( dragEvt );
+            mpLayout->FirePluginEvent( dragEvt );
 
-                       return; // event is "eaten" by this plugin
-               }
-       }
+            return; // event is "eaten" by this plugin
+        }
+    }
 
-       event.Skip(); // pass event to the next plugin in the chain
+    event.Skip(); // pass event to the next plugin in the chain
 }
 
 void cbPaneDrawPlugin::OnLButtonUp( cbLeftUpEvent& event ) 
 {
-       if ( mResizeStarted )
-       {
-               DrawDraggedHandle( event.mPos, *event.mpPane );
+    if ( mResizeStarted )
+    {
+        DrawDraggedHandle( event.mPos, *event.mpPane );
 
-               mResizeStarted  = FALSE;
-               mResizeCursorOn = FALSE;
+        mResizeStarted  = FALSE;
+        mResizeCursorOn = FALSE;
 
-               mpLayout->ReleaseEventsFromPane( event.mpPane );
-               mpLayout->ReleaseEventsFromPlugin( this );
+        mpLayout->ReleaseEventsFromPane( event.mpPane );
+        mpLayout->ReleaseEventsFromPlugin( this );
 
-               mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
+        mpLayout->GetParentFrame().SetCursor( *mpLayout->mpNormalCursor );
 
-               if ( mRowHandleHitted )
-               {
-                       event.mpPane->ResizeRow( mpResizedRow, 
-                                                                        mDraggedDelta,
-                                                                        mIsUpperHandle );
-               }
-               else
-               {
-                       event.mpPane->ResizeBar( mpDraggedBar, 
-                                                                    mDraggedDelta,
-                                                                        mIsLeftHandle );
-               }
+        if ( mRowHandleHitted )
+        {
+            event.mpPane->ResizeRow( mpResizedRow, 
+                                     mDraggedDelta,
+                                     mIsUpperHandle );
+        }
+        else
+        {
+            event.mpPane->ResizeBar( mpDraggedBar, 
+                                     mDraggedDelta,
+                                     mIsLeftHandle );
+        }
 
-               mpDraggedBar = NULL;
-               mpResizedRow = NULL;
+        mpDraggedBar = NULL;
+        mpResizedRow = NULL;
 
-               // handled dragging action was finished by this mouse-up, 
-               // thus event is "eaten" by this plugin
+        // handled dragging action was finished by this mouse-up, 
+        // thus event is "eaten" by this plugin
 
-               return;
-       }
+        return;
+    }
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnRButtonUp( cbRightUpEvent&   event )
 {
-       wxPoint fpos = event.mPos;
-       event.mpPane->PaneToFrame( &fpos.x, &fpos.y );
+    wxPoint fpos = event.mPos;
+    event.mpPane->PaneToFrame( &fpos.x, &fpos.y );
 
-       cbBarInfo* pDraggedBar;
+    cbBarInfo* pDraggedBar;
 
-       // user clicks inside the bar contnet, fire bar-customization event
+    // user clicks inside the bar contnet, fire bar-customization event
 
-       if ( event.mpPane->HitTestPaneItems( event.mPos,          // in pane's coordiantes
-                                                                                &mpResizedRow,
-                                                                                &pDraggedBar  ) == CB_BAR_CONTENT_HITTED
-          )
-       {
-               cbCustomizeBarEvent cbEvt( pDraggedBar, fpos, event.mpPane );
+    if ( event.mpPane->HitTestPaneItems( event.mPos,       // in pane's coordiantes
+                                         &mpResizedRow,
+                                         &pDraggedBar  ) == CB_BAR_CONTENT_HITTED
+       )
+    {
+        cbCustomizeBarEvent cbEvt( pDraggedBar, fpos, event.mpPane );
 
-               mpLayout->FirePluginEvent( cbEvt );
+        mpLayout->FirePluginEvent( cbEvt );
 
-               return; // event is "eaten" by this plugin
-       }
+        return; // event is "eaten" by this plugin
+    }
 
-       // otherwise fire whole-layout customization event
+    // otherwise fire whole-layout customization event
 
-       cbCustomizeLayoutEvent csEvt( fpos );
+    cbCustomizeLayoutEvent csEvt( fpos );
 
-       mpLayout->FirePluginEvent( csEvt );
+    mpLayout->FirePluginEvent( csEvt );
 
-       // event is "eaten" by this plugin
+    // event is "eaten" by this plugin
 }
 
 void cbPaneDrawPlugin::OnSizeBarWindow( cbSizeBarWndEvent& event ) 
 {
-       cbBarInfo& bar = *event.mpBar;
-       mpPane         = event.mpPane;
+    cbBarInfo& bar = *event.mpBar;
+    mpPane         = event.mpPane;
 
-       // it's possible that a bar does not have it's own window!
-       if ( !bar.mpBarWnd ) return;
+    // it's possible that a bar does not have it's own window!
+    if ( !bar.mpBarWnd ) return;
 
-       wxRect& bounds = event.mBoundsInParent;
+    wxRect& bounds = event.mBoundsInParent;
 
-       // check visibility
-       if ( bounds.height != 0 )
-       {
-               // size smaller than bounds, to leave space for shade lines
+    // check visibility
+    if ( bounds.height != 0 )
+    {
+        // size smaller than bounds, to leave space for shade lines
 
-               // FIXME:: +/- 1s
+        // FIXME:: +/- 1s
 
-               bar.mpBarWnd->wxWindow::SetSize( bounds.x      + 1 + bar.mDimInfo.mHorizGap,     
-                                                                                bounds.y      + 1 + bar.mDimInfo.mVertGap,
-                                                                                bounds.width  - 2 - bar.mDimInfo.mHorizGap*2,
-                                                                                bounds.height - 2 - bar.mDimInfo.mVertGap *2 , 
-                                                                                
-                                                                          );
+        bar.mpBarWnd->wxWindow::SetSize( bounds.x      + 1 + bar.mDimInfo.mHorizGap,     
+                                         bounds.y      + 1 + bar.mDimInfo.mVertGap,
+                                         bounds.width  - 2 - bar.mDimInfo.mHorizGap*2,
+                                         bounds.height - 2 - bar.mDimInfo.mVertGap *2 , 
+                                         0 
+                                       );
 
-               if ( !bar.mpBarWnd->IsShown() )
+        if ( !bar.mpBarWnd->IsShown() )
 
-                       bar.mpBarWnd->Show( TRUE );
-       }
-       else
-               // hide bar if not visible
-               bar.mpBarWnd->Show( FALSE );
+            bar.mpBarWnd->Show( TRUE );
+    }
+    else
+        // hide bar if not visible
+        bar.mpBarWnd->Show( FALSE );
 
-       event.Skip(); // pass event to the next plugin in the chain
+    event.Skip(); // pass event to the next plugin in the chain
 }
 
 void cbPaneDrawPlugin::OnDrawRowDecorations( cbDrawRowDecorEvent& event )
 {
-       DrawPaneShadeForRow( event.mpRow, *event.mpDc );
+    DrawPaneShadeForRow( event.mpRow, *event.mpDc );
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::DrawUpperRowHandle( cbRowInfo* pRow, wxDC& dc )
 {
-       wxRect& bounds = pRow->mBoundsInParent;
-
-       if ( mpPane->IsHorizontal() )
-       {
-                if ( pRow->mHasUpperHandle )
-               
-                       mpPane->DrawHorizHandle( dc, bounds.x, 
-                                                                        bounds.y-1, 
-                                                                        pRow->mRowWidth );
-       }
-       else
-       {
-               if ( pRow->mHasUpperHandle )
-
-                       mpPane->DrawVertHandle( dc, bounds.x-1, 
-                                                                       bounds.y, pRow->mRowWidth );
-       }
+    wxRect& bounds = pRow->mBoundsInParent;
+
+    if ( mpPane->IsHorizontal() )
+    {
+         if ( pRow->mHasUpperHandle )
+        
+            mpPane->DrawHorizHandle( dc, bounds.x, 
+                                     bounds.y-1, 
+                                      pRow->mRowWidth );
+    }
+    else
+    {
+        if ( pRow->mHasUpperHandle )
+
+            mpPane->DrawVertHandle( dc, bounds.x-1, 
+                                    bounds.y, pRow->mRowWidth );
+    }
 }
 
 void cbPaneDrawPlugin::DrawLowerRowHandle( cbRowInfo* pRow, wxDC& dc )
 {
-       wxRect& bounds = pRow->mBoundsInParent;
-
-       // check if iter-row handles present
-
-       if ( mpPane->IsHorizontal() )
-       {
-               if ( pRow->mHasLowerHandle )
-               
-                       mpPane->DrawHorizHandle( dc, bounds.x, bounds.y + bounds.height - mpPane->mProps.mResizeHandleSize - 1, 
-                                                                        pRow->mRowWidth );
-       }
-       else
-       {
-               if ( pRow->mHasLowerHandle )
-
-                       mpPane->DrawVertHandle( dc, bounds.x + bounds.width - mpPane->mProps.mResizeHandleSize - 1, 
-                                                                       bounds.y, pRow->mRowWidth );
-       }
+    wxRect& bounds = pRow->mBoundsInParent;
+
+    // check if iter-row handles present
+
+    if ( mpPane->IsHorizontal() )
+    {
+        if ( pRow->mHasLowerHandle )
+        
+            mpPane->DrawHorizHandle( dc, bounds.x, bounds.y + bounds.height - mpPane->mProps.mResizeHandleSize - 1, 
+                                      pRow->mRowWidth );
+    }
+    else
+    {
+        if ( pRow->mHasLowerHandle )
+
+            mpPane->DrawVertHandle( dc, bounds.x + bounds.width - mpPane->mProps.mResizeHandleSize - 1, 
+                                     bounds.y, pRow->mRowWidth );
+    }
 }
 
 void cbPaneDrawPlugin::OnDrawRowHandles( cbDrawRowHandlesEvent& event )
 {
-       // short-cuts
-       cbRowInfo* pRow = event.mpRow;
-       wxDC&   dc      = *event.mpDc;
-       mpPane          = event.mpPane;
+    // short-cuts
+    cbRowInfo* pRow = event.mpRow;
+    wxDC&   dc      = *event.mpDc;
+    mpPane          = event.mpPane;
 
-       // draw handles of surrounding rows first
+    // draw handles of surrounding rows first
 
-       if ( pRow->mpPrev && pRow->mpPrev->mHasLowerHandle )
+    if ( pRow->mpPrev && pRow->mpPrev->mHasLowerHandle )
 
-                       DrawLowerRowHandle( pRow->mpPrev, dc );
+            DrawLowerRowHandle( pRow->mpPrev, dc );
 
-       if ( pRow->mpNext && pRow->mpNext->mHasUpperHandle )
+    if ( pRow->mpNext && pRow->mpNext->mHasUpperHandle )
 
-               DrawUpperRowHandle( pRow->mpNext, dc );
+        DrawUpperRowHandle( pRow->mpNext, dc );
 
-       // draw handles of the given row
+    // draw handles of the given row
 
-       if ( pRow->mHasUpperHandle )
-       
-               DrawUpperRowHandle( pRow, dc );
+    if ( pRow->mHasUpperHandle )
+    
+        DrawUpperRowHandle( pRow, dc );
 
-       if ( pRow->mHasLowerHandle )
+    if ( pRow->mHasLowerHandle )
 
-               DrawLowerRowHandle( pRow, dc );
+        DrawLowerRowHandle( pRow, dc );
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnDrawPaneBackground ( cbDrawPaneBkGroundEvent& event )
 {
-       wxDC& dc = *event.mpDc;
-       mpPane   = event.mpPane;
+    wxDC& dc = *event.mpDc;
+    mpPane   = event.mpPane;
 
-       // FOR NOW:: hard-coded
-       wxBrush bkBrush( mpLayout->mBorderPen.GetColour(), wxSOLID );
+    // FOR NOW:: hard-coded
+    wxBrush bkBrush( mpLayout->mBorderPen.GetColour(), wxSOLID );
 
-       dc.SetBrush( bkBrush );
-       dc.SetPen( mpLayout->mNullPen );
+    dc.SetBrush( bkBrush );
+    dc.SetPen( mpLayout->mNullPen );
 
-       wxRect& bounds = mpPane->mBoundsInParent;
+    wxRect& bounds = mpPane->mBoundsInParent;
 
-       if ( mpPane->mTopMargin >= 1 )
-       
-               dc.DrawRectangle( bounds.x, bounds.y,
-                                                 bounds.width+1,
-                                                 mpPane->mTopMargin + 1);
+    if ( mpPane->mTopMargin >= 1 )
+    
+        dc.DrawRectangle( bounds.x, bounds.y,
+                          bounds.width+1,
+                          mpPane->mTopMargin + 1);
 
 
-       if ( mpPane->mBottomMargin >= 1 )
-       
-               dc.DrawRectangle( bounds.x, 
-                                                 bounds.y + bounds.height - mpPane->mBottomMargin,
-                                                 bounds.width + 1,
-                                                 mpPane->mBottomMargin + 1);
+    if ( mpPane->mBottomMargin >= 1 )
+    
+        dc.DrawRectangle( bounds.x, 
+                          bounds.y + bounds.height - mpPane->mBottomMargin,
+                          bounds.width + 1,
+                          mpPane->mBottomMargin + 1);
 
 
-       if ( mpPane->mLeftMargin >= 1 )
-       
-               dc.DrawRectangle( bounds.x, 
-                                                 bounds.y + mpPane->mTopMargin - 1,
-                                                 mpPane->mLeftMargin + 1,
-                                                 bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin + 2);
+    if ( mpPane->mLeftMargin >= 1 )
+    
+        dc.DrawRectangle( bounds.x, 
+                          bounds.y + mpPane->mTopMargin - 1,
+                          mpPane->mLeftMargin + 1,
+                          bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin + 2);
 
 
-       if ( mpPane->mRightMargin >= 1 )
-       
-               dc.DrawRectangle( bounds.x + bounds.width - mpPane->mRightMargin,
-                                                 bounds.y + mpPane->mTopMargin - 1,
-                                                 mpPane->mRightMargin + 1,
-                                                 bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin + 2);
+    if ( mpPane->mRightMargin >= 1 )
+    
+        dc.DrawRectangle( bounds.x + bounds.width - mpPane->mRightMargin,
+                          bounds.y + mpPane->mTopMargin - 1,
+                          mpPane->mRightMargin + 1,
+                          bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin + 2);
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnDrawRowBackground ( cbDrawRowBkGroundEvent& event )
 {
-       // short-cuts
-       cbRowInfo* pRow = event.mpRow;
-       wxDC&   dc      = *event.mpDc;
-       mpPane          = event.mpPane;
-
-       // get ready
-       wxRect     rowBounds    = pRow->mBoundsInParent;
-       bool       isHorizontal = event.mpPane->IsHorizontal();
-       
-//     int prevPos;
-
-       if ( isHorizontal )
-       {
-//             prevPos = rowBounds.x;
-               // include one line above and below the row
-               --rowBounds.y;
-               rowBounds.height += 2;
-
-               --rowBounds.x;
-               rowBounds.width  += 2;
-       }
-       else
-       {
-//             prevPos = rowBounds.y;
-               // include one line above and below the row
-               --rowBounds.x;
-               rowBounds.width  += 2;
-
-               --rowBounds.y;
-               rowBounds.height += 2;
-       }
+    // short-cuts
+    cbRowInfo* pRow = event.mpRow;
+    wxDC&   dc      = *event.mpDc;
+    mpPane          = event.mpPane;
+
+    // get ready
+    wxRect     rowBounds    = pRow->mBoundsInParent;
+    bool       isHorizontal    = event.mpPane->IsHorizontal();
+    
+//    int prevPos;
+
+    if ( isHorizontal )
+    {
+//        prevPos = rowBounds.x;
+        // include one line above and below the row
+        --rowBounds.y;
+        rowBounds.height += 2;
+
+        --rowBounds.x;
+        rowBounds.width  += 2;
+    }
+    else
+    {
+//        prevPos = rowBounds.y;
+        // include one line above and below the row
+        --rowBounds.x;
+        rowBounds.width  += 2;
+
+        --rowBounds.y;
+        rowBounds.height += 2;
+    }
 
 //#define TEST_BK_ERASING
 
 #ifdef TEST_BK_ERASING
 
-       // DBG::
-       wxBrush br0( wxColour(0,160,160), wxSOLID );
-       dc.SetBrush(br0);
-       dc.SetPen  ( mpLayout->mNullPen );
-       dc.DrawRectangle( rowBounds.x, rowBounds.y,
-                                 rowBounds.width  + 1, 
-                                         rowBounds.height + 1  );
+    // DBG::
+    wxBrush br0( wxColour(0,160,160), wxSOLID );
+    dc.SetBrush(br0);
+    dc.SetPen  ( mpLayout->mNullPen );
+    dc.DrawRectangle( rowBounds.x, rowBounds.y,
+                      rowBounds.width  + 1, 
+                      rowBounds.height + 1  );
 #endif
 
-       wxBrush bkBrush( mpLayout->mGrayPen.GetColour(), wxSOLID );
+    wxBrush bkBrush( mpLayout->mGrayPen.GetColour(), wxSOLID );
 
-       dc.SetPen  ( mpLayout->mNullPen );
-       dc.SetBrush( bkBrush );
+    dc.SetPen  ( mpLayout->mNullPen );
+    dc.SetBrush( bkBrush );
 
-       // fill background-recatangle of entire row area
-       dc.DrawRectangle( rowBounds.x, rowBounds.y,
-                                 rowBounds.width  + 1, 
-                                         rowBounds.height + 1  );
+    // fill background-recatangle of entire row area
+    dc.DrawRectangle( rowBounds.x, rowBounds.y,
+                      rowBounds.width  + 1, 
+                      rowBounds.height + 1  );
 
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( wxNullBrush );
 
-       // draw "shaded-side-bars" for each bar
-       for( size_t i = 0; i != pRow->mBars.Count(); ++i )
-       {
-               wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
+    // draw "shaded-side-bars" for each bar
+    for( size_t i = 0; i != pRow->mBars.Count(); ++i )
+    {
+        wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
 
-               if ( isHorizontal )
-               {
-                       DrawShade( 1, bounds, FL_ALIGN_LEFT, dc );
-                       DrawShade( 1, bounds, FL_ALIGN_RIGHT, dc );
-               }
-               else
-               {
-                       DrawShade( 1, bounds, FL_ALIGN_TOP, dc );
-                       DrawShade( 1, bounds, FL_ALIGN_BOTTOM, dc );
-               }
-       }
+        if ( isHorizontal )
+        {
+            DrawShade( 1, bounds, FL_ALIGN_LEFT, dc );
+            DrawShade( 1, bounds, FL_ALIGN_RIGHT, dc );
+        }
+        else
+        {
+            DrawShade( 1, bounds, FL_ALIGN_TOP, dc );
+            DrawShade( 1, bounds, FL_ALIGN_BOTTOM, dc );
+        }
+    }
 
-       // draw extra shades to simulate "glued-bricks" effect
+    // draw extra shades to simulate "glued-bricks" effect
 
-       // TBD:: reduce exessive drawing of shades, when the
-       //       row handle is present, and shades will be overr-drawn anyway
+    // TBD:: reduce exessive drawing of shades, when the
+    //       row handle is present, and shades will be overr-drawn anyway
 
-       DrawUpperRowShades( pRow, dc, 1 ); // outer shade
+    DrawUpperRowShades( pRow, dc, 1 ); // outer shade
 
-       if ( pRow->mpPrev )
-       {
-               DrawLowerRowShades( pRow->mpPrev, dc, 1 ); // outter shade
-               DrawLowerRowShades( pRow->mpPrev, dc, 0 ); // inner shade
-       }
+    if ( pRow->mpPrev )
+    {
+        DrawLowerRowShades( pRow->mpPrev, dc, 1 ); // outter shade
+        DrawLowerRowShades( pRow->mpPrev, dc, 0 ); // inner shade
+    }
 
-       DrawLowerRowShades( pRow, dc, 1 );
+    DrawLowerRowShades( pRow, dc, 1 );
 
-       if ( pRow->mpNext )
-       {
-               DrawUpperRowShades( pRow->mpNext, dc, 1 ); 
-               DrawUpperRowShades( pRow->mpNext, dc, 0 );
-       }
+    if ( pRow->mpNext )
+    {
+        DrawUpperRowShades( pRow->mpNext, dc, 1 ); 
+        DrawUpperRowShades( pRow->mpNext, dc, 0 );
+    }
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::DrawUpperRowShades( cbRowInfo* pRow, wxDC& dc, int level )
 {
-       for( size_t i = 0; i != pRow->mBars.Count(); ++i )
-       {
-               wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
-
-               if ( mpPane->IsHorizontal() )
-               {               
-                       DrawShade( level, bounds, FL_ALIGN_TOP, dc );
-                       if ( level == 1 )
-                       {
-                               dc.SetPen( mpLayout->mDarkPen );
-                               dc.DrawPoint( bounds.x - 1, bounds.y );
-                               dc.SetPen( mpLayout->mLightPen );
-                               dc.DrawPoint( bounds.x + bounds.width , bounds.y );
-                       }
-               }
-               else
-               {
-                       DrawShade( level, bounds, FL_ALIGN_LEFT, dc );
-                       if ( level == 1 )
-                       {
-                               dc.SetPen( mpLayout->mDarkPen );
-                               dc.DrawPoint( bounds.x, bounds.y -1 );
-                               dc.SetPen( mpLayout->mLightPen );
-                               dc.DrawPoint( bounds.x, bounds.y + bounds.height );
-                       }
-               }
-       }
+    for( size_t i = 0; i != pRow->mBars.Count(); ++i )
+    {
+        wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
+
+        if ( mpPane->IsHorizontal() )
+        {        
+            DrawShade( level, bounds, FL_ALIGN_TOP, dc );
+            if ( level == 1 )
+            {
+                dc.SetPen( mpLayout->mDarkPen );
+                dc.DrawPoint( bounds.x - 1, bounds.y );
+                dc.SetPen( mpLayout->mLightPen );
+                dc.DrawPoint( bounds.x + bounds.width , bounds.y );
+            }
+        }
+        else
+        {
+            DrawShade( level, bounds, FL_ALIGN_LEFT, dc );
+            if ( level == 1 )
+            {
+                dc.SetPen( mpLayout->mDarkPen );
+                dc.DrawPoint( bounds.x, bounds.y -1 );
+                dc.SetPen( mpLayout->mLightPen );
+                dc.DrawPoint( bounds.x, bounds.y + bounds.height );
+            }
+        }
+    }
 }
 
 void cbPaneDrawPlugin::DrawLowerRowShades( cbRowInfo* pRow, wxDC& dc, int level )
 {
-       for( size_t i = 0; i != pRow->mBars.Count(); ++i )
-       {
-               wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
-
-               if ( mpPane->IsHorizontal() )
-               {
-                       DrawShade( level, bounds, FL_ALIGN_BOTTOM, dc );
-                       if ( level == 1 )
-                       {
-                               dc.SetPen( mpLayout->mDarkPen );
-                               dc.DrawPoint( bounds.x - 1, bounds.y + bounds.height -1 );
-                               dc.SetPen( mpLayout->mLightPen );
-                               dc.DrawPoint( bounds.x + bounds.width , bounds.y + bounds.height -1 );
-                       }
-               }
-               else
-               {
-                       DrawShade( level, bounds, FL_ALIGN_RIGHT, dc );
-                       if ( level == 1 )
-                       {
-                               dc.SetPen( mpLayout->mDarkPen );
-                               dc.DrawPoint( bounds.x + bounds.width - 1, bounds.y -1 );
-                               dc.SetPen( mpLayout->mLightPen );
-                               dc.DrawPoint( bounds.x + bounds.width - 1, bounds.y + bounds.height );
-                       }
-               }
-       }
+    for( size_t i = 0; i != pRow->mBars.Count(); ++i )
+    {
+        wxRect& bounds = pRow->mBars[i]->mBoundsInParent;
+
+        if ( mpPane->IsHorizontal() )
+        {
+            DrawShade( level, bounds, FL_ALIGN_BOTTOM, dc );
+            if ( level == 1 )
+            {
+                dc.SetPen( mpLayout->mDarkPen );
+                dc.DrawPoint( bounds.x - 1, bounds.y + bounds.height -1 );
+                dc.SetPen( mpLayout->mLightPen );
+                dc.DrawPoint( bounds.x + bounds.width , bounds.y + bounds.height -1 );
+            }
+        }
+        else
+        {
+            DrawShade( level, bounds, FL_ALIGN_RIGHT, dc );
+            if ( level == 1 )
+            {
+                dc.SetPen( mpLayout->mDarkPen );
+                dc.DrawPoint( bounds.x + bounds.width - 1, bounds.y -1 );
+                dc.SetPen( mpLayout->mLightPen );
+                dc.DrawPoint( bounds.x + bounds.width - 1, bounds.y + bounds.height );
+            }
+        }
+    }
 }
 
 void cbPaneDrawPlugin::DrawBarInnerShadeRect( cbBarInfo* pBar, wxDC& dc )
 {
-       wxRect& bounds = pBar->mBoundsInParent;
-
-       dc.SetPen( mpLayout->mDarkPen );
-       
-       dc.DrawLine( bounds.x + bounds.width - 1,
-                        bounds.y,
-                                bounds.x + bounds.width - 1,
-                                bounds.y + bounds.height );
-
-       dc.DrawLine( bounds.x,
-                                bounds.y + bounds.height - 1,
-                                bounds.x + bounds.width,
-                                bounds.y + bounds.height -1  );
-
-       dc.SetPen( mpLayout->mLightPen );
-
-       dc.DrawLine( bounds.x,
-                                bounds.y,
-                                bounds.x + bounds.width - 1,
-                                bounds.y );
-
-       dc.DrawLine( bounds.x,
-                        bounds.y,
-                                bounds.x,
-                                bounds.y + bounds.height - 1 );
+    wxRect& bounds = pBar->mBoundsInParent;
+
+    dc.SetPen( mpLayout->mDarkPen );
+    
+    dc.DrawLine( bounds.x + bounds.width - 1,
+                 bounds.y,
+                 bounds.x + bounds.width - 1,
+                 bounds.y + bounds.height );
+
+    dc.DrawLine( bounds.x,
+                 bounds.y + bounds.height - 1,
+                 bounds.x + bounds.width,
+                 bounds.y + bounds.height -1  );
+
+    dc.SetPen( mpLayout->mLightPen );
+
+    dc.DrawLine( bounds.x,
+                 bounds.y,
+                 bounds.x + bounds.width - 1,
+                 bounds.y );
+
+    dc.DrawLine( bounds.x,
+                 bounds.y,
+                 bounds.x,
+                 bounds.y + bounds.height - 1 );
 }
 
 void cbPaneDrawPlugin::DrawShade( int level, wxRect& rect, int alignment, wxDC& dc )
 {
-       // simulates "guled-bricks" appearence of control bars
-
-       if ( ( alignment == FL_ALIGN_TOP    && level == 1 ) ||
-                ( alignment == FL_ALIGN_BOTTOM && level == 0 ) ||
-                ( alignment == FL_ALIGN_LEFT   && level == 1 ) ||
-                ( alignment == FL_ALIGN_RIGHT  && level == 0 )
-          )
-       
-               dc.SetPen( mpLayout->mDarkPen  );
-       else
-               dc.SetPen( mpLayout->mLightPen );
-
-       if ( alignment == FL_ALIGN_TOP )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y,
-                                    rect.x + rect.width - 1,
-                                                rect.y );
-               else
-                       dc.DrawLine( rect.x - 1,
-                                    rect.y - 1,
-                                                rect.x + rect.width + 0,
-                                                rect.y - 1 );
-       }
-       else
-       if ( alignment == FL_ALIGN_BOTTOM )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y + rect.height - 1,
-                                    rect.x + rect.width,
-                                                rect.y + rect.height - 1 );
-               else
-                       dc.DrawLine( rect.x - 1,
-                                    rect.y + rect.height,
-                                                rect.x + rect.width + 1,
-                                                rect.y + rect.height );
-       }
-       else
-       if ( alignment == FL_ALIGN_LEFT )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y,
-                                    rect.x,
-                                                rect.y + rect.height - 1 );
-               else
-                       dc.DrawLine( rect.x - 1,
-                                    rect.y - 1,
-                                                rect.x - 1,
-                                                rect.y + rect.height );
-       }
-       else
-       if ( alignment == FL_ALIGN_RIGHT )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x + rect.width - 1, 
-                                                rect.y,
-                                    rect.x + rect.width - 1,
-                                                rect.y + rect.height );
-               else
-               {                                        
-                       dc.DrawLine( rect.x + rect.width,
-                                    rect.y - 1,
-                                                rect.x + rect.width,
-                                                rect.y + rect.height + 1  );
-               }
-       }
+    // simulates "guled-bricks" appearence of control bars
+
+    if ( ( alignment == FL_ALIGN_TOP    && level == 1 ) ||
+         ( alignment == FL_ALIGN_BOTTOM && level == 0 ) ||
+         ( alignment == FL_ALIGN_LEFT   && level == 1 ) ||
+         ( alignment == FL_ALIGN_RIGHT  && level == 0 )
+       )
+    
+        dc.SetPen( mpLayout->mDarkPen  );
+    else
+        dc.SetPen( mpLayout->mLightPen );
+
+    if ( alignment == FL_ALIGN_TOP )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y,
+                         rect.x + rect.width - 1,
+                         rect.y );
+        else
+            dc.DrawLine( rect.x - 1,
+                         rect.y - 1,
+                         rect.x + rect.width + 0,
+                         rect.y - 1 );
+    }
+    else
+    if ( alignment == FL_ALIGN_BOTTOM )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y + rect.height - 1,
+                         rect.x + rect.width,
+                         rect.y + rect.height - 1 );
+        else
+            dc.DrawLine( rect.x - 1,
+                         rect.y + rect.height,
+                         rect.x + rect.width + 1,
+                         rect.y + rect.height );
+    }
+    else
+    if ( alignment == FL_ALIGN_LEFT )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y,
+                         rect.x,
+                         rect.y + rect.height - 1 );
+        else
+            dc.DrawLine( rect.x - 1,
+                         rect.y - 1,
+                         rect.x - 1,
+                         rect.y + rect.height );
+    }
+    else
+    if ( alignment == FL_ALIGN_RIGHT )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x + rect.width - 1, 
+                         rect.y,
+                         rect.x + rect.width - 1,
+                         rect.y + rect.height );
+        else
+        {                     
+            dc.DrawLine( rect.x + rect.width,
+                         rect.y - 1,
+                         rect.x + rect.width,
+                         rect.y + rect.height + 1  );
+        }
+    }
 }
 
 void cbPaneDrawPlugin::DrawShade1( int level, wxRect& rect, int alignment, wxDC& dc )
 {
-       // simulates "guled-bricks" appearence of control bars
-
-       if ( ( alignment == FL_ALIGN_TOP    && level == 1 ) ||
-                ( alignment == FL_ALIGN_BOTTOM && level == 0 ) ||
-                ( alignment == FL_ALIGN_LEFT   && level == 1 ) ||
-                ( alignment == FL_ALIGN_RIGHT  && level == 0 )
-          )
-       
-               dc.SetPen( mpLayout->mDarkPen  );
-       else
-               dc.SetPen( mpLayout->mLightPen );
-
-       if ( alignment == FL_ALIGN_TOP )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y,
-                                    rect.x + rect.width,
-                                                rect.y );
-               else
-                       dc.DrawLine( rect.x,
-                                    rect.y - 1,
-                                                rect.x + rect.width,
-                                                rect.y - 1 );
-       }
-       else
-       if ( alignment == FL_ALIGN_BOTTOM )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y + rect.height - 1,
-                                    rect.x + rect.width,
-                                                rect.y + rect.height - 1 );
-               else
-                       dc.DrawLine( rect.x,
-                                    rect.y + rect.height,
-                                                rect.x + rect.width,
-                                                rect.y + rect.height );
-       }
-       else
-       if ( alignment == FL_ALIGN_LEFT )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x, 
-                                                rect.y,
-                                    rect.x,
-                                                rect.y + rect.height );
-               else
-                       dc.DrawLine( rect.x - 1,
-                                    rect.y,
-                                                rect.x - 1,
-                                                rect.y + rect.height );
-       }
-       else
-       if ( alignment == FL_ALIGN_RIGHT )
-       {
-               if ( level == 0 )
-               
-                       dc.DrawLine( rect.x + rect.width - 1, 
-                                                rect.y,
-                                    rect.x + rect.width - 1,
-                                                rect.y + rect.height );
-               else
-               {                                        
-                       dc.DrawLine( rect.x + rect.width,
-                                    rect.y ,
-                                                rect.x + rect.width,
-                                                rect.y + rect.height );
-               }
-       }
+    // simulates "guled-bricks" appearence of control bars
+
+    if ( ( alignment == FL_ALIGN_TOP    && level == 1 ) ||
+         ( alignment == FL_ALIGN_BOTTOM && level == 0 ) ||
+         ( alignment == FL_ALIGN_LEFT   && level == 1 ) ||
+         ( alignment == FL_ALIGN_RIGHT  && level == 0 )
+       )
+    
+        dc.SetPen( mpLayout->mDarkPen  );
+    else
+        dc.SetPen( mpLayout->mLightPen );
+
+    if ( alignment == FL_ALIGN_TOP )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y,
+                         rect.x + rect.width,
+                         rect.y );
+        else
+            dc.DrawLine( rect.x,
+                         rect.y - 1,
+                         rect.x + rect.width,
+                         rect.y - 1 );
+    }
+    else
+    if ( alignment == FL_ALIGN_BOTTOM )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y + rect.height - 1,
+                         rect.x + rect.width,
+                         rect.y + rect.height - 1 );
+        else
+            dc.DrawLine( rect.x,
+                         rect.y + rect.height,
+                         rect.x + rect.width,
+                         rect.y + rect.height );
+    }
+    else
+    if ( alignment == FL_ALIGN_LEFT )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x, 
+                         rect.y,
+                         rect.x,
+                         rect.y + rect.height );
+        else
+            dc.DrawLine( rect.x - 1,
+                         rect.y,
+                         rect.x - 1,
+                         rect.y + rect.height );
+    }
+    else
+    if ( alignment == FL_ALIGN_RIGHT )
+    {
+        if ( level == 0 )
+        
+            dc.DrawLine( rect.x + rect.width - 1, 
+                         rect.y,
+                         rect.x + rect.width - 1,
+                         rect.y + rect.height );
+        else
+        {                     
+            dc.DrawLine( rect.x + rect.width,
+                         rect.y ,
+                         rect.x + rect.width,
+                         rect.y + rect.height );
+        }
+    }
 }
 
 void cbPaneDrawPlugin::DrawPaneShade( wxDC& dc, int alignment )
 {
-       if ( !mpPane->mProps.mShow3DPaneBorderOn ) return;
+    if ( !mpPane->mProps.mShow3DPaneBorderOn ) return;
 
-       wxRect bounds = mpPane->mBoundsInParent;
+    wxRect bounds = mpPane->mBoundsInParent;
 
-       bounds.x      += mpPane->mLeftMargin;
-       bounds.y      += mpPane->mTopMargin;
-       bounds.width  -= ( mpPane->mLeftMargin + mpPane->mRightMargin  );
-       bounds.height -= ( mpPane->mTopMargin  + mpPane->mBottomMargin );
+    bounds.x      += mpPane->mLeftMargin;
+    bounds.y      += mpPane->mTopMargin;
+    bounds.width  -= ( mpPane->mLeftMargin + mpPane->mRightMargin  );
+    bounds.height -= ( mpPane->mTopMargin  + mpPane->mBottomMargin );
 
-       DrawShade( 0, bounds, alignment, dc );
-       DrawShade( 1, bounds, alignment, dc );
+    DrawShade( 0, bounds, alignment, dc );
+    DrawShade( 1, bounds, alignment, dc );
 }
 
 void cbPaneDrawPlugin::DrawPaneShadeForRow( cbRowInfo* pRow, wxDC& dc )
 {
-       if ( !mpPane->mProps.mShow3DPaneBorderOn ) return;
+    if ( !mpPane->mProps.mShow3DPaneBorderOn ) return;
 
-       // do not draw decoration, if pane has "vainished"
-       if ( mpPane->mPaneWidth  < 0 ||
-                mpPane->mPaneHeight < 0 )
+    // do not draw decoration, if pane has "vainished"
+    if ( mpPane->mPaneWidth  < 0 ||
+         mpPane->mPaneHeight < 0 )
 
-                return;
+         return;
 
-       wxRect bounds = pRow->mBoundsInParent;
+    wxRect bounds = pRow->mBoundsInParent;
 
-       if ( mpPane->mAlignment == FL_ALIGN_TOP ||
-                mpPane->mAlignment == FL_ALIGN_BOTTOM )
-       {
-               --bounds.y;
-               bounds.height += 2;
+    if ( mpPane->mAlignment == FL_ALIGN_TOP ||
+         mpPane->mAlignment == FL_ALIGN_BOTTOM )
+    {
+        --bounds.y;
+        bounds.height += 2;
 
-               DrawShade1( 0, bounds, FL_ALIGN_LEFT, dc );
-               DrawShade1( 1, bounds, FL_ALIGN_LEFT, dc );
-               DrawShade1( 0, bounds, FL_ALIGN_RIGHT, dc );
-               DrawShade1( 1, bounds, FL_ALIGN_RIGHT, dc );
+        DrawShade1( 0, bounds, FL_ALIGN_LEFT, dc );
+        DrawShade1( 1, bounds, FL_ALIGN_LEFT, dc );
+        DrawShade1( 0, bounds, FL_ALIGN_RIGHT, dc );
+        DrawShade1( 1, bounds, FL_ALIGN_RIGHT, dc );
 
-               if ( !pRow->mpNext )
-                       DrawPaneShade( dc, FL_ALIGN_BOTTOM );
+        if ( !pRow->mpNext )
+            DrawPaneShade( dc, FL_ALIGN_BOTTOM );
 
-               if ( !pRow->mpPrev )
-                       DrawPaneShade( dc, FL_ALIGN_TOP );
-       }
-       else
-       {
-               --bounds.x;
-               bounds.width += 2;
+        if ( !pRow->mpPrev )
+            DrawPaneShade( dc, FL_ALIGN_TOP );
+    }
+    else
+    {
+        --bounds.x;
+        bounds.width += 2;
 
-               DrawShade1( 0, bounds, FL_ALIGN_TOP, dc );
-               DrawShade1( 1, bounds, FL_ALIGN_TOP, dc );
-               DrawShade1( 0, bounds, FL_ALIGN_BOTTOM, dc );
-               DrawShade1( 1, bounds, FL_ALIGN_BOTTOM, dc );
+        DrawShade1( 0, bounds, FL_ALIGN_TOP, dc );
+        DrawShade1( 1, bounds, FL_ALIGN_TOP, dc );
+        DrawShade1( 0, bounds, FL_ALIGN_BOTTOM, dc );
+        DrawShade1( 1, bounds, FL_ALIGN_BOTTOM, dc );
 
-               if ( !pRow->mpNext )
-                       DrawPaneShade( dc, FL_ALIGN_RIGHT );
+        if ( !pRow->mpNext )
+            DrawPaneShade( dc, FL_ALIGN_RIGHT );
 
-               if ( !pRow->mpPrev )
-                       DrawPaneShade( dc, FL_ALIGN_LEFT );
-       }
+        if ( !pRow->mpPrev )
+            DrawPaneShade( dc, FL_ALIGN_LEFT );
+    }
 }
 
 void cbPaneDrawPlugin::OnDrawPaneDecorations( cbDrawPaneDecorEvent& event )
 {
-       wxDC& dc = *event.mpDc;
+    wxDC& dc = *event.mpDc;
 
-       cbDockPane* pPane = event.mpPane;
+    cbDockPane* pPane = event.mpPane;
 
-       RowArrayT& lst = pPane->GetRowList();
-       
-       // FIXME:: this is a workaround for some glitches
+    RowArrayT& lst = pPane->GetRowList();
+    
+    // FIXME:: this is a workaround for some glitches
 
-       if ( lst.Count() )
-       {
-               cbRowInfo* pLastRow = lst[ lst.Count() - 1 ];
+    if ( lst.Count() )
+    {
+        cbRowInfo* pLastRow = lst[ lst.Count() - 1 ];
 
-               pPane->PaintRowBackground( pLastRow,  dc );
-               pPane->PaintRowDecorations( pLastRow, dc );
-               pPane->PaintRowHandles( pLastRow, dc );
-       }
+        pPane->PaintRowBackground( pLastRow,  dc );
+        pPane->PaintRowDecorations( pLastRow, dc );
+        pPane->PaintRowHandles( pLastRow, dc );
+    }
 
-       if ( !pPane->mProps.mShow3DPaneBorderOn ) return;
+    if ( !pPane->mProps.mShow3DPaneBorderOn ) return;
 
-       // do not draw decoration, if pane is completely hidden
-       if ( event.mpPane->mPaneWidth  < 0 ||
-                event.mpPane->mPaneHeight < 0 )
+    // do not draw decoration, if pane is completely hidden
+    if ( event.mpPane->mPaneWidth  < 0 ||
+         event.mpPane->mPaneHeight < 0 )
 
-                return;
+         return;
 
-       DrawPaneShade( dc, FL_ALIGN_TOP    );
-       DrawPaneShade( dc, FL_ALIGN_BOTTOM );
-       DrawPaneShade( dc, FL_ALIGN_LEFT   );
-       DrawPaneShade( dc, FL_ALIGN_RIGHT  );
+    DrawPaneShade( dc, FL_ALIGN_TOP    );
+    DrawPaneShade( dc, FL_ALIGN_BOTTOM );
+    DrawPaneShade( dc, FL_ALIGN_LEFT   );
+    DrawPaneShade( dc, FL_ALIGN_RIGHT  );
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 // bar decoration/sizing handlers
 
 void cbPaneDrawPlugin::OnDrawBarDecorations( cbDrawBarDecorEvent& event )
 {
-//     cbBarInfo* pBar = event.mpBar;
-       wxDC&   dc      = *event.mpDc;
+//    cbBarInfo* pBar = event.mpBar;
+    wxDC&   dc      = *event.mpDc;
 
-       // draw brick borders
+    // draw brick borders
 
-       wxRect& rect = event.mBoundsInParent;
+    wxRect& rect = event.mBoundsInParent;
 
-       dc.SetPen( mpLayout->mLightPen );
+    dc.SetPen( mpLayout->mLightPen );
 
-       // horiz
-       dc.DrawLine( rect.x, rect.y, 
-                        rect.x + rect.width-1, rect.y );
+    // horiz
+    dc.DrawLine( rect.x, rect.y, 
+                 rect.x + rect.width-1, rect.y );
 
-       // vert
-       dc.DrawLine( rect.x, rect.y,
-                        rect.x, rect.y + rect.height-1 );
+    // vert
+    dc.DrawLine( rect.x, rect.y,
+                 rect.x, rect.y + rect.height-1 );
 
 
-       dc.SetPen( mpLayout->mDarkPen );
+    dc.SetPen( mpLayout->mDarkPen );
 
-       // vert
-       dc.DrawLine( rect.x + rect.width-1, rect.y,
-                        rect.x + rect.width-1, rect.y + rect.height-1 );
+    // vert
+    dc.DrawLine( rect.x + rect.width-1, rect.y,
+                 rect.x + rect.width-1, rect.y + rect.height-1 );
 
-       // horiz
-       dc.DrawLine( rect.x, rect.y + rect.height-1,
-                                rect.x + rect.width, rect.y + rect.height-1 );
+    // horiz
+    dc.DrawLine( rect.x, rect.y + rect.height-1,
+                 rect.x + rect.width, rect.y + rect.height-1 );
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnDrawBarHandles( cbDrawBarHandlesEvent& event )
 {
-       // short-cuts
-       cbBarInfo* pBar = event.mpBar;
-       wxDC&   dc      = *event.mpDc;
-       mpPane          = event.mpPane;
+    // short-cuts
+    cbBarInfo* pBar = event.mpBar;
+    wxDC&   dc      = *event.mpDc;
+    mpPane          = event.mpPane;
 
-       // draw handles around the bar if present
+    // draw handles around the bar if present
 
-       if ( pBar->mHasLeftHandle ||
-                pBar->mHasRightHandle )
-       {
-               wxRect& bounds = pBar->mBoundsInParent;
+    if ( pBar->mHasLeftHandle ||
+         pBar->mHasRightHandle )
+    {
+        wxRect& bounds = pBar->mBoundsInParent;
 
-               if ( mpPane->IsHorizontal() )
-               {
-                       if ( pBar->mHasLeftHandle )
+        if ( mpPane->IsHorizontal() )
+        {
+            if ( pBar->mHasLeftHandle )
 
-                               mpPane->DrawVertHandle( dc, bounds.x - mpPane->mProps.mResizeHandleSize -1, 
-                                                                           bounds.y, bounds.height );
+                mpPane->DrawVertHandle( dc, bounds.x - mpPane->mProps.mResizeHandleSize -1, 
+                                        bounds.y, bounds.height );
 
-                       if ( pBar->mHasRightHandle )
+            if ( pBar->mHasRightHandle )
 
-                               mpPane->DrawVertHandle( dc, 
-                                                                           bounds.x + bounds.width -1, 
-                                                                           bounds.y, bounds.height );
-               }
-               else
-               {
-                       if ( pBar->mHasLeftHandle )
+                mpPane->DrawVertHandle( dc, 
+                                        bounds.x + bounds.width -1, 
+                                        bounds.y, bounds.height );
+        }
+        else
+        {
+            if ( pBar->mHasLeftHandle )
 
-                               mpPane->DrawHorizHandle( dc, bounds.x, 
-                                                                            bounds.y  - mpPane->mProps.mResizeHandleSize - 1, 
-                                                                                bounds.width );
+                mpPane->DrawHorizHandle( dc, bounds.x, 
+                                         bounds.y  - mpPane->mProps.mResizeHandleSize - 1, 
+                                         bounds.width );
 
-                       if ( pBar->mHasRightHandle )
+            if ( pBar->mHasRightHandle )
 
-                               mpPane->DrawHorizHandle( dc, bounds.x, 
-                                                                                bounds.y + bounds.height - 1,
-                                                                                bounds.width );
-               }
-       }
+                mpPane->DrawHorizHandle( dc, bounds.x, 
+                                         bounds.y + bounds.height - 1,
+                                         bounds.width );
+        }
+    }
 
-       event.Skip(); // pass event to the next plugin
+    event.Skip(); // pass event to the next plugin
 }
 
 void cbPaneDrawPlugin::OnStartDrawInArea( cbStartDrawInAreaEvent& event )
 {
-       // DBG::
-       wxASSERT( mpClntDc == NULL );
+    // DBG::
+    wxASSERT( mpClntDc == NULL );
 
-       // FOR NOW:: create/destroy client-dc upon each drawing
-       mpClntDc = new wxClientDC( &mpLayout->GetParentFrame() );
+    // FOR NOW:: create/destroy client-dc upon each drawing
+    mpClntDc = new wxClientDC( &mpLayout->GetParentFrame() );
 
-       (*event.mppDc) = mpClntDc;
+    (*event.mppDc) = mpClntDc;
 
-       mpClntDc->SetClippingRegion( event.mArea.x,     event.mArea.y,
-                                        event.mArea.width, event.mArea.height );
+    mpClntDc->SetClippingRegion( event.mArea.x,     event.mArea.y,
+                                 event.mArea.width, event.mArea.height );
 }
 
 void cbPaneDrawPlugin::OnFinishDrawInArea( cbFinishDrawInAreaEvent& event )
 {
-       // DBG::
-       wxASSERT( mpClntDc );
+    // DBG::
+    wxASSERT( mpClntDc );
 
-       delete mpClntDc;
+    delete mpClntDc;
 
-       mpClntDc = NULL;
+    mpClntDc = NULL;
 }
 
index 3e095121a948667afdc63d0fe37a1d38cfbeb076..062e312bc526bc6de42012372466110b29dc93f1 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        rowdragpl.cpp
+// Purpose:     cbRowDragPlugin implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -49,69 +49,69 @@ IMPLEMENT_DYNAMIC_CLASS( cbRowDragPlugin, cbPluginBase )
 
 BEGIN_EVENT_TABLE( cbRowDragPlugin, cbPluginBase )
 
-       EVT_PL_LEFT_DOWN                  ( cbRowDragPlugin::OnLButtonDown        )
-       EVT_PL_LEFT_UP                    ( cbRowDragPlugin::OnLButtonUp          )
-       EVT_PL_MOTION                     ( cbRowDragPlugin::OnMouseMove          )
+    EVT_PL_LEFT_DOWN          ( cbRowDragPlugin::OnLButtonDown        )
+    EVT_PL_LEFT_UP              ( cbRowDragPlugin::OnLButtonUp          )
+    EVT_PL_MOTION              ( cbRowDragPlugin::OnMouseMove          )
 
-       EVT_PL_DRAW_PANE_DECOR    ( cbRowDragPlugin::OnDrawPaneBackground )
+    EVT_PL_DRAW_PANE_DECOR    ( cbRowDragPlugin::OnDrawPaneBackground )
 
 END_EVENT_TABLE()
 
-// FIXME:: how to eliminated these cut&pasted constructors?
+// FIXME:: how to eliminated these cut and pasted constructors?
 
 cbRowDragPlugin::cbRowDragPlugin(void)
 
-       : mHightColor          ( 192, 192, 255 ),
-         mLowColor            ( 192, 192, 192 ),
+    : mHightColor          ( 192, 192, 255 ),
+      mLowColor            ( 192, 192, 192 ),
       mTrianInnerColor     ( 0,0,255 ),
-         mTrianInnerPen       ( mTrianInnerColor, 1, wxSOLID ),
+      mTrianInnerPen       ( mTrianInnerColor, 1, wxSOLID ),
  
       mDragStarted         ( FALSE ),
-         mDecisionMode        ( FALSE ),
-         mCurDragOfs          ( 0 ),
-         mCaptureIsOn         ( FALSE ),
+      mDecisionMode        ( FALSE ),
+      mCurDragOfs          ( 0 ),
+      mCaptureIsOn         ( FALSE ),
       mSvTopMargin         ( -1 ),
-         mSvBottomMargin      ( -1 ),
-         mSvLeftMargin        ( -1 ),
-         mSvRightMargin       ( -1 ),
+      mSvBottomMargin      ( -1 ),
+      mSvLeftMargin        ( -1 ),
+      mSvRightMargin       ( -1 ),
    
       mpPaneImage          ( NULL ),
-         mpRowImage           ( NULL ),
-         mpCombinedImage          ( NULL ),
+      mpRowImage           ( NULL ),
+      mpCombinedImage        ( NULL ),
 
-         mpRowInFocus         ( NULL ),
-         mCollapsedIconInFocus( -1 ),
-         
-         mpPane               ( NULL )
+      mpRowInFocus         ( NULL ),
+      mCollapsedIconInFocus( -1 ),
+      
+      mpPane               ( NULL )
 {
 }
 
 cbRowDragPlugin::cbRowDragPlugin( wxFrameLayout* pLayout, int paneMask )
 
-       : cbPluginBase( pLayout, paneMask ),
-         
-         mHightColor          ( 192, 192, 255 ),
-         mLowColor            ( 192, 192, 192 ),
+    : cbPluginBase( pLayout, paneMask ),
+      
+         mHightColor          ( 192, 192, 255 ),
+      mLowColor            ( 192, 192, 192 ),
       mTrianInnerColor     ( 0,0,255 ),
-         mTrianInnerPen       ( mTrianInnerColor, 1, wxSOLID ),
+      mTrianInnerPen       ( mTrianInnerColor, 1, wxSOLID ),
    
       mDragStarted         ( FALSE ),
-         mDecisionMode        ( FALSE ),
-         mCurDragOfs          ( 0 ),
-         mCaptureIsOn         ( FALSE ),
-         mSvTopMargin         ( -1 ),
-         mSvBottomMargin      ( -1 ),
-         mSvLeftMargin        ( -1 ),
-         mSvRightMargin       ( -1 ),
+      mDecisionMode        ( FALSE ),
+      mCurDragOfs          ( 0 ),
+      mCaptureIsOn         ( FALSE ),
+      mSvTopMargin         ( -1 ),
+      mSvBottomMargin      ( -1 ),
+      mSvLeftMargin        ( -1 ),
+      mSvRightMargin       ( -1 ),
       
       mpPaneImage          ( NULL ),
       mpRowImage           ( NULL ),
-         mpCombinedImage          ( NULL ),
+      mpCombinedImage        ( NULL ),
 
-         mpRowInFocus         ( NULL ),
-         mCollapsedIconInFocus( -1 ),
-         
-         mpPane               ( NULL )
+      mpRowInFocus         ( NULL ),
+      mCollapsedIconInFocus( -1 ),
+      
+      mpPane               ( NULL )
 {
 }
 
@@ -122,1344 +122,1344 @@ cbRowDragPlugin::~cbRowDragPlugin()
 // handlers for plugin events
 void cbRowDragPlugin::OnMouseMove( cbMotionEvent& event )
 {
-       // short-cuts
-       wxPoint pos = event.mPos;
-       mpPane      = event.mpPane;
-
-       mpPane->PaneToFrame( &pos.x, &pos.y );
-
-       if ( !mDragStarted )
-       {
-               if ( mDecisionMode && mpRowInFocus )
-               {
-                       int ofs;
-
-                       if ( mpPane->IsHorizontal() )
-
-                               ofs = pos.y - mDragOrigin.y;
-                       else
-                               ofs = pos.x - mDragOrigin.x;
-
-                       // check if the item was dragged sufficeintly
-                       // far, enough to consider that user really intends 
-                       // to drag it
-
-                       if ( ofs >= MINIMAL_ROW_DRAG_OFS ||
-                                ofs <= -MINIMAL_ROW_DRAG_OFS )
-                       {
-                               // DBG::
-                               //.wxPoint pos = event.mPos;
-                               //wxPoint drg = mDragOrigin;
-                               //int dif = event.mPos.x - mDragOrigin.x;
-
-                               mDragStarted  = TRUE;
-                               mDecisionMode = FALSE;
-                               mDragOrigin   = pos;
-
-                               PrepareForRowDrag();
-                               return;
-                       }
-
-                       // this plugin "eats" all mouse input while item is dragged,
-                       return;
-               }
-
-               cbRowInfo* pRow = GetFirstRow();
-
-               bool focusFound = FALSE;
-
-               while( pRow )
-               {
-                       if ( HitTestRowDragHint( pRow, pos ) )
-                       {
-                               CheckPrevItemInFocus( pRow, -1 );
-                               SetMouseCapture( TRUE );
-
-                               focusFound = TRUE;
-
-                               mpRowInFocus          = pRow;
-                               mCollapsedIconInFocus = -1;
-                               break;
-                       }
-
-                       pRow = pRow->mpNext;
-               }
-
-               if ( !focusFound )
-               {
-                       int hrCnt = GetHRowsCountForPane( event.mpPane );
-
-                       for( int i = 0; i != hrCnt; ++i )
-                       {
-                               if ( HitTestCollapsedRowIcon( i, pos ) )
-                               {
-                                       CheckPrevItemInFocus( NULL, i );
-                                       SetMouseCapture( TRUE );
-
-                                       focusFound = TRUE;
-
-                                       mCollapsedIconInFocus = i;
-                                       mpRowInFocus          = NULL;
-                                       break;
-                               }
-                       }
-               }
-
-               if ( !focusFound && ItemIsInFocus() )
-               {
-                       // kill focus from item previously been in focus
-                       UnhiglightItemInFocus();
-
-                       mpRowInFocus          = NULL;
-                       mCollapsedIconInFocus = -1;
-                       SetMouseCapture( FALSE );
-               }
-
-               if ( !ItemIsInFocus() ) 
-
-                               // delegate it to other plugins
-                               event.Skip();
-       }
-       else
-       {
-               // otherwise mouse pointer moves, when dragging is started
-
-               if ( mpPane->IsHorizontal() )
-               {
-                       // DBG::
-                       wxPoint p = event.mPos;
-                       wxPoint d = mDragOrigin;
-//                     int dif = event.mPos.x - mDragOrigin.x;
-
-                       // row is dragged up or down;
-                       ShowDraggedRow( pos.y - mDragOrigin.y );
-               }
-               else
-               {
-                       // DBG::
-                       wxPoint p = event.mPos;
-                       wxPoint d = mDragOrigin;
-//                     int dif = event.mPos.x - mDragOrigin.x;
-
-                       // row is dragged left or right
-                       ShowDraggedRow( pos.x - mDragOrigin.x );
-               }
-
-               // this plugin "eats" all mouse input while item is dragged,
-       }
+    // short-cuts
+    wxPoint pos = event.mPos;
+    mpPane      = event.mpPane;
+
+    mpPane->PaneToFrame( &pos.x, &pos.y );
+
+    if ( !mDragStarted )
+    {
+        if ( mDecisionMode && mpRowInFocus )
+        {
+            int ofs;
+
+            if ( mpPane->IsHorizontal() )
+
+                ofs = pos.y - mDragOrigin.y;
+            else
+                ofs = pos.x - mDragOrigin.x;
+
+            // check if the item was dragged sufficeintly
+            // far, enough to consider that user really intends 
+            // to drag it
+
+            if ( ofs >= MINIMAL_ROW_DRAG_OFS ||
+                 ofs <= -MINIMAL_ROW_DRAG_OFS )
+            {
+                // DBG::
+                //.wxPoint pos = event.mPos;
+                //wxPoint drg = mDragOrigin;
+                //int dif = event.mPos.x - mDragOrigin.x;
+
+                mDragStarted  = TRUE;
+                mDecisionMode = FALSE;
+                mDragOrigin   = pos;
+
+                PrepareForRowDrag();
+                return;
+            }
+
+            // this plugin "eats" all mouse input while item is dragged,
+            return;
+        }
+
+        cbRowInfo* pRow = GetFirstRow();
+
+        bool focusFound = FALSE;
+
+        while( pRow )
+        {
+            if ( HitTestRowDragHint( pRow, pos ) )
+            {
+                CheckPrevItemInFocus( pRow, -1 );
+                SetMouseCapture( TRUE );
+
+                focusFound = TRUE;
+
+                mpRowInFocus          = pRow;
+                mCollapsedIconInFocus = -1;
+                break;
+            }
+
+            pRow = pRow->mpNext;
+        }
+
+        if ( !focusFound )
+        {
+            int hrCnt = GetHRowsCountForPane( event.mpPane );
+
+            for( int i = 0; i != hrCnt; ++i )
+            {
+                if ( HitTestCollapsedRowIcon( i, pos ) )
+                {
+                    CheckPrevItemInFocus( NULL, i );
+                    SetMouseCapture( TRUE );
+
+                    focusFound = TRUE;
+
+                    mCollapsedIconInFocus = i;
+                    mpRowInFocus          = NULL;
+                    break;
+                }
+            }
+        }
+
+        if ( !focusFound && ItemIsInFocus() )
+        {
+            // kill focus from item previously been in focus
+            UnhighlightItemInFocus();
+
+            mpRowInFocus          = NULL;
+            mCollapsedIconInFocus = -1;
+            SetMouseCapture( FALSE );
+        }
+
+        if ( !ItemIsInFocus() ) 
+
+                // delegate it to other plugins
+                event.Skip();
+    }
+    else
+    {
+        // otherwise mouse pointer moves, when dragging is started
+
+        if ( mpPane->IsHorizontal() )
+        {
+            // DBG::
+            wxPoint p = event.mPos;
+            wxPoint d = mDragOrigin;
+//            int dif = event.mPos.x - mDragOrigin.x;
+
+            // row is dragged up or down;
+            ShowDraggedRow( pos.y - mDragOrigin.y );
+        }
+        else
+        {
+            // DBG::
+            wxPoint p = event.mPos;
+            wxPoint d = mDragOrigin;
+//            int dif = event.mPos.x - mDragOrigin.x;
+
+            // row is dragged left or right
+            ShowDraggedRow( pos.x - mDragOrigin.x );
+        }
+
+        // this plugin "eats" all mouse input while item is dragged,
+    }
 }
 
 void cbRowDragPlugin::OnLButtonDown( cbLeftDownEvent& event )
 {
-       mpPane = event.mpPane;
+    mpPane = event.mpPane;
 
-       // DBG::
-       wxASSERT( !mDragStarted && !mDecisionMode );
+    // DBG::
+    wxASSERT( !mDragStarted && !mDecisionMode );
 
-       if ( ItemIsInFocus() )
-       {
-               mDecisionMode = TRUE;
+    if ( ItemIsInFocus() )
+    {
+        mDecisionMode = TRUE;
 
-               wxPoint pos = event.mPos;
-               mpPane->PaneToFrame( &pos.x, &pos.y );
+        wxPoint pos = event.mPos;
+        mpPane->PaneToFrame( &pos.x, &pos.y );
 
-               mDragOrigin = pos;
+        mDragOrigin = pos;
 
-               SetMouseCapture( TRUE );
-       }
-       else
-               // propagate event to other plugins
-               event.Skip();
+        SetMouseCapture( TRUE );
+    }
+    else
+        // propagate event to other plugins
+        event.Skip();
 }
 
 void cbRowDragPlugin::OnLButtonUp  ( cbLeftUpEvent& event )
 {
-       if ( !mDragStarted && !mDecisionMode ) 
-       {
-               event.Skip();
-               return;
-       }
+    if ( !mDragStarted && !mDecisionMode ) 
+    {
+        event.Skip();
+        return;
+    }
 
-       mpPane = event.mpPane;
+    mpPane = event.mpPane;
 
-       if ( mDecisionMode )
-       {
-               cbDockPane* pPane = mpPane;
+    if ( mDecisionMode )
+    {
+        cbDockPane* pPane = mpPane;
 
-               SetMouseCapture( FALSE );
+        SetMouseCapture( FALSE );
 
-               mDecisionMode = FALSE;
-               mDragStarted  = FALSE;
+        mDecisionMode = FALSE;
+        mDragStarted  = FALSE;
 
-               wxPoint frmPos = event.mPos;
-               pPane->PaneToFrame( &frmPos.x, &frmPos.y );
+        wxPoint frmPos = event.mPos;
+        pPane->PaneToFrame( &frmPos.x, &frmPos.y );
 
-               if ( mpRowInFocus ) 
-               {
-                       CollapseRow( mpRowInFocus );
-                       mpRowInFocus = 0;
-               }
-               else
-               {
-                       ExpandRow( mCollapsedIconInFocus );
-                       mCollapsedIconInFocus = -1;
-               }
+        if ( mpRowInFocus ) 
+        {
+            CollapseRow( mpRowInFocus );
+            mpRowInFocus = 0;
+        }
+        else
+        {
+            ExpandRow( mCollapsedIconInFocus );
+            mCollapsedIconInFocus = -1;
+        }
 
-               mpRowInFocus  = NULL;
-               mpPane = pPane;
+        mpRowInFocus  = NULL;
+        mpPane = pPane;
 
-               pPane->FrameToPane( &frmPos.x, &frmPos.y );
+        pPane->FrameToPane( &frmPos.x, &frmPos.y );
 
-               // give it another try after relayouting bars
+        // give it another try after relayouting bars
 
-               cbMotionEvent moveEvt( frmPos, pPane );
-               this->OnMouseMove( moveEvt );
+        cbMotionEvent moveEvt( frmPos, pPane );
+        this->OnMouseMove( moveEvt );
 
-               // this plugin has "eaten" the mouse-up event
+        // this plugin has "eaten" the mouse-up event
 
-               return;
-       }
-       else
-       {
-               // otherwise, the dragged row was dropped, determine
-               // where to insert it
+        return;
+    }
+    else
+    {
+        // otherwise, the dragged row was dropped, determine
+        // where to insert it
 
-               // restore initial pane appearence
-               ShowPaneImage();
-               FinishOnScreenDraw();
+        // restore initial pane appearence
+        ShowPaneImage();
+        FinishOnScreenDraw();
 
-               cbRowInfo* pRow = GetFirstRow();
+        cbRowInfo* pRow = GetFirstRow();
 
-               mpLayout->GetUpdatesManager().OnStartChanges();
+        mpLayout->GetUpdatesManager().OnStartChanges();
 
-               pRow->mUMgrData.SetDirty(TRUE);
+        pRow->mUMgrData.SetDirty(TRUE);
 
-               cbBarInfo* pBar = mpRowInFocus->mBars[0];
+        cbBarInfo* pBar = mpRowInFocus->mBars[0];
 
-               while ( pBar )
-               {
-                       pBar->mUMgrData.SetDirty(TRUE);
+        while ( pBar )
+        {
+            pBar->mUMgrData.SetDirty(TRUE);
 
-                       if ( pBar->mpBarWnd )
-                       {
-                               // do complete refresh
-                               pBar->mpBarWnd->Show(FALSE);
-                               pBar->mpBarWnd->Show(TRUE);
-                       }
+            if ( pBar->mpBarWnd )
+            {
+                // do complete refresh
+                pBar->mpBarWnd->Show(FALSE);
+                pBar->mpBarWnd->Show(TRUE);
+            }
 
-                       pBar = pBar->mpNext;
-               }
+            pBar = pBar->mpNext;
+        }
 
-               while( pRow )
-               {
-                       if ( mCurDragOfs < pRow->mRowY )
-                       {
-                               InsertDraggedRowBefore( pRow );
-                               break;
-                       }
+        while( pRow )
+        {
+            if ( mCurDragOfs < pRow->mRowY )
+            {
+                InsertDraggedRowBefore( pRow );
+                break;
+            }
 
-                       pRow = pRow->mpNext;
-               }
+            pRow = pRow->mpNext;
+        }
 
-               if ( pRow == NULL ) InsertDraggedRowBefore( NULL );
+        if ( pRow == NULL ) InsertDraggedRowBefore( NULL );
 
-               mpRowInFocus = NULL;
+        mpRowInFocus = NULL;
 
-               mpLayout->RecalcLayout(FALSE);
+        mpLayout->RecalcLayout(FALSE);
 
-               // finish change "transaction"
-               mpLayout->GetUpdatesManager().OnFinishChanges();
-               mpLayout->GetUpdatesManager().UpdateNow();
+        // finish change "transaction"
+        mpLayout->GetUpdatesManager().OnFinishChanges();
+        mpLayout->GetUpdatesManager().UpdateNow();
 
-               // finish drag action
-               SetMouseCapture( FALSE );
-               mDragStarted = FALSE;
-       }
+        // finish drag action
+        SetMouseCapture( FALSE );
+        mDragStarted = FALSE;
+    }
 }
 
 void cbRowDragPlugin::OnDrawPaneBackground ( cbDrawPaneDecorEvent& event )
 {
-       mpPane = event.mpPane;
+    mpPane = event.mpPane;
 
-       // FIXME:: this may harm operation of other plugins
+    // FIXME:: this may harm operation of other plugins
 
-       if ( GetNextHandler() && mpPane->GetRowList().GetCount() )
-       {
-               // first, let other plugins add their decorations now
-       
-               GetNextHandler()->ProcessEvent( event );
-               event.Skip(FALSE);
-       }
+    if ( GetNextHandler() && mpPane->GetRowList().GetCount() )
+    {
+        // first, let other plugins add their decorations now
+    
+        GetNextHandler()->ProcessEvent( event );
+        event.Skip(FALSE);
+    }
 
-       wxClientDC dc( &mpLayout->GetParentFrame() );
+    wxClientDC dc( &mpLayout->GetParentFrame() );
 
-       dc.SetClippingRegion( mpPane->mBoundsInParent.x,
-                                                 mpPane->mBoundsInParent.y,
-                                                 mpPane->mBoundsInParent.width,
-                                                 mpPane->mBoundsInParent.height );
+    dc.SetClippingRegion( mpPane->mBoundsInParent.x,
+                          mpPane->mBoundsInParent.y,
+                          mpPane->mBoundsInParent.width,
+                          mpPane->mBoundsInParent.height );
 
-       int cnt = GetHRowsCountForPane( event.mpPane );
+    int cnt = GetHRowsCountForPane( event.mpPane );
 
-       if ( cnt > 0 ) 
+    if ( cnt > 0 ) 
 
-               DrawCollapsedRowsBorder( dc );
+        DrawCollapsedRowsBorder( dc );
 
-       if ( mpPane->GetRowList().GetCount() )
-       
-               DrawRowsDragHintsBorder( dc );
+    if ( mpPane->GetRowList().GetCount() )
+    
+        DrawRowsDragHintsBorder( dc );
 
-       cbRowInfo* pRow = GetFirstRow();
+    cbRowInfo* pRow = GetFirstRow();
 
-       while( pRow )
-       {
-               DrawRowDragHint( pRow, dc, FALSE );
-               pRow = pRow->mpNext;
-       }
+    while( pRow )
+    {
+        DrawRowDragHint( pRow, dc, FALSE );
+        pRow = pRow->mpNext;
+    }
 
-       for( int i = 0; i != cnt; ++i )
+    for( int i = 0; i != cnt; ++i )
 
-               DrawCollapsedRowIcon(i, dc, FALSE );
+        DrawCollapsedRowIcon(i, dc, FALSE );
 }
 
 int cbRowDragPlugin::GetHRowsCountForPane( cbDockPane* pPane )
 {
-       wxNode* pNode = mHiddenBars.First();
+    wxNode* pNode = mHiddenBars.First();
 
-       int maxIconNo = -1;
+    int maxIconNo = -1;
 
-       while( pNode )
-       {
-               cbHiddenBarInfo* pHBInfo = (cbHiddenBarInfo*)pNode->Data();
+    while( pNode )
+    {
+        cbHiddenBarInfo* pHBInfo = (cbHiddenBarInfo*)pNode->Data();
 
-               if ( pHBInfo->mAlignment == pPane->mAlignment )
+        if ( pHBInfo->mAlignment == pPane->mAlignment )
 
-                       maxIconNo = wxMax( maxIconNo, pHBInfo->mIconNo );
+            maxIconNo = wxMax( maxIconNo, pHBInfo->mIconNo );
 
-               pNode = pNode->Next();
-       }
+        pNode = pNode->Next();
+    }
 
-       return ( maxIconNo + 1 );
+    return ( maxIconNo + 1 );
 }
 
 int cbRowDragPlugin::GetCollapsedRowIconHeight()
 {
-       return COLLAPSED_ICON_HEIGHT;
+    return COLLAPSED_ICON_HEIGHT;
 }
 
 int cbRowDragPlugin::GetRowDragHintWidth()
 {
-       return ROW_DRAG_HINT_WIDTH;
+    return ROW_DRAG_HINT_WIDTH;
 }
 
 void cbRowDragPlugin::SetPaneMargins()
 {
-       int hiddenRowsCnt = GetHRowsCountForPane( mpPane );
-
-       if ( mSvTopMargin == -1 )
-       {
-               mSvTopMargin    = mpPane->mTopMargin;
-               mSvBottomMargin = mpPane->mBottomMargin;
-               mSvLeftMargin   = mpPane->mLeftMargin;
-               mSvRightMargin  = mpPane->mRightMargin;
-       }
-
-       if ( mpPane->IsHorizontal() )
-       {
-               mpPane->mTopMargin    = mSvTopMargin;
-               mpPane->mBottomMargin = ( hiddenRowsCnt == 0 ) 
-                                                               ?  mSvBottomMargin 
-                                                               :  mSvBottomMargin + GetCollapsedRowIconHeight();
-
-               mpPane->mLeftMargin   = mSvLeftMargin + GetRowDragHintWidth();
-               mpPane->mRightMargin  = mSvRightMargin;
-       }
-       else
-       {
-               mpPane->mTopMargin    = mSvTopMargin;
-               mpPane->mBottomMargin = mSvBottomMargin + GetRowDragHintWidth();
-
-               mpPane->mLeftMargin   = mSvLeftMargin;
-               mpPane->mRightMargin  = ( hiddenRowsCnt == 0 ) ?
-                                                               mSvRightMargin : mSvRightMargin + GetCollapsedRowIconHeight();
-       }
+    int hiddenRowsCnt = GetHRowsCountForPane( mpPane );
+
+    if ( mSvTopMargin == -1 )
+    {
+        mSvTopMargin    = mpPane->mTopMargin;
+        mSvBottomMargin    = mpPane->mBottomMargin;
+        mSvLeftMargin   = mpPane->mLeftMargin;
+        mSvRightMargin  = mpPane->mRightMargin;
+    }
+
+    if ( mpPane->IsHorizontal() )
+    {
+        mpPane->mTopMargin    = mSvTopMargin;
+        mpPane->mBottomMargin = ( hiddenRowsCnt == 0 ) 
+                                ?  mSvBottomMargin 
+                                :  mSvBottomMargin + GetCollapsedRowIconHeight();
+
+        mpPane->mLeftMargin   = mSvLeftMargin + GetRowDragHintWidth();
+        mpPane->mRightMargin  = mSvRightMargin;
+    }
+    else
+    {
+        mpPane->mTopMargin    = mSvTopMargin;
+        mpPane->mBottomMargin = mSvBottomMargin + GetRowDragHintWidth();
+
+        mpPane->mLeftMargin   = mSvLeftMargin;
+        mpPane->mRightMargin  = ( hiddenRowsCnt == 0 ) ?
+                                mSvRightMargin : mSvRightMargin + GetCollapsedRowIconHeight();
+    }
 }
 
 void cbRowDragPlugin::OnInitPlugin()
 {
-       cbDockPane** panes = mpLayout->GetPanesArray();
+    cbDockPane** panes = mpLayout->GetPanesArray();
 
-       for( int i = 0; i != MAX_PANES; ++i )
+    for( int i = 0; i != MAX_PANES; ++i )
 
-               if ( panes[i]->MatchesMask( mPaneMask ) )
-               {
-                       mpPane = panes[i];
+        if ( panes[i]->MatchesMask( mPaneMask ) )
+        {
+            mpPane = panes[i];
 
-                       SetPaneMargins();
-               }
+            SetPaneMargins();
+        }
 }
 
 /*** helpers for drag&drop ***/
 
 void cbRowDragPlugin::SetMouseCapture( bool captureOn )
 {
-       if ( mCaptureIsOn == captureOn ) return;
-
-       if ( captureOn ) 
-       {
-               mpLayout->CaptureEventsForPane( mpPane );
-               mpLayout->CaptureEventsForPlugin( this );
-       }
-       else 
-       {
-               mpLayout->ReleaseEventsFromPane( mpPane );
-               mpLayout->ReleaseEventsFromPlugin( this );
-       }
-
-       mCaptureIsOn = captureOn;
+    if ( mCaptureIsOn == captureOn ) return;
+
+    if ( captureOn ) 
+    {
+        mpLayout->CaptureEventsForPane( mpPane );
+        mpLayout->CaptureEventsForPlugin( this );
+    }
+    else 
+    {
+        mpLayout->ReleaseEventsFromPane( mpPane );
+        mpLayout->ReleaseEventsFromPlugin( this );
+    }
+
+    mCaptureIsOn = captureOn;
 }
 
-void cbRowDragPlugin::UnhiglightItemInFocus()
+void cbRowDragPlugin::UnhighlightItemInFocus()
 {
-       wxClientDC dc( &mpLayout->GetParentFrame() );
+    wxClientDC dc( &mpLayout->GetParentFrame() );
 
-       if ( mpRowInFocus ) 
+    if ( mpRowInFocus ) 
 
-               DrawRowDragHint( mpRowInFocus, dc, FALSE );
-       else
-       if ( mCollapsedIconInFocus != - 1 )
+        DrawRowDragHint( mpRowInFocus, dc, FALSE );
+    else
+    if ( mCollapsedIconInFocus != - 1 )
 
-               DrawCollapsedRowIcon( mCollapsedIconInFocus, dc, FALSE );
+        DrawCollapsedRowIcon( mCollapsedIconInFocus, dc, FALSE );
 }
 
 void cbRowDragPlugin::ShowDraggedRow( int offset )
 {
-       // create combined image of pane and dragged
-       // row on it, in the mpCombinedImage bitmap
+    // create combined image of pane and dragged
+    // row on it, in the mpCombinedImage bitmap
 
-       if ( mpPane->IsHorizontal() )
-       {
-               if ( mInitialRowOfs + offset + mRowImgDim.y > mCombRect.y + mCombRect.height )
+    if ( mpPane->IsHorizontal() )
+    {
+        if ( mInitialRowOfs + offset + mRowImgDim.y > mCombRect.y + mCombRect.height )
 
-                       offset = mCombRect.y + mCombRect.height - mRowImgDim.y - mInitialRowOfs;
+            offset = mCombRect.y + mCombRect.height - mRowImgDim.y - mInitialRowOfs;
 
-               if ( mInitialRowOfs + offset < mCombRect.y )
+        if ( mInitialRowOfs + offset < mCombRect.y )
 
-                       offset = mCombRect.y - mInitialRowOfs;
+            offset = mCombRect.y - mInitialRowOfs;
 
-               int x, y = mInitialRowOfs + offset;
-               mpPane->FrameToPane( &x, &y );
-               mCurDragOfs = y;
-       }
-       else
-       {
-               if ( mInitialRowOfs + offset + mRowImgDim.x > mCombRect.x + mCombRect.width )
+        int x, y = mInitialRowOfs + offset;
+        mpPane->FrameToPane( &x, &y );
+        mCurDragOfs = y;
+    }
+    else
+    {
+        if ( mInitialRowOfs + offset + mRowImgDim.x > mCombRect.x + mCombRect.width )
 
-                       offset = mCombRect.x + mCombRect.width - mRowImgDim.x - mInitialRowOfs;
+            offset = mCombRect.x + mCombRect.width - mRowImgDim.x - mInitialRowOfs;
 
-               if ( mInitialRowOfs + offset < mCombRect.x )
+        if ( mInitialRowOfs + offset < mCombRect.x )
 
-                       offset = mCombRect.x - mInitialRowOfs;
+            offset = mCombRect.x - mInitialRowOfs;
 
-               int x = mInitialRowOfs + offset, y;
-               mpPane->FrameToPane( &x, &y );
-               mCurDragOfs = x;
-       }
+        int x = mInitialRowOfs + offset, y;
+        mpPane->FrameToPane( &x, &y );
+        mCurDragOfs = x;
+    }
 
-       wxMemoryDC rowImgDc;
-       rowImgDc.SelectObject ( *mpRowImage );
+    wxMemoryDC rowImgDc;
+    rowImgDc.SelectObject ( *mpRowImage );
 
-       wxMemoryDC paneImgDc;
-       paneImgDc.SelectObject( *mpPaneImage );
+    wxMemoryDC paneImgDc;
+    paneImgDc.SelectObject( *mpPaneImage );
 
-       wxMemoryDC combImgDc;
-       combImgDc.SelectObject( *mpCombinedImage );
+    wxMemoryDC combImgDc;
+    combImgDc.SelectObject( *mpCombinedImage );
 
-       combImgDc.Blit( 0,0, mCombRect.width, mCombRect.height,
-                           &paneImgDc, 0,0, wxCOPY );
+    combImgDc.Blit( 0,0, mCombRect.width, mCombRect.height,
+                    &paneImgDc, 0,0, wxCOPY );
 
-       if ( mpPane->IsHorizontal() )
-       {       
-               combImgDc.Blit( 0, mInitialRowOfs + offset - mCombRect.y,
-                                               mCombRect.width, mRowImgDim.y,
-                                               &rowImgDc, 0,0, wxCOPY );
-       }
-       else
-       {
-               combImgDc.Blit( mInitialRowOfs + offset - mCombRect.x,
-                                   0,
-                                               mRowImgDim.x, mCombRect.height,
-                                               &rowImgDc, 0,0, wxCOPY );
-       }
+    if ( mpPane->IsHorizontal() )
+    {    
+        combImgDc.Blit( 0, mInitialRowOfs + offset - mCombRect.y,
+                        mCombRect.width, mRowImgDim.y,
+                        &rowImgDc, 0,0, wxCOPY );
+    }
+    else
+    {
+        combImgDc.Blit( mInitialRowOfs + offset - mCombRect.x,
+                        0,
+                        mRowImgDim.x, mCombRect.height,
+                        &rowImgDc, 0,0, wxCOPY );
+    }
 
-       int scrX = mCombRect.x,
-           scrY = mCombRect.y;
+    int scrX = mCombRect.x,
+        scrY = mCombRect.y;
 
-       mpLayout->GetParentFrame().ClientToScreen( &scrX, &scrY );
+    mpLayout->GetParentFrame().ClientToScreen( &scrX, &scrY );
 
-       mpScrDc->Blit( scrX, scrY, mCombRect.width, mCombRect.height,
-                          &combImgDc, 0,0, wxCOPY );
+    mpScrDc->Blit( scrX, scrY, mCombRect.width, mCombRect.height,
+                   &combImgDc, 0,0, wxCOPY );
 
-       rowImgDc .SelectObject( wxNullBitmap );
-       paneImgDc.SelectObject( wxNullBitmap );
-       combImgDc.SelectObject( wxNullBitmap );
+    rowImgDc .SelectObject( wxNullBitmap );
+    paneImgDc.SelectObject( wxNullBitmap );
+    combImgDc.SelectObject( wxNullBitmap );
 }
 
 wxBitmap* cbRowDragPlugin::CaptureDCArea( wxDC& dc, wxRect& area )
 {
-       wxBitmap* pBmp = new wxBitmap( int(area.width), int(area.height) );
+    wxBitmap* pBmp = new wxBitmap( int(area.width), int(area.height) );
 
-       wxMemoryDC mdc;
-       mdc.SelectObject( *pBmp );
+    wxMemoryDC mdc;
+    mdc.SelectObject( *pBmp );
 
-       mdc.Blit( 0,0, area.width, area.height, &dc, area.x, area.y, wxCOPY );
-       mdc.SelectObject( wxNullBitmap );
+    mdc.Blit( 0,0, area.width, area.height, &dc, area.x, area.y, wxCOPY );
+    mdc.SelectObject( wxNullBitmap );
 
-       return pBmp;
+    return pBmp;
 }
 
 void cbRowDragPlugin::PrepareForRowDrag()
 {
-       wxRect rowBounds = mpRowInFocus->mBoundsInParent;
+    wxRect rowBounds = mpRowInFocus->mBoundsInParent;
 
-       if ( mpPane->IsHorizontal() )
-       {
-               mCombRect         = mpPane->mBoundsInParent;
+    if ( mpPane->IsHorizontal() )
+    {
+        mCombRect         = mpPane->mBoundsInParent;
 
-               mCombRect.x += mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1;
-               mCombRect.y += mpPane->mTopMargin;
+        mCombRect.x += mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1;
+        mCombRect.y += mpPane->mTopMargin;
 
-               mCombRect.width  -= mpPane->mLeftMargin + mpPane->mRightMargin - ROW_DRAG_HINT_WIDTH - 1 - 1;
-               mCombRect.height -= mpPane->mTopMargin  + mpPane->mBottomMargin;
+        mCombRect.width  -= mpPane->mLeftMargin + mpPane->mRightMargin - ROW_DRAG_HINT_WIDTH - 1 - 1;
+        mCombRect.height -= mpPane->mTopMargin  + mpPane->mBottomMargin;
 
-               mCombRect.height += 2*rowBounds.height;
-               mCombRect.y      -= rowBounds.height;
-               mInitialRowOfs     = rowBounds.y;
+        mCombRect.height += 2*rowBounds.height;
+        mCombRect.y      -= rowBounds.height;
+        mInitialRowOfs     = rowBounds.y;
 
-               rowBounds.y      -= 1;
-               rowBounds.height += 2;
-               rowBounds.x      = mCombRect.x;
-               rowBounds.width  = mCombRect.width;
+        rowBounds.y      -= 1;
+        rowBounds.height += 2;
+        rowBounds.x      = mCombRect.x;
+        rowBounds.width  = mCombRect.width;
 
-               mRowImgDim.y     = rowBounds.height;
-       }
-       else
-       {
-               mCombRect = mpPane->mBoundsInParent;
+        mRowImgDim.y     = rowBounds.height;
+    }
+    else
+    {
+        mCombRect = mpPane->mBoundsInParent;
 
-               mCombRect.y += mpPane->mTopMargin  - 1; 
-               mCombRect.x += mpPane->mLeftMargin - 1;
-                       ;
-               mCombRect.height -= mpPane->mTopMargin  + mpPane->mBottomMargin - ROW_DRAG_HINT_WIDTH - 1 - 1;
-               mCombRect.width  -= mpPane->mLeftMargin + mpPane->mRightMargin;
+        mCombRect.y += mpPane->mTopMargin  - 1; 
+        mCombRect.x += mpPane->mLeftMargin - 1;
+            ;
+        mCombRect.height -= mpPane->mTopMargin  + mpPane->mBottomMargin - ROW_DRAG_HINT_WIDTH - 1 - 1;
+        mCombRect.width  -= mpPane->mLeftMargin + mpPane->mRightMargin;
 
-               mCombRect.width += 2*rowBounds.width;
-               mCombRect.x     -= rowBounds.width;
-               mInitialRowOfs    = rowBounds.x;
+        mCombRect.width += 2*rowBounds.width;
+        mCombRect.x     -= rowBounds.width;
+        mInitialRowOfs    = rowBounds.x;
 
-               rowBounds.x      -= 1;
-               rowBounds.width  += 2;
-               rowBounds.y      = mCombRect.y;
-               rowBounds.height = mCombRect.height;
+        rowBounds.x      -= 1;
+        rowBounds.width  += 2;
+        rowBounds.y      = mCombRect.y;
+        rowBounds.height = mCombRect.height;
 
-               mRowImgDim.x     = rowBounds.width;
-       }
-       // output cobination results onto frame's client area
-       wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
-       mpScrDc = new wxScreenDC();
+        mRowImgDim.x     = rowBounds.width;
+    }
+    // output cobination results onto frame's client area
+    wxScreenDC::StartDrawingOnTop(&mpLayout->GetParentFrame());
+    mpScrDc = new wxScreenDC();
 
-       int x = mCombRect.x, y = mCombRect.y;
-       mpLayout->GetParentFrame().ClientToScreen( &x, &y );
+    int x = mCombRect.x, y = mCombRect.y;
+    mpLayout->GetParentFrame().ClientToScreen( &x, &y );
 
-       wxRect scrRect = mCombRect;
-       scrRect.x = x;
-       scrRect.y = y;
+    wxRect scrRect = mCombRect;
+    scrRect.x = x;
+    scrRect.y = y;
 
-       mpPaneImage = CaptureDCArea( *mpScrDc, scrRect );
+    mpPaneImage = CaptureDCArea( *mpScrDc, scrRect );
 
-       wxMemoryDC mdc;
-       mdc.SelectObject( *mpPaneImage );
-       mdc.SetDeviceOrigin( -mCombRect.x, -mCombRect.y );
+    wxMemoryDC mdc;
+    mdc.SelectObject( *mpPaneImage );
+    mdc.SetDeviceOrigin( -mCombRect.x, -mCombRect.y );
 
-       DrawRectShade( rowBounds, mdc, -1, mpLayout->mGrayPen,  mpLayout->mDarkPen  );
-       DrawRectShade( rowBounds, mdc, 0, mpLayout->mLightPen, mpLayout->mBlackPen );
+    DrawRectShade( rowBounds, mdc, -1, mpLayout->mGrayPen,  mpLayout->mDarkPen  );
+    DrawRectShade( rowBounds, mdc, 0, mpLayout->mLightPen, mpLayout->mBlackPen );
 
-       mpRowImage = CaptureDCArea( mdc, rowBounds );
+    mpRowImage = CaptureDCArea( mdc, rowBounds );
 
-       // draw dark empty-row placeholder
-       DrawEmptyRow( mdc, rowBounds );
+    // draw dark empty-row placeholder
+    DrawEmptyRow( mdc, rowBounds );
 
-       //DrawRectShade( rowBounds, mdc, 0, mpLayout->mGrayPen,  mpLayout->mDarkPen  );
-       DrawRectShade( rowBounds, mdc, -1, mpLayout->mGrayPen, mpLayout->mGrayPen );
+    //DrawRectShade( rowBounds, mdc, 0, mpLayout->mGrayPen,  mpLayout->mDarkPen  );
+    DrawRectShade( rowBounds, mdc, -1, mpLayout->mGrayPen, mpLayout->mGrayPen );
 
-       mdc.SelectObject( wxNullBitmap );
+    mdc.SelectObject( wxNullBitmap );
 
-       mpCombinedImage = new wxBitmap( int(mCombRect.width), int(mCombRect.height) );
+    mpCombinedImage = new wxBitmap( int(mCombRect.width), int(mCombRect.height) );
 
-       // show it for the first time
-       ShowDraggedRow( 0 );
+    // show it for the first time
+    ShowDraggedRow( 0 );
 }
 
 void cbRowDragPlugin::DrawEmptyRow( wxDC& dc, wxRect& rowBounds )
 {
-       wxBrush bkBrush( mpLayout->mDarkPen.GetColour(), wxSOLID );
+    wxBrush bkBrush( mpLayout->mDarkPen.GetColour(), wxSOLID );
 
-       // paint the "dark" empty-row placeholder
+    // paint the "dark" empty-row placeholder
 
-       dc.SetBrush( bkBrush );
-       dc.SetPen  ( mpLayout->mNullPen );
+    dc.SetBrush( bkBrush );
+    dc.SetPen  ( mpLayout->mNullPen );
 
-       dc.DrawRectangle( rowBounds.x, rowBounds.y, 
-                                         rowBounds.width+1, rowBounds.height+1 );
+    dc.DrawRectangle( rowBounds.x, rowBounds.y, 
+                      rowBounds.width+1, rowBounds.height+1 );
 
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::ShowPaneImage()
 {
-       int scrX = 0, scrY = 0;
+    int scrX = 0, scrY = 0;
 
-       mpLayout->GetParentFrame().ClientToScreen( &scrX, &scrY );
+    mpLayout->GetParentFrame().ClientToScreen( &scrX, &scrY );
 
-       wxMemoryDC mdc;
-       mdc.SelectObject( *mpPaneImage );
+    wxMemoryDC mdc;
+    mdc.SelectObject( *mpPaneImage );
 
-       mpScrDc->Blit( mCombRect.x + scrX, mCombRect.y + scrY, 
-                                  mCombRect.width, mCombRect.height,
-                              &mdc, 0,0, wxCOPY );
+    mpScrDc->Blit( mCombRect.x + scrX, mCombRect.y + scrY, 
+                   mCombRect.width, mCombRect.height,
+                   &mdc, 0,0, wxCOPY );
 
-       mdc.SelectObject( wxNullBitmap );
+    mdc.SelectObject( wxNullBitmap );
 }
 
 void cbRowDragPlugin::FinishOnScreenDraw()
 {
-       wxScreenDC::EndDrawingOnTop();
+    wxScreenDC::EndDrawingOnTop();
 
-       delete mpScrDc;
-       delete mpCombinedImage;
-       delete mpPaneImage;
-       delete mpRowImage;
+    delete mpScrDc;
+    delete mpCombinedImage;
+    delete mpPaneImage;
+    delete mpRowImage;
 
-       mpScrDc = NULL;
-       
-       mpCombinedImage = mpPaneImage = mpRowImage = NULL;
+    mpScrDc = NULL;
+    
+    mpCombinedImage = mpPaneImage = mpRowImage = NULL;
 }
 
 void cbRowDragPlugin::CollapseRow( cbRowInfo* pRow )
 {
-       int iconCnt = GetHRowsCountForPane( mpPane );
+    int iconCnt = GetHRowsCountForPane( mpPane );
 
-       mpLayout->GetUpdatesManager().OnStartChanges();
+    mpLayout->GetUpdatesManager().OnStartChanges();
 
-       cbBarInfo* pBar = pRow->mBars[0];
+    cbBarInfo* pBar = pRow->mBars[0];
 
-       int rowNo = 0;
+    int rowNo = 0;
 
-       cbRowInfo* pCur = pRow;
-       while( pCur->mpPrev ) { ++rowNo; pCur = pCur->mpPrev; }
+    cbRowInfo* pCur = pRow;
+    while( pCur->mpPrev ) { ++rowNo; pCur = pCur->mpPrev; }
 
-       while( pBar )
-       {
-               cbHiddenBarInfo* pHBInfo = new cbHiddenBarInfo();
-                                                   
-               pHBInfo->mpBar      = pBar;
-               pHBInfo->mRowNo     = rowNo;
-               pHBInfo->mIconNo    = iconCnt;
-               pHBInfo->mAlignment     = mpPane->mAlignment;
+    while( pBar )
+    {
+        cbHiddenBarInfo* pHBInfo = new cbHiddenBarInfo();
+                            
+        pHBInfo->mpBar      = pBar;
+        pHBInfo->mRowNo     = rowNo;
+        pHBInfo->mIconNo    = iconCnt;
+        pHBInfo->mAlignment    = mpPane->mAlignment;
 
-               mHiddenBars.Append( (wxObject*) pHBInfo );
+        mHiddenBars.Append( (wxObject*) pHBInfo );
 
-               // hide it
-               if ( pBar->mpBarWnd )
+        // hide it
+        if ( pBar->mpBarWnd )
 
-                       pBar->mpBarWnd->Show( FALSE );
+            pBar->mpBarWnd->Show( FALSE );
 
-               pBar->mState = wxCBAR_HIDDEN;
+        pBar->mState = wxCBAR_HIDDEN;
 
-               cbBarInfo* pNext = pBar->mpNext;
+        cbBarInfo* pNext = pBar->mpNext;
 
-               pBar->mpRow  = NULL;
-               pBar->mpNext = NULL;
-               pBar->mpPrev = NULL;
+        pBar->mpRow  = NULL;
+        pBar->mpNext = NULL;
+        pBar->mpPrev = NULL;
 
-               pBar = pNext;
-       }
+        pBar = pNext;
+    }
 
-       mpPane->GetRowList().Remove( pRow );
-       mpPane->InitLinksForRows();
+    mpPane->GetRowList().Remove( pRow );
+    mpPane->InitLinksForRows();
 
-       delete pRow;
+    delete pRow;
 
-       SetPaneMargins();
+    SetPaneMargins();
 
-       mpLayout->RecalcLayout(FALSE);
+    mpLayout->RecalcLayout(FALSE);
 
-       mpRowInFocus = NULL;
+    mpRowInFocus = NULL;
 
-       mpLayout->GetUpdatesManager().OnFinishChanges();
-       mpLayout->GetUpdatesManager().UpdateNow();
+    mpLayout->GetUpdatesManager().OnFinishChanges();
+    mpLayout->GetUpdatesManager().UpdateNow();
 }
 
 void cbRowDragPlugin::ExpandRow( int collapsedIconIdx )
 {
-       mpLayout->GetUpdatesManager().OnStartChanges();
+    mpLayout->GetUpdatesManager().OnStartChanges();
 
-       cbRowInfo* pNewRow = new cbRowInfo();
+    cbRowInfo* pNewRow = new cbRowInfo();
 
-       wxNode* pNode = mHiddenBars.First();
+    wxNode* pNode = mHiddenBars.First();
 
-       int rowNo = 0;
+    int rowNo = 0;
 
-       // move bars from internal list to the newly expanded row 
+    // move bars from internal list to the newly expanded row 
 
-       while( pNode )
-       {
-               cbHiddenBarInfo* pHBInfo = (cbHiddenBarInfo*)pNode->Data();
+    while( pNode )
+    {
+        cbHiddenBarInfo* pHBInfo = (cbHiddenBarInfo*)pNode->Data();
 
-               if ( pHBInfo->mAlignment     == mpPane->mAlignment &&
-                        pHBInfo->mIconNo        == collapsedIconIdx   )
-               {
-                       rowNo = pHBInfo->mRowNo;
+        if ( pHBInfo->mAlignment     == mpPane->mAlignment &&
+             pHBInfo->mIconNo        == collapsedIconIdx   )
+        {
+            rowNo = pHBInfo->mRowNo;
 
-                       if ( pHBInfo->mpBar->mState == wxCBAR_HIDDEN )
-                       {
-                               pNewRow->mBars.Add( pHBInfo->mpBar );
+            if ( pHBInfo->mpBar->mState == wxCBAR_HIDDEN )
+            {
+                pNewRow->mBars.Add( pHBInfo->mpBar );
 
-                               pHBInfo->mpBar->mState = ( mpPane->IsHorizontal() ) 
-                                                                                ? wxCBAR_DOCKED_HORIZONTALLY
-                                                                                : wxCBAR_DOCKED_VERTICALLY;
-                       }
+                pHBInfo->mpBar->mState = ( mpPane->IsHorizontal() ) 
+                                         ? wxCBAR_DOCKED_HORIZONTALLY
+                                         : wxCBAR_DOCKED_VERTICALLY;
+            }
 
-                       // remove bar info from internal list
+            // remove bar info from internal list
 
-                       wxNode* pNext = pNode->Next();
+            wxNode* pNext = pNode->Next();
 
-                       delete pHBInfo;
-                       mHiddenBars.DeleteNode( pNode );
+            delete pHBInfo;
+            mHiddenBars.DeleteNode( pNode );
 
-                       pNode = pNext;
-               }
-               else
-               {
-                       // decrease incon numbers with higher indicies, since this
-                       // row is now removed from the hidden-rows list
+            pNode = pNext;
+        }
+        else
+        {
+            // decrease incon numbers with higher indicies, since this
+            // row is now removed from the hidden-rows list
 
-                       if ( pHBInfo->mIconNo    > collapsedIconIdx &&
-                                pHBInfo->mAlignment == mpPane->mAlignment )
+            if ( pHBInfo->mIconNo    > collapsedIconIdx &&
+                 pHBInfo->mAlignment == mpPane->mAlignment )
 
-                               --pHBInfo->mIconNo;
+                --pHBInfo->mIconNo;
 
-                       pNode = pNode->Next();
-               }
-       }
+            pNode = pNode->Next();
+        }
+    }
 
-       mpPane->InitLinksForRow( pNewRow );
+    mpPane->InitLinksForRow( pNewRow );
 
-       // insert row into pane at it's original position
+    // insert row into pane at it's original position
 
-       if ( pNewRow->mBars.GetCount() )
-       {
-               cbRowInfo* beforeRowNode = mpPane->GetRow( rowNo );
+    if ( pNewRow->mBars.GetCount() )
+    {
+        cbRowInfo* beforeRowNode = mpPane->GetRow( rowNo );
 
-               mpPane->InsertRow( pNewRow, beforeRowNode );
-       }
-       else
-               delete pNewRow;
+        mpPane->InsertRow( pNewRow, beforeRowNode );
+    }
+    else
+        delete pNewRow;
 
-       SetPaneMargins();
+    SetPaneMargins();
 
-       mpLayout->RecalcLayout(FALSE);
+    mpLayout->RecalcLayout(FALSE);
 
-       mCollapsedIconInFocus = -1;
+    mCollapsedIconInFocus = -1;
 
-       mpLayout->GetUpdatesManager().OnFinishChanges();
-       mpLayout->GetUpdatesManager().UpdateNow();
+    mpLayout->GetUpdatesManager().OnFinishChanges();
+    mpLayout->GetUpdatesManager().UpdateNow();
 
 
-       /*
-       wxNode* pRowNode = mHiddenRows.Nth( collapsedIconIdx );
+    /*
+    wxNode* pRowNode = mHiddenRows.Nth( collapsedIconIdx );
 
-       mpLayout->GetUpdatesManager().OnStartChanges();
+    mpLayout->GetUpdatesManager().OnStartChanges();
 
-       // insert at the end of rows list
-       mpPane->InsertRow( pRowNode, NULL );
+    // insert at the end of rows list
+    mpPane->InsertRow( pRowNode, NULL );
 
-       int success = mHiddenRows.DeleteNode( pRowNode );
-       // DBG::
-       wxASSERT( success );
+    int success = mHiddenRows.DeleteNode( pRowNode );
+    // DBG::
+    wxASSERT( success );
 
-       SetPaneMargins();
+    SetPaneMargins();
 
-       mpLayout->RecalcLayout(FALSE);
+    mpLayout->RecalcLayout(FALSE);
 
-       mCollapsedIconInFocus = -1;
+    mCollapsedIconInFocus = -1;
 
-       mpLayout->GetUpdatesManager().OnFinishChanges();
-       mpLayout->GetUpdatesManager().UpdateNow();
-       */
+    mpLayout->GetUpdatesManager().OnFinishChanges();
+    mpLayout->GetUpdatesManager().UpdateNow();
+    */
 }
 
 void cbRowDragPlugin::InsertDraggedRowBefore( cbRowInfo* pBeforeRow )
 {
-       if ( mpRowInFocus != pBeforeRow &&
-                mpRowInFocus->mpNext != pBeforeRow 
-          )
-       {
-               mpPane->GetRowList().Remove( mpRowInFocus );
-
-               mpPane->InsertRow( mpRowInFocus, pBeforeRow );
-       }
-       else 
-       {
-               // otherwise, nothing has happned (row positions do not change)
-
-               //wxClientDC dc( &mpLayout->GetParentFrame() );
-
-               //mpPane->PaintRow( mpRowInFocus, dc );
-               //DrawRowDragHint( mpRowInFocus, dc, FALSE );
-       }
+    if ( mpRowInFocus != pBeforeRow &&
+         mpRowInFocus->mpNext != pBeforeRow 
+       )
+    {
+        mpPane->GetRowList().Remove( mpRowInFocus );
+
+        mpPane->InsertRow( mpRowInFocus, pBeforeRow );
+    }
+    else 
+    {
+        // otherwise, nothing has happned (row positions do not change)
+
+        //wxClientDC dc( &mpLayout->GetParentFrame() );
+
+        //mpPane->PaintRow( mpRowInFocus, dc );
+        //DrawRowDragHint( mpRowInFocus, dc, FALSE );
+    }
 }
 
 bool cbRowDragPlugin::ItemIsInFocus()
 {
-       return ( mpRowInFocus || mCollapsedIconInFocus != - 1 );
+    return ( mpRowInFocus || mCollapsedIconInFocus != - 1 );
 }
 
 void cbRowDragPlugin::CheckPrevItemInFocus( cbRowInfo* pRow, int iconIdx )
 {
-       wxClientDC dc( &mpLayout->GetParentFrame() );
+    wxClientDC dc( &mpLayout->GetParentFrame() );
 
-       if ( pRow != NULL && mpRowInFocus == pRow ) return;
-       if ( iconIdx != -1 && mCollapsedIconInFocus == iconIdx ) return;
+    if ( pRow != NULL && mpRowInFocus == pRow ) return;
+    if ( iconIdx != -1 && mCollapsedIconInFocus == iconIdx ) return;
 
-       UnhiglightItemInFocus();
+    UnhighlightItemInFocus();
 
-       if ( iconIdx != - 1 )
-       
-               DrawCollapsedRowIcon( iconIdx, dc, TRUE );
+    if ( iconIdx != - 1 )
+    
+        DrawCollapsedRowIcon( iconIdx, dc, TRUE );
 
-       else
-       if ( pRow != NULL )
+    else
+    if ( pRow != NULL )
 
-               DrawRowDragHint( pRow, dc, TRUE );
+        DrawRowDragHint( pRow, dc, TRUE );
 }
 
 cbRowInfo* cbRowDragPlugin::GetFirstRow()
 {
-       return ( mpPane->GetRowList().GetCount() ) 
-                  ? mpPane->GetRowList()[0]
-                  : NULL;
+    return ( mpPane->GetRowList().GetCount() ) 
+           ? mpPane->GetRowList()[0]
+           : NULL;
 }
 
 /*** "hard-coded" metafile for NN-look ***/
 
 void cbRowDragPlugin::DrawTrianUp( wxRect& inRect, wxDC& dc )
 {
-       int xOfs = (inRect.width - ICON_TRIAN_WIDTH)/2;
+    int xOfs = (inRect.width - ICON_TRIAN_WIDTH)/2;
 
-       wxBrush br( mTrianInnerColor, wxSOLID );
+    wxBrush br( mTrianInnerColor, wxSOLID );
 
-       dc.SetBrush( br );
-       dc.SetPen( mpLayout->mBlackPen );
+    dc.SetBrush( br );
+    dc.SetPen( mpLayout->mBlackPen );
 
-       wxPoint points[3];
-       points[0].x = inRect.x + xOfs;
-       points[0].y = inRect.y + inRect.height - 1;
-       points[1].x = inRect.x + xOfs + ICON_TRIAN_WIDTH/2 + 1;
-       points[1].y = inRect.y + inRect.height - 2 - ICON_TRIAN_HEIGHT;
-       points[2].x = inRect.x + xOfs + ICON_TRIAN_WIDTH+1;
-       points[2].y = inRect.y + inRect.height - 1;
+    wxPoint points[3];
+    points[0].x = inRect.x + xOfs;
+    points[0].y = inRect.y + inRect.height - 1;
+    points[1].x = inRect.x + xOfs + ICON_TRIAN_WIDTH/2 + 1;
+    points[1].y = inRect.y + inRect.height - 2 - ICON_TRIAN_HEIGHT;
+    points[2].x = inRect.x + xOfs + ICON_TRIAN_WIDTH+1;
+    points[2].y = inRect.y + inRect.height - 1;
 
-       dc.DrawPolygon( 3, points );
+    dc.DrawPolygon( 3, points );
 
-       // higlight upper-right edge of triangle
-       dc.SetPen( mpLayout->mLightPen );
-       dc.DrawLine( points[2].x, points[2].y,
-                        points[0].x, points[0].y );
+    // higlight upper-right edge of triangle
+    dc.SetPen( mpLayout->mLightPen );
+    dc.DrawLine( points[2].x, points[2].y,
+                 points[0].x, points[0].y );
 
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::DrawTrianDown( wxRect& inRect, wxDC& dc )
 {
-       int xOfs = (inRect.width - ICON_TRIAN_WIDTH)/2;
+    int xOfs = (inRect.width - ICON_TRIAN_WIDTH)/2;
 
-       wxBrush br( mTrianInnerColor, wxSOLID );
+    wxBrush br( mTrianInnerColor, wxSOLID );
 
-       dc.SetBrush( br );
-       dc.SetPen( mpLayout->mBlackPen );
+    dc.SetBrush( br );
+    dc.SetPen( mpLayout->mBlackPen );
 
-       wxPoint points[3];
-       points[0].x = inRect.x + xOfs;
-       points[0].y = inRect.y;
-       points[1].x = inRect.x + xOfs + ICON_TRIAN_WIDTH;
-       points[1].y = inRect.y;
-       points[2].x = inRect.x + xOfs + ICON_TRIAN_WIDTH/2;
-       points[2].y = inRect.y + ICON_TRIAN_HEIGHT;
+    wxPoint points[3];
+    points[0].x = inRect.x + xOfs;
+    points[0].y = inRect.y;
+    points[1].x = inRect.x + xOfs + ICON_TRIAN_WIDTH;
+    points[1].y = inRect.y;
+    points[2].x = inRect.x + xOfs + ICON_TRIAN_WIDTH/2;
+    points[2].y = inRect.y + ICON_TRIAN_HEIGHT;
 
-       dc.DrawPolygon( 3, points );
+    dc.DrawPolygon( 3, points );
 
-       // higlight upper-right edge of triangle
-       dc.SetPen( mpLayout->mLightPen );
-       dc.DrawLine( points[2].x, points[2].y,
-                        points[1].x, points[1].y );
+    // higlight upper-right edge of triangle
+    dc.SetPen( mpLayout->mLightPen );
+    dc.DrawLine( points[2].x, points[2].y,
+                 points[1].x, points[1].y );
 
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::DrawTrianRight( wxRect& inRect, wxDC& dc )
 {
-       int yOfs = (inRect.height - ICON_TRIAN_WIDTH)/2;
+    int yOfs = (inRect.height - ICON_TRIAN_WIDTH)/2;
 
-       wxBrush br( mTrianInnerColor, wxSOLID );
+    wxBrush br( mTrianInnerColor, wxSOLID );
 
-       dc.SetBrush( br );
-       dc.SetPen( mpLayout->mBlackPen );
+    dc.SetBrush( br );
+    dc.SetPen( mpLayout->mBlackPen );
 
-       wxPoint points[3];
-       points[0].x = inRect.x;
-       points[0].y = inRect.y + yOfs + ICON_TRIAN_WIDTH;
-       points[1].x = inRect.x;
-       points[1].y = inRect.y + yOfs;
-       points[2].x = inRect.x + ICON_TRIAN_HEIGHT;
-       points[2].y = inRect.y + yOfs + ICON_TRIAN_WIDTH/2;
+    wxPoint points[3];
+    points[0].x = inRect.x;
+    points[0].y = inRect.y + yOfs + ICON_TRIAN_WIDTH;
+    points[1].x = inRect.x;
+    points[1].y = inRect.y + yOfs;
+    points[2].x = inRect.x + ICON_TRIAN_HEIGHT;
+    points[2].y = inRect.y + yOfs + ICON_TRIAN_WIDTH/2;
 
-       dc.DrawPolygon( 3, points );
+    dc.DrawPolygon( 3, points );
 
-       // higlight upper-right edge of triangle
-       dc.SetPen( mpLayout->mLightPen );
-       dc.DrawLine( points[0].x, points[0].y,
-                        points[2].x, points[2].y );
+    // higlight upper-right edge of triangle
+    dc.SetPen( mpLayout->mLightPen );
+    dc.DrawLine( points[0].x, points[0].y,
+                 points[2].x, points[2].y );
 
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::Draw3DPattern( wxRect& inRect, wxDC& dc )
 {
-       for( int y = inRect.y; y < inRect.y + inRect.height; y+=3 )
-       
-               for( int x = inRect.x; x < inRect.x + inRect.width; x+=3 )
-               {
-                       dc.SetPen( mpLayout->mLightPen );
-                       dc.DrawPoint( x,y );
-                       dc.SetPen( mpLayout->mBlackPen );
-                       dc.DrawPoint( x+1, y+1 );
-               }
+    for( int y = inRect.y; y < inRect.y + inRect.height; y+=3 )
+    
+        for( int x = inRect.x; x < inRect.x + inRect.width; x+=3 )
+        {
+            dc.SetPen( mpLayout->mLightPen );
+            dc.DrawPoint( x,y );
+            dc.SetPen( mpLayout->mBlackPen );
+            dc.DrawPoint( x+1, y+1 );
+        }
 }
 
 void cbRowDragPlugin::DrawRombShades( wxPoint& p1, wxPoint& p2, 
-                                                                         wxPoint& p3, wxPoint& p4,
-                                                                         wxDC& dc )
+                                      wxPoint& p3, wxPoint& p4,
+                                      wxDC& dc )
 {
-       dc.SetPen( mpLayout->mLightPen );
-       dc.DrawLine( p1.x, p1.y, p2.x, p2.y );
-       dc.DrawLine( p2.x, p2.y, p3.x, p3.y );
-       dc.SetPen( mpLayout->mDarkPen );
-       dc.DrawLine( p3.x, p3.y, p4.x, p4.y );
-       dc.DrawLine( p4.x, p4.y, p1.x, p1.y );
+    dc.SetPen( mpLayout->mLightPen );
+    dc.DrawLine( p1.x, p1.y, p2.x, p2.y );
+    dc.DrawLine( p2.x, p2.y, p3.x, p3.y );
+    dc.SetPen( mpLayout->mDarkPen );
+    dc.DrawLine( p3.x, p3.y, p4.x, p4.y );
+    dc.DrawLine( p4.x, p4.y, p1.x, p1.y );
 }
 
 void cbRowDragPlugin::DrawOrtoRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush )
 {
-       dc.SetBrush( bkBrush );
-       dc.SetPen( mpLayout->mBlackPen );
-
-       wxPoint points[4];
-
-       if ( inRect.width > inRect.height )
-       {
-               // horizontal orienation
-               points[0].x = inRect.x;
-               points[0].y = inRect.y + inRect.height;
-               points[1].x = inRect.x;
-               points[1].y = inRect.y;
-               points[2].x = inRect.x + inRect.width;
-               points[2].y = inRect.y;
-               points[3].x = inRect.x + inRect.width - COLLAPSED_ICON_HEIGHT;
-               points[3].y = inRect.y + inRect.height;
-
-               dc.DrawPolygon( 4, points );
-
-               // squeeze romb's bounds to create an inner-shade shape
-               ++points[0].x;
-               --points[0].y;
-               ++points[1].x;
-               ++points[1].y;
-               --points[2].x; --points[2].x;
-               ++points[2].y;
-               --points[3].y;
-
-               DrawRombShades( points[0], points[1], points[2], points[3], dc );
-       }
-       else
-       {
-               // vertical orientation
-               points[0].x = inRect.x + inRect.width;
-               points[0].y = inRect.y + inRect.height;
-               points[1].x = inRect.x;
-               points[1].y = inRect.y + inRect.height;
-               points[2].x = inRect.x;
-               points[2].y = inRect.y;
-               points[3].x = inRect.x + inRect.width;
-               points[3].y = inRect.y + COLLAPSED_ICON_HEIGHT;
-
-               dc.DrawPolygon( 4, points );
-
-               // squeeze romb's bounds to create an inner-shade shape
-               --points[0].y ;
-               --points[0].x;
-               ++points[1].x;
-               --points[1].y;
-               ++points[2].y; ++points[2].y;
-               ++points[2].x;
-               --points[3].x;
-
-               DrawRombShades( points[1], points[2], points[3], points[0], dc );
-       }
-
-       dc.SetBrush( wxNullBrush );
+    dc.SetBrush( bkBrush );
+    dc.SetPen( mpLayout->mBlackPen );
+
+    wxPoint points[4];
+
+    if ( inRect.width > inRect.height )
+    {
+        // horizontal orienation
+        points[0].x = inRect.x;
+        points[0].y = inRect.y + inRect.height;
+        points[1].x = inRect.x;
+        points[1].y = inRect.y;
+        points[2].x = inRect.x + inRect.width;
+        points[2].y = inRect.y;
+        points[3].x = inRect.x + inRect.width - COLLAPSED_ICON_HEIGHT;
+        points[3].y = inRect.y + inRect.height;
+
+        dc.DrawPolygon( 4, points );
+
+        // squeeze romb's bounds to create an inner-shade shape
+        ++points[0].x;
+        --points[0].y;
+        ++points[1].x;
+        ++points[1].y;
+        --points[2].x; --points[2].x;
+        ++points[2].y;
+        --points[3].y;
+
+        DrawRombShades( points[0], points[1], points[2], points[3], dc );
+    }
+    else
+    {
+        // vertical orientation
+        points[0].x = inRect.x + inRect.width;
+        points[0].y = inRect.y + inRect.height;
+        points[1].x = inRect.x;
+        points[1].y = inRect.y + inRect.height;
+        points[2].x = inRect.x;
+        points[2].y = inRect.y;
+        points[3].x = inRect.x + inRect.width;
+        points[3].y = inRect.y + COLLAPSED_ICON_HEIGHT;
+
+        dc.DrawPolygon( 4, points );
+
+        // squeeze romb's bounds to create an inner-shade shape
+        --points[0].y ;
+        --points[0].x;
+        ++points[1].x;
+        --points[1].y;
+        ++points[2].y; ++points[2].y;
+        ++points[2].x;
+        --points[3].x;
+
+        DrawRombShades( points[1], points[2], points[3], points[0], dc );
+    }
+
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::DrawRomb( wxRect& inRect, wxDC& dc, wxBrush& bkBrush )
 {
-       wxPoint points[4];
-
-       dc.SetBrush( bkBrush );
-       dc.SetPen( mpLayout->mBlackPen );
-
-       if ( inRect.width > inRect.height )
-       {
-               // horizontal orientation
-               points[0].x = inRect.x;
-               points[0].y = inRect.y + inRect.height;
-               points[1].x = inRect.x + COLLAPSED_ICON_HEIGHT;
-               points[1].y = inRect.y;
-               points[2].x = inRect.x + inRect.width;
-               points[2].y = inRect.y;
-               points[3].x = inRect.x + inRect.width - COLLAPSED_ICON_HEIGHT;
-               points[3].y = inRect.y + inRect.height;
-
-               dc.DrawPolygon( 4, points );
-
-               // squeeze romb's bounds to create an inner-shade shape
-               ++points[0].x ;++points[0].x ;
-               --points[0].y;
-               ++points[1].y;
-               --points[2].x; --points[2].x;
-               ++points[2].y;
-               //--points[3].x ;
-               --points[3].y;
-
-               DrawRombShades( points[0], points[1], points[2], points[3], dc );
-
-       }
-       else
-       {
-               // vertical orientation
-               points[0].x = inRect.x + inRect.width;
-               points[0].y = inRect.y + inRect.height;
-               points[1].x = inRect.x;
-               points[1].y = inRect.y + inRect.height - COLLAPSED_ICON_HEIGHT;
-               points[2].x = inRect.x;
-               points[2].y = inRect.y;
-               points[3].x = inRect.x + inRect.width;
-               points[3].y = inRect.y + COLLAPSED_ICON_HEIGHT;
-
-               dc.DrawPolygon( 4, points );
-
-               // squeeze romb's bounds to create an inner-shade shape
-               --points[0].y ;--points[0].y ;
-               --points[0].x;
-               ++points[1].x;
-               ++points[2].y; ++points[2].y;
-               ++points[2].x;
-               --points[3].x;
-
-               DrawRombShades( points[1], points[2], points[3], points[0], dc );
-       }
-
-       dc.SetBrush( wxNullBrush );
+    wxPoint points[4];
+
+    dc.SetBrush( bkBrush );
+    dc.SetPen( mpLayout->mBlackPen );
+
+    if ( inRect.width > inRect.height )
+    {
+        // horizontal orientation
+        points[0].x = inRect.x;
+        points[0].y = inRect.y + inRect.height;
+        points[1].x = inRect.x + COLLAPSED_ICON_HEIGHT;
+        points[1].y = inRect.y;
+        points[2].x = inRect.x + inRect.width;
+        points[2].y = inRect.y;
+        points[3].x = inRect.x + inRect.width - COLLAPSED_ICON_HEIGHT;
+        points[3].y = inRect.y + inRect.height;
+
+        dc.DrawPolygon( 4, points );
+
+        // squeeze romb's bounds to create an inner-shade shape
+        ++points[0].x ;++points[0].x ;
+        --points[0].y;
+        ++points[1].y;
+        --points[2].x; --points[2].x;
+        ++points[2].y;
+        //--points[3].x ;
+        --points[3].y;
+
+        DrawRombShades( points[0], points[1], points[2], points[3], dc );
+
+    }
+    else
+    {
+        // vertical orientation
+        points[0].x = inRect.x + inRect.width;
+        points[0].y = inRect.y + inRect.height;
+        points[1].x = inRect.x;
+        points[1].y = inRect.y + inRect.height - COLLAPSED_ICON_HEIGHT;
+        points[2].x = inRect.x;
+        points[2].y = inRect.y;
+        points[3].x = inRect.x + inRect.width;
+        points[3].y = inRect.y + COLLAPSED_ICON_HEIGHT;
+
+        dc.DrawPolygon( 4, points );
+
+        // squeeze romb's bounds to create an inner-shade shape
+        --points[0].y ;--points[0].y ;
+        --points[0].x;
+        ++points[1].x;
+        ++points[2].y; ++points[2].y;
+        ++points[2].x;
+        --points[3].x;
+
+        DrawRombShades( points[1], points[2], points[3], points[0], dc );
+    }
+
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::DrawRectShade( wxRect& inRect, wxDC& dc, 
-                                                                        int level, wxPen& upperPen, wxPen& lowerPen )
+                                     int level, wxPen& upperPen, wxPen& lowerPen )
 {
-       // upper shade
-       dc.SetPen( upperPen );
-       dc.DrawLine( inRect.x - level, 
-                                inRect.y - level, 
-                        inRect.x + inRect.width - 1 + level, 
-                                inRect.y - level);
-       dc.DrawLine( inRect.x - level, inRect.y - level,
-                        inRect.x - level, inRect.y + inRect.height - 1 + level );
-
-       // lower shade
-       dc.SetPen( lowerPen );
-       dc.DrawLine( inRect.x - level, 
-                                inRect.y + inRect.height - 1 + level,
-                        inRect.x + inRect.width  + level,
-                            inRect.y + inRect.height - 1 + level);
-       dc.DrawLine( inRect.x + inRect.width - 1 + level,
-                        inRect.y - level,
-                                inRect.x + inRect.width - 1 + level,
-                                inRect.y + inRect.height + level);
-
-       dc.SetBrush( wxNullBrush );
+    // upper shade
+    dc.SetPen( upperPen );
+    dc.DrawLine( inRect.x - level, 
+                 inRect.y - level, 
+                 inRect.x + inRect.width - 1 + level, 
+                 inRect.y - level);
+    dc.DrawLine( inRect.x - level, inRect.y - level,
+                 inRect.x - level, inRect.y + inRect.height - 1 + level );
+
+    // lower shade
+    dc.SetPen( lowerPen );
+    dc.DrawLine( inRect.x - level, 
+                 inRect.y + inRect.height - 1 + level,
+                 inRect.x + inRect.width  + level,
+                 inRect.y + inRect.height - 1 + level);
+    dc.DrawLine( inRect.x + inRect.width - 1 + level,
+                 inRect.y - level,
+                 inRect.x + inRect.width - 1 + level,
+                 inRect.y + inRect.height + level);
+
+    dc.SetBrush( wxNullBrush );
 }
 
 void cbRowDragPlugin::Draw3DRect( wxRect& inRect, wxDC& dc, wxBrush& bkBrush )
 {
-       dc.SetPen( mpLayout->mNullPen );
-       dc.SetBrush( bkBrush );
+    dc.SetPen( mpLayout->mNullPen );
+    dc.SetBrush( bkBrush );
 
-       dc.DrawRectangle( inRect.x, inRect.y,
-                             inRect.width, inRect.height );
+    dc.DrawRectangle( inRect.x, inRect.y,
+                      inRect.width, inRect.height );
 
-       DrawRectShade( inRect, dc, 0, mpLayout->mLightPen, mpLayout->mDarkPen );
+    DrawRectShade( inRect, dc, 0, mpLayout->mLightPen, mpLayout->mDarkPen );
 }
 
 int  cbRowDragPlugin::GetCollapsedIconsPos()
 {
-       RowArrayT& rows = mpPane->GetRowList();
+    RowArrayT& rows = mpPane->GetRowList();
 
-       if ( rows.GetCount() == 0 ) 
-       {
-               if ( mpPane->IsHorizontal() )
-                       
-                       return mpPane->mBoundsInParent.y + mpPane->mTopMargin;
-               else
-                       return mpPane->mBoundsInParent.x + mpPane->mLeftMargin;
-       }
+    if ( rows.GetCount() == 0 ) 
+    {
+        if ( mpPane->IsHorizontal() )
+            
+            return mpPane->mBoundsInParent.y + mpPane->mTopMargin;
+        else
+            return mpPane->mBoundsInParent.x + mpPane->mLeftMargin;
+    }
 
-       wxRect& bounds = rows[ rows.GetCount() - 1 ]->mBoundsInParent;
+    wxRect& bounds = rows[ rows.GetCount() - 1 ]->mBoundsInParent;
 
-       if ( mpPane->IsHorizontal() )
+    if ( mpPane->IsHorizontal() )
 
-               return bounds.y + bounds.height + 1;
-       else
-               return bounds.x + bounds.width  + 1;
+        return bounds.y + bounds.height + 1;
+    else
+        return bounds.x + bounds.width  + 1;
 
 }
 
 void cbRowDragPlugin::GetRowHintRect( cbRowInfo* pRow, wxRect& rect )
 {
-       wxRect& bounds = pRow->mBoundsInParent;
-
-       if ( mpPane->IsHorizontal() )
-       {
-               rect.x = bounds.x - ROW_DRAG_HINT_WIDTH - 1;
-               rect.y = bounds.y;
-               rect.width = ROW_DRAG_HINT_WIDTH;
-               rect.height = bounds.height;
-       }
-       else
-       {
-               rect.x = bounds.x;
-               rect.y = bounds.y + bounds.height + 1;
-               rect.width = bounds.width;
-               rect.height = ROW_DRAG_HINT_WIDTH;
-       }
+    wxRect& bounds = pRow->mBoundsInParent;
+
+    if ( mpPane->IsHorizontal() )
+    {
+        rect.x = bounds.x - ROW_DRAG_HINT_WIDTH - 1;
+        rect.y = bounds.y;
+        rect.width = ROW_DRAG_HINT_WIDTH;
+        rect.height = bounds.height;
+    }
+    else
+    {
+        rect.x = bounds.x;
+        rect.y = bounds.y + bounds.height + 1;
+        rect.width = bounds.width;
+        rect.height = ROW_DRAG_HINT_WIDTH;
+    }
 }
 
 void cbRowDragPlugin::GetCollapsedInconRect( int iconIdx, wxRect& rect )
 {
-       int upper = GetCollapsedIconsPos();
-
-       int right = (iconIdx == 0 ) 
-                               ? 0 : iconIdx * (COLLAPSED_ICON_WIDTH - COLLAPSED_ICON_HEIGHT);
-
-       if ( mpPane->IsHorizontal() )
-       {
-               rect.x = mpPane->mBoundsInParent.x + mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1
-                                + right;
-
-               rect.y = upper;
-               rect.width  = COLLAPSED_ICON_WIDTH;
-               rect.height = COLLAPSED_ICON_HEIGHT;
-       }
-       else
-       {
-            rect.x = upper;
-                rect.y = mpPane->mBoundsInParent.y + mpPane->mBoundsInParent.height 
-                                - mpPane->mBottomMargin + ROW_DRAG_HINT_WIDTH + 1
-                                - right - COLLAPSED_ICON_WIDTH;
-
-               rect.height = COLLAPSED_ICON_WIDTH;
-               rect.width  = COLLAPSED_ICON_HEIGHT;
-       }
+    int upper = GetCollapsedIconsPos();
+
+    int right = (iconIdx == 0 ) 
+                ? 0 : iconIdx * (COLLAPSED_ICON_WIDTH - COLLAPSED_ICON_HEIGHT);
+
+    if ( mpPane->IsHorizontal() )
+    {
+        rect.x = mpPane->mBoundsInParent.x + mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1
+                 + right;
+
+        rect.y = upper;
+        rect.width  = COLLAPSED_ICON_WIDTH;
+        rect.height = COLLAPSED_ICON_HEIGHT;
+    }
+    else
+    {
+         rect.x = upper;
+         rect.y = mpPane->mBoundsInParent.y + mpPane->mBoundsInParent.height 
+                 - mpPane->mBottomMargin + ROW_DRAG_HINT_WIDTH + 1
+                 - right - COLLAPSED_ICON_WIDTH;
+
+        rect.height = COLLAPSED_ICON_WIDTH;
+        rect.width  = COLLAPSED_ICON_HEIGHT;
+    }
 }
 
 /*** overridables ***/
 
 void cbRowDragPlugin::DrawCollapsedRowIcon( int index, wxDC& dc, bool isHighlighted )
 {
-       wxRect rect;
-       GetCollapsedInconRect( index, rect );
+    wxRect rect;
+    GetCollapsedInconRect( index, rect );
 
-       wxBrush  hiBrush ( mHightColor, wxSOLID );
-       wxBrush  lowBrush( mLowColor,   wxSOLID );
-       wxBrush& curBrush = ( isHighlighted ) ? hiBrush : lowBrush;
+    wxBrush  hiBrush ( mHightColor, wxSOLID );
+    wxBrush  lowBrush( mLowColor,   wxSOLID );
+    wxBrush& curBrush = ( isHighlighted ) ? hiBrush : lowBrush;
 
-       if ( mpPane->IsHorizontal() )
-       {                                
-               if ( index == 0 )
+    if ( mpPane->IsHorizontal() )
+    {                 
+        if ( index == 0 )
 
-                       DrawOrtoRomb( rect, dc, curBrush );
-               else
-                       DrawRomb( rect, dc, curBrush );
+            DrawOrtoRomb( rect, dc, curBrush );
+        else
+            DrawRomb( rect, dc, curBrush );
 
-               int triOfs = (index == 0) ? TRIANGLE_OFFSET : TRIANGLE_OFFSET + COLLAPSED_ICON_HEIGHT;
+        int triOfs = (index == 0) ? TRIANGLE_OFFSET : TRIANGLE_OFFSET + COLLAPSED_ICON_HEIGHT;
 
-               wxRect triRect;
-               triRect.x = triOfs + rect.x;
+        wxRect triRect;
+        triRect.x = triOfs + rect.x;
 
-               triRect.width = ICON_TRIAN_HEIGHT;
-               triRect.y = rect.y;
-               triRect.height = rect.height;
+        triRect.width = ICON_TRIAN_HEIGHT;
+        triRect.y = rect.y;
+        triRect.height = rect.height;
 
-               DrawTrianRight( triRect, dc );
+        DrawTrianRight( triRect, dc );
 
-               wxRect patRect;
-               patRect.x      = triOfs + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP + rect.x;
-               patRect.y      = rect.y + PAT_OFFSET; 
-               patRect.width  = rect.width - (patRect.x - rect.x) - COLLAPSED_ICON_HEIGHT - PAT_OFFSET;
-               patRect.height = rect.height - PAT_OFFSET*2;
+        wxRect patRect;
+        patRect.x      = triOfs + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP + rect.x;
+        patRect.y      = rect.y + PAT_OFFSET; 
+        patRect.width  = rect.width - (patRect.x - rect.x) - COLLAPSED_ICON_HEIGHT - PAT_OFFSET;
+        patRect.height = rect.height - PAT_OFFSET*2;
 
-               Draw3DPattern( patRect, dc );
-       }
-       else
-       {
-               if ( index == 0 )
+        Draw3DPattern( patRect, dc );
+    }
+    else
+    {
+        if ( index == 0 )
 
-                       DrawOrtoRomb( rect, dc, curBrush );
-               else
-                       DrawRomb( rect, dc, curBrush );
+            DrawOrtoRomb( rect, dc, curBrush );
+        else
+            DrawRomb( rect, dc, curBrush );
 
-               int triOfs = (index == 0) 
-                                        ? TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT
-                                        : TRIANGLE_OFFSET + COLLAPSED_ICON_HEIGHT + ICON_TRIAN_HEIGHT;
+        int triOfs = (index == 0) 
+                     ? TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT
+                     : TRIANGLE_OFFSET + COLLAPSED_ICON_HEIGHT + ICON_TRIAN_HEIGHT;
 
-               wxRect triRect;
-               triRect.y      = rect.y + rect.height - triOfs;
-               triRect.x      = rect.x;
-               triRect.width  = rect.width;
-               triRect.height = ICON_TRIAN_HEIGHT;
+        wxRect triRect;
+        triRect.y      = rect.y + rect.height - triOfs;
+        triRect.x      = rect.x;
+        triRect.width  = rect.width;
+        triRect.height = ICON_TRIAN_HEIGHT;
 
-               DrawTrianUp( triRect, dc );
+        DrawTrianUp( triRect, dc );
 
-               wxRect patRect;
-               patRect.y      = rect.y + COLLAPSED_ICON_HEIGHT + PAT_OFFSET;
-               patRect.x      = rect.x + PAT_OFFSET; 
-               patRect.width  = rect.width - 2*PAT_OFFSET ;
-               patRect.height = rect.height - triOfs - 2*PAT_OFFSET - COLLAPSED_ICON_HEIGHT;
+        wxRect patRect;
+        patRect.y      = rect.y + COLLAPSED_ICON_HEIGHT + PAT_OFFSET;
+        patRect.x      = rect.x + PAT_OFFSET; 
+        patRect.width  = rect.width - 2*PAT_OFFSET ;
+        patRect.height = rect.height - triOfs - 2*PAT_OFFSET - COLLAPSED_ICON_HEIGHT;
 
-               Draw3DPattern( patRect, dc );
-       }
+        Draw3DPattern( patRect, dc );
+    }
 }
 
 void cbRowDragPlugin::DrawRowDragHint( cbRowInfo* pRow , wxDC& dc, bool isHighlighted )
 {
-       wxRect rect;
-       GetRowHintRect( pRow, rect );
-
-       wxBrush  hiBrush ( mHightColor, wxSOLID );
-       wxBrush  lowBrush( mLowColor,   wxSOLID );
-       wxBrush& curBrush = ( isHighlighted ) ? hiBrush : lowBrush;
-
-       Draw3DRect( rect, dc, curBrush );
-
-       if ( mpPane->IsHorizontal() )
-       {
-               wxRect triRect;
-               triRect.y          = rect.y + TRIANGLE_OFFSET;
-               triRect.x          = rect.x;
-               triRect.width  = rect.width;
-               triRect.height = ICON_TRIAN_HEIGHT;
-
-               DrawTrianDown( triRect, dc );
-
-               wxRect patRect;
-               patRect.x      = rect.x + PAT_OFFSET;
-               patRect.y      = rect.y + TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP;
-               patRect.width  = rect.width - 2*PAT_OFFSET;
-               patRect.height = rect.height - ( patRect.y - rect.y ) - PAT_OFFSET;
-               Draw3DPattern( patRect, dc );
-
-               dc.SetPen( mpLayout->mLightPen );
-               dc.DrawLine( rect.x, rect.y + rect.height, rect.x + rect.width, rect.y + rect.height );
-       }
-       else
-       {
-               wxRect triRect;
-               triRect.x          = rect.x + TRIANGLE_OFFSET;
-               triRect.y          = rect.y;
-               triRect.height = rect.height;
-               triRect.width  = ICON_TRIAN_HEIGHT;
-
-               DrawTrianRight( triRect, dc );
-
-               wxRect patRect;
-               patRect.y      = rect.y + PAT_OFFSET;
-               patRect.x      = rect.x + TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP;
-               patRect.height = rect.height - 2*PAT_OFFSET;
-               patRect.width  = rect.width - ( patRect.x - rect.x ) - PAT_OFFSET;
-               Draw3DPattern( patRect, dc );
-
-               dc.SetPen( mpLayout->mLightPen );
-               dc.DrawLine( rect.x + rect.width, rect.y, rect.x + rect.width, rect.y + rect.height );
-       }
+    wxRect rect;
+    GetRowHintRect( pRow, rect );
+
+    wxBrush  hiBrush ( mHightColor, wxSOLID );
+    wxBrush  lowBrush( mLowColor,   wxSOLID );
+    wxBrush& curBrush = ( isHighlighted ) ? hiBrush : lowBrush;
+
+    Draw3DRect( rect, dc, curBrush );
+
+    if ( mpPane->IsHorizontal() )
+    {
+        wxRect triRect;
+        triRect.y       = rect.y + TRIANGLE_OFFSET;
+        triRect.x       = rect.x;
+        triRect.width  = rect.width;
+        triRect.height = ICON_TRIAN_HEIGHT;
+
+        DrawTrianDown( triRect, dc );
+
+        wxRect patRect;
+        patRect.x      = rect.x + PAT_OFFSET;
+        patRect.y      = rect.y + TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP;
+        patRect.width  = rect.width - 2*PAT_OFFSET;
+        patRect.height = rect.height - ( patRect.y - rect.y ) - PAT_OFFSET;
+        Draw3DPattern( patRect, dc );
+
+        dc.SetPen( mpLayout->mLightPen );
+        dc.DrawLine( rect.x, rect.y + rect.height, rect.x + rect.width, rect.y + rect.height );
+    }
+    else
+    {
+        wxRect triRect;
+        triRect.x       = rect.x + TRIANGLE_OFFSET;
+        triRect.y       = rect.y;
+        triRect.height = rect.height;
+        triRect.width  = ICON_TRIAN_HEIGHT;
+
+        DrawTrianRight( triRect, dc );
+
+        wxRect patRect;
+        patRect.y      = rect.y + PAT_OFFSET;
+        patRect.x      = rect.x + TRIANGLE_OFFSET + ICON_TRIAN_HEIGHT + TRIANGLE_TO_PAT_GAP;
+        patRect.height = rect.height - 2*PAT_OFFSET;
+        patRect.width  = rect.width - ( patRect.x - rect.x ) - PAT_OFFSET;
+        Draw3DPattern( patRect, dc );
+
+        dc.SetPen( mpLayout->mLightPen );
+        dc.DrawLine( rect.x + rect.width, rect.y, rect.x + rect.width, rect.y + rect.height );
+    }
 }
 
 void cbRowDragPlugin::DrawRowsDragHintsBorder( wxDC& dc )
 {
-       // FIXME:: what was that?
+    // FIXME:: what was that?
 }
 
 void cbRowDragPlugin::DrawCollapsedRowsBorder( wxDC& dc )
 {
-       int colRowOfs = GetCollapsedIconsPos();
-       wxRect& bounds = mpPane->mBoundsInParent;
-
-       wxBrush bkBrush( mpLayout->mGrayPen.GetColour(), wxSOLID );
-       dc.SetBrush( bkBrush );
-       dc.SetPen( mpLayout->mDarkPen );
-
-       if ( mpPane->IsHorizontal() )
-       
-               dc.DrawRectangle( bounds.x + mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1,
-                                                 colRowOfs,
-                                                 bounds.width - mpPane->mLeftMargin - mpPane->mRightMargin + 2 + ROW_DRAG_HINT_WIDTH,
-                                                 COLLAPSED_ICON_HEIGHT + 1);
-       else
-               dc.DrawRectangle( colRowOfs,
-                                                 bounds.y + mpPane->mTopMargin - 1,
-                                                 COLLAPSED_ICON_HEIGHT + 1,
-                                                 bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin 
-                                                 - ROW_DRAG_HINT_WIDTH - 2 );
-
-       dc.SetBrush( wxNullBrush );
+    int colRowOfs = GetCollapsedIconsPos();
+    wxRect& bounds = mpPane->mBoundsInParent;
+
+    wxBrush bkBrush( mpLayout->mGrayPen.GetColour(), wxSOLID );
+    dc.SetBrush( bkBrush );
+    dc.SetPen( mpLayout->mDarkPen );
+
+    if ( mpPane->IsHorizontal() )
+    
+        dc.DrawRectangle( bounds.x + mpPane->mLeftMargin - ROW_DRAG_HINT_WIDTH - 1,
+                          colRowOfs,
+                          bounds.width - mpPane->mLeftMargin - mpPane->mRightMargin + 2 + ROW_DRAG_HINT_WIDTH,
+                          COLLAPSED_ICON_HEIGHT + 1);
+    else
+        dc.DrawRectangle( colRowOfs,
+                          bounds.y + mpPane->mTopMargin - 1,
+                          COLLAPSED_ICON_HEIGHT + 1,
+                          bounds.height - mpPane->mTopMargin - mpPane->mBottomMargin 
+                          - ROW_DRAG_HINT_WIDTH - 2 );
+
+    dc.SetBrush( wxNullBrush );
 }
 
 static inline bool rect_contains_point( const wxRect& rect, int x, int y )
 {
-       return ( x >= rect.x &&
-                    y >= rect.y &&
-                        x <  rect.x + rect.width  &&
-                        y <  rect.y + rect.height );
+    return ( x >= rect.x &&
+             y >= rect.y &&
+             x <  rect.x + rect.width  &&
+             y <  rect.y + rect.height );
 }
 
 bool cbRowDragPlugin::HitTestCollapsedRowIcon( int iconIdx, const wxPoint& pos )
 {
-       wxRect bounds;
-       GetCollapsedInconRect( iconIdx, bounds );
+    wxRect bounds;
+    GetCollapsedInconRect( iconIdx, bounds );
 
-       return rect_contains_point( bounds, pos.x, pos.y );
+    return rect_contains_point( bounds, pos.x, pos.y );
 }
 
 bool cbRowDragPlugin::HitTestRowDragHint( cbRowInfo* pRow, const wxPoint& pos )
 {
-       wxRect bounds;
-       GetRowHintRect( pRow, bounds );
+    wxRect bounds;
+    GetRowHintRect( pRow, bounds );
 
-       return rect_contains_point( bounds, pos.x, pos.y );
+    return rect_contains_point( bounds, pos.x, pos.y );
 }
 
index 064a35a67de6d94ab8d0b25fd1fb1ff1a4757caa..034284c6c456dc38557a87edb7ea95be5a910907 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        rowlayoutpl.cpp
+// Purpose:     cbRowLayoutPlugin implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     09/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
  
 #ifdef __GNUG__
index 4a97f944caedc0e6a6eb2e741cc89c63e4da4708..1a8c7b617fc5817978c53bc77ca36516dca0ce2f 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        toolwnd.cpp
+// Purpose:     wxToolWindow implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     06/09/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas
-// Licence:    wxWindows license
+// Licence:    wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
index 426144840b7b79a6ba93fb06997823ebe888d36b..c126fbfb0320c59fdc1f845d2f59fae466fadfdb 100644 (file)
@@ -1,12 +1,12 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        No names yet.
-// Purpose:     Contrib. demo
+// Name:        updatesmgr.cpp
+// Purpose:     cbSimpleUpdatesMgr implementation.
 // Author:      Aleksandras Gluchovas
 // Modified by:
 // Created:     19/10/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Aleksandras Gluchovas 
-// Licence:    wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
 
 static inline bool rect_hits_rect( const wxRect& r1, const wxRect& r2 )
 {
-       if ( ( r2.x >= r1.x && r2.x <= r1.x + r1.width ) ||
-                ( r1.x >= r2.x && r1.x <= r2.x + r2.width ) )
+    if ( ( r2.x >= r1.x && r2.x <= r1.x + r1.width ) ||
+         ( r1.x >= r2.x && r1.x <= r2.x + r2.width ) )
 
-               if ( ( r2.y >= r1.y && r2.y <= r1.y + r1.height ) ||
-                        ( r1.y >= r2.y && r1.y <= r2.y + r2.height ) )
-                        
-                       return 1;
+        if ( ( r2.y >= r1.y && r2.y <= r1.y + r1.height ) ||
+             ( r1.y >= r2.y && r1.y <= r2.y + r2.height ) )
+             
+            return 1;
 
-       return 0;
+    return 0;
 }
 
 /***** Implementation for class cbSimpleUpdatesMgr *****/
@@ -46,247 +46,247 @@ static inline bool rect_hits_rect( const wxRect& r1, const wxRect& r2 )
 IMPLEMENT_DYNAMIC_CLASS( cbSimpleUpdatesMgr, cbUpdatesManagerBase )
 
 cbSimpleUpdatesMgr::cbSimpleUpdatesMgr( wxFrameLayout* pPanel )
-       : cbUpdatesManagerBase( pPanel )
+    : cbUpdatesManagerBase( pPanel )
 {}
 
 bool cbSimpleUpdatesMgr::WasChanged( cbUpdateMgrData& data, wxRect& currentBounds )
 {
-       return (   data.IsDirty() ||
+    return (   data.IsDirty() ||
 
-                    ( data.mPrevBounds.x      != currentBounds.x     ||
-                      data.mPrevBounds.y      != currentBounds.y     ||
-                          data.mPrevBounds.width  != currentBounds.width ||
-                          data.mPrevBounds.height != currentBounds.height  )
-                  );
+             ( data.mPrevBounds.x      != currentBounds.x     ||
+               data.mPrevBounds.y      != currentBounds.y     ||
+               data.mPrevBounds.width  != currentBounds.width ||
+               data.mPrevBounds.height != currentBounds.height  )
+           );
 }
 
 void cbSimpleUpdatesMgr::OnStartChanges()
 {
-       // memorize states of ALL items in the layout -
-       // this is quite excessive, but OK for the simple 
-       // implementation of updates manager
-
-       mpLayout->GetPrevClientRect() = mpLayout->GetClientRect();
-
-       cbDockPane** panes = mpLayout->GetPanesArray();
-
-       for( int n = 0; n != MAX_PANES; ++n )
-       {
-               cbDockPane& pane = *panes[n];
-               // store pane state
-               pane.mUMgrData.StoreItemState( pane.mBoundsInParent );
-               pane.mUMgrData.SetDirty( FALSE );
-
-               for( size_t i = 0; i != pane.GetRowList().Count(); ++i )
-               {
-                       cbRowInfo& row = *pane.GetRowList()[ i ];
-
-                       // store row state
-                       row.mUMgrData.StoreItemState( row.mBoundsInParent );
-                       row.mUMgrData.SetDirty( FALSE );
-
-                       for( size_t k = 0; k != row.mBars.Count(); ++k )
-                       {
-                               cbBarInfo& bar = *row.mBars[ k ];
-
-                               // store bar state
-                               bar.mUMgrData.StoreItemState( bar.mBoundsInParent );
-                               bar.mUMgrData.SetDirty( FALSE );
-                       }
-               }
-       }
+    // memorize states of ALL items in the layout -
+    // this is quite excessive, but OK for the simple 
+    // implementation of updates manager
+
+    mpLayout->GetPrevClientRect() = mpLayout->GetClientRect();
+
+    cbDockPane** panes = mpLayout->GetPanesArray();
+
+    for( int n = 0; n != MAX_PANES; ++n )
+    {
+        cbDockPane& pane = *panes[n];
+        // store pane state
+        pane.mUMgrData.StoreItemState( pane.mBoundsInParent );
+        pane.mUMgrData.SetDirty( FALSE );
+
+        for( size_t i = 0; i != pane.GetRowList().Count(); ++i )
+        {
+            cbRowInfo& row = *pane.GetRowList()[ i ];
+
+            // store row state
+            row.mUMgrData.StoreItemState( row.mBoundsInParent );
+            row.mUMgrData.SetDirty( FALSE );
+
+            for( size_t k = 0; k != row.mBars.Count(); ++k )
+            {
+                cbBarInfo& bar = *row.mBars[ k ];
+
+                // store bar state
+                bar.mUMgrData.StoreItemState( bar.mBoundsInParent );
+                bar.mUMgrData.SetDirty( FALSE );
+            }
+        }
+    }
 }
 
 void cbSimpleUpdatesMgr::OnFinishChanges()
 {
-       // nothing here, could be overriden by more sophisticated updates-managers
+    // nothing here, could be overriden by more sophisticated updates-managers
 }
 
 void cbSimpleUpdatesMgr::OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane )
 {
-       // -/-
+    // -/-
 }
 
 void cbSimpleUpdatesMgr::OnBarWillChange( cbBarInfo* pBar, 
-                                                                                 cbRowInfo* pInRow, cbDockPane* pInPane )
+                                          cbRowInfo* pInRow, cbDockPane* pInPane )
 {
-       // -/-
+    // -/-
 }
 
 void cbSimpleUpdatesMgr::OnPaneMarginsWillChange( cbDockPane* pPane )
 {
-       // -/-
+    // -/-
 }
 
 void cbSimpleUpdatesMgr::OnPaneWillChange( cbDockPane* pPane )
 {
-       // -/-
+    // -/-
 }
 
 void cbSimpleUpdatesMgr::UpdateNow()
 {
-       cbDockPane** panes = mpLayout->GetPanesArray();
+    cbDockPane** panes = mpLayout->GetPanesArray();
 
-       wxRect& r1 = mpLayout->GetClientRect();
-       wxRect& r2 = mpLayout->GetPrevClientRect();
+    wxRect& r1 = mpLayout->GetClientRect();
+    wxRect& r2 = mpLayout->GetPrevClientRect();
 
-       // detect changes in client window's area
+    // detect changes in client window's area
 
-       bool clientWindowChanged = ( r1.x      != r2.x     ||
-                                        r1.y      != r2.y     ||
-                                                                r1.width  != r2.width ||
-                                                                r1.height != r2.height );
-
-       // step #1 - detect changes in each row of each pane,
-       //           and repaint decorations around changed windows
+    bool clientWindowChanged = ( r1.x      != r2.x     ||
+                                 r1.y      != r2.y     ||
+                                 r1.width  != r2.width ||
+                                 r1.height != r2.height );
+
+    // step #1 - detect changes in each row of each pane,
+    //           and repaint decorations around changed windows
 
-       wxList mBarsToRefresh;
-       wxList mPanesList;
+    wxList mBarsToRefresh;
+    wxList mPanesList;
 
-       for( int n = 0; n != MAX_PANES; ++n )
-       {
-               cbDockPane& pane = *(panes[n]);
+    for( int n = 0; n != MAX_PANES; ++n )
+    {
+        cbDockPane& pane = *(panes[n]);
 
-               bool paneChanged = WasChanged( pane.mUMgrData, pane.mBoundsInParent );
+        bool paneChanged = WasChanged( pane.mUMgrData, pane.mBoundsInParent );
 
-               if ( paneChanged )
-               {
-                       wxClientDC dc( &mpLayout->GetParentFrame() );
-                       pane.PaintPaneBackground( dc );
-               }
+        if ( paneChanged )
+        {
+            wxClientDC dc( &mpLayout->GetParentFrame() );
+            pane.PaintPaneBackground( dc );
+        }
 
-               wxRect realBounds;
+        wxRect realBounds;
 
-               for( size_t i = 0; i != pane.GetRowList().Count(); ++i )
-               {
-                       cbRowInfo& row = *pane.GetRowList()[ i ];
+        for( size_t i = 0; i != pane.GetRowList().Count(); ++i )
+        {
+            cbRowInfo& row = *pane.GetRowList()[ i ];
 
-                       wxDC* pDc = NULL;
+            wxDC* pDc = NULL;
 
-                       bool rowChanged = FALSE;
+            bool rowChanged = FALSE;
 
-                       // FIXME:: the below should not be fixed
-                       cbBarInfo* barsToRepaint[256];
+            // FIXME:: the below should not be fixed
+            cbBarInfo* barsToRepaint[256];
 
-                       // number of bars, that were changed in the current row
-                       int nBars = 0; 
+            // number of bars, that were changed in the current row
+            int nBars = 0; 
 
-                       if ( WasChanged( row.mUMgrData, row.mBoundsInParent ) )
-                       
-                               rowChanged = TRUE;
-                       else
-                               for( size_t k = 0; k != row.mBars.Count(); ++k )
+            if ( WasChanged( row.mUMgrData, row.mBoundsInParent ) )
+            
+                rowChanged = TRUE;
+            else
+                for( size_t k = 0; k != row.mBars.Count(); ++k )
 
-                                       if ( WasChanged( row.mBars[k]->mUMgrData, 
-                                                row.mBars[k]->mBoundsInParent ) 
-                                          )
-                                       
-                                               barsToRepaint[nBars++] = row.mBars[k];
+                    if ( WasChanged( row.mBars[k]->mUMgrData, 
+                         row.mBars[k]->mBoundsInParent ) 
+                       )
+                    
+                        barsToRepaint[nBars++] = row.mBars[k];
 
-                       if ( nBars || rowChanged )
-                       {
-                               realBounds = row.mBoundsInParent;
+            if ( nBars || rowChanged )
+            {
+                realBounds = row.mBoundsInParent;
 
-                               // include 1-pixel thick shades around the row
-                               realBounds.x -= 1;
-                               realBounds.y -= 1;
-                               realBounds.width  += 2;
-                               realBounds.height += 2;
+                // include 1-pixel thick shades around the row
+                realBounds.x -= 1;
+                realBounds.y -= 1;
+                realBounds.width  += 2;
+                realBounds.height += 2;
 
-                               pDc = pane.StartDrawInArea( realBounds );
-                       }
+                pDc = pane.StartDrawInArea( realBounds );
+            }
 
-                       if ( rowChanged )
-                       {
-                               // postphone the resizing and refreshing the changed
-                               // bar windows
+            if ( rowChanged )
+            {
+                // postphone the resizing and refreshing the changed
+                // bar windows
 
-                               for( size_t k = 0; k != row.mBars.Count(); ++k )
-                               {
-                                       mBarsToRefresh.Append( (wxObject*)row.mBars[k] );
-                                       mPanesList.Append( &pane );
-                               }
+                for( size_t k = 0; k != row.mBars.Count(); ++k )
+                {
+                    mBarsToRefresh.Append( (wxObject*)row.mBars[k] );
+                    mPanesList.Append( &pane );
+                }
 
-                               // draw only their decorations now
+                // draw only their decorations now
 
-                               pane.PaintRow( &row, *pDc );
-                       }
-                       else
-                       if ( nBars != 0 )
-                       {
-                               for( int i = 0; i != nBars; ++i )
-                               {
-                                       // postphone the resizement and refreshing the changed
-                                       // bar windows
+                pane.PaintRow( &row, *pDc );
+            }
+            else
+            if ( nBars != 0 )
+            {
+                for( int i = 0; i != nBars; ++i )
+                {
+                    // postphone the resizement and refreshing the changed
+                    // bar windows
 
-                                       mBarsToRefresh.Append( (wxObject*)barsToRepaint[i] );
-                                       mPanesList.Append( &pane );
-                               }
+                    mBarsToRefresh.Append( (wxObject*)barsToRepaint[i] );
+                    mPanesList.Append( &pane );
+                }
 
-                               // redraw decorations of entire row, regardless of how much
-                               // of the bars were changed
-                               pane.PaintRow( &row, *pDc );
-                       }
+                // redraw decorations of entire row, regardless of how much
+                // of the bars were changed
+                pane.PaintRow( &row, *pDc );
+            }
 
-                       if ( pDc )
-               
-                               pane.FinishDrawInArea( realBounds );
-               } // end of while
+            if ( pDc )
+        
+                pane.FinishDrawInArea( realBounds );
+        } // end of while
 
-               if ( paneChanged )
-               {
-                       wxClientDC dc( &mpLayout->GetParentFrame() );
-                       pane.PaintPaneDecorations( dc );
-               }
+        if ( paneChanged )
+        {
+            wxClientDC dc( &mpLayout->GetParentFrame() );
+            pane.PaintPaneDecorations( dc );
+        }
 
-       } // end of for
+    } // end of for
 
-       if ( clientWindowChanged )
-       {
-               mpLayout->PositionClientWindow();
-               // ptr to client-window object is "marked" as 0
-       }
+    if ( clientWindowChanged )
+    {
+        mpLayout->PositionClientWindow();
+        // ptr to client-window object is "marked" as 0
+    }
 
-       // step #2 - do ordered refreshing and resizing of bar window objects now
+    // step #2 - do ordered refreshing and resizing of bar window objects now
 
-       wxNode* pNode     = mBarsToRefresh.First();
-       wxNode* pPaneNode = mPanesList.First();
-
-       while( pNode )
-       {
-               cbBarInfo*  pBar  = (cbBarInfo*) pNode->Data();
-               cbDockPane* pPane = (cbDockPane*)pPaneNode->Data();
+    wxNode* pNode     = mBarsToRefresh.First();
+    wxNode* pPaneNode = mPanesList.First();
+
+    while( pNode )
+    {
+        cbBarInfo*  pBar  = (cbBarInfo*) pNode->Data();
+        cbDockPane* pPane = (cbDockPane*)pPaneNode->Data();
 
-               pPane->SizeBar( pBar );
-
-               pNode     = pNode->Next();
-               pPaneNode = pPaneNode->Next();
-       }
-
-       pNode = mBarsToRefresh.First();
-
-       while( pNode )
-       {
-               cbBarInfo* pBar = (cbBarInfo*)pNode->Data();
-
-               if ( pBar->mpBarWnd ) 
-               {
-                       pBar->mpBarWnd->Refresh();
-
-                       // FIXME::
-                       //info.mpBarWnd->Show(FALSE);
-                       //info.mpBarWnd->Show(TRUE);
-               }
-
-               pNode  = pNode->Next();
-       }
-
-       if ( clientWindowChanged )
-       {
-               // FIXME:: excessive?
-
-               mpLayout->GetFrameClient()->Refresh();
-       }
+        pPane->SizeBar( pBar );
+
+        pNode     = pNode->Next();
+        pPaneNode = pPaneNode->Next();
+    }
+
+    pNode = mBarsToRefresh.First();
+
+    while( pNode )
+    {
+        cbBarInfo* pBar = (cbBarInfo*)pNode->Data();
+
+        if ( pBar->mpBarWnd ) 
+        {
+            pBar->mpBarWnd->Refresh();
+
+            // FIXME::
+            //info.mpBarWnd->Show(FALSE);
+            //info.mpBarWnd->Show(TRUE);
+        }
+
+        pNode  = pNode->Next();
+    }
+
+    if ( clientWindowChanged )
+    {
+        // FIXME:: excessive?
+
+        mpLayout->GetFrameClient()->Refresh();
+    }
 }