Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
widgets: Widget controls updated
[xestiacalendar/.git] / source / widgets / XCCalendarMonthView.h
index d09f4cd..6f06d0a 100644 (file)
 #include <vector>
 #include <wx/wx.h>
 
-#include "../common/colour.h"
-#include "../common/text.h"
-#include "../common/events.h"
-#include "../common/monthviewgen.h"
+#include "colour.h"
+#include "text.h"
+#include "events.h"
+#include "monthviewgen.h"
+#include "structs.h"
+
+#include "../libraries/CalendarDataStorage/CalendarDataStorage.h"
 
 #include "XCCalendarMonthView.h"
 #include "XCCalendarMonthViewDayTitle.h"
 #include "XCCalendarDay.h"
+#include "XCEventMenu.h"
 
 class XCCalendarDay;
 
-class XCCalendarMonthView: public wxFrame
+class XCCalendarMonthView: public wxPanel
 {
        
        private:
@@ -47,16 +51,33 @@ class XCCalendarMonthView: public wxFrame
                XCCalendarMonthViewDayTitle *FridayText = nullptr;
                XCCalendarMonthViewDayTitle *SaturdayText = nullptr;
                XCCalendarMonthViewDayTitle *SundayText = nullptr;
-               void ProcessGrid(XCCalendarMonthViewGrid *grid);
+               XCEventMenu *eventMenu = nullptr;
+               CalendarDataStorage *calendarStorage = nullptr;
+               
+               void ProcessGrid(XCCalendarMonthViewGrid *grid, std::vector<int> *hideAccounts, std::vector<int> *hideCalendars);
        
                void Repaint();
        
+       protected:
+               void HideAccountEntries(wxCommandEvent &accountData);
+               void ShowAccountEntries(wxCommandEvent &accountData);
+               void HideCalendarEntries(wxCommandEvent &calendarData);
+               void ShowCalendarEntries(wxCommandEvent &calendarData);
+               void DeleteCalendarEntries(wxCommandEvent &calendarData);
+               void DeleteCalendarEntry(wxCommandEvent &eventData);
+               void AddCalendarEntry(wxCommandEvent &eventData);
+               void UpdateCalendarEntry(wxCommandEvent &eventData);
+               void UpdateCalendarColour(wxCommandEvent &colourData);
+               void ShowEventMenu(wxCommandEvent &eventData);
+       
        public:
-               XCCalendarMonthView(const wxString& title, const wxPoint& pos, const wxSize& size, XCCalendarMonthViewGrid *grid);
+               XCCalendarMonthView(wxWindow *parent, const wxString& title, const wxPoint& pos, const wxSize& size, XCCalendarMonthViewGrid *grid, CalendarDataStorage *dataStorage, std::vector<int> *hideAccounts, std::vector<int> *hideCalendars);
+               XCCalendarMonthView(XCCalendarMonthViewGrid *grid, CalendarDataStorage *dataStorage, std::vector<int> *hideAccounts, std::vector<int> *hideCalendars);
                ~XCCalendarMonthView();
        
                void PaintFrameEvent(wxPaintEvent &PaintEvent);
                void ResizeFrameEvent(wxSizeEvent &SizeEvent);
+               void DeselectOthersEvent(wxCommandEvent &DeselectEvent);
        
        DECLARE_EVENT_TABLE()
        
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