]> git.saurik.com Git - wxWidgets.git/commitdiff
wxWizardPage(Simple) can do two-phase creation now
authorVáclav Slavík <vslavik@fastmail.fm>
Sun, 21 Apr 2002 11:45:37 +0000 (11:45 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sun, 21 Apr 2002 11:45:37 +0000 (11:45 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/wizard.h
src/generic/wizard.cpp

index b402cd5fea61a7692588ec59c7227124d9855555..3fa787cc2540991b388129eb0175d7496196f92a 100644 (file)
@@ -46,11 +46,19 @@ class WXDLLEXPORT wxWizard;
 class WXDLLEXPORT wxWizardPage : public wxPanel
 {
 public:
+    wxWizardPage() { Init(); }
+    // common part of ctors:
+    void Init();
+
     // ctor accepts an optional bitmap which will be used for this page instead
     // of the default one for this wizard (should be of the same size). Notice
     // that no other parameters are needed because the wizard will resize and
     // reposition the page anyhow
     wxWizardPage(wxWizard *parent,
+                 const wxBitmap& bitmap = wxNullBitmap,
+                 const wxChar* resource = NULL);
+
+    bool Create(wxWizard *parent,
                 const wxBitmap& bitmap = wxNullBitmap,
                 const wxChar* resource = NULL);
 
@@ -84,16 +92,32 @@ private:
 class WXDLLEXPORT wxWizardPageSimple : public wxWizardPage
 {
 public:
+    wxWizardPageSimple() { Init(); }
+    // common part of ctors:
+    void Init()
+    {
+        m_prev = m_next = NULL;
+    }
+
     // ctor takes the previous and next pages
-    wxWizardPageSimple(wxWizard *parent = NULL, // let it be default ctor too
+    wxWizardPageSimple(wxWizard *parent,
                        wxWizardPage *prev = (wxWizardPage *)NULL,
                        wxWizardPage *next = (wxWizardPage *)NULL,
                        const wxBitmap& bitmap = wxNullBitmap,
                        const wxChar* resource = NULL)
-        : wxWizardPage(parent, bitmap, resource)
+    {
+        Create(parent, prev, next, bitmap, resource);
+    }
+
+    bool Create(wxWizard *parent = NULL, // let it be default ctor too
+                wxWizardPage *prev = (wxWizardPage *)NULL,
+                wxWizardPage *next = (wxWizardPage *)NULL,
+                const wxBitmap& bitmap = wxNullBitmap,
+                const wxChar* resource = NULL)
     {
         m_prev = prev;
         m_next = next;
+        return wxWizardPage::Create(parent, bitmap, resource);
     }
 
     // the pointers may be also set later - but before starting the wizard
index ec746149a314899bd70db5301e2ce5056afab5e1..3d1654bef721f6813d723d2a48fbcff23cdfd134 100644 (file)
@@ -79,11 +79,25 @@ IMPLEMENT_DYNAMIC_CLASS(wxWizardEvent, wxNotifyEvent)
 // wxWizardPage
 // ----------------------------------------------------------------------------
 
+void wxWizardPage::Init()
+{
+    m_bitmap = wxNullBitmap;
+}
+
 wxWizardPage::wxWizardPage(wxWizard *parent,
                            const wxBitmap& bitmap,
                            const wxChar *resource)
-            : wxPanel(parent)
 {
+    Create(parent, bitmap, resource);
+}
+    
+bool wxWizardPage::Create(wxWizard *parent,
+                          const wxBitmap& bitmap,
+                          const wxChar *resource)
+{
+    if ( !wxPanel::Create(parent, -1) )
+        return FALSE;
+
     if ( resource != NULL )
     {
 #if wxUSE_WX_RESOURCES
@@ -98,6 +112,8 @@ wxWizardPage::wxWizardPage(wxWizard *parent,
 
     // initially the page is hidden, it's shown only when it becomes current
     Hide();
+    
+    return TRUE;
 }
 
 // ----------------------------------------------------------------------------