void BattleroomMMOptionsTab::SetBattle(IBattle* battle) { m_battle = battle; bool isBattleEnabled = (battle != nullptr); m_options_preset_sel->Enable(isBattleEnabled); m_load_btn->Enable(isBattleEnabled); m_save_btn->Enable(isBattleEnabled); m_delete_btn->Enable(isBattleEnabled); m_default_btn->Enable(isBattleEnabled); for (chkBoxMap::iterator itor = m_chkbox_map.begin(); itor != m_chkbox_map.end(); ++itor) itor->second->Enable(isBattleEnabled); for (comboBoxMap::iterator itor = m_combox_map.begin(); itor != m_combox_map.end(); ++itor) itor->second->Enable(isBattleEnabled); for (typename spinCtrlMap::iterator itor = m_spinctrl_map.begin(); itor != m_spinctrl_map.end(); ++itor) itor->second->Enable(isBattleEnabled); for (textCtrlMap::iterator itor = m_textctrl_map.begin(); itor != m_textctrl_map.end(); ++itor) itor->second->Enable(isBattleEnabled); for (buttonMap::iterator itor = m_button_map.begin(); itor != m_button_map.end(); ++itor) itor->second->Enable(isBattleEnabled); if (isBattleEnabled) { m_options_preset_sel->SetStringSelection(sett().GetModDefaultPresetName(TowxString(m_battle->GetHostGameName()))); if (!m_battle->IsFounderMe()) { m_options_preset_sel->Disable(); m_load_btn->Disable(); m_save_btn->Disable(); m_delete_btn->Disable(); m_default_btn->Disable(); } else { OnReloadControls(); } } }
void BattleroomMMOptionsTab<BattleType>::SetBattle( BattleType* battle ) { m_battle = battle; m_options_preset_sel->Enable(m_battle); m_load_btn->Enable(m_battle); m_save_btn->Enable(m_battle); m_delete_btn->Enable(m_battle); m_default_btn->Enable(m_battle); for ( chkBoxMap::iterator itor = m_chkbox_map.begin(); itor != m_chkbox_map.end(); itor++ ) itor->second->Enable(m_battle); for ( comboBoxMap::iterator itor = m_combox_map.begin(); itor != m_combox_map.end(); itor++ ) itor->second->Enable(m_battle); for ( typename spinCtrlMap::iterator itor = m_spinctrl_map.begin(); itor != m_spinctrl_map.end(); itor++ ) itor->second->Enable(m_battle); for ( textCtrlMap::iterator itor = m_textctrl_map.begin(); itor != m_textctrl_map.end(); itor++ ) itor->second->Enable(m_battle); for ( buttonMap::iterator itor = m_button_map.begin(); itor != m_button_map.end(); itor++ ) itor->second->Enable(m_battle); if ( m_battle ) { m_options_preset_sel->SetStringSelection( sett().GetModDefaultPresetName( m_battle->GetHostModName() ) ); if ( !m_battle->IsFounderMe() ) { m_options_preset_sel->Disable(); m_load_btn->Disable(); m_save_btn->Disable(); m_delete_btn->Disable(); m_default_btn->Disable(); } OnReloadControls(); } }
void BattleroomMMOptionsTab::OnReloadControls() { if (!m_battle) return; for (unsigned int i = 0; i < LSL::Enum::LastOption; i++) OnReloadControls((LSL::Enum::GameOption)i); }
void BattleroomMMOptionsTab<BattleType>::UpdateOptControls(wxString controlName) { if ( !m_battle ) return; long gameoption; controlName.BeforeFirst(sep).ToLong(&gameoption); wxString optKey = controlName.AfterFirst(sep); if ( gameoption == OptionsWrapper::PrivateOptions ) { if ( optKey == _T("mapname") ) OnReloadControls( OptionsWrapper::MapOption ); if ( optKey == _T("modname") ) OnReloadControls( OptionsWrapper::ModOption ); return; } if ( m_chkbox_map.find(controlName) != m_chkbox_map.end() ) { wxString value = m_battle->CustomBattleOptions().getSingleValue( optKey, (OptionsWrapper::GameOption)gameoption ); wxCheckBox* cur = m_chkbox_map[controlName] ; long l_val; value.ToLong(&l_val); cur->SetValue(l_val); } if ( m_combox_map.find(controlName) != m_combox_map.end() ) { wxString value = m_battle->CustomBattleOptions().getSingleValue( optKey, (OptionsWrapper::GameOption)gameoption ); wxComboBox* cur = m_combox_map[controlName]; cur->SetValue(m_battle->CustomBattleOptions().GetNameListOptValue( optKey, (OptionsWrapper::GameOption)gameoption)); } if ( m_textctrl_map.find(controlName) != m_textctrl_map.end() ) { wxString value = m_battle->CustomBattleOptions().getSingleValue( optKey, (OptionsWrapper::GameOption)gameoption ); wxTextCtrl* cur = m_textctrl_map[controlName]; cur->SetValue(value); } if ( m_spinctrl_map.find(controlName) != m_spinctrl_map.end() ) { wxString value = m_battle->CustomBattleOptions().getSingleValue( optKey, (OptionsWrapper::GameOption)gameoption ); SlSpinCtrlDouble<ThisType>* cur = m_spinctrl_map[controlName] ; double l_val; value.ToDouble(&l_val); cur->SetValue(l_val); } }
void BattleroomMMOptionsTab::UpdateOptControls(const wxString& controlName) { if (!m_battle) return; long gameoption; controlName.BeforeFirst(sep).ToLong(&gameoption); const auto optKey = STD_STRING(controlName.AfterFirst(sep)); if (gameoption == LSL::Enum::PrivateOptions) { if (optKey == "mapname") OnReloadControls(LSL::Enum::MapOption); if (optKey == "gamename") OnReloadControls(LSL::Enum::ModOption); return; } if (m_chkbox_map.find(controlName) != m_chkbox_map.end()) { const long value = LSL::Util::FromIntString( m_battle->CustomBattleOptions().getSingleValue(optKey, (LSL::Enum::GameOption)gameoption)); wxCheckBox* cur = m_chkbox_map[controlName]; cur->SetValue(value); } if (m_combox_map.find(controlName) != m_combox_map.end()) { wxComboBox* cur = m_combox_map[controlName]; cur->SetValue(TowxString((m_battle->CustomBattleOptions() .GetNameListOptValue(optKey, (LSL::Enum::GameOption)gameoption)))); } if (m_textctrl_map.find(controlName) != m_textctrl_map.end()) { const wxString value = TowxString(m_battle->CustomBattleOptions() .getSingleValue(optKey, (LSL::Enum::GameOption)gameoption)); wxTextCtrl* cur = m_textctrl_map[controlName]; cur->SetValue(value); } if (m_spinctrl_map.find(controlName) != m_spinctrl_map.end()) { const long value = LSL::Util::FromIntString( m_battle->CustomBattleOptions().getSingleValue(optKey, (LSL::Enum::GameOption)gameoption)); wxSpinCtrlDouble* cur = m_spinctrl_map[controlName]; cur->SetValue(value); } }
void BattleroomMMOptionsTab<BattleType>::OnLoadPreset( wxCommandEvent& /*unused*/ ) { if ( !m_battle ) return; wxString presetname = m_options_preset_sel->GetValue(); if ( presetname.IsEmpty() ) { customMessageBoxNoModal( SL_MAIN_ICON , _("Cannot load an options set without a name\nPlease select one from the list and try again."), _("error"), wxICON_EXCLAMATION|wxOK ); return; } m_battle->LoadOptionsPreset( presetname ); m_battle->SendHostInfo( IBattle::HI_Send_All_opts ); OnReloadControls( ); }
void BattleroomMMOptionsTab<BattleType>::OnReloadControls() { if ( !m_battle ) return; for ( unsigned int i = 0; i < OptionsWrapper::LastOption; i++) OnReloadControls( (OptionsWrapper::GameOption) i ); }