standardized WXMAKINGDLL approach

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 2003-07-08 20:47:17 +00:00
parent 7da09e52ec
commit 510b9edbb6
18 changed files with 57 additions and 65 deletions

View File

@ -26,7 +26,7 @@ antiflicker plugins within the application.
Locking for multithreaded applications is not yet implemented.
*/
class WXFL_DECLSPEC cbAntiflickerPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbAntiflickerPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbAntiflickerPlugin )
protected:

View File

@ -23,7 +23,7 @@
Plugin class implementing bar dragging.
*/
class WXFL_DECLSPEC cbBarDragPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbBarDragPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbBarDragPlugin )
protected:

View File

@ -24,7 +24,7 @@ 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
*/
class WXFL_DECLSPEC cbBarHintsPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbBarHintsPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbBarHintsPlugin )

View File

@ -24,7 +24,7 @@ menu and handling basic customization such as floating
and horizontal/vertical alignment of the bar.
*/
class WXFL_DECLSPEC cbSimpleCustomizationPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbSimpleCustomizationPlugin : public cbPluginBase
{
public:
DECLARE_DYNAMIC_CLASS( cbSimpleCustomizationPlugin )

View File

@ -27,19 +27,19 @@
// forward declarations
class WXFL_DECLSPEC wxFrameLayout;
class WXDLLIMPEXP_FL wxFrameLayout;
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 WXDLLIMPEXP_FL cbDockPane;
class WXDLLIMPEXP_FL cbUpdatesManagerBase;
class WXDLLIMPEXP_FL cbBarDimHandlerBase;
class WXDLLIMPEXP_FL cbPluginBase;
class WXDLLIMPEXP_FL cbPluginEvent;
class WXDLLIMPEXP_FL cbPaneDrawPlugin;
class WXFL_DECLSPEC cbBarInfo;
class WXFL_DECLSPEC cbRowInfo;
class WXFL_DECLSPEC cbDimInfo;
class WXFL_DECLSPEC cbCommonPaneProperties;
class WXDLLIMPEXP_FL cbBarInfo;
class WXDLLIMPEXP_FL cbRowInfo;
class WXDLLIMPEXP_FL cbDimInfo;
class WXDLLIMPEXP_FL cbCommonPaneProperties;
typedef cbBarInfo* BarInfoPtrT;
typedef cbRowInfo* RowInfoPtrT;
@ -98,7 +98,7 @@ Helper class, used for spying for unhandled mouse events on control bars
and forwarding them to the frame layout.
*/
class WXFL_DECLSPEC cbBarSpy : public wxEvtHandler
class WXDLLIMPEXP_FL cbBarSpy : public wxEvtHandler
{
public:
DECLARE_DYNAMIC_CLASS( cbBarSpy )
@ -130,7 +130,7 @@ which can be docked along the top, bottom, right, or left side of the
parent frame.
*/
class WXFL_DECLSPEC wxFrameLayout : public wxEvtHandler
class WXDLLIMPEXP_FL wxFrameLayout : public wxEvtHandler
{
public:
// Default constructor, used only for serialization.
@ -648,7 +648,7 @@ used by any particular updates-manager to store
auxiliary information to be used by its updating algorithm.
*/
class WXFL_DECLSPEC cbUpdateMgrData : public wxObject
class WXDLLIMPEXP_FL cbUpdateMgrData : public wxObject
{
DECLARE_DYNAMIC_CLASS( cbUpdateMgrData )
public:
@ -688,7 +688,7 @@ to adjust the values in cbDimInfo::mSizes accordingly.
Specific handlers can be hooked up to specific types of bar.
*/
class WXFL_DECLSPEC cbBarDimHandlerBase : public wxObject
class WXDLLIMPEXP_FL cbBarDimHandlerBase : public wxObject
{
DECLARE_ABSTRACT_CLASS( cbBarDimHandlerBase )
@ -726,7 +726,7 @@ Helper class used internally by the wxFrameLayout class.
Holds and manages information about bar dimensions.
*/
class WXFL_DECLSPEC cbDimInfo : public wxObject
class WXDLLIMPEXP_FL cbDimInfo : public wxObject
{
DECLARE_DYNAMIC_CLASS( cbDimInfo )
public:

View File

@ -24,7 +24,7 @@
Tool layout item.
*/
class WXFL_DECLSPEC wxToolLayoutItem : public wxObject
class WXDLLIMPEXP_FL wxToolLayoutItem : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxToolLayoutItem)
@ -33,7 +33,7 @@ public:
bool mIsSeparator;
};
class WXFL_DECLSPEC wxDynToolInfo;
class WXDLLIMPEXP_FL wxDynToolInfo;
typedef wxToolLayoutItem* wxToolLayoutItemPtrT;
typedef wxDynToolInfo* wxDynToolInfoPtrT;
@ -45,7 +45,7 @@ WXFL_DEFINE_ARRAY( wxDynToolInfoPtrT, wxDynToolInfoArrayT );
This is a base class for layout algorithm implementations.
*/
class WXFL_DECLSPEC LayoutManagerBase
class WXDLLIMPEXP_FL LayoutManagerBase
{
public:
// Constructor.
@ -64,7 +64,7 @@ BagLayout lays out items in left-to-right order from
top to bottom.
*/
class WXFL_DECLSPEC BagLayout : public LayoutManagerBase
class WXDLLIMPEXP_FL BagLayout : public LayoutManagerBase
{
public:
// Constructor.
@ -79,7 +79,7 @@ public:
This class holds dynamic toolbar item information.
*/
class WXFL_DECLSPEC wxDynToolInfo : public wxToolLayoutItem
class WXDLLIMPEXP_FL wxDynToolInfo : public wxToolLayoutItem
{
DECLARE_DYNAMIC_CLASS(wxDynToolInfo)
@ -99,7 +99,7 @@ public:
wxDynamicToolBar manages containment and layout of tool windows.
*/
class WXFL_DECLSPEC wxDynamicToolBar : public wxToolBarBase
class WXDLLIMPEXP_FL wxDynamicToolBar : public wxToolBarBase
{
protected:
friend class wxDynamicToolBarSerializer;

View File

@ -23,7 +23,7 @@
Dynamic toolbar dimension handler.
*/
class WXFL_DECLSPEC cbDynToolBarDimHandler : public cbBarDimHandlerBase
class WXDLLIMPEXP_FL cbDynToolBarDimHandler : public cbBarDimHandlerBase
{
DECLARE_DYNAMIC_CLASS( cbDynToolBarDimHandler )
public:

View File

@ -18,32 +18,24 @@
* If we're using wx in Dynamic Library format do we
* want FL to be in DLL form as well?
*/
#if defined(WXUSINGDLL) && \
(defined(WXMAKING_FL_DLL) || defined(WXUSING_FL_DLL))
#if defined(WXMAKING_FL_DLL)
// When building the DLL WXFLDECLSPEC exports classes
# define WXFL_DECLSPEC WXEXPORT
#elif defined(WXUSING_FL_DLL)
// When building the DLL WXFLDECLSPEC imports classes
# define WXFL_DECLSPEC WXIMPORT
#endif // defined(WXBUILD_FL_DLL)
#else
// When building the static library nullify the effect of WXFL_DECLSPEC
#define WXFL_DECLSPEC
#endif // WXUSINGDLL && (WXMAKING_FL_DLL || WXUSING_FL_DLL)
#ifdef WXMAKINGDLL_FL
#define WXDLLIMPEXP_FL WXEXPORT
#elif defined(WXUSINGDLL)
#define WXDLLIMPEXP_FL WXIMPORT
#else // not making nor using DLL
#define WXDLLIMPEXP_FL
#endif
///////////////////////////////////////////////////////////////////////////////
// Override some of the wxArray functions to
// include our definitions
///////////////////////////////////////////////////////////////////////////////
#define WXFL_DEFINE_ARRAY(c,l) \
class WXFL_DECLSPEC l; \
class WXDLLIMPEXP_FL l; \
WX_DEFINE_ARRAY(c,l)
#define WXFL_DEFINE_ARRAY_LONG(t,l) \
class WXFL_DECLSPEC l; \
class WXDLLIMPEXP_FL l; \
WX_DEFINE_ARRAY_LONG(t,l)

View File

@ -32,7 +32,7 @@ class wxFrameManager;
It is not clear what this class does. It is not used elsewhere in FL.
*/
class WXFL_DECLSPEC wxFrameView : public wxEvtHandler
class WXDLLIMPEXP_FL wxFrameView : public wxEvtHandler
{
protected:
wxStringList mTopMenus;
@ -87,7 +87,7 @@ class wxFrame;
It is not clear what this class does. It is not used elsewhere in FL.
*/
class WXFL_DECLSPEC wxFrameManager : wxObject
class WXDLLIMPEXP_FL wxFrameManager : wxObject
{
protected:
wxList mViews;

View File

@ -34,7 +34,7 @@ inline void* gc_node_to_obj( wxNode* pGCNode )
This class implements an extremely slow but simple garbage collection algorithm.
*/
class WXFL_DECLSPEC GarbageCollector
class WXDLLIMPEXP_FL GarbageCollector
{
protected:
wxList mAllNodes;

View File

@ -93,7 +93,7 @@ to avoid dirty non-client areas of moved windows
in some special cases of 'overlapping anomalies'.
*/
class WXFL_DECLSPEC cbGCUpdatesMgr : public cbSimpleUpdatesMgr
class WXDLLIMPEXP_FL cbGCUpdatesMgr : public cbSimpleUpdatesMgr
{
DECLARE_DYNAMIC_CLASS( cbGCUpdatesMgr )
protected:

View File

@ -20,13 +20,13 @@
#include "wx/timer.h"
class WXFL_DECLSPEC cbHintAnimTimer;
class WXDLLIMPEXP_FL cbHintAnimTimer;
/*
A plugin to draw animated hints when the user drags a pane.
*/
class WXFL_DECLSPEC cbHintAnimationPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbHintAnimationPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbHintAnimationPlugin )
protected:
@ -101,7 +101,7 @@ public:
A private helper class.
*/
struct WXFL_DECLSPEC MorphInfoT
struct WXDLLIMPEXP_FL MorphInfoT
{
wxPoint mFrom;
wxPoint mTill;
@ -111,7 +111,7 @@ struct WXFL_DECLSPEC MorphInfoT
A private helper class.
*/
class WXFL_DECLSPEC cbHintAnimTimer : public wxTimer
class WXDLLIMPEXP_FL cbHintAnimTimer : public wxTimer
{
protected:

View File

@ -32,8 +32,8 @@
// classes declared in this header file
class WXFL_DECLSPEC wxNewBitmapButton;
class WXFL_DECLSPEC wxBorderLessBitmapButton;
class WXDLLIMPEXP_FL wxNewBitmapButton;
class WXDLLIMPEXP_FL wxBorderLessBitmapButton;
/*
This is an alternative class to wxBitmapButton. It is used

View File

@ -27,7 +27,7 @@ would be enough for the frame layout to function properly
(they are plugged in automatically by the wxFrameLayout class).
*/
class WXFL_DECLSPEC cbPaneDrawPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbPaneDrawPlugin : public cbPluginBase
{
public:
DECLARE_DYNAMIC_CLASS( cbPaneDrawPlugin )

View File

@ -25,7 +25,7 @@ The behaviour and appearance resembles drag and drop positioning
of the toolbar rows in Netscape Communicator 4.xx.
*/
class WXFL_DECLSPEC cbRowDragPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbRowDragPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbRowDragPlugin )
public:
@ -217,7 +217,7 @@ public:
Internal helper class.
*/
class WXFL_DECLSPEC cbHiddenBarInfo : public wxObject
class WXDLLIMPEXP_FL cbHiddenBarInfo : public wxObject
{
DECLARE_DYNAMIC_CLASS( cbHiddenBarInfo )
public:

View File

@ -23,7 +23,7 @@ Simple implementation of a plugin which handles row layout
requests sent from a frame layout.
*/
class WXFL_DECLSPEC cbRowLayoutPlugin : public cbPluginBase
class WXDLLIMPEXP_FL cbRowLayoutPlugin : public cbPluginBase
{
DECLARE_DYNAMIC_CLASS( cbRowLayoutPlugin )
protected:

View File

@ -27,7 +27,7 @@
#define BTN_BOX_WIDTH 12
#define BTN_X_WIEGHT 2
class WXFL_DECLSPEC cbMiniButton;
class WXDLLIMPEXP_FL cbMiniButton;
typedef cbMiniButton* cbMinitButtonPtrT;
@ -38,7 +38,7 @@ A tool window is a special kind of frame that paints its own title, and
can be used to implement small floating windows.
*/
class WXFL_DECLSPEC wxToolWindow : public wxFrame
class WXDLLIMPEXP_FL wxToolWindow : public wxFrame
{
DECLARE_DYNAMIC_CLASS( wxToolWindow )
@ -222,7 +222,7 @@ public:
cbCloseBox is a window close button, used in a wxToolWindow titlebar.
*/
class WXFL_DECLSPEC cbCloseBox : public cbMiniButton
class WXDLLIMPEXP_FL cbCloseBox : public cbMiniButton
{
public:
// Draws the close button appearance.
@ -233,7 +233,7 @@ public:
cbCollapseBox is a window collapse button, used in a wxToolWindow titlebar.
*/
class WXFL_DECLSPEC cbCollapseBox : public cbMiniButton
class WXDLLIMPEXP_FL cbCollapseBox : public cbMiniButton
{
public:
bool mIsAtLeft;
@ -246,7 +246,7 @@ public:
cbDockBox is a window dock button, used in a wxToolWindow titlebar.
*/
class WXFL_DECLSPEC cbDockBox : public cbMiniButton
class WXDLLIMPEXP_FL cbDockBox : public cbMiniButton
{
public:
// Draws the dock button appearance.
@ -258,7 +258,7 @@ cbFloatedBarWindow is a kind of wxToolWindow,
implementing floating toolbars.
*/
class WXFL_DECLSPEC cbFloatedBarWindow : public wxToolWindow
class WXDLLIMPEXP_FL cbFloatedBarWindow : public wxToolWindow
{
DECLARE_DYNAMIC_CLASS( cbFloatedBarWindow )
protected:

View File

@ -23,7 +23,7 @@ This class implements slightly optimized logic for refreshing
the areas of frame layout that actually need to be updated.
*/
class WXFL_DECLSPEC cbSimpleUpdatesMgr : public cbUpdatesManagerBase
class WXDLLIMPEXP_FL cbSimpleUpdatesMgr : public cbUpdatesManagerBase
{
DECLARE_DYNAMIC_CLASS( cbSimpleUpdatesMgr )
protected: