void CMainDialog::StopDialog() { CWindow* pw; pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW0)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW1)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW2)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW3)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW4)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW5)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW6)); if ( pw != nullptr ) pw->SetState(STATE_VISIBLE | STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW7)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8)); if ( pw != nullptr ) pw->SetState(STATE_ENABLE); m_main->StopSuspend(); m_interface->DeleteControl(EVENT_WINDOW9); m_dialogOpen = false; }
void CMainDialog::StartDialog(Math::Point dim, bool fireParticles) { CWindow* pw; Math::Point pos, ddim; m_main->StartSuspend(); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW0)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW1)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW2)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW3)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW4)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW5)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW6)); if ( pw != nullptr ) pw->ClearState(STATE_VISIBLE | STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW7)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); pw = static_cast<CWindow*>(m_interface->SearchControl(EVENT_WINDOW8)); if ( pw != nullptr ) pw->ClearState(STATE_ENABLE); m_dialogFireParticles = fireParticles; pos.x = (1.0f-dim.x)/2.0f; pos.y = (1.0f-dim.y)/2.0f; pw = m_interface->CreateWindows(pos, dim, m_dialogFireParticles ? 12 : 8, EVENT_WINDOW9); pw->SetState(STATE_SHADOW); std::string name; GetResource(RES_TEXT, RT_TITLE_APPNAME, name); pw->SetName(name); m_dialogPos = pos; m_dialogDim = dim; m_dialogTime = 0.0f; m_dialogParti = 999.0f; m_sound->Play(SOUND_TZOING); m_dialogOpen = true; }