]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/gtk/calendar.py
test wxString's char<->wchar_t ctors
[wxWidgets.git] / wxPython / src / gtk / calendar.py
index ec9e4a42a595a0be69bd1c23adc838fdbc5fbc61..8680354bb4e433769310f13f729a5c66e0e65a7a 100644 (file)
@@ -1,12 +1,16 @@
 # This file was created automatically by SWIG.
 # Don't modify this file, modify the SWIG interface instead.
 
+"""
+Classes for an interactive Calendar control.
+"""
+
 import _calendar
 
 import _misc
 import _core
 wx = _core 
-__docfilter__ = wx.__docfilter__ 
+__docfilter__ = wx.__DocFilter(globals()) 
 CAL_SUNDAY_FIRST = _calendar.CAL_SUNDAY_FIRST
 CAL_MONDAY_FIRST = _calendar.CAL_MONDAY_FIRST
 CAL_SHOW_HOLIDAYS = _calendar.CAL_SHOW_HOLIDAYS
@@ -25,8 +29,8 @@ CAL_BORDER_SQUARE = _calendar.CAL_BORDER_SQUARE
 CAL_BORDER_ROUND = _calendar.CAL_BORDER_ROUND
 class CalendarDateAttr(object):
     """
-    A set of customization attributes for a calendar date, which can be used to
-    control the look of the Calendar object.
+    A set of customization attributes for a calendar date, which can be
+    used to control the look of the Calendar object.
     """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxCalendarDateAttr instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -165,7 +169,32 @@ EVT_CALENDAR_YEAR =            wx.PyEventBinder( wxEVT_CALENDAR_YEAR_CHANGED, 1)
 EVT_CALENDAR_WEEKDAY_CLICKED = wx.PyEventBinder( wxEVT_CALENDAR_WEEKDAY_CLICKED, 1)
 
 class CalendarCtrl(_core.Control):
-    """The calendar control allows the user to pick a date interactively."""
+    """
+    The calendar control allows the user to pick a date interactively.
+
+    The CalendarCtrl displays a window containing several parts: the
+    control to pick the month and the year at the top (either or both of
+    them may be disabled) and a month area below them which shows all the
+    days in the month. The user can move the current selection using the
+    keyboard and select the date (generating EVT_CALENDAR event) by
+    pressing <Return> or double clicking it.
+
+    It has advanced possibilities for the customization of its
+    display. All global settings (such as colours and fonts used) can, of
+    course, be changed. But also, the display style for each day in the
+    month can be set independently using CalendarDateAttr class.
+
+    An item without custom attributes is drawn with the default colours
+    and font and without border, but setting custom attributes with
+    SetAttr allows to modify its appearance. Just create a custom
+    attribute object and set it for the day you want to be displayed
+    specially A day may be marked as being a holiday, (even if it is not
+    recognized as one by wx.DateTime) by using the SetHoliday method.
+
+    As the attributes are specified for each day, they may change when the
+    month is changed, so you will often want to update them in an
+    EVT_CALENDAR_MONTH event handler.
+    """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxCalendarCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -190,7 +219,8 @@ class CalendarCtrl(_core.Control):
             long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS, 
             String name=CalendarNameStr) -> bool
 
-        Acutally create the GUI portion of the CalendarCtrl for 2-phase creation.
+        Acutally create the GUI portion of the CalendarCtrl for 2-phase
+        creation.
         """
         return _calendar.CalendarCtrl_Create(*args, **kwargs)
 
@@ -264,9 +294,10 @@ class CalendarCtrl(_core.Control):
         """
         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.
+        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)
 
@@ -274,8 +305,9 @@ class CalendarCtrl(_core.Control):
         """
         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.
+        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)
 
@@ -283,7 +315,7 @@ class CalendarCtrl(_core.Control):
         """
         SetHeaderColours(self, Colour colFg, Colour colBg)
 
-        header colours are used for painting the weekdays at the top
+        Header colours are used for painting the weekdays at the top.
         """
         return _calendar.CalendarCtrl_SetHeaderColours(*args, **kwargs)
 
@@ -291,7 +323,7 @@ class CalendarCtrl(_core.Control):
         """
         GetHeaderColourFg(self) -> Colour
 
-        header colours are used for painting the weekdays at the top
+        Header colours are used for painting the weekdays at the top.
         """
         return _calendar.CalendarCtrl_GetHeaderColourFg(*args, **kwargs)
 
@@ -299,7 +331,7 @@ class CalendarCtrl(_core.Control):
         """
         GetHeaderColourBg(self) -> Colour
 
-        header colours are used for painting the weekdays at the top
+        Header colours are used for painting the weekdays at the top.
         """
         return _calendar.CalendarCtrl_GetHeaderColourBg(*args, **kwargs)
 
@@ -307,7 +339,7 @@ class CalendarCtrl(_core.Control):
         """
         SetHighlightColours(self, Colour colFg, Colour colBg)
 
-        highlight colour is used for the currently selected date
+        Highlight colour is used for the currently selected date.
         """
         return _calendar.CalendarCtrl_SetHighlightColours(*args, **kwargs)
 
@@ -315,7 +347,7 @@ class CalendarCtrl(_core.Control):
         """
         GetHighlightColourFg(self) -> Colour
 
-        highlight colour is used for the currently selected date
+        Highlight colour is used for the currently selected date.
         """
         return _calendar.CalendarCtrl_GetHighlightColourFg(*args, **kwargs)
 
@@ -323,7 +355,7 @@ class CalendarCtrl(_core.Control):
         """
         GetHighlightColourBg(self) -> Colour
 
-        highlight colour is used for the currently selected date
+        Highlight colour is used for the currently selected date.
         """
         return _calendar.CalendarCtrl_GetHighlightColourBg(*args, **kwargs)
 
@@ -331,7 +363,8 @@ class CalendarCtrl(_core.Control):
         """
         SetHolidayColours(self, Colour colFg, Colour colBg)
 
-        holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is used)
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
         """
         return _calendar.CalendarCtrl_SetHolidayColours(*args, **kwargs)
 
@@ -339,7 +372,8 @@ class CalendarCtrl(_core.Control):
         """
         GetHolidayColourFg(self) -> Colour
 
-        holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is used)
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
         """
         return _calendar.CalendarCtrl_GetHolidayColourFg(*args, **kwargs)
 
@@ -347,7 +381,8 @@ class CalendarCtrl(_core.Control):
         """
         GetHolidayColourBg(self) -> Colour
 
-        holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is used)
+        Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is
+        used).
         """
         return _calendar.CalendarCtrl_GetHolidayColourBg(*args, **kwargs)
 
@@ -355,8 +390,8 @@ class CalendarCtrl(_core.Control):
         """
         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
+        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)
 
@@ -364,8 +399,9 @@ class CalendarCtrl(_core.Control):
         """
         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.
+        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)
 
@@ -381,7 +417,8 @@ class CalendarCtrl(_core.Control):
         """
         ResetAttr(self, size_t day)
 
-        Clears any attributes associated with the given day (in the range 1...31).
+        Clears any attributes associated with the given day (in the range
+        1...31).
         """
         return _calendar.CalendarCtrl_ResetAttr(*args, **kwargs)
 
@@ -389,14 +426,9 @@ class CalendarCtrl(_core.Control):
         """
         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.  The result codes are:
-
-            CAL_HITTEST_NOWHERE:    hit outside of anything
-            CAL_HITTEST_HEADER:     hit on the header, weekday is valid
-            CAL_HITTEST_DAY:        hit on a day in the calendar, date is set.
-
+        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)
 
@@ -404,7 +436,7 @@ class CalendarCtrl(_core.Control):
         """
         GetMonthControl(self) -> Control
 
-        get the currently shown control for month
+        Get the currently shown control for month.
         """
         return _calendar.CalendarCtrl_GetMonthControl(*args, **kwargs)
 
@@ -412,10 +444,28 @@ class CalendarCtrl(_core.Control):
         """
         GetYearControl(self) -> Control
 
-        get the currently shown control for year
+        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):
@@ -436,4 +486,21 @@ def PreCalendarCtrl(*args, **kwargs):
     val.thisown = 1
     return val
 
+def CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    CalendarCtrl_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)
+