X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/41b3c9662d2e290bc76a776d6a820e6e9c3d3825..6652e1a765385602430c604c7628a8fcd229d37c:/contrib/include/wx/fl/controlbar.h diff --git a/contrib/include/wx/fl/controlbar.h b/contrib/include/wx/fl/controlbar.h index 7094003467..2a39ea480f 100644 --- a/contrib/include/wx/fl/controlbar.h +++ b/contrib/include/wx/fl/controlbar.h @@ -13,7 +13,7 @@ #ifndef __CONTROLBAR_G__ #define __CONTROLBAR_G__ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "controlbar.h" #endif @@ -21,30 +21,31 @@ #include "wx/string.h" #include "wx/window.h" #include "wx/dynarray.h" +#include "wx/fl/fldefs.h" #define WXCONTROLBAR_VERSION 1.3 // forward declarations -class wxFrameLayout; +class WXDLLIMPEXP_FL wxFrameLayout; -class cbDockPane; -class cbUpdatesManagerBase; -class cbBarDimHandlerBase; -class cbPluginBase; -class cbPluginEvent; -class cbPaneDrawPlugin; +class WXDLLIMPEXP_FL cbDockPane; +class WXDLLIMPEXP_FL cbUpdatesManagerBase; +class WXDLLIMPEXP_FL cbBarDimHandlerBase; +class WXDLLIMPEXP_FL cbPluginBase; +class WXDLLIMPEXP_FL cbPluginEvent; +class WXDLLIMPEXP_FL cbPaneDrawPlugin; -class cbBarInfo; -class cbRowInfo; -class cbDimInfo; -class cbCommonPaneProperties; +class WXDLLIMPEXP_FL cbBarInfo; +class WXDLLIMPEXP_FL cbRowInfo; +class WXDLLIMPEXP_FL cbDimInfo; +class WXDLLIMPEXP_FL cbCommonPaneProperties; typedef cbBarInfo* BarInfoPtrT; typedef cbRowInfo* RowInfoPtrT; -WX_DEFINE_ARRAY( BarInfoPtrT, BarArrayT ); -WX_DEFINE_ARRAY( RowInfoPtrT, RowArrayT ); +WXFL_DEFINE_ARRAY_PTR( BarInfoPtrT, BarArrayT ); +WXFL_DEFINE_ARRAY_PTR( RowInfoPtrT, RowArrayT ); // control bar states @@ -97,7 +98,7 @@ Helper class, used for spying for unhandled mouse events on control bars and forwarding them to the frame layout. */ -class cbBarSpy : public wxEvtHandler +class WXDLLIMPEXP_FL cbBarSpy : public wxEvtHandler { public: DECLARE_DYNAMIC_CLASS( cbBarSpy ) @@ -129,7 +130,7 @@ which can be docked along the top, bottom, right, or left side of the parent frame. */ -class wxFrameLayout : public wxEvtHandler +class WXDLLIMPEXP_FL wxFrameLayout : public wxEvtHandler { public: // Default constructor, used only for serialization. @@ -238,7 +239,7 @@ public: int alignment = FL_ALIGN_TOP, int rowNo = 0, int columnPos = 0, - const wxString& name="bar", + const wxString& name = wxT("bar"), bool spyEvents = FALSE, int state = wxCBAR_DOCKED_HORIZONTALLY ); @@ -647,7 +648,7 @@ used by any particular updates-manager to store auxiliary information to be used by its updating algorithm. */ -class cbUpdateMgrData : public wxObject +class WXDLLIMPEXP_FL cbUpdateMgrData : public wxObject { DECLARE_DYNAMIC_CLASS( cbUpdateMgrData ) public: @@ -687,7 +688,7 @@ to adjust the values in cbDimInfo::mSizes accordingly. Specific handlers can be hooked up to specific types of bar. */ -class cbBarDimHandlerBase : public wxObject +class WXDLLIMPEXP_FL cbBarDimHandlerBase : public wxObject { DECLARE_ABSTRACT_CLASS( cbBarDimHandlerBase ) @@ -725,7 +726,7 @@ Helper class used internally by the wxFrameLayout class. Holds and manages information about bar dimensions. */ -class cbDimInfo : public wxObject +class WXDLLIMPEXP_FL cbDimInfo : public wxObject { DECLARE_DYNAMIC_CLASS( cbDimInfo ) public: @@ -824,7 +825,7 @@ public: }; // FIXME: this array definition compiles but probably doesn't do what was intended (GD) -WX_DEFINE_ARRAY_LONG(float, cbArrayFloat); +WXFL_DEFINE_ARRAY_LONG(float, cbArrayFloat); /* Helper class used internally by the wxFrameLayout class. @@ -903,6 +904,13 @@ public: bool mHasLeftHandle; bool mHasRightHandle; + // determines if this bar can float. The layout's setting as priority. For + // example, if the layout's mFloatingOn is false, this setting is irrelevant + // since nothing will float at all. If the layout's floating is on, use this + // setting to prevent specific bars from floating. In other words, all bars + // float by default and floating can be turned off on individual bars. + bool mFloatingOn; // default: ON (which is also the layout's mFloatingOn default setting) + cbDimInfo mDimInfo; // preferred sizes for each, control bar state int mState; // (see definition of controlbar states) @@ -1026,6 +1034,14 @@ class cbCommonPaneProperties : public wxObject // Default constructor. cbCommonPaneProperties(void); + + // Copy constructor + + cbCommonPaneProperties(const cbCommonPaneProperties&); + + // Assignment operator + + cbCommonPaneProperties& operator=(const cbCommonPaneProperties&); }; /* @@ -1482,25 +1498,25 @@ public: // they would usually be invoked). Custom updates-managers may utilize // these notifications to implement a more fine-grained updating strategy. - virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane ) {} + virtual void OnRowWillChange( cbRowInfo* WXUNUSED(pRow), cbDockPane* WXUNUSED(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. - virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane ) {} + virtual void OnBarWillChange( cbBarInfo* WXUNUSED(pBar), cbRowInfo* WXUNUSED(pInRow), cbDockPane* WXUNUSED(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. - virtual void OnPaneMarginsWillChange( cbDockPane* pPane ) {} + virtual void OnPaneMarginsWillChange( cbDockPane* WXUNUSED(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. - virtual void OnPaneWillChange( cbDockPane* pPane ) {} + virtual void OnPaneWillChange( cbDockPane* WXUNUSED(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