#ifndef _WX_WINPARS_H_
#define _WX_WINPARS_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "winpars.h"
#endif
#include "wx/html/htmlcell.h"
#include "wx/encconv.h"
+class WXDLLEXPORT wxHtmlWindow;
class WXDLLEXPORT wxHtmlWinParser;
class WXDLLEXPORT wxHtmlWinTagHandler;
class WXDLLEXPORT wxHtmlTagsModule;
friend class wxHtmlWindow;
public:
- wxHtmlWinParser(wxWindow *wnd = NULL);
+ wxHtmlWinParser(wxHtmlWindow *wnd = NULL);
~wxHtmlWinParser();
virtual void InitParser(const wxString& source);
virtual void DoneParser();
virtual wxObject* GetProduct();
+ virtual wxFSFile *OpenURL(wxHtmlURLType type, const wxString& url) const;
+
// Set's the DC used for parsing. If SetDC() is not called,
// parsing won't proceed
- virtual void SetDC(wxDC *dc, double pixel_scale = 1.0)
+ virtual void SetDC(wxDC *dc, double pixel_scale = 1.0)
{ m_DC = dc; m_PixelScale = pixel_scale; }
wxDC *GetDC() {return m_DC;}
// height/width. They return h/w of default font
// for this DC. If you want actual values, call
// GetDC()->GetChar...()
-
+
// returns associated wxWindow
- wxWindow *GetWindow() {return m_Window;}
+ wxHtmlWindow *GetWindow() {return m_Window;}
// sets fonts to be used when displaying HTML page.
void SetFonts(wxString normal_face, wxString fixed_face, const int *sizes);
-
+
// Adds tags module. see wxHtmlTagsModule for details.
static void AddModule(wxHtmlTagsModule *module);
const wxHtmlLinkInfo& GetLink() const { return m_Link; }
void SetLink(const wxHtmlLinkInfo& link);
+#if !wxUSE_UNICODE
void SetInputEncoding(wxFontEncoding enc);
wxFontEncoding GetInputEncoding() const { return m_InputEnc; }
wxFontEncoding GetOutputEncoding() const { return m_OutputEnc; }
wxEncodingConverter *GetEncodingConverter() const { return m_EncConv; }
+#endif
// creates font depending on m_Font* members.
virtual wxFont* CreateCurrentFont();
protected:
- virtual void AddText(const char *txt);
+ virtual void AddText(const wxChar* txt);
private:
bool m_tmpLastWasSpace;
- // temporary variable used by AddText
- wxWindow *m_Window;
+ wxChar *m_tmpStrBuf;
+ size_t m_tmpStrBufSize;
+ // temporary variables used by AddText
+ wxHtmlWindow *m_Window;
// window we're parsing for
double m_PixelScale;
wxDC *m_DC;
wxFont* m_FontsTable[2][2][2][2][7];
wxString m_FontsFacesTable[2][2][2][2][7];
+#if !wxUSE_UNICODE
wxFontEncoding m_FontsEncTable[2][2][2][2][7];
+#endif
// table of loaded fonts. 1st four indexes are 0 or 1, depending on on/off
// state of these flags (from left to right):
// [bold][italic][underlined][fixed_size]
wxString m_FontFaceFixed, m_FontFaceNormal;
// html font sizes and faces of fixed and proportional fonts
+ DECLARE_NO_COPY_CLASS(wxHtmlWinParser)
+
+#if !wxUSE_UNICODE
wxFontEncoding m_InputEnc, m_OutputEnc;
// I/O font encodings
wxEncodingConverter *m_EncConv;
+#endif
};
protected:
wxHtmlWinParser *m_WParser; // same as m_Parser, but overcasted
+
+ DECLARE_NO_COPY_CLASS(wxHtmlWinTagHandler)
};
+