void BattleListTab::OnSelect( wxListEvent& event ) { slLogDebugFunc(""); if ( event.GetIndex() == -1 ) { SelectBattle( 0 ); return; } IBattle* b = ( m_battle_list->GetSelectedData()); SelectBattle( b ); }
void BattleListTab::OnSelect( wxListEvent& event ) { wxLogDebugFunc( _T( "" ) ); if ( event.GetIndex() == -1 ) { SelectBattle( 0 ); } else { IBattle* b = ( m_battle_list->GetDataFromIndex( event.GetIndex() ) ) ; SelectBattle( b );// } }
void BattleListTab::UpdateBattle(IBattle& battle) { if (!battle.GetGUIListActiv()) { AddBattle(battle); } if (m_filter->GetActiv() && !m_filter->FilterBattle(battle)) { RemoveBattle(battle); if (&battle == m_sel_battle) { m_sel_battle = NULL; SelectBattle(NULL); m_battle_list->SetSelectedIndex(-1); } return; } m_battle_list->UpdateBattle(battle); if (&battle == m_sel_battle) SelectBattle(m_sel_battle); }
void BattleListTab::RemoveBattle(IBattle& battle) { if (&battle == m_sel_battle) { SelectBattle(0); } m_battle_list->RemoveBattle(battle); battle.SetGUIListActiv(false); SetNumDisplayed(); }
void BattleListTab::RemoveAllBattles() { SelectBattle( 0 ); serverSelector().GetServer().battles_iter->IteratorBegin(); while ( ! serverSelector().GetServer().battles_iter->EOL() ) { IBattle* temp_battle = serverSelector().GetServer().battles_iter->GetBattle(); if ( temp_battle != 0 ) temp_battle->SetGUIListActiv( false ); } m_battle_list->Clear(); SetNumDisplayed(); }
void BattleListTab::UpdateBattle( IBattle& battle ) { if ( !battle.GetGUIListActiv() ) { AddBattle( battle ); return; } if ( m_filter->GetActiv() && !m_filter->FilterBattle( battle ) ) { RemoveBattle( battle ); return; } m_battle_list->UpdateBattle( battle ); if ( &battle == m_sel_battle ) SelectBattle( m_sel_battle ); }
BattleListTab::BattleListTab(wxWindow* parent) : wxScrolledWindow(parent, -1) , m_sel_battle(0) { GetAui().manager->AddPane(this, wxLEFT, _T( "battlelisttab" )); m_main_sizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer* m_filter_sizer; m_filter_sizer = new wxBoxSizer(wxVERTICAL); m_battlelist_sizer = new wxBoxSizer(wxVERTICAL); m_battle_list = new BattleListCtrl(this); m_battle_list->SetHighLightAction(UserActions::ActHighlight); m_battlelist_sizer->Add(m_battle_list, 1, wxEXPAND); m_main_sizer->Add(m_battlelist_sizer, 1, wxEXPAND); m_info_sizer = new wxBoxSizer(wxHORIZONTAL); m_minimap = new MapCtrl(this, 100, 0, true, false, false); m_info_sizer->Add(m_minimap, 0, wxALL, 5); m_data_sizer = new wxFlexGridSizer(4, 2, 0, 0); m_map_lbl = new wxStaticText(this, wxID_ANY, _("Map:"), wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_map_lbl, 0, wxALL, 5); m_map_text = new wxStaticText(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_map_text, 0, wxALL, 5); m_mod_lbl = new wxStaticText(this, wxID_ANY, _("Game:"), wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_mod_lbl, 0, wxALL, 5); m_mod_text = new wxStaticText(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_mod_text, 0, wxALL, 5); m_players_lbl = new wxStaticText(this, wxID_ANY, _("Players:"), wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_players_lbl, 0, wxALL, 5); m_players_text = new wxStaticText(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_players_text, 0, wxALL, 5); m_spec_lbl = new wxStaticText(this, wxID_ANY, _("Spectators:"), wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_spec_lbl, 0, wxALL, 5); m_spec_text = new wxStaticText(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0); m_data_sizer->Add(m_spec_text, 0, wxALL, 5); m_info_sizer->Add(m_data_sizer, 1, wxEXPAND, 5); m_players = new NickListCtrl(this, false, 0, true, _T("battlelist_nicklist")); m_info_sizer->Add(m_players, 1, wxALL | wxEXPAND, 5); m_main_sizer->Add(m_info_sizer, 0, wxEXPAND, 5); m_filter = new BattleListFilter(this, wxID_ANY, this, wxDefaultPosition, wxSize(-1, -1), wxEXPAND); m_filter_sizer->Add(m_filter, 0, wxEXPAND, 5); m_main_sizer->Add(m_filter_sizer, 0, wxEXPAND, 5); m_buttons_sep = new wxStaticLine(this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL); m_main_sizer->Add(m_buttons_sep, 0, wxALL | wxEXPAND, 5); wxBoxSizer* m_buttons_sizer; m_buttons_sizer = new wxBoxSizer(wxHORIZONTAL); m_buttons_sizer->Add(0, 0, 1, wxEXPAND, 0); #if wxUSE_TOGGLEBTN m_filter_show = new wxToggleButton(this, BATTLE_LIST_FILTER_BUTTON, _(" Filter "), wxDefaultPosition, wxSize(-1, 28), 0); #else m_filter_show = new wxCheckBox(this, BATTLE_LIST_FILTER_BUTTON, _(" Filter "), wxDefaultPosition, wxSize(-1, 28), 0); #endif m_buttons_sizer->Add(m_filter_show, 0, 0, 5); m_filter_activ = new wxCheckBox(this, BATTLE_LIST_FILTER_ACTIV, _("Activated"), wxDefaultPosition, wxDefaultSize, 0); m_buttons_sizer->Add(m_filter_activ, 0, wxALL, 5); #if wxUSE_TOGGLEBTN m_info_show = new wxToggleButton(this, BATTLE_LIST_INFO_BUTTON, _(" Battle infos "), wxDefaultPosition, wxSize(-1, 28), 0); #else m_info_show = new wxCheckBox(this, BATTLE_LIST_INFO_BUTTON, _(" Battle infos "), wxDefaultPosition, wxSize(-1, 28), 0); #endif m_buttons_sizer->Add(m_info_show, 0, 0, 5); m_battle_num = new wxStaticText(this, wxID_ANY, _("0 battles displayed"), wxDefaultPosition, wxDefaultSize, 0); m_buttons_sizer->Add(m_battle_num, 0, wxALIGN_CENTER | wxLEFT | wxRIGHT, 4); m_buttons_sizer->Add(0, 0, 1, wxEXPAND, 0); m_host_btn = new wxButton(this, BATTLE_HOST, _("Host new..."), wxDefaultPosition, wxSize(-1, 28), 0); m_buttons_sizer->Add(m_host_btn, 0, wxBOTTOM | wxLEFT | wxRIGHT, 5); m_join_btn = new wxButton(this, BATTLE_JOIN, _("Join"), wxDefaultPosition, wxSize(-1, 28), 0); m_buttons_sizer->Add(m_join_btn, 0, wxBOTTOM | wxRIGHT, 5); m_main_sizer->Add(m_buttons_sizer, 0, wxEXPAND, 5); m_filter->Hide(); SetScrollRate(SCROLL_RATE, SCROLL_RATE); SetSizer(m_main_sizer); Layout(); SelectBattle(0); ShowExtendedInfos(cfg().ReadBool(_T("/BattleListTab/ShowExtendedInfos"))); ConnectGlobalEvent(this, GlobalEvent::OnUnitsyncReloaded, wxObjectEventFunction(&BattleListTab::OnUnitsyncReloaded)); }
void BattleListTab::RemoveAllBattles() { SelectBattle(0); m_battle_list->Clear(); SetNumDisplayed(); }