+    def Create(*args, **kwargs):
+        """
+        Create(self, Window parent, int id, DateTime date=DefaultDateTime, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS, 
+            String name=CalendarNameStr) -> bool
+
+        Acutally create the GUI portion of the CalendarCtrl for 2-phase
+        creation.
+        """
+        return _calendar.CalendarCtrl_Create(*args, **kwargs)
+
+    def SetDate(*args, **kwargs):
+        """
+        SetDate(self, DateTime date)
+
+        Sets the current date.
+        """
+        return _calendar.CalendarCtrl_SetDate(*args, **kwargs)
+
+    def GetDate(*args, **kwargs):
+        """
+        GetDate(self) -> DateTime
+
+        Gets the currently selected date.
+        """
+        return _calendar.CalendarCtrl_GetDate(*args, **kwargs)
+
+    def SetLowerDateLimit(*args, **kwargs):
+        """
+        SetLowerDateLimit(self, DateTime date=DefaultDateTime) -> bool
+
+        set the range in which selection can occur
+        """
+        return _calendar.CalendarCtrl_SetLowerDateLimit(*args, **kwargs)
+
+    def SetUpperDateLimit(*args, **kwargs):
+        """
+        SetUpperDateLimit(self, DateTime date=DefaultDateTime) -> bool
+
+        set the range in which selection can occur
+        """
+        return _calendar.CalendarCtrl_SetUpperDateLimit(*args, **kwargs)
+
+    def GetLowerDateLimit(*args, **kwargs):
+        """
+        GetLowerDateLimit(self) -> DateTime
+
+        get the range in which selection can occur
+        """
+        return _calendar.CalendarCtrl_GetLowerDateLimit(*args, **kwargs)
+
+    def GetUpperDateLimit(*args, **kwargs):
+        """
+        GetUpperDateLimit(self) -> DateTime
+
+        get the range in which selection can occur
+        """
+        return _calendar.CalendarCtrl_GetUpperDateLimit(*args, **kwargs)
+
+    def SetDateRange(*args, **kwargs):
+        """
+        SetDateRange(self, DateTime lowerdate=DefaultDateTime, DateTime upperdate=DefaultDateTime) -> bool
+
+        set the range in which selection can occur
+        """
+        return _calendar.CalendarCtrl_SetDateRange(*args, **kwargs)
+
+    def EnableYearChange(*args, **kwargs):
+        """
+        EnableYearChange(self, bool enable=True)
+
+        This function should be used instead of changing CAL_NO_YEAR_CHANGE
+        style bit directly. It allows or disallows the user to change the year
+        interactively.
+        """
+        return _calendar.CalendarCtrl_EnableYearChange(*args, **kwargs)
+
+    def EnableMonthChange(*args, **kwargs):
+        """
+        EnableMonthChange(self, bool enable=True)
+
+        This function should be used instead of changing CAL_NO_MONTH_CHANGE
+        style bit. It allows or disallows the user to change the month
+        interactively. Note that if the month can not be changed, the year can
+        not be changed either.
+        """
+        return _calendar.CalendarCtrl_EnableMonthChange(*args, **kwargs)
+
+    def EnableHolidayDisplay(*args, **kwargs):
+        """
+        EnableHolidayDisplay(self, bool display=True)
+
+        This function should be used instead of changing CAL_SHOW_HOLIDAYS
+        style bit directly. It enables or disables the special highlighting of
+        the holidays.
+        """
+        return _calendar.CalendarCtrl_EnableHolidayDisplay(*args, **kwargs)
+
+    def SetHeaderColours(*args, **kwargs):
+        """
+        SetHeaderColours(self, Colour colFg, Colour colBg)
+
+        Header colours are used for painting the weekdays at the top.
+        """
+        return _calendar.CalendarCtrl_SetHeaderColours(*args, **kwargs)
+
+    def GetHeaderColourFg(*args, **kwargs):
+        """
+        GetHeaderColourFg(self) -> Colour
+
+        Header colours are used for painting the weekdays at the top.
+        """
+        return _calendar.CalendarCtrl_GetHeaderColourFg(*args, **kwargs)
+
+    def GetHeaderColourBg(*args, **kwargs):
+        """
+        GetHeaderColourBg(self) -> Colour
+
+        Header colours are used for painting the weekdays at the top.
+        """
+        return _calendar.CalendarCtrl_GetHeaderColourBg(*args, **kwargs)
+
+    def SetHighlightColours(*args, **kwargs):
+        """
+        SetHighlightColours(self, Colour colFg, Colour colBg)
+
+        Highlight colour is used for the currently selected date.
+        """
+        return _calendar.CalendarCtrl_SetHighlightColours(*args, **kwargs)
+
+    def GetHighlightColourFg(*args, **kwargs):
+        """
+        GetHighlightColourFg(self) -> Colour
+
+        Highlight colour is used for the currently selected date.
+        """
+        return _calendar.CalendarCtrl_GetHighlightColourFg(*args, **kwargs)
+
+    def GetHighlightColourBg(*args, **kwargs):
+        """
+        GetHighlightColourBg(self) -> Colour
+
+        Highlight colour is used for the currently selected date.
+        """
+        return _calendar.CalendarCtrl_GetHighlightColourBg(*args, **kwargs)
+
+    def SetHolidayColours(*args, **kwargs):
+        """
+        SetHolidayColours(self, Colour colFg, Colour colBg)
+
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
+        """
+        return _calendar.CalendarCtrl_SetHolidayColours(*args, **kwargs)
+
+    def GetHolidayColourFg(*args, **kwargs):
+        """
+        GetHolidayColourFg(self) -> Colour
+
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
+        """
+        return _calendar.CalendarCtrl_GetHolidayColourFg(*args, **kwargs)
+
+    def GetHolidayColourBg(*args, **kwargs):
+        """
+        GetHolidayColourBg(self) -> Colour
+
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
+        """
+        return _calendar.CalendarCtrl_GetHolidayColourBg(*args, **kwargs)
+
+    def GetAttr(*args, **kwargs):
+        """
+        GetAttr(self, size_t day) -> CalendarDateAttr
+
+        Returns the attribute for the given date (should be in the range
+        1...31).  The returned value may be None
+        """
+        return _calendar.CalendarCtrl_GetAttr(*args, **kwargs)
+
+    def SetAttr(*args, **kwargs):
+        """
+        SetAttr(self, size_t day, CalendarDateAttr attr)
+
+        Associates the attribute with the specified date (in the range
+        1...31).  If the attribute passed is None, the items attribute is
+        cleared.
+        """
+        return _calendar.CalendarCtrl_SetAttr(*args, **kwargs)
+
+    def SetHoliday(*args, **kwargs):
+        """
+        SetHoliday(self, size_t day)
+
+        Marks the specified day as being a holiday in the current month.
+        """
+        return _calendar.CalendarCtrl_SetHoliday(*args, **kwargs)
+
+    def ResetAttr(*args, **kwargs):
+        """
+        ResetAttr(self, size_t day)
+
+        Clears any attributes associated with the given day (in the range
+        1...31).
+        """
+        return _calendar.CalendarCtrl_ResetAttr(*args, **kwargs)
+
+    def HitTest(*args, **kwargs):
+        """
+        HitTest(Point pos) -> (result, date, weekday)
+
+        Returns 3-tuple with information about the given position on the
+        calendar control.  The first value of the tuple is a result code and
+        determines the validity of the remaining two values.
+        """
+        return _calendar.CalendarCtrl_HitTest(*args, **kwargs)
+
+    def GetMonthControl(*args, **kwargs):
+        """
+        GetMonthControl(self) -> Control
+
+        Get the currently shown control for month.
+        """
+        return _calendar.CalendarCtrl_GetMonthControl(*args, **kwargs)
+
+    def GetYearControl(*args, **kwargs):
+        """
+        GetYearControl(self) -> Control
+
+        Get the currently shown control for year.
+        """
+        return _calendar.CalendarCtrl_GetYearControl(*args, **kwargs)
+
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
+
+        Get the default attributes for this class.  This is useful if you want
+        to use the same font or colour in your own control as in a standard
+        control -- which is a much better idea than hard coding specific
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
+
+        The variant parameter is only relevant under Mac currently and is
+        ignore under other platforms. Under Mac, it will change the size of
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
+
+class CalendarCtrlPtr(CalendarCtrl):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = CalendarCtrl
+_calendar.CalendarCtrl_swigregister(CalendarCtrlPtr)
+cvar = _calendar.cvar
+CalendarNameStr = cvar.CalendarNameStr
+
+def PreCalendarCtrl(*args, **kwargs):
+    """
+    PreCalendarCtrl() -> CalendarCtrl
+
+    Precreate a CalendarCtrl for 2-phase creation.
+    """
+    val = _calendar.new_PreCalendarCtrl(*args, **kwargs)