From: Steve Brokenshire Date: Sat, 16 Jul 2016 21:57:41 +0000 (+0100) Subject: Added the DeselectOthersEvent function to XCCalendarMonthView X-Git-Tag: release-0.02~96 X-Git-Url: http://Server1/repobrowser/?p=xestiacalendar%2F.git;a=commitdiff_plain;h=836a92ef94cf47b23b9aeee030e0f023c57072d0 Added the DeselectOthersEvent function to XCCalendarMonthView --- diff --git a/source/widgets/XCCalendarMonthView.cpp b/source/widgets/XCCalendarMonthView.cpp index 9d485ab..aa99d8b 100644 --- a/source/widgets/XCCalendarMonthView.cpp +++ b/source/widgets/XCCalendarMonthView.cpp @@ -27,6 +27,8 @@ END_EVENT_TABLE() XCCalendarMonthView::XCCalendarMonthView(const wxString& title, const wxPoint& pos, const wxSize& size, XCCalendarMonthViewGrid *grid) : wxFrame(NULL, wxID_ANY, title, pos, size){ + Connect(ID_MONTHVIEWCLEARSELECTION, XCCALENDARMONTH_DESELECTOTHERENTRIES, wxCommandEventHandler(XCCalendarMonthView::DeselectOthersEvent)); + MondayText = new XCCalendarMonthViewDayTitle(this, _("Monday"), wxDefaultPosition, wxDefaultSize); TuesdayText = new XCCalendarMonthViewDayTitle(this, _("Tuesday"), wxDefaultPosition, wxDefaultSize); WednesdayText = new XCCalendarMonthViewDayTitle(this, _("Wednesday"), wxDefaultPosition, wxDefaultSize); @@ -129,4 +131,21 @@ void XCCalendarMonthView::ResizeFrameEvent(wxSizeEvent &SizeEvent){ this->Refresh(); +} + +void XCCalendarMonthView::DeselectOthersEvent(wxCommandEvent &DeselectEvent){ + + for (vector::iterator DayIter = CalendarDayList.begin(); + DayIter != CalendarDayList.end(); DayIter++){ + + if (DeselectEvent.GetClientData() != (void*)(*DayIter)){ + + wxCommandEvent DeselectEvent(XCCALENDARDAY_DESELECTALLENTRIES); + DeselectEvent.SetId(ID_DESELECTALLITEMS); + wxPostEvent((*DayIter), DeselectEvent); + + } + + } + } \ No newline at end of file diff --git a/source/widgets/XCCalendarMonthView.h b/source/widgets/XCCalendarMonthView.h index d09f4cd..9799ea8 100644 --- a/source/widgets/XCCalendarMonthView.h +++ b/source/widgets/XCCalendarMonthView.h @@ -57,6 +57,7 @@ class XCCalendarMonthView: public wxFrame void PaintFrameEvent(wxPaintEvent &PaintEvent); void ResizeFrameEvent(wxSizeEvent &SizeEvent); + void DeselectOthersEvent(wxCommandEvent &DeselectEvent); DECLARE_EVENT_TABLE()