Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Updated Makefile
[xestiacalendar/.git] / source / widgets / XCCalendarDay.cpp
index 6c0b29b..bc8dc46 100644 (file)
@@ -23,21 +23,29 @@ using namespace std;
 BEGIN_EVENT_TABLE(XCCalendarDay, wxPanel)
 EVT_PAINT(XCCalendarDay::PaintFrameEvent)
 EVT_SIZE(XCCalendarDay::ResizeFrameEvent)
-//EVT_COMMAND(wxID_ANY, XCCALENDARDAY_DESELECTOTHERENTRIES, XCCalendarDay::DeselectOthersEvent)
 END_EVENT_TABLE()
 
 XCCalendarDay::XCCalendarDay(wxWindow *parent, const wxString& title, const wxPoint& pos, const wxSize& size)
         : wxPanel(parent, wxID_ANY, pos, size, wxTAB_TRAVERSAL, title){
        
        Connect(wxID_ANY, XCCALENDARDAY_DESELECTOTHERENTRIES, wxCommandEventHandler(XCCalendarDay::DeselectOthersEvent));
-       
+       Connect(ID_DESELECTALLITEMS, XCCALENDARDAY_DESELECTALLENTRIES, wxCommandEventHandler(XCCalendarDay::DeselectAllEvent));
+
        this->SetMinSize( wxSize( 100,100 ) );
        
-       AlertIconBitmap.LoadFile("AlertIcon-32.png", wxBITMAP_DEFAULT_TYPE);
-       PriorityIconBitmap.LoadFile("PriorityIcon-32.png", wxBITMAP_DEFAULT_TYPE);
+       // Setip the icons.
+               
+       wxMemoryInputStream alerticon(icons_alert32_png, sizeof(icons_alert32_png));
+       wxMemoryInputStream priorityicon(icons_priority32_png, sizeof(icons_priority32_png));
+       
+       wxImage icons_alert_png(alerticon, wxBITMAP_TYPE_PNG);
+       wxBitmap imgAlertIcon(icons_alert_png, -1);
+
+       wxImage icons_priority_png(priorityicon, wxBITMAP_TYPE_PNG);
+       wxBitmap imgPriorityIcon(icons_priority_png, -1);
        
-       AlertIcon->SetBitmap(AlertIconBitmap);
-       HighPriorityIcon->SetBitmap(PriorityIconBitmap);        
+       AlertIcon->SetBitmap(imgAlertIcon);
+       HighPriorityIcon->SetBitmap(imgPriorityIcon);
        
        WindowSizer->AddGrowableCol(0);
        WindowSizer->AddGrowableRow(1);
@@ -58,7 +66,7 @@ XCCalendarDay::XCCalendarDay(wxWindow *parent, const wxString& title, const wxPo
        EventColour.red = 40; EventColour.green = 80; EventColour.blue = 80;
        
        EventListFrame->SetSizer(EventListFrameSizer);
-       CalendarEntry1->SetColour(&EventColour);
+       /*CalendarEntry1->SetColour(&EventColour);
        CalendarEntry1->SetDisplayAlarm(false);
        CalendarEntry1->SetDisplayHighPriority(false);
        EventListFrameSizer->Add(CalendarEntry1, 0, wxEXPAND, 5);
@@ -95,7 +103,7 @@ XCCalendarDay::XCCalendarDay(wxWindow *parent, const wxString& title, const wxPo
        EventListFrameSizer->Add(0, 5, 0, 0, 5);
        EventListFrameSizer->Add(CalendarEntry9, 0, wxEXPAND, 5);
        EventListFrameSizer->Add(0, 5, 0, 0, 5);
-       EventListFrameSizer->Add(CalendarEntry10, 0, wxEXPAND, 5);
+       EventListFrameSizer->Add(CalendarEntry10, 0, wxEXPAND, 5);*/
 
        EventListFrame->SetScrollRate(0,1);
        //EventListFrameSizer->FitInside(EventListFrame);
@@ -115,7 +123,7 @@ XCCalendarDay::XCCalendarDay(wxWindow *parent, const wxString& title, const wxPo
        this->SetBackgroundStyle(wxBG_STYLE_PAINT);
        this->Centre(wxBOTH);
        
-       CalendarEntryList.push_back(CalendarEntry1);
+       /*CalendarEntryList.push_back(CalendarEntry1);
        CalendarEntryList.push_back(CalendarEntry2);
        CalendarEntryList.push_back(CalendarEntry3);
        CalendarEntryList.push_back(CalendarEntry4);
@@ -124,7 +132,7 @@ XCCalendarDay::XCCalendarDay(wxWindow *parent, const wxString& title, const wxPo
        CalendarEntryList.push_back(CalendarEntry7);
        CalendarEntryList.push_back(CalendarEntry8);
        CalendarEntryList.push_back(CalendarEntry9);
-       CalendarEntryList.push_back(CalendarEntry10);
+       CalendarEntryList.push_back(CalendarEntry10);*/
        
        UpdateTopIcons();
        
@@ -249,4 +257,52 @@ void XCCalendarDay::DeselectOthersEvent(wxCommandEvent &DeselectEvent)
                        
        }
        
+       // Send event notification to deselect the other calendar entries.
+       
+       if (this->MonthViewPointer != nullptr){
+               
+               wxCommandEvent DeselectEvent(XCCALENDARMONTH_DESELECTOTHERENTRIES);
+               DeselectEvent.SetClientData(this);
+               DeselectEvent.SetId(ID_MONTHVIEWCLEARSELECTION);
+               wxPostEvent(this->MonthViewPointer, DeselectEvent);
+               
+       }
+       
+}
+
+void XCCalendarDay::DeselectAllEvent(wxCommandEvent &DeselectEvent)
+{
+       
+       int SelectedEntryID = DeselectEvent.GetInt();
+
+       wxCommandEvent DeselectEntryEvent(XCCALENDARDAYENTRY_DESELECT);
+       
+       for (vector<XCCalendarDayEntry*>::iterator EntryIter = CalendarEntryList.begin();
+               EntryIter != CalendarEntryList.end(); EntryIter++){
+
+               wxPostEvent((*EntryIter), DeselectEntryEvent);
+                       
+       }
+       
+}
+
+void XCCalendarDay::SetupControl(int SetupDay, int SetupMonth, int SetupYear, bool SetupIsInMonth, XCCalendarMonthView *MonthViewPointer)
+{
+       
+       // Set the day
+       
+       NumberText->SetLabel(wxString::Format("%02i", SetupDay));
+       
+       // Set the month
+       
+       // Set the year.
+       
+       // Setup the Is In Month value.
+       
+       IsInMonth = SetupIsInMonth;
+       
+       // Setup the month view pointer.
+       
+       this->MonthViewPointer = MonthViewPointer;
+       
 }
\ No newline at end of file
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