wxWizardPage(Simple) can do two-phase creation now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -46,6 +46,10 @@ 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
|
||||
@@ -54,6 +58,10 @@ public:
|
||||
const wxBitmap& bitmap = wxNullBitmap,
|
||||
const wxChar* resource = NULL);
|
||||
|
||||
bool Create(wxWizard *parent,
|
||||
const wxBitmap& bitmap = wxNullBitmap,
|
||||
const wxChar* resource = NULL);
|
||||
|
||||
// these functions are used by the wizard to show another page when the
|
||||
// user chooses "Back" or "Next" button
|
||||
virtual wxWizardPage *GetPrev() const = 0;
|
||||
@@ -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)
|
||||
{
|
||||
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)
|
||||
: wxWizardPage(parent, bitmap, resource)
|
||||
{
|
||||
m_prev = prev;
|
||||
m_next = next;
|
||||
return wxWizardPage::Create(parent, bitmap, resource);
|
||||
}
|
||||
|
||||
// the pointers may be also set later - but before starting the wizard
|
||||
|
@@ -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;
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
Reference in New Issue
Block a user