void wxWizard::OnWizEvent(wxWizardEvent& event) { // the dialogs have wxWS_EX_BLOCK_EVENTS style on by default but we want to // propagate wxEVT_WIZARD_XXX to the parent (if any), so do it manually if ( !(GetExtraStyle() & wxWS_EX_BLOCK_EVENTS) ) { // the event will be propagated anyhow event.Skip(); } else { wxWindow *parent = GetParent(); if ( !parent || !parent->GetEventHandler()->ProcessEvent(event) ) { event.Skip(); } } if ( ( !m_wasModal ) && event.IsAllowed() && ( event.GetEventType() == wxEVT_WIZARD_FINISHED || event.GetEventType() == wxEVT_WIZARD_CANCEL ) ) { Destroy(); } }
//------------------------------------------------------------------------------ void WizGenericSingleChoiceList::OnPageChanging(wxWizardEvent& event) { WizPageBase::OnPageChanging(event); // let the base class handle it too // save selection value if (event.GetDirection() != 0 && event.IsAllowed()) { Manager::Get()->GetConfigManager(_T("project_wizard"))->Write(_T("/generic_single_choices/") + GetPageName(), (int)m_pGenericSingleChoiceList->GetChoice()); } }
//------------------------------------------------------------------------------ void WizGenericSelectPathPanel::OnPageChanging(wxWizardEvent& event) { if (event.GetDirection() != 0) // !=0 forward, ==0 backward { wxString dir = Manager::Get()->GetMacrosManager()->ReplaceMacros(m_pGenericSelectPath->txtFolder->GetValue()); if (!wxDirExists(dir)) { cbMessageBox(_("Please select a valid location..."), _("Error"), wxICON_ERROR, GetParent()); event.Veto(); return; } } WizPageBase::OnPageChanging(event); // let the base class handle it too if (event.GetDirection() != 0 && event.IsAllowed()) { Manager::Get()->GetConfigManager(_T("project_wizard"))->Write(_T("/generic_paths/") + GetPageName(), m_pGenericSelectPath->txtFolder->GetValue()); } }