1 2 #ifndef SPRINGLOBBY_HEADERGUARD_GROUPOPTIONSPANEL_H 3 #define SPRINGLOBBY_HEADERGUARD_GROUPOPTIONSPANEL_H 4 5 #include <wx/panel.h> 6 #include <wx/string.h> 7 8 9 class ColorButton; 10 class GroupUserDialog; 11 class wxCheckBox; 12 class wxStaticText; 13 class wxListBox; 14 class wxButton; 15 16 class GroupOptionsPanel : public wxPanel 17 { 18 DECLARE_EVENT_TABLE() 19 20 protected: 21 enum 22 { 23 REMOVE_GROUP = 1000, 24 RENAME_GROUP, 25 ADD_GROUP, 26 GROUPS_LIST, 27 NOTIFY_LOGIN, 28 IGNORE_CHAT, 29 NOTIFY_HOST, 30 IGNORE_PM, 31 NOTIFY_STATUS, 32 AUTOCKICK, 33 NOTIFY_HIGHLIGHT, 34 HIGHLIGHT_COLOR, 35 USERS_LIST, 36 ADD_USER, 37 REMOVE_USER 38 }; 39 40 wxListBox* m_group_list; 41 wxButton* m_remove_group_button; 42 wxButton* m_rename_group_button; 43 44 wxButton* m_add_group_button; 45 wxPanel* m_group_panel; 46 wxCheckBox* m_login_notify_check; 47 wxCheckBox* m_ignore_chat_check; 48 wxCheckBox* m_notify_host_check; 49 wxCheckBox* m_ignore_pm_check; 50 wxCheckBox* m_notify_status_check; 51 wxCheckBox* m_autokick_check; 52 wxCheckBox* m_highlight_check; 53 wxStaticText* m_highlight_colorstaticText; 54 ColorButton* m_highlight_color_button; 55 wxListBox* m_user_list; 56 wxButton* m_add_user_button; 57 wxButton* m_remove_user_button; 58 59 wxString m_current_group; 60 GroupUserDialog* m_user_dialog; 61 62 void OnRemoveGroup( wxCommandEvent& event ); 63 void OnRenameGroup( wxCommandEvent& event ); 64 void OnAddNewGroup( wxCommandEvent& event ); 65 void OnGroupListSelectionChange( wxCommandEvent& event ); 66 void OnGroupActionsChange( wxCommandEvent& event ); 67 void OnHighlightColorClick( wxCommandEvent& event ); 68 void OnUsersListSelectionChange( wxCommandEvent& event ); 69 void OnAddUsers( wxCommandEvent& event ); 70 void OnRemoveUser( wxCommandEvent& event ); 71 72 void Initialize(); 73 74 void ShowGroup( const wxString& group ); 75 void ReloadUsersList(); 76 void ReloadGroupsList(); 77 wxString GetFirstGroupName(); 78 79 public: 80 GroupOptionsPanel( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 656,537 ), long style = wxTAB_TRAVERSAL ); 81 ~GroupOptionsPanel(); 82 void Update(); 83 }; 84 85 #endif 86 87 /** 88 This file is part of SpringLobby, 89 Copyright (C) 2007-2011 90 91 SpringLobby is free software: you can redistribute it and/or modify 92 it under the terms of the GNU General Public License version 2 as published by 93 the Free Software Foundation. 94 95 SpringLobby is distributed in the hope that it will be useful, 96 but WITHOUT ANY WARRANTY; without even the implied warranty of 97 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 98 GNU General Public License for more details. 99 100 You should have received a copy of the GNU General Public License 101 along with SpringLobby. If not, see <http://www.gnu.org/licenses/>. 102 **/ 103 104