1 // XCCalendarList.h - Xestia Calendar XCCalendarList header file.
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_XCCALENDARLIST_H__
20 #define __WIDGETS_XCCALENDARLIST_H__
26 #include <wx/popupwin.h>
27 #include <wx/spinctrl.h>
28 #include <wx/scrolwin.h>
31 #include "../bitmaps.h"
32 #include "../libraries/CalendarDataStorage/CalendarDataStorage.h"
33 #include "XCCalendarListAccountCtrl.h"
34 #include "XCCalendarListCalendarCtrl.h"
36 class XCCalendarList: public wxPopupTransientWindow
40 wxBoxSizer *szrMain = nullptr;
41 wxScrolledWindow *scwMain = nullptr;
42 wxBoxSizer *szrScrolled = nullptr;
43 std::vector<XCCalendarListAccountCtrl*> accountControlList;
44 std::string checksumUpdate = "";
47 XCCalendarList(wxWindow *parent);
50 void UpdateCalendarList(CalendarDataStorage *dataStorage);
51 std::vector<int> GetHiddenAccountsList();
52 std::vector<int> GetHiddenCalendarsList();