X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/622ea7838dd5ab898c7124f980edb62c390fb292..279ababf7baa0655a58074b868da222db7cc5a4b:/include/wx/html/htmlwin.h
diff --git a/include/wx/html/htmlwin.h b/include/wx/html/htmlwin.h
index c0cb02a3fc..0fd05a4d01 100644
--- a/include/wx/html/htmlwin.h
+++ b/include/wx/html/htmlwin.h
@@ -56,25 +56,22 @@ class WXDLLEXPORT HtmlHistoryItem : public wxObject
int m_Pos;
};
-#undef WXDLLEXPORTLOCAL
-#define WXDLLEXPORTLOCAL WXDLLEXPORT
- // ?? Don't know why - but Allen Van Sickel reported it to fix problems with DLL
-WX_DECLARE_OBJARRAY(HtmlHistoryItem, HtmlHistoryArray);
-
-#undef WXDLLEXPORTLOCAL
-#define WXDLLEXPORTLOCAL
+WX_DECLARE_EXPORTED_OBJARRAY(HtmlHistoryItem, HtmlHistoryArray);
+class wxHtmlWinModule;
class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
{
DECLARE_DYNAMIC_CLASS(wxHtmlWindow)
+
+ friend class wxHtmlWinModule;
public:
wxHtmlWindow() : wxScrolledWindow() {};
wxHtmlWindow(wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
- long style = wxHW_SCROLLBAR_AUTO,
+ long style = wxHW_SCROLLBAR_AUTO,
const wxString& name = "htmlWindow");
~wxHtmlWindow();
@@ -97,6 +94,10 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
wxString GetOpenedPage() const {return m_OpenedPage;}
// Returns full location of opened page
+ wxString GetOpenedAnchor() const {return m_OpenedAnchor;}
+ // Returns anchor within opened page
+ wxString GetOpenedPageTitle() const {return m_OpenedPageTitle;}
+ // Returns
of opened page or empty string otherwise
void SetRelatedFrame(wxFrame* frame, const wxString& format);
// sets frame in which page title will be displayed. Format is format of
@@ -107,11 +108,10 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
// after(!) calling SetRelatedFrame, this sets statusbar slot where messages
// will be displayed. Default is -1 = no messages.
- void SetFonts(wxString normal_face, int normal_italic_mode, wxString fixed_face, int fixed_italic_mode, int *sizes);
+ void SetFonts(wxString normal_face, wxString fixed_face, const int *sizes);
// sets fonts to be used when displaying HTML page.
- // *_italic_mode can be either wxSLANT or wxITALIC
- void SetTitle(const wxString& title);
+ virtual void OnSetTitle(const wxString& title);
// Sets the title of the window
// (depending on the information passed to SetRelatedFrame() method)
@@ -139,13 +139,10 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
static void AddFilter(wxHtmlFilter *filter);
// Adds input filter
- virtual void OnLinkClicked(const wxString& link);
+ virtual void OnLinkClicked(const wxHtmlLinkInfo& link);
// called when users clicked on hypertext link. Default behavior is to
// call LoadPage(loc)
- static void CleanUpStatics();
- // cleans static variables
-
wxHtmlWinParser *GetParser() const { return m_Parser; }
// return a pointer to the parser.
@@ -164,11 +161,13 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
void OnSize(wxSizeEvent& event);
void OnMouseEvent(wxMouseEvent& event);
void OnIdle(wxIdleEvent& event);
- void OnKeyDown(wxKeyEvent& event);
- virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;}
+ virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;}
// returns new filter (will be stored into m_DefaultFilter variable)
+ static void CleanUpStatics();
+ // cleans static variables
+
protected:
wxHtmlContainerCell *m_Cell;
@@ -182,6 +181,8 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
// contains name of actualy opened page or empty string if no page opened
wxString m_OpenedAnchor;
// contains name of current anchor within m_OpenedPage
+ wxString m_OpenedPageTitle;
+ // contains title of actualy opened page or empty string if no tag
wxFileSystem* m_FS;
// class for opening files (file system)
@@ -201,17 +202,20 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
bool m_tmpMouseMoved;
// a flag indicated if mouse moved
// (if TRUE we will try to change cursor in last call to OnIdle)
- wxString m_tmpLastLink;
+ wxHtmlLinkInfo *m_tmpLastLink;
// contains last link name
- bool m_tmpCanDraw;
- // if FALSE contents of the window is not redrawn
- // (in order to avoid ugly bliking)
+ int m_tmpCanDrawLocks;
+ // if >0 contents of the window is not redrawn
+ // (in order to avoid ugly blinking)
static wxList m_Filters;
// list of HTML filters
static wxHtmlFilter *m_DefaultFilter;
// this filter is used when no filter is able to read some file
+ static wxCursor *s_cur_hand;
+ static wxCursor *s_cur_arrow;
+
HtmlHistoryArray m_History;
int m_HistoryPos;
// browser history