X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a3e8c656ca6262a395ac8a9b5df93873dd01a9e6..b8ddac49a37a01ca1cf89f97dc97c4945b50ddab:/src/generic/wizard.cpp diff --git a/src/generic/wizard.cpp b/src/generic/wizard.cpp index cd9c3152d0..aef2a89210 100644 --- a/src/generic/wizard.cpp +++ b/src/generic/wizard.cpp @@ -280,7 +280,7 @@ void wxWizard::SetPageSize(const wxSize& size) m_sizePage = size; } -void wxWizard::Fit(const wxWizardPage *page) +void wxWizard::FitToPage(const wxWizardPage *page) { // otherwise it will have no effect now as it's too late... wxASSERT_MSG( !WasCreated(), _T("should be called before RunWizard()!") ); @@ -329,7 +329,7 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward) if ( m_page ) { // send the event to the old page - wxWizardEvent event(wxEVT_WIZARD_PAGE_CHANGING, GetId(), goingForward); + wxWizardEvent event(wxEVT_WIZARD_PAGE_CHANGING, GetId(), goingForward, m_page); if ( m_page->GetEventHandler()->ProcessEvent(event) && !event.IsAllowed() ) { @@ -359,15 +359,9 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward) return TRUE; } - // send the change event to the new page now - wxWizardEvent event(wxEVT_WIZARD_PAGE_CHANGED, GetId(), goingForward); - (void)m_page->GetEventHandler()->ProcessEvent(event); - // position and show the new page (void)m_page->TransferDataToWindow(); m_page->SetSize(m_x, m_y, m_width, m_height); - m_page->Show(); - m_page->SetFocus(); // check if bitmap needs to be updated // update default flag as well @@ -405,6 +399,14 @@ bool wxWizard::ShowPage(wxWizardPage *page, bool goingForward) } // nothing to do: the label was already correct + // send the change event to the new page now + wxWizardEvent event(wxEVT_WIZARD_PAGE_CHANGED, GetId(), goingForward, m_page); + (void)m_page->GetEventHandler()->ProcessEvent(event); + + // and finally show it + m_page->Show(); + m_page->SetFocus(); + return TRUE; } @@ -440,7 +442,7 @@ void wxWizard::OnCancel(wxCommandEvent& WXUNUSED(event)) // page, but a small extra check won't hurt wxWindow *win = m_page ? (wxWindow *)m_page : (wxWindow *)this; - wxWizardEvent event(wxEVT_WIZARD_CANCEL, GetId()); + wxWizardEvent event(wxEVT_WIZARD_CANCEL, GetId(), FALSE, m_page); if ( !win->GetEventHandler()->ProcessEvent(event) || event.IsAllowed() ) { // no objections - close the dialog @@ -518,6 +520,8 @@ void wxWizard::OnWizEvent(wxWizardEvent& event) // our public interface // ---------------------------------------------------------------------------- +#ifdef WXWIN_COMPATIBILITY_2_2 + /* static */ wxWizard *wxWizardBase::Create(wxWindow *parent, int id, @@ -529,6 +533,8 @@ wxWizard *wxWizardBase::Create(wxWindow *parent, return new wxWizard(parent, id, title, bitmap, pos); } +#endif // WXWIN_COMPATIBILITY_2_2 + // ---------------------------------------------------------------------------- // wxWizardEvent // ----------------------------------------------------------------------------