1 // XCCalendarListCalendarCtrl.h - XCCalendarListCalendarCtrl class header
3 // (c) 2016-2017 Xestia Software Development.
5 // This file is part of Xestia Calendar.
7 // Xestia Calendar is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by the
9 // Free Software Foundation, version 3 of the license.
11 // Xestia Calendar is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
16 // You should have received a copy of the GNU General Public License along
17 // with Xestia Calendar. If not, see <http://www.gnu.org/licenses/>
19 #ifndef __WIDGETS_XCCALENDARLISTCALENDARCTRL_H__
20 #define __WIDGETS_XCCALENDARLISTCALENDARCTRL_H__
29 #include "XCCalendarMenu.h"
31 class XCCalendarListCalendarCtrl: public wxPanel{
34 wxBoxSizer *szrMain = nullptr;
35 wxCheckBox *chkShowCalendar = nullptr;
36 wxStaticText *lblCalendarName = nullptr;
37 wxStaticBitmap *imgCalendarIcon = nullptr;
38 XCCalendarMenu *calendarMenu = nullptr;
39 wxPanel *pnlColour = nullptr;
40 int accountPreferencesID = 0;
43 std::string calendarName = "";
44 bool showCalendar = true;
45 void ShowAllCheckboxClick( wxMouseEvent &mouseEvent );
46 void PopupMenu( wxMouseEvent &mouseEvent );
48 XCCalendarListCalendarCtrl(wxWindow* parent, string calendarName, Colour calendarColour);
49 ~XCCalendarListCalendarCtrl();
50 wxCheckBoxState GetShowCheckboxState();
52 void SetCalendarID(int calendarID);
53 void SetAccountPreferencesID(int accountID);
54 void SetCheckBoxValue(wxCheckBoxState newValue);