]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/calctrl.h
Use explicit wxPGPropertyFlags enum type with wxPGProperty::SetFlag() and similar...
[wxWidgets.git] / include / wx / msw / calctrl.h
index 1b56830df805d3940ed6484f16dfc29b532d72da..28384e212f440efe57d364adb497a313fe702ed3 100644 (file)
@@ -45,6 +45,7 @@ public:
     virtual bool EnableMonthChange(bool enable = true);
 
     virtual void Mark(size_t day, bool mark);
+    virtual void SetHoliday(size_t day);
 
     virtual wxCalendarHitTestResult HitTest(const wxPoint& pos,
                                             wxDateTime *date = NULL,
@@ -63,7 +64,7 @@ protected:
     void MSWOnDoubleClick(wxMouseEvent& event);
 
 private:
-    void Init() { m_marks = 0; }
+    void Init();
 
     // bring the control in sync with m_marks
     void UpdateMarks();
@@ -72,6 +73,12 @@ private:
     // wxCAL_MONDAY_FIRST flag
     void UpdateFirstDayOfWeek();
 
+    // reset holiday information
+    virtual void ResetHolidayAttrs() { m_holidays = 0; }
+
+    // redisplay holidays
+    virtual void RefreshHolidays() { UpdateMarks(); }
+
 
     // current date, we need to store it instead of simply retrieving it from
     // the control as needed in order to be able to generate the correct events
@@ -81,9 +88,12 @@ private:
     // bit field containing the state (marked or not) of all days in the month
     wxUint32 m_marks;
 
+    // the same but indicating whether a day is a holiday or not
+    wxUint32 m_holidays;
+
 
     DECLARE_DYNAMIC_CLASS(wxCalendarCtrl)
-    DECLARE_NO_COPY_CLASS(wxCalendarCtrl)
+    wxDECLARE_NO_COPY_CLASS(wxCalendarCtrl);
 };
 
 #endif // _WX_MSW_CALCTRL_H_