#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 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
and forwarding them to the frame layout.
*/
-class cbBarSpy : public wxEvtHandler
+class WXDLLIMPEXP_FL cbBarSpy : public wxEvtHandler
{
public:
DECLARE_DYNAMIC_CLASS( cbBarSpy )
parent frame.
*/
-class wxFrameLayout : public wxEvtHandler
+class WXDLLIMPEXP_FL wxFrameLayout : public wxEvtHandler
{
public:
// Default constructor, used only for serialization.
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
);
auxiliary information to be used by its updating algorithm.
*/
-class cbUpdateMgrData : public wxObject
+class WXDLLIMPEXP_FL cbUpdateMgrData : public wxObject
{
DECLARE_DYNAMIC_CLASS( cbUpdateMgrData )
public:
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 )
Holds and manages information about bar dimensions.
*/
-class cbDimInfo : public wxObject
+class WXDLLIMPEXP_FL cbDimInfo : public wxObject
{
DECLARE_DYNAMIC_CLASS( cbDimInfo )
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.
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)
// Default constructor.
cbCommonPaneProperties(void);
+
+ // Copy constructor
+
+ cbCommonPaneProperties(const cbCommonPaneProperties&);
+
+ // Assignment operator
+
+ cbCommonPaneProperties& operator=(const cbCommonPaneProperties&);
};
/*
// 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