compilation fix for wxABI_VERSION < 20808 (fixes #10493)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@58846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2009-02-12 19:38:20 +00:00
parent e0264d5d02
commit 4d84b89293
2 changed files with 16 additions and 15 deletions

View File

@@ -24,6 +24,7 @@ class WXDLLIMPEXP_FWD_HTML wxHtmlWindowInterface;
class WXDLLIMPEXP_FWD_HTML wxHtmlWinParser;
class WXDLLIMPEXP_FWD_HTML wxHtmlWinTagHandler;
class WXDLLIMPEXP_FWD_HTML wxHtmlTagsModule;
class wxHtmlWinParser_TextParsingState;
//--------------------------------------------------------------------------------
@@ -221,22 +222,10 @@ private:
wxEncodingConverter *m_EncConv;
#endif
struct TextParsingState
{
// current whitespace handling mode
WhitespaceMode m_whitespaceMode;
wxHtmlWordCell *m_lastWordCell;
// current position on line, in num. of characters; used to properly
// expand TABs; only updated while inside <pre>
int m_posColumn;
};
// NB: this pointer replaces m_lastWordCell pointer in wx<=2.8.7; this
// way, wxHtmlWinParser remains ABI compatible with older versions
// despite addition of two fields in TextParsingState
TextParsingState *m_textParsingState;
// despite addition of two fields in wxHtmlWinParser_TextParsingState
wxHtmlWinParser_TextParsingState *m_textParsingState;
DECLARE_NO_COPY_CLASS(wxHtmlWinParser)
};

View File

@@ -145,13 +145,25 @@ wxString wxHtmlWordWithTabsCell::GetPartAsText(int begin, int end) const
// wxHtmlWinParser
//-----------------------------------------------------------------------------
struct wxHtmlWinParser_TextParsingState
{
// current whitespace handling mode
wxHtmlWinParser::WhitespaceMode m_whitespaceMode;
wxHtmlWordCell *m_lastWordCell;
// current position on line, in num. of characters; used to properly
// expand TABs; only updated while inside <pre>
int m_posColumn;
};
IMPLEMENT_ABSTRACT_CLASS(wxHtmlWinParser, wxHtmlParser)
wxList wxHtmlWinParser::m_Modules;
wxHtmlWinParser::wxHtmlWinParser(wxHtmlWindowInterface *wndIface)
{
m_textParsingState = new TextParsingState;
m_textParsingState = new wxHtmlWinParser_TextParsingState;
m_textParsingState->m_whitespaceMode = Whitespace_Normal;
m_textParsingState->m_lastWordCell = NULL;
m_textParsingState->m_posColumn = 0;