From: Václav Slavík <vslavik@fastmail.fm>
Date: Tue, 27 Nov 2001 18:13:53 +0000 (+0000)
Subject: added two-step creation of wxHtmlWindow
X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/4f417130931f75a9ac6efae18d55b1a3b59423f0

added two-step creation of wxHtmlWindow


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@12732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---

diff --git a/include/wx/html/htmlwin.h b/include/wx/html/htmlwin.h
index 5ef878c088..c58d244feb 100644
--- a/include/wx/html/htmlwin.h
+++ b/include/wx/html/htmlwin.h
@@ -49,14 +49,24 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
     friend class wxHtmlWinModule;
 
 public:
-    wxHtmlWindow() : wxScrolledWindow() {}
+    wxHtmlWindow() { Init(); }
     wxHtmlWindow(wxWindow *parent, wxWindowID id = -1,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
                  long style = wxHW_SCROLLBAR_AUTO,
-                 const wxString& name = wxT("htmlWindow"));
+                 const wxString& name = wxT("htmlWindow"))
+    {
+        Init();
+        Create(parent, id, pos, size, style, name);
+    }
     ~wxHtmlWindow();
 
+    bool Create(wxWindow *parent, wxWindowID id = -1,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                long style = wxHW_SCROLLBAR_AUTO,
+                const wxString& name = wxT("htmlWindow"));
+
     // Set HTML page and display it. !! source is HTML document itself,
     // it is NOT address/filename of HTML document. If you want to
     // specify document location, use LoadPage() istead
@@ -153,6 +163,8 @@ public:
     virtual bool AcceptsFocusFromKeyboard() const { return FALSE; }
 
 protected:
+    void Init();
+
     // Scrolls to anchor of this name. (Anchor is #news
     // or #features etc. it is part of address sometimes:
     // http://www.ms.mff.cuni.cz/~vsla8348/wxhtml/index.html#news)
diff --git a/src/html/htmlwin.cpp b/src/html/htmlwin.cpp
index 7d79fe5523..6cf959cf5f 100644
--- a/src/html/htmlwin.cpp
+++ b/src/html/htmlwin.cpp
@@ -72,8 +72,7 @@ WX_DEFINE_LIST(wxHtmlProcessorList);
 //-----------------------------------------------------------------------------
 
 
-wxHtmlWindow::wxHtmlWindow(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size,
-                long style, const wxString& name) : wxScrolledWindow(parent, id, pos, size, style | wxVSCROLL | wxHSCROLL, name)
+void wxHtmlWindow::Init()
 {
     m_tmpMouseMoved = FALSE;
     m_tmpLastLink = NULL;
@@ -87,17 +86,28 @@ wxHtmlWindow::wxHtmlWindow(wxWindow *parent, wxWindowID id, const wxPoint& pos,
     m_Cell = NULL;
     m_Parser = new wxHtmlWinParser(this);
     m_Parser->SetFS(m_FS);
-    SetBorders(10);
     m_HistoryPos = -1;
     m_HistoryOn = TRUE;
     m_History = new wxHtmlHistoryArray;
     m_Processors = NULL;
+    m_Style = 0;
+    SetBorders(10);
+}
+
+bool wxHtmlWindow::Create(wxWindow *parent, wxWindowID id, 
+                          const wxPoint& pos, const wxSize& size,
+                          long style, const wxString& name) 
+{
+    if (!wxScrolledWindow::Create(parent, id, pos, size, 
+                                  style | wxVSCROLL | wxHSCROLL, name))
+        return FALSE;
+
     m_Style = style;
     SetPage(wxT("<html><body></body></html>"));
+    return TRUE;
 }
 
 
-
 wxHtmlWindow::~wxHtmlWindow()
 {
     HistoryClear();