X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/499b2ed82caa62ec19b400c31aa26be33b1c02d4..9c05a3ca23d9746639884ff57236758ff7a0d974:/contrib/docs/latex/fl/category.tex diff --git a/contrib/docs/latex/fl/category.tex b/contrib/docs/latex/fl/category.tex index 55d1c86a97..4241b7ff04 100644 --- a/contrib/docs/latex/fl/category.tex +++ b/contrib/docs/latex/fl/category.tex @@ -3,28 +3,90 @@ \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. For event macros and identifiers, +please see the topic \helpref{Event macros and identifiers}{events}. +\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}