]>
Commit | Line | Data |
---|---|---|
f6bcfd97 | 1 | # This file was created automatically by SWIG. |
d14a1e28 RD |
2 | # Don't modify this file, modify the SWIG interface instead. |
3 | ||
caef1a4d RD |
4 | """ |
5 | Classes for an interactive Calendar control. | |
6 | """ | |
7 | ||
d14a1e28 RD |
8 | import _calendar |
9 | ||
093d3ff1 RD |
10 | def _swig_setattr_nondynamic(self,class_type,name,value,static=1): |
11 | if (name == "this"): | |
12 | if isinstance(value, class_type): | |
13 | self.__dict__[name] = value.this | |
14 | if hasattr(value,"thisown"): self.__dict__["thisown"] = value.thisown | |
15 | del value.thisown | |
16 | return | |
17 | method = class_type.__swig_setmethods__.get(name,None) | |
18 | if method: return method(self,value) | |
19 | if (not static) or hasattr(self,name) or (name == "thisown"): | |
20 | self.__dict__[name] = value | |
21 | else: | |
22 | raise AttributeError("You cannot add attributes to %s" % self) | |
23 | ||
24 | def _swig_setattr(self,class_type,name,value): | |
25 | return _swig_setattr_nondynamic(self,class_type,name,value,0) | |
26 | ||
27 | def _swig_getattr(self,class_type,name): | |
28 | method = class_type.__swig_getmethods__.get(name,None) | |
29 | if method: return method(self) | |
30 | raise AttributeError,name | |
31 | ||
32 | import types | |
33 | try: | |
34 | _object = types.ObjectType | |
35 | _newclass = 1 | |
36 | except AttributeError: | |
37 | class _object : pass | |
38 | _newclass = 0 | |
39 | del types | |
40 | ||
41 | ||
42 | def _swig_setattr_nondynamic_method(set): | |
43 | def set_attr(self,name,value): | |
44 | if hasattr(self,name) or (name in ("this", "thisown")): | |
45 | set(self,name,value) | |
46 | else: | |
47 | raise AttributeError("You cannot add attributes to %s" % self) | |
48 | return set_attr | |
49 | ||
50 | ||
d55e5bfc RD |
51 | import _misc |
52 | import _core | |
53 | wx = _core | |
c24da6d6 | 54 | __docfilter__ = wx.__DocFilter(globals()) |
d14a1e28 RD |
55 | CAL_SUNDAY_FIRST = _calendar.CAL_SUNDAY_FIRST |
56 | CAL_MONDAY_FIRST = _calendar.CAL_MONDAY_FIRST | |
57 | CAL_SHOW_HOLIDAYS = _calendar.CAL_SHOW_HOLIDAYS | |
58 | CAL_NO_YEAR_CHANGE = _calendar.CAL_NO_YEAR_CHANGE | |
59 | CAL_NO_MONTH_CHANGE = _calendar.CAL_NO_MONTH_CHANGE | |
60 | CAL_SEQUENTIAL_MONTH_SELECTION = _calendar.CAL_SEQUENTIAL_MONTH_SELECTION | |
61 | CAL_SHOW_SURROUNDING_WEEKS = _calendar.CAL_SHOW_SURROUNDING_WEEKS | |
62 | CAL_HITTEST_NOWHERE = _calendar.CAL_HITTEST_NOWHERE | |
63 | CAL_HITTEST_HEADER = _calendar.CAL_HITTEST_HEADER | |
64 | CAL_HITTEST_DAY = _calendar.CAL_HITTEST_DAY | |
65 | CAL_HITTEST_INCMONTH = _calendar.CAL_HITTEST_INCMONTH | |
66 | CAL_HITTEST_DECMONTH = _calendar.CAL_HITTEST_DECMONTH | |
67 | CAL_HITTEST_SURROUNDING_WEEK = _calendar.CAL_HITTEST_SURROUNDING_WEEK | |
68 | CAL_BORDER_NONE = _calendar.CAL_BORDER_NONE | |
69 | CAL_BORDER_SQUARE = _calendar.CAL_BORDER_SQUARE | |
70 | CAL_BORDER_ROUND = _calendar.CAL_BORDER_ROUND | |
71 | class CalendarDateAttr(object): | |
98e665d3 | 72 | """ |
c24da6d6 RD |
73 | A set of customization attributes for a calendar date, which can be |
74 | used to control the look of the Calendar object. | |
98e665d3 | 75 | """ |
423f194a RD |
76 | def __repr__(self): |
77 | return "<%s.%s; proxy of C++ wxCalendarDateAttr instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) | |
d14a1e28 | 78 | def __init__(self, *args, **kwargs): |
41f1cec7 | 79 | """ |
a95a7133 | 80 | __init__(self, Colour colText=wxNullColour, Colour colBack=wxNullColour, |
98e665d3 | 81 | Colour colBorder=wxNullColour, Font font=wxNullFont, |
d03fd34d | 82 | int border=CAL_BORDER_NONE) -> CalendarDateAttr |
98e665d3 RD |
83 | |
84 | Create a CalendarDateAttr. | |
41f1cec7 | 85 | """ |
d14a1e28 RD |
86 | newobj = _calendar.new_CalendarDateAttr(*args, **kwargs) |
87 | self.this = newobj.this | |
eedf876b | 88 | self.thisown = 1 |
d14a1e28 | 89 | del newobj.thisown |
423f194a | 90 | def SetTextColour(*args, **kwargs): |
a95a7133 | 91 | """SetTextColour(self, Colour colText)""" |
423f194a RD |
92 | return _calendar.CalendarDateAttr_SetTextColour(*args, **kwargs) |
93 | ||
94 | def SetBackgroundColour(*args, **kwargs): | |
a95a7133 | 95 | """SetBackgroundColour(self, Colour colBack)""" |
423f194a RD |
96 | return _calendar.CalendarDateAttr_SetBackgroundColour(*args, **kwargs) |
97 | ||
98 | def SetBorderColour(*args, **kwargs): | |
a95a7133 | 99 | """SetBorderColour(self, Colour col)""" |
423f194a RD |
100 | return _calendar.CalendarDateAttr_SetBorderColour(*args, **kwargs) |
101 | ||
102 | def SetFont(*args, **kwargs): | |
a95a7133 | 103 | """SetFont(self, Font font)""" |
423f194a RD |
104 | return _calendar.CalendarDateAttr_SetFont(*args, **kwargs) |
105 | ||
106 | def SetBorder(*args, **kwargs): | |
a95a7133 | 107 | """SetBorder(self, int border)""" |
423f194a RD |
108 | return _calendar.CalendarDateAttr_SetBorder(*args, **kwargs) |
109 | ||
110 | def SetHoliday(*args, **kwargs): | |
a95a7133 | 111 | """SetHoliday(self, bool holiday)""" |
423f194a RD |
112 | return _calendar.CalendarDateAttr_SetHoliday(*args, **kwargs) |
113 | ||
114 | def HasTextColour(*args, **kwargs): | |
a95a7133 | 115 | """HasTextColour(self) -> bool""" |
423f194a RD |
116 | return _calendar.CalendarDateAttr_HasTextColour(*args, **kwargs) |
117 | ||
118 | def HasBackgroundColour(*args, **kwargs): | |
a95a7133 | 119 | """HasBackgroundColour(self) -> bool""" |
423f194a RD |
120 | return _calendar.CalendarDateAttr_HasBackgroundColour(*args, **kwargs) |
121 | ||
122 | def HasBorderColour(*args, **kwargs): | |
a95a7133 | 123 | """HasBorderColour(self) -> bool""" |
423f194a RD |
124 | return _calendar.CalendarDateAttr_HasBorderColour(*args, **kwargs) |
125 | ||
126 | def HasFont(*args, **kwargs): | |
a95a7133 | 127 | """HasFont(self) -> bool""" |
423f194a RD |
128 | return _calendar.CalendarDateAttr_HasFont(*args, **kwargs) |
129 | ||
130 | def HasBorder(*args, **kwargs): | |
a95a7133 | 131 | """HasBorder(self) -> bool""" |
423f194a RD |
132 | return _calendar.CalendarDateAttr_HasBorder(*args, **kwargs) |
133 | ||
134 | def IsHoliday(*args, **kwargs): | |
a95a7133 | 135 | """IsHoliday(self) -> bool""" |
423f194a RD |
136 | return _calendar.CalendarDateAttr_IsHoliday(*args, **kwargs) |
137 | ||
138 | def GetTextColour(*args, **kwargs): | |
a95a7133 | 139 | """GetTextColour(self) -> Colour""" |
423f194a RD |
140 | return _calendar.CalendarDateAttr_GetTextColour(*args, **kwargs) |
141 | ||
142 | def GetBackgroundColour(*args, **kwargs): | |
a95a7133 | 143 | """GetBackgroundColour(self) -> Colour""" |
423f194a RD |
144 | return _calendar.CalendarDateAttr_GetBackgroundColour(*args, **kwargs) |
145 | ||
146 | def GetBorderColour(*args, **kwargs): | |
a95a7133 | 147 | """GetBorderColour(self) -> Colour""" |
423f194a RD |
148 | return _calendar.CalendarDateAttr_GetBorderColour(*args, **kwargs) |
149 | ||
150 | def GetFont(*args, **kwargs): | |
a95a7133 | 151 | """GetFont(self) -> Font""" |
423f194a RD |
152 | return _calendar.CalendarDateAttr_GetFont(*args, **kwargs) |
153 | ||
154 | def GetBorder(*args, **kwargs): | |
a95a7133 | 155 | """GetBorder(self) -> int""" |
423f194a RD |
156 | return _calendar.CalendarDateAttr_GetBorder(*args, **kwargs) |
157 | ||
eedf876b | 158 | |
d14a1e28 RD |
159 | class CalendarDateAttrPtr(CalendarDateAttr): |
160 | def __init__(self, this): | |
161 | self.this = this | |
162 | if not hasattr(self,"thisown"): self.thisown = 0 | |
163 | self.__class__ = CalendarDateAttr | |
164 | _calendar.CalendarDateAttr_swigregister(CalendarDateAttrPtr) | |
eedf876b | 165 | |
d55e5bfc | 166 | class CalendarEvent(_core.CommandEvent): |
093d3ff1 | 167 | """Proxy of C++ CalendarEvent class""" |
423f194a RD |
168 | def __repr__(self): |
169 | return "<%s.%s; proxy of C++ wxCalendarEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) | |
d14a1e28 | 170 | def __init__(self, *args, **kwargs): |
a95a7133 | 171 | """__init__(self, CalendarCtrl cal, wxEventType type) -> CalendarEvent""" |
d14a1e28 RD |
172 | newobj = _calendar.new_CalendarEvent(*args, **kwargs) |
173 | self.this = newobj.this | |
f6bcfd97 | 174 | self.thisown = 1 |
d14a1e28 | 175 | del newobj.thisown |
423f194a | 176 | def GetDate(*args, **kwargs): |
a95a7133 | 177 | """GetDate(self) -> DateTime""" |
423f194a RD |
178 | return _calendar.CalendarEvent_GetDate(*args, **kwargs) |
179 | ||
9fd4be55 | 180 | def SetDate(*args, **kwargs): |
a95a7133 | 181 | """SetDate(self, DateTime date)""" |
9fd4be55 RD |
182 | return _calendar.CalendarEvent_SetDate(*args, **kwargs) |
183 | ||
184 | def SetWeekDay(*args, **kwargs): | |
a95a7133 | 185 | """SetWeekDay(self, int wd)""" |
9fd4be55 RD |
186 | return _calendar.CalendarEvent_SetWeekDay(*args, **kwargs) |
187 | ||
423f194a | 188 | def GetWeekDay(*args, **kwargs): |
a95a7133 | 189 | """GetWeekDay(self) -> int""" |
423f194a RD |
190 | return _calendar.CalendarEvent_GetWeekDay(*args, **kwargs) |
191 | ||
1fbf26be RD |
192 | def PySetDate(self, date): |
193 | """takes datetime.datetime or datetime.date object""" | |
629e65c2 | 194 | self.SetDate(_pydate2wxdate(date)) |
1fbf26be RD |
195 | |
196 | def PyGetDate(self): | |
197 | """returns datetime.date object""" | |
629e65c2 | 198 | return _wxdate2pydate(self.GetDate()) |
1fbf26be | 199 | |
f6bcfd97 | 200 | |
d14a1e28 RD |
201 | class CalendarEventPtr(CalendarEvent): |
202 | def __init__(self, this): | |
f6bcfd97 | 203 | self.this = this |
d14a1e28 RD |
204 | if not hasattr(self,"thisown"): self.thisown = 0 |
205 | self.__class__ = CalendarEvent | |
206 | _calendar.CalendarEvent_swigregister(CalendarEventPtr) | |
207 | ||
208 | wxEVT_CALENDAR_DOUBLECLICKED = _calendar.wxEVT_CALENDAR_DOUBLECLICKED | |
209 | wxEVT_CALENDAR_SEL_CHANGED = _calendar.wxEVT_CALENDAR_SEL_CHANGED | |
210 | wxEVT_CALENDAR_DAY_CHANGED = _calendar.wxEVT_CALENDAR_DAY_CHANGED | |
211 | wxEVT_CALENDAR_MONTH_CHANGED = _calendar.wxEVT_CALENDAR_MONTH_CHANGED | |
212 | wxEVT_CALENDAR_YEAR_CHANGED = _calendar.wxEVT_CALENDAR_YEAR_CHANGED | |
213 | wxEVT_CALENDAR_WEEKDAY_CLICKED = _calendar.wxEVT_CALENDAR_WEEKDAY_CLICKED | |
214 | EVT_CALENDAR = wx.PyEventBinder( wxEVT_CALENDAR_DOUBLECLICKED, 1) | |
215 | EVT_CALENDAR_SEL_CHANGED = wx.PyEventBinder( wxEVT_CALENDAR_SEL_CHANGED, 1) | |
216 | EVT_CALENDAR_DAY = wx.PyEventBinder( wxEVT_CALENDAR_DAY_CHANGED, 1) | |
217 | EVT_CALENDAR_MONTH = wx.PyEventBinder( wxEVT_CALENDAR_MONTH_CHANGED, 1) | |
218 | EVT_CALENDAR_YEAR = wx.PyEventBinder( wxEVT_CALENDAR_YEAR_CHANGED, 1) | |
219 | EVT_CALENDAR_WEEKDAY_CLICKED = wx.PyEventBinder( wxEVT_CALENDAR_WEEKDAY_CLICKED, 1) | |
220 | ||
d55e5bfc | 221 | class CalendarCtrl(_core.Control): |
c24da6d6 RD |
222 | """ |
223 | The calendar control allows the user to pick a date interactively. | |
224 | ||
225 | The CalendarCtrl displays a window containing several parts: the | |
226 | control to pick the month and the year at the top (either or both of | |
227 | them may be disabled) and a month area below them which shows all the | |
228 | days in the month. The user can move the current selection using the | |
229 | keyboard and select the date (generating EVT_CALENDAR event) by | |
230 | pressing <Return> or double clicking it. | |
231 | ||
232 | It has advanced possibilities for the customization of its | |
233 | display. All global settings (such as colours and fonts used) can, of | |
234 | course, be changed. But also, the display style for each day in the | |
235 | month can be set independently using CalendarDateAttr class. | |
236 | ||
237 | An item without custom attributes is drawn with the default colours | |
238 | and font and without border, but setting custom attributes with | |
239 | SetAttr allows to modify its appearance. Just create a custom | |
240 | attribute object and set it for the day you want to be displayed | |
241 | specially A day may be marked as being a holiday, (even if it is not | |
242 | recognized as one by wx.DateTime) by using the SetHoliday method. | |
243 | ||
244 | As the attributes are specified for each day, they may change when the | |
245 | month is changed, so you will often want to update them in an | |
246 | EVT_CALENDAR_MONTH event handler. | |
c24da6d6 | 247 | """ |
423f194a RD |
248 | def __repr__(self): |
249 | return "<%s.%s; proxy of C++ wxCalendarCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,) | |
d14a1e28 | 250 | def __init__(self, *args, **kwargs): |
41f1cec7 | 251 | """ |
a95a7133 | 252 | __init__(self, Window parent, int id=-1, DateTime date=DefaultDateTime, |
41f1cec7 RD |
253 | Point pos=DefaultPosition, Size size=DefaultSize, |
254 | long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS, | |
d03fd34d | 255 | String name=CalendarNameStr) -> CalendarCtrl |
98e665d3 RD |
256 | |
257 | Create and show a calendar control. | |
41f1cec7 | 258 | """ |
d14a1e28 RD |
259 | newobj = _calendar.new_CalendarCtrl(*args, **kwargs) |
260 | self.this = newobj.this | |
f6bcfd97 | 261 | self.thisown = 1 |
d14a1e28 | 262 | del newobj.thisown |
0122b7e3 | 263 | self._setOORInfo(self) |
423f194a RD |
264 | |
265 | def Create(*args, **kwargs): | |
41f1cec7 | 266 | """ |
a95a7133 | 267 | Create(self, Window parent, int id, DateTime date=DefaultDateTime, |
41f1cec7 RD |
268 | Point pos=DefaultPosition, Size size=DefaultSize, |
269 | long style=wxCAL_SHOW_HOLIDAYS|wxWANTS_CHARS, | |
d03fd34d | 270 | String name=CalendarNameStr) -> bool |
98e665d3 | 271 | |
c24da6d6 RD |
272 | Acutally create the GUI portion of the CalendarCtrl for 2-phase |
273 | creation. | |
41f1cec7 | 274 | """ |
423f194a RD |
275 | return _calendar.CalendarCtrl_Create(*args, **kwargs) |
276 | ||
277 | def SetDate(*args, **kwargs): | |
98e665d3 | 278 | """ |
a95a7133 | 279 | SetDate(self, DateTime date) |
98e665d3 RD |
280 | |
281 | Sets the current date. | |
282 | """ | |
423f194a RD |
283 | return _calendar.CalendarCtrl_SetDate(*args, **kwargs) |
284 | ||
285 | def GetDate(*args, **kwargs): | |
98e665d3 | 286 | """ |
a95a7133 | 287 | GetDate(self) -> DateTime |
98e665d3 RD |
288 | |
289 | Gets the currently selected date. | |
290 | """ | |
423f194a RD |
291 | return _calendar.CalendarCtrl_GetDate(*args, **kwargs) |
292 | ||
293 | def SetLowerDateLimit(*args, **kwargs): | |
98e665d3 | 294 | """ |
a95a7133 | 295 | SetLowerDateLimit(self, DateTime date=DefaultDateTime) -> bool |
423f194a | 296 | |
98e665d3 RD |
297 | set the range in which selection can occur |
298 | """ | |
299 | return _calendar.CalendarCtrl_SetLowerDateLimit(*args, **kwargs) | |
423f194a RD |
300 | |
301 | def SetUpperDateLimit(*args, **kwargs): | |
98e665d3 | 302 | """ |
a95a7133 | 303 | SetUpperDateLimit(self, DateTime date=DefaultDateTime) -> bool |
98e665d3 RD |
304 | |
305 | set the range in which selection can occur | |
306 | """ | |
423f194a RD |
307 | return _calendar.CalendarCtrl_SetUpperDateLimit(*args, **kwargs) |
308 | ||
98e665d3 RD |
309 | def GetLowerDateLimit(*args, **kwargs): |
310 | """ | |
a95a7133 | 311 | GetLowerDateLimit(self) -> DateTime |
98e665d3 RD |
312 | |
313 | get the range in which selection can occur | |
314 | """ | |
315 | return _calendar.CalendarCtrl_GetLowerDateLimit(*args, **kwargs) | |
316 | ||
423f194a | 317 | def GetUpperDateLimit(*args, **kwargs): |
98e665d3 | 318 | """ |
a95a7133 | 319 | GetUpperDateLimit(self) -> DateTime |
98e665d3 RD |
320 | |
321 | get the range in which selection can occur | |
322 | """ | |
423f194a RD |
323 | return _calendar.CalendarCtrl_GetUpperDateLimit(*args, **kwargs) |
324 | ||
325 | def SetDateRange(*args, **kwargs): | |
98e665d3 | 326 | """ |
a95a7133 | 327 | SetDateRange(self, DateTime lowerdate=DefaultDateTime, DateTime upperdate=DefaultDateTime) -> bool |
98e665d3 RD |
328 | |
329 | set the range in which selection can occur | |
330 | """ | |
423f194a RD |
331 | return _calendar.CalendarCtrl_SetDateRange(*args, **kwargs) |
332 | ||
333 | def EnableYearChange(*args, **kwargs): | |
98e665d3 | 334 | """ |
a95a7133 | 335 | EnableYearChange(self, bool enable=True) |
98e665d3 RD |
336 | |
337 | This function should be used instead of changing CAL_NO_YEAR_CHANGE | |
338 | style bit directly. It allows or disallows the user to change the year | |
339 | interactively. | |
340 | """ | |
423f194a RD |
341 | return _calendar.CalendarCtrl_EnableYearChange(*args, **kwargs) |
342 | ||
343 | def EnableMonthChange(*args, **kwargs): | |
98e665d3 | 344 | """ |
a95a7133 | 345 | EnableMonthChange(self, bool enable=True) |
98e665d3 | 346 | |
c24da6d6 RD |
347 | This function should be used instead of changing CAL_NO_MONTH_CHANGE |
348 | style bit. It allows or disallows the user to change the month | |
349 | interactively. Note that if the month can not be changed, the year can | |
350 | not be changed either. | |
98e665d3 | 351 | """ |
423f194a RD |
352 | return _calendar.CalendarCtrl_EnableMonthChange(*args, **kwargs) |
353 | ||
354 | def EnableHolidayDisplay(*args, **kwargs): | |
98e665d3 | 355 | """ |
a95a7133 | 356 | EnableHolidayDisplay(self, bool display=True) |
98e665d3 | 357 | |
c24da6d6 RD |
358 | This function should be used instead of changing CAL_SHOW_HOLIDAYS |
359 | style bit directly. It enables or disables the special highlighting of | |
360 | the holidays. | |
98e665d3 | 361 | """ |
423f194a RD |
362 | return _calendar.CalendarCtrl_EnableHolidayDisplay(*args, **kwargs) |
363 | ||
364 | def SetHeaderColours(*args, **kwargs): | |
98e665d3 | 365 | """ |
a95a7133 | 366 | SetHeaderColours(self, Colour colFg, Colour colBg) |
98e665d3 | 367 | |
c24da6d6 | 368 | Header colours are used for painting the weekdays at the top. |
98e665d3 | 369 | """ |
423f194a RD |
370 | return _calendar.CalendarCtrl_SetHeaderColours(*args, **kwargs) |
371 | ||
372 | def GetHeaderColourFg(*args, **kwargs): | |
98e665d3 | 373 | """ |
a95a7133 | 374 | GetHeaderColourFg(self) -> Colour |
98e665d3 | 375 | |
c24da6d6 | 376 | Header colours are used for painting the weekdays at the top. |
98e665d3 | 377 | """ |
423f194a RD |
378 | return _calendar.CalendarCtrl_GetHeaderColourFg(*args, **kwargs) |
379 | ||
380 | def GetHeaderColourBg(*args, **kwargs): | |
98e665d3 | 381 | """ |
a95a7133 | 382 | GetHeaderColourBg(self) -> Colour |
98e665d3 | 383 | |
c24da6d6 | 384 | Header colours are used for painting the weekdays at the top. |
98e665d3 | 385 | """ |
423f194a RD |
386 | return _calendar.CalendarCtrl_GetHeaderColourBg(*args, **kwargs) |
387 | ||
388 | def SetHighlightColours(*args, **kwargs): | |
98e665d3 | 389 | """ |
a95a7133 | 390 | SetHighlightColours(self, Colour colFg, Colour colBg) |
98e665d3 | 391 | |
c24da6d6 | 392 | Highlight colour is used for the currently selected date. |
98e665d3 | 393 | """ |
423f194a RD |
394 | return _calendar.CalendarCtrl_SetHighlightColours(*args, **kwargs) |
395 | ||
396 | def GetHighlightColourFg(*args, **kwargs): | |
98e665d3 | 397 | """ |
a95a7133 | 398 | GetHighlightColourFg(self) -> Colour |
98e665d3 | 399 | |
c24da6d6 | 400 | Highlight colour is used for the currently selected date. |
98e665d3 | 401 | """ |
423f194a RD |
402 | return _calendar.CalendarCtrl_GetHighlightColourFg(*args, **kwargs) |
403 | ||
404 | def GetHighlightColourBg(*args, **kwargs): | |
98e665d3 | 405 | """ |
a95a7133 | 406 | GetHighlightColourBg(self) -> Colour |
98e665d3 | 407 | |
c24da6d6 | 408 | Highlight colour is used for the currently selected date. |
98e665d3 | 409 | """ |
423f194a RD |
410 | return _calendar.CalendarCtrl_GetHighlightColourBg(*args, **kwargs) |
411 | ||
412 | def SetHolidayColours(*args, **kwargs): | |
98e665d3 | 413 | """ |
a95a7133 | 414 | SetHolidayColours(self, Colour colFg, Colour colBg) |
98e665d3 | 415 | |
c24da6d6 RD |
416 | Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is |
417 | used). | |
98e665d3 | 418 | """ |
423f194a RD |
419 | return _calendar.CalendarCtrl_SetHolidayColours(*args, **kwargs) |
420 | ||
421 | def GetHolidayColourFg(*args, **kwargs): | |
98e665d3 | 422 | """ |
a95a7133 | 423 | GetHolidayColourFg(self) -> Colour |
98e665d3 | 424 | |
c24da6d6 RD |
425 | Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is |
426 | used). | |
98e665d3 | 427 | """ |
423f194a RD |
428 | return _calendar.CalendarCtrl_GetHolidayColourFg(*args, **kwargs) |
429 | ||
430 | def GetHolidayColourBg(*args, **kwargs): | |
98e665d3 | 431 | """ |
a95a7133 | 432 | GetHolidayColourBg(self) -> Colour |
98e665d3 | 433 | |
c24da6d6 RD |
434 | Holiday colour is used for the holidays (if CAL_SHOW_HOLIDAYS style is |
435 | used). | |
98e665d3 | 436 | """ |
423f194a RD |
437 | return _calendar.CalendarCtrl_GetHolidayColourBg(*args, **kwargs) |
438 | ||
439 | def GetAttr(*args, **kwargs): | |
98e665d3 | 440 | """ |
a95a7133 | 441 | GetAttr(self, size_t day) -> CalendarDateAttr |
98e665d3 | 442 | |
c24da6d6 RD |
443 | Returns the attribute for the given date (should be in the range |
444 | 1...31). The returned value may be None | |
98e665d3 | 445 | """ |
423f194a RD |
446 | return _calendar.CalendarCtrl_GetAttr(*args, **kwargs) |
447 | ||
448 | def SetAttr(*args, **kwargs): | |
98e665d3 | 449 | """ |
a95a7133 | 450 | SetAttr(self, size_t day, CalendarDateAttr attr) |
98e665d3 | 451 | |
c24da6d6 RD |
452 | Associates the attribute with the specified date (in the range |
453 | 1...31). If the attribute passed is None, the items attribute is | |
454 | cleared. | |
98e665d3 | 455 | """ |
423f194a RD |
456 | return _calendar.CalendarCtrl_SetAttr(*args, **kwargs) |
457 | ||
458 | def SetHoliday(*args, **kwargs): | |
98e665d3 | 459 | """ |
a95a7133 | 460 | SetHoliday(self, size_t day) |
98e665d3 RD |
461 | |
462 | Marks the specified day as being a holiday in the current month. | |
463 | """ | |
423f194a RD |
464 | return _calendar.CalendarCtrl_SetHoliday(*args, **kwargs) |
465 | ||
466 | def ResetAttr(*args, **kwargs): | |
98e665d3 | 467 | """ |
a95a7133 | 468 | ResetAttr(self, size_t day) |
98e665d3 | 469 | |
c24da6d6 RD |
470 | Clears any attributes associated with the given day (in the range |
471 | 1...31). | |
98e665d3 | 472 | """ |
423f194a RD |
473 | return _calendar.CalendarCtrl_ResetAttr(*args, **kwargs) |
474 | ||
475 | def HitTest(*args, **kwargs): | |
98e665d3 RD |
476 | """ |
477 | HitTest(Point pos) -> (result, date, weekday) | |
478 | ||
c24da6d6 RD |
479 | Returns 3-tuple with information about the given position on the |
480 | calendar control. The first value of the tuple is a result code and | |
79fccf9d | 481 | determines the validity of the remaining two values. |
98e665d3 RD |
482 | """ |
483 | return _calendar.CalendarCtrl_HitTest(*args, **kwargs) | |
423f194a | 484 | |
9fd4be55 | 485 | def GetMonthControl(*args, **kwargs): |
98e665d3 | 486 | """ |
a95a7133 | 487 | GetMonthControl(self) -> Control |
98e665d3 | 488 | |
c24da6d6 | 489 | Get the currently shown control for month. |
98e665d3 | 490 | """ |
9fd4be55 RD |
491 | return _calendar.CalendarCtrl_GetMonthControl(*args, **kwargs) |
492 | ||
493 | def GetYearControl(*args, **kwargs): | |
98e665d3 | 494 | """ |
a95a7133 | 495 | GetYearControl(self) -> Control |
98e665d3 | 496 | |
c24da6d6 | 497 | Get the currently shown control for year. |
98e665d3 | 498 | """ |
9fd4be55 RD |
499 | return _calendar.CalendarCtrl_GetYearControl(*args, **kwargs) |
500 | ||
f20a2e1f RD |
501 | def GetClassDefaultAttributes(*args, **kwargs): |
502 | """ | |
503 | GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes | |
504 | ||
79fccf9d RD |
505 | Get the default attributes for this class. This is useful if you want |
506 | to use the same font or colour in your own control as in a standard | |
507 | control -- which is a much better idea than hard coding specific | |
caef1a4d RD |
508 | colours or fonts which might look completely out of place on the |
509 | user's system, especially if it uses themes. | |
f20a2e1f RD |
510 | |
511 | The variant parameter is only relevant under Mac currently and is | |
79fccf9d | 512 | ignore under other platforms. Under Mac, it will change the size of |
caef1a4d RD |
513 | the returned font. See `wx.Window.SetWindowVariant` for more about |
514 | this. | |
f20a2e1f RD |
515 | """ |
516 | return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs) | |
517 | ||
518 | GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes) | |
1fbf26be RD |
519 | def PySetDate(self, date): |
520 | """takes datetime.datetime or datetime.date object""" | |
629e65c2 | 521 | self.SetDate(_pydate2wxdate(date)) |
1fbf26be RD |
522 | |
523 | def PyGetDate(self): | |
524 | """returns datetime.date object""" | |
629e65c2 | 525 | return _wxdate2pydate(self.GetDate()) |
1fbf26be RD |
526 | |
527 | def PySetLowerDateLimit(self, date): | |
528 | """takes datetime.datetime or datetime.date object""" | |
629e65c2 | 529 | self.SetLowerDateLimit(_pydate2wxdate(date)) |
1fbf26be RD |
530 | |
531 | def PySetUpperDateLimit(self, date): | |
532 | """takes datetime.datetime or datetime.date object""" | |
629e65c2 | 533 | self.SetUpperDateLimit(_pydate2wxdate(date)) |
1fbf26be RD |
534 | |
535 | def PySetDateRange(self, lowerdate, upperdate): | |
536 | """takes datetime.datetime or datetime.date objects""" | |
537 | self.PySetLowerDateLimit(lowerdate) | |
538 | self.PySetUpperDateLimit(upperdate) | |
539 | ||
540 | def PyGetLowerDateLimit(self): | |
541 | """returns datetime.date object""" | |
629e65c2 | 542 | return _wxdate2pydate(self.GetLowerDateLimit()) |
1fbf26be RD |
543 | |
544 | def PyGetUpperDateLimit(self): | |
545 | """returns datetime.date object""" | |
629e65c2 | 546 | return _wxdate2pydate(self.GetUpperDateLimit()) |
1fbf26be | 547 | |
f6bcfd97 | 548 | |
d14a1e28 RD |
549 | class CalendarCtrlPtr(CalendarCtrl): |
550 | def __init__(self, this): | |
551 | self.this = this | |
552 | if not hasattr(self,"thisown"): self.thisown = 0 | |
553 | self.__class__ = CalendarCtrl | |
554 | _calendar.CalendarCtrl_swigregister(CalendarCtrlPtr) | |
d03fd34d RD |
555 | cvar = _calendar.cvar |
556 | CalendarNameStr = cvar.CalendarNameStr | |
f6bcfd97 | 557 | |
d14a1e28 | 558 | def PreCalendarCtrl(*args, **kwargs): |
98e665d3 RD |
559 | """ |
560 | PreCalendarCtrl() -> CalendarCtrl | |
561 | ||
562 | Precreate a CalendarCtrl for 2-phase creation. | |
563 | """ | |
d14a1e28 | 564 | val = _calendar.new_PreCalendarCtrl(*args, **kwargs) |
09f3d4e6 RD |
565 | val.thisown = 1 |
566 | return val | |
567 | ||
f20a2e1f RD |
568 | def CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs): |
569 | """ | |
570 | CalendarCtrl_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes | |
571 | ||
79fccf9d RD |
572 | Get the default attributes for this class. This is useful if you want |
573 | to use the same font or colour in your own control as in a standard | |
574 | control -- which is a much better idea than hard coding specific | |
caef1a4d RD |
575 | colours or fonts which might look completely out of place on the |
576 | user's system, especially if it uses themes. | |
f20a2e1f RD |
577 | |
578 | The variant parameter is only relevant under Mac currently and is | |
79fccf9d | 579 | ignore under other platforms. Under Mac, it will change the size of |
caef1a4d RD |
580 | the returned font. See `wx.Window.SetWindowVariant` for more about |
581 | this. | |
f20a2e1f RD |
582 | """ |
583 | return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs) | |
584 | ||
629e65c2 | 585 | def _pydate2wxdate(date): |
1fbf26be RD |
586 | import datetime |
587 | assert isinstance(date, (datetime.datetime, datetime.date)) | |
588 | tt = date.timetuple() | |
589 | dmy = (tt[2], tt[1]-1, tt[0]) | |
590 | return wx.DateTimeFromDMY(*dmy) | |
591 | ||
629e65c2 | 592 | def _wxdate2pydate(date): |
1fbf26be RD |
593 | import datetime |
594 | assert isinstance(date, wx.DateTime) | |
629e65c2 RD |
595 | if date.IsValid(): |
596 | ymd = map(int, date.FormatISODate().split('-')) | |
597 | return datetime.date(*ymd) | |
598 | else: | |
599 | return None | |
1fbf26be | 600 | |
f6bcfd97 | 601 |