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