Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
macOS: Implemented macOS specific paths and variable name fixes
[xestiacalendar/.git] / source / widgets / XCCalendarManipulator.h
index bce03cc..83365e6 100644 (file)
@@ -1,14 +1,14 @@
 // XCCalendarManipulator.h - Xestia Calendar XCCalendarManipulator header file.
 //
-// (c) 2016 Xestia Software Development.
+// (c) 2016-2017 Xestia Software Development.
 //
 // This file is part of Xestia Calendar.
 //
-// Xestia Address Book is free software: you can redistribute it and/or modify
+// Xestia Calendar is free software: you can redistribute it and/or modify
 // it under the terms of the GNU General Public License as published by the
 // Free Software Foundation, version 3 of the license.
 //
-// Xestia Address Book is distributed in the hope that it will be useful,
+// Xestia Calendar is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 // GNU General Public License for more details.
 // You should have received a copy of the GNU General Public License along
 // with Xestia Calendar. If not, see <http://www.gnu.org/licenses/> 
 
+#ifndef __WIDGETS_XCCALENDARMANIPULATOR_H__
+#define __WIDGETS_XCCALENDARMANIPULATOR_H__
+
 #include <string>
+#include <vector>
 
 #include <wx/wx.h>
 #include <wx/dcbuffer.h>
 #include <wx/mstream.h>
 
 #include "events.h"
+#if defined(WIN32) || defined(__APPLE__)
+#include "../forms/calendarselectmonth/frmCalendarSelectMonth.h"
+#else
 #include "XCCalendarMonthSelect.h"
+#endif
+#include "XCCalendarList.h"
 #include "../bitmaps.h"
+#include "../libraries/CalendarDataStorage/CalendarDataStorage.h"
 
 class XCCalendarManipulator: public wxPanel
 {
@@ -33,29 +43,43 @@ class XCCalendarManipulator: public wxPanel
                wxBoxSizer *szrMain = nullptr;
                wxBoxSizer *szrNavigation = nullptr;
                wxPanel *pnlMain = nullptr;
-               wxButton *PreviousButton = nullptr;
-               wxButton *NextButton = nullptr;
-               wxButton *DateButton = nullptr;
-               XCCalendarMonthSelect *Moo = nullptr;
-               int Month = 0;
-               int Year = 2016;
-               wxBitmap NextIconBitmap;
-               wxBitmap PreviousIconBitmap;
+               wxButton *previousButton = nullptr;
+               wxButton *nextButton = nullptr;
+               wxButton *calendarsButton = nullptr;
+               wxButton *dateButton = nullptr;
+#if defined(WIN32) || defined(__APPLE__)
+               frmCalendarSelectMonth *moo = nullptr;
+#else
+               XCCalendarMonthSelect *moo = nullptr;
+#endif
+               XCCalendarList *calendarList = nullptr;
+               CalendarDataStorage *dataStorage = nullptr;
+               int month = 0;
+               int year = 2016;
+               wxBitmap nextIconBitmap;
+               wxBitmap previousIconBitmap;
+               wxBitmap calendarsIconBitmap;
+#if defined(__APPLE__)
+        bool calendarListShow = false;
+#endif
        
                void UpdateDateButtonText();
        protected:
-               void DateTextMouseover(wxMouseEvent &event);
-               void DateTextMouseout(wxMouseEvent &event);
+               void ButtonMouseover(wxMouseEvent &event);
+               void ButtonMouseout(wxMouseEvent &event);
                void DateTextClick(wxCommandEvent &event);
                void ChangeGrid(wxCommandEvent &event);
                void NextMonth(wxCommandEvent &event);
                void PreviousMonth(wxCommandEvent &event);
+               void ShowCalendarsList(wxCommandEvent &event);
        public:
-               XCCalendarManipulator(wxWindow* parent, const wxString& title, const wxPoint& pos, const wxSize& size);
+               XCCalendarManipulator(wxWindow* parent, const wxString& title, const wxPoint& pos, const wxSize& size, CalendarDataStorage *dataStorage);
                ~XCCalendarManipulator();
                int GetMonth();
                int GetYear();
+               std::vector<int> GetHiddenAccountsList();
+               std::vector<int> GetHiddenCalendarsList();
        
-       DECLARE_EVENT_TABLE()
-       
-};
\ No newline at end of file
+};
+
+#endif
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy