]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/include/wx/fl/controlbar.h
WX_XMLRES_CURRENT_VERSION_STRING wasn't Unicode safe
[wxWidgets.git] / contrib / include / wx / fl / controlbar.h
index c06b912a3565e9596e48ae5ca6dfb6b3e0daf6a9..f485ef7c513a77e57c11eaca1550fe8d9f371540 100644 (file)
@@ -13,7 +13,7 @@
 #ifndef __CONTROLBAR_G__
 #define __CONTROLBAR_G__
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
     #pragma interface "controlbar.h"
 #endif
 
 #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  WXFL_DECLSPEC wxFrameLayout;
 
-class  cbDockPane;
-class  cbUpdatesManagerBase;
-class  cbBarDimHandlerBase;
-class  cbPluginBase;
-class  cbPluginEvent;
-class  cbPaneDrawPlugin;
+class  WXFL_DECLSPEC cbDockPane;
+class  WXFL_DECLSPEC cbUpdatesManagerBase;
+class  WXFL_DECLSPEC cbBarDimHandlerBase;
+class  WXFL_DECLSPEC cbPluginBase;
+class  WXFL_DECLSPEC cbPluginEvent;
+class  WXFL_DECLSPEC cbPaneDrawPlugin;
 
-class cbBarInfo;
-class cbRowInfo;
-class cbDimInfo;
-class cbCommonPaneProperties;
+class WXFL_DECLSPEC cbBarInfo;
+class WXFL_DECLSPEC cbRowInfo;
+class WXFL_DECLSPEC cbDimInfo;
+class WXFL_DECLSPEC cbCommonPaneProperties;
 
 typedef cbBarInfo* BarInfoPtrT;
 typedef cbRowInfo* RowInfoPtrT;
 
-WX_DEFINE_ARRAY( BarInfoPtrT, BarArrayT );
-WX_DEFINE_ARRAY( RowInfoPtrT, RowArrayT );
+WXFL_DEFINE_ARRAY( BarInfoPtrT, BarArrayT );
+WXFL_DEFINE_ARRAY( 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 WXFL_DECLSPEC 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 WXFL_DECLSPEC wxFrameLayout : public wxEvtHandler
 {
 public:
         // Default constructor, used only for serialization.
@@ -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 WXFL_DECLSPEC 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 WXFL_DECLSPEC 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 WXFL_DECLSPEC 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)