#ifdef WXUSINGDLL
#define WXUSINGDLL_BASE
#define WXUSINGDLL_CORE
+ #define WXUSINGDLL_HTML
#endif // WXUSINGDLL
#define WXDLLIMPEXP_DATA_CORE(type) type
#endif
+#ifdef WXMAKINGDLL_HTML
+ #define WXDLLIMPEXP_HTML WXEXPORT
+ #define WXDLLIMPEXP_DATA_HTML(type) WXEXPORT type
+#elif defined(WXUSINGDLL_HTML)
+ #define WXDLLIMPEXP_HTML WXIMPORT
+ #define WXDLLIMPEXP_DATA_HTML(type) WXIMPORT type
+#else // not making nor using DLL
+ #define WXDLLIMPEXP_HTML
+ #define WXDLLIMPEXP_DATA_HTML(type) type
+#endif
+
// for backwards compatibility, define suffix-less versions too
#define WXDLLEXPORT WXDLLIMPEXP_CORE
#define WXDLLEXPORT_DATA WXDLLIMPEXP_DATA_CORE
#define wxID_HTML_HELPFRAME (wxID_HIGHEST + 1)
-class WXDLLEXPORT wxHtmlHelpController : public wxHelpControllerBase // wxEvtHandler
+class WXDLLIMPEXP_HTML wxHtmlHelpController : public wxHelpControllerBase // wxEvtHandler
{
DECLARE_DYNAMIC_CLASS(wxHtmlHelpController)
#include "wx/dynarray.h"
#include "wx/font.h"
-class WXDLLEXPORT wxHtmlHelpData;
+class WXDLLIMPEXP_HTML wxHtmlHelpData;
//--------------------------------------------------------------------------------
// helper classes & structs
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlBookRecord
+class WXDLLIMPEXP_HTML wxHtmlBookRecord
{
public:
wxHtmlBookRecord(const wxString& bookfile, const wxString& basepath,
// of keyword(s)
//------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlSearchEngine : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlSearchEngine : public wxObject
{
public:
wxHtmlSearchEngine() : wxObject() {m_Keyword = NULL; }
// class inside wxHtmlHelpData, but that's against coding standards :-(
// Never construct this class yourself, obtain a copy from
// wxHtmlHelpData::PrepareKeywordSearch(const wxString& key)
-class WXDLLEXPORT wxHtmlSearchStatus
+class WXDLLIMPEXP_HTML wxHtmlSearchStatus
{
public:
// constructor; supply wxHtmlHelpData ptr, the keyword and (optionally) the
DECLARE_NO_COPY_CLASS(wxHtmlSearchStatus)
};
-class WXDLLEXPORT wxHtmlHelpData : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlHelpData : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxHtmlHelpData)
friend class wxHtmlSearchStatus;
#include "wx/html/htmlwin.h"
#include "wx/html/htmprint.h"
-class WXDLLEXPORT wxButton;
-class WXDLLEXPORT wxTextCtrl;
+class WXDLLIMPEXP_CORE wxButton;
+class WXDLLIMPEXP_CORE wxTextCtrl;
// style flags for the Help Frame
};
-class WXDLLEXPORT wxHelpControllerBase;
+class WXDLLIMPEXP_CORE wxHelpControllerBase;
-class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
+class WXDLLIMPEXP_HTML wxHtmlHelpFrame : public wxFrame
{
DECLARE_DYNAMIC_CLASS(wxHtmlHelpFrame)
#include "wx/window.h"
-class WXDLLEXPORT wxHtmlLinkInfo;
-class WXDLLEXPORT wxHtmlCell;
-class WXDLLEXPORT wxHtmlContainerCell;
+class WXDLLIMPEXP_HTML wxHtmlLinkInfo;
+class WXDLLIMPEXP_HTML wxHtmlCell;
+class WXDLLIMPEXP_HTML wxHtmlContainerCell;
// wxHtmlSelection is data holder with information about text selection.
// Selection is defined by two positions (beginning and end of the selection)
// and two leaf(!) cells at these positions.
-class WXDLLEXPORT wxHtmlSelection
+class WXDLLIMPEXP_HTML wxHtmlSelection
{
public:
wxHtmlSelection()
// Selection state is passed to wxHtmlCell::Draw so that it can render itself
// differently e.g. when inside text selection or outside it.
-class WXDLLEXPORT wxHtmlRenderingState
+class WXDLLIMPEXP_HTML wxHtmlRenderingState
{
public:
wxHtmlRenderingState() : m_selState(wxHTML_SEL_OUT) {}
// HTML rendering customization. This class is used when rendering wxHtmlCells
// as a callback:
-class WXDLLEXPORT wxHtmlRenderingStyle
+class WXDLLIMPEXP_HTML wxHtmlRenderingStyle
{
public:
virtual wxColour GetSelectedTextColour(const wxColour& clr) = 0;
};
// Standard style:
-class WXDLLEXPORT wxDefaultHtmlRenderingStyle : public wxHtmlRenderingStyle
+class WXDLLIMPEXP_HTML wxDefaultHtmlRenderingStyle : public wxHtmlRenderingStyle
{
public:
virtual wxColour GetSelectedTextColour(const wxColour& clr);
// Information given to cells when drawing them. Contains rendering state,
// selection information and rendering style object that can be used to
// customize the output.
-class WXDLLEXPORT wxHtmlRenderingInfo
+class WXDLLIMPEXP_HTML wxHtmlRenderingInfo
{
public:
wxHtmlRenderingInfo() : m_selection(NULL), m_style(NULL) {}
// ---------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlCell : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlCell : public wxObject
{
public:
wxHtmlCell();
// Single word in input stream.
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlWordCell : public wxHtmlCell
+class WXDLLIMPEXP_HTML wxHtmlWordCell : public wxHtmlCell
{
public:
wxHtmlWordCell(const wxString& word, wxDC& dc);
// Container contains other cells, thus forming tree structure of rendering
// elements. Basic code of layout algorithm is contained in this class.
-class WXDLLEXPORT wxHtmlContainerCell : public wxHtmlCell
+class WXDLLIMPEXP_HTML wxHtmlContainerCell : public wxHtmlCell
{
public:
wxHtmlContainerCell(wxHtmlContainerCell *parent);
// Color changer.
// ---------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlColourCell : public wxHtmlCell
+class WXDLLIMPEXP_HTML wxHtmlColourCell : public wxHtmlCell
{
public:
wxHtmlColourCell(const wxColour& clr, int flags = wxHTML_CLR_FOREGROUND) : wxHtmlCell() {m_Colour = clr; m_Flags = flags;}
// Sets actual font used for text rendering
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlFontCell : public wxHtmlCell
+class WXDLLIMPEXP_HTML wxHtmlFontCell : public wxHtmlCell
{
public:
wxHtmlFontCell(wxFont *font) : wxHtmlCell() { m_Font = (*font); }
// (buttons, input boxes etc.)
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlWidgetCell : public wxHtmlCell
+class WXDLLIMPEXP_HTML wxHtmlWidgetCell : public wxHtmlCell
{
public:
// !!! wnd must have correct parent!
// Internal data structure. It represents hypertext link
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlLinkInfo : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlLinkInfo : public wxObject
{
public:
wxHtmlLinkInfo() : wxObject()
// wxHtmlTerminalCellsInterator
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlTerminalCellsInterator
+class WXDLLIMPEXP_HTML wxHtmlTerminalCellsInterator
{
public:
wxHtmlTerminalCellsInterator(const wxHtmlCell *from, const wxHtmlCell *to)
// kinds of files (HTPP, FTP, local, tar.gz etc..)
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlFilter : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlFilter : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxHtmlFilter)
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlFilterPlainText : public wxHtmlFilter
+class WXDLLIMPEXP_HTML wxHtmlFilterPlainText : public wxHtmlFilter
{
DECLARE_DYNAMIC_CLASS(wxHtmlFilterPlainText)
#include "wx/hash.h"
#include "wx/fontenc.h"
-class WXDLLEXPORT wxMBConv;
-class WXDLLEXPORT wxHtmlParser;
-class WXDLLEXPORT wxHtmlTagHandler;
-class WXDLLEXPORT wxHtmlEntitiesParser;
+class WXDLLIMPEXP_BASE wxMBConv;
+class WXDLLIMPEXP_HTML wxHtmlParser;
+class WXDLLIMPEXP_HTML wxHtmlTagHandler;
+class WXDLLIMPEXP_HTML wxHtmlEntitiesParser;
class wxHtmlTextPieces;
class wxHtmlParserState;
// the document and divide it into blocks of tags (where one block
// consists of starting and ending tag and of text between these
// 2 tags.
-class WXDLLEXPORT wxHtmlParser : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlParser : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxHtmlParser)
// (using it's public methods)
// 2. Parser parses source between starting and ending tag
// 3. Handler restores original state of the parser
-class WXDLLEXPORT wxHtmlTagHandler : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlTagHandler : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxHtmlTagHandler)
// This class is used to parse HTML entities in strings. It can handle
// both named entities and &#xxxx entries where xxxx is Unicode code.
-class WXDLLEXPORT wxHtmlEntitiesParser : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlEntitiesParser : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxHtmlEntitiesParser)
// processors before displaying it, thus allowing for on-the-fly
// modifications of the markup.
-class WXDLLEXPORT wxHtmlProcessor : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlProcessor : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxHtmlProcessor)
#include "wx/object.h"
-class WXDLLEXPORT wxColour;
-class WXDLLEXPORT wxHtmlEntitiesParser;
+class WXDLLIMPEXP_CORE wxColour;
+class WXDLLIMPEXP_HTML wxHtmlEntitiesParser;
//-----------------------------------------------------------------------------
// wxHtmlTagsCache
struct wxHtmlCacheItem;
-class WXDLLEXPORT wxHtmlTagsCache : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlTagsCache : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxHtmlTagsCache)
// by wxHtmlParser.
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlTag : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlTag : public wxObject
{
DECLARE_CLASS(wxHtmlTag)
class wxHtmlWinModule;
class wxHtmlHistoryArray;
class wxHtmlProcessorList;
-class WXDLLEXPORT wxHtmlWinAutoScrollTimer;
+class WXDLLIMPEXP_HTML wxHtmlWinAutoScrollTimer;
// wxHtmlWindow flags:
// SetPage(text) or LoadPage(filename).
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
+class WXDLLIMPEXP_HTML wxHtmlWindow : public wxScrolledWindow
{
DECLARE_DYNAMIC_CLASS(wxHtmlWindow)
friend class wxHtmlWinModule;
// portion of DC
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlDCRenderer : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlDCRenderer : public wxObject
{
public:
wxHtmlDCRenderer();
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlPrintout : public wxPrintout
+class WXDLLIMPEXP_HTML wxHtmlPrintout : public wxPrintout
{
public:
wxHtmlPrintout(const wxString& title = wxT("Printout"));
// stores page&printer settings in it.
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlEasyPrinting : public wxObject
+class WXDLLIMPEXP_HTML wxHtmlEasyPrinting : public wxObject
{
public:
wxHtmlEasyPrinting(const wxString& name = wxT("Printing"), wxWindow *parentWindow = NULL);
#include "wx/html/htmlcell.h"
#include "wx/encconv.h"
-class WXDLLEXPORT wxHtmlWindow;
-class WXDLLEXPORT wxHtmlWinParser;
-class WXDLLEXPORT wxHtmlWinTagHandler;
-class WXDLLEXPORT wxHtmlTagsModule;
+class WXDLLIMPEXP_HTML wxHtmlWindow;
+class WXDLLIMPEXP_HTML wxHtmlWinParser;
+class WXDLLIMPEXP_HTML wxHtmlWinTagHandler;
+class WXDLLIMPEXP_HTML wxHtmlTagsModule;
//--------------------------------------------------------------------------------
// wxHtmlWinParser
// wxHtmlWindow. It uses special wxHtmlWinTagHandler.
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlWinParser : public wxHtmlParser
+class WXDLLIMPEXP_HTML wxHtmlWinParser : public wxHtmlParser
{
friend class wxHtmlWindow;
// the wxHtmlWinParser object
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlWinTagHandler : public wxHtmlTagHandler
+class WXDLLIMPEXP_HTML wxHtmlWinTagHandler : public wxHtmlTagHandler
{
DECLARE_ABSTRACT_CLASS(wxHtmlWinTagHandler)
// (See documentation for details)
//--------------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlTagsModule : public wxModule
+class WXDLLIMPEXP_HTML wxHtmlTagsModule : public wxModule
{
DECLARE_DYNAMIC_CLASS(wxHtmlTagsModule)
#include "wx/vlbox.h" // base class
-class WXDLLEXPORT wxHtmlCell;
-class WXDLLEXPORT wxHtmlWinParser;
-class WXDLLEXPORT wxHtmlListBoxCache;
-class WXDLLEXPORT wxHtmlListBoxStyle;
+class WXDLLIMPEXP_HTML wxHtmlCell;
+class WXDLLIMPEXP_HTML wxHtmlWinParser;
+class WXDLLIMPEXP_HTML wxHtmlListBoxCache;
+class WXDLLIMPEXP_HTML wxHtmlListBoxStyle;
// ----------------------------------------------------------------------------
// wxHtmlListBox
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxHtmlListBox : public wxVListBox
+class WXDLLIMPEXP_HTML wxHtmlListBox : public wxVListBox
{
public:
// constructors and such
#include "wx/helpbase.h"
-class WXDLLEXPORT wxBestHelpController: public wxHelpControllerBase
+class WXDLLIMPEXP_HTML wxBestHelpController: public wxHelpControllerBase
{
public:
wxBestHelpController()