-# This file was created automatically by SWIG.
+# This file was created automatically by SWIG 1.3.29.
# Don't modify this file, modify the SWIG interface instead.
"""
"""
import _calendar
+import new
+new_instancemethod = new.instancemethod
+def _swig_setattr_nondynamic(self,class_type,name,value,static=1):
+ if (name == "thisown"): return self.this.own(value)
+ if (name == "this"):
+ if type(value).__name__ == 'PySwigObject':
+ self.__dict__[name] = value
+ return
+ method = class_type.__swig_setmethods__.get(name,None)
+ if method: return method(self,value)
+ if (not static) or hasattr(self,name):
+ self.__dict__[name] = value
+ else:
+ raise AttributeError("You cannot add attributes to %s" % self)
+
+def _swig_setattr(self,class_type,name,value):
+ return _swig_setattr_nondynamic(self,class_type,name,value,0)
+
+def _swig_getattr(self,class_type,name):
+ if (name == "thisown"): return self.this.own()
+ method = class_type.__swig_getmethods__.get(name,None)
+ if method: return method(self)
+ raise AttributeError,name
+
+def _swig_repr(self):
+ try: strthis = "proxy of " + self.this.__repr__()
+ except: strthis = ""
+ return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
+
+import types
+try:
+ _object = types.ObjectType
+ _newclass = 1
+except AttributeError:
+ class _object : pass
+ _newclass = 0
+del types
+
+
+def _swig_setattr_nondynamic_method(set):
+ def set_attr(self,name,value):
+ if (name == "thisown"): return self.this.own(value)
+ if hasattr(self,name) or (name == "this"):
+ set(self,name,value)
+ else:
+ raise AttributeError("You cannot add attributes to %s" % self)
+ return set_attr
+
import _misc
import _core
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,)
- def __init__(self, *args, **kwargs):
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+ __repr__ = _swig_repr
+ def __init__(self, *args, **kwargs):
"""
__init__(self, Colour colText=wxNullColour, Colour colBack=wxNullColour,
Colour colBorder=wxNullColour, Font font=wxNullFont,
Create a CalendarDateAttr.
"""
- newobj = _calendar.new_CalendarDateAttr(*args, **kwargs)
- self.this = newobj.this
- self.thisown = 1
- del newobj.thisown
+ _calendar.CalendarDateAttr_swiginit(self,_calendar.new_CalendarDateAttr(*args, **kwargs))
def SetTextColour(*args, **kwargs):
"""SetTextColour(self, Colour colText)"""
return _calendar.CalendarDateAttr_SetTextColour(*args, **kwargs)
"""GetBorder(self) -> int"""
return _calendar.CalendarDateAttr_GetBorder(*args, **kwargs)
+_calendar.CalendarDateAttr_swigregister(CalendarDateAttr)
-class CalendarDateAttrPtr(CalendarDateAttr):
- def __init__(self, this):
- self.this = this
- if not hasattr(self,"thisown"): self.thisown = 0
- self.__class__ = CalendarDateAttr
-_calendar.CalendarDateAttr_swigregister(CalendarDateAttrPtr)
-
-class CalendarEvent(_core.CommandEvent):
- def __repr__(self):
- return "<%s.%s; proxy of C++ wxCalendarEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
- def __init__(self, *args, **kwargs):
- """__init__(self, CalendarCtrl cal, wxEventType type) -> CalendarEvent"""
- newobj = _calendar.new_CalendarEvent(*args, **kwargs)
- self.this = newobj.this
- self.thisown = 1
- del newobj.thisown
- def GetDate(*args, **kwargs):
- """GetDate(self) -> DateTime"""
- return _calendar.CalendarEvent_GetDate(*args, **kwargs)
-
- def SetDate(*args, **kwargs):
- """SetDate(self, DateTime date)"""
- return _calendar.CalendarEvent_SetDate(*args, **kwargs)
-
+class CalendarEvent(_core.DateEvent):
+ """Proxy of C++ CalendarEvent class"""
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+ __repr__ = _swig_repr
+ def __init__(self, *args, **kwargs):
+ """__init__(self, CalendarCtrl cal, EventType type) -> CalendarEvent"""
+ _calendar.CalendarEvent_swiginit(self,_calendar.new_CalendarEvent(*args, **kwargs))
def SetWeekDay(*args, **kwargs):
"""SetWeekDay(self, int wd)"""
return _calendar.CalendarEvent_SetWeekDay(*args, **kwargs)
"""GetWeekDay(self) -> int"""
return _calendar.CalendarEvent_GetWeekDay(*args, **kwargs)
+ def PySetDate(self, date):
+ """takes datetime.datetime or datetime.date object"""
+ self.SetDate(_pydate2wxdate(date))
+
+ def PyGetDate(self):
+ """returns datetime.date object"""
+ return _wxdate2pydate(self.GetDate())
-class CalendarEventPtr(CalendarEvent):
- def __init__(self, this):
- self.this = this
- if not hasattr(self,"thisown"): self.thisown = 0
- self.__class__ = CalendarEvent
-_calendar.CalendarEvent_swigregister(CalendarEventPtr)
+_calendar.CalendarEvent_swigregister(CalendarEvent)
wxEVT_CALENDAR_DOUBLECLICKED = _calendar.wxEVT_CALENDAR_DOUBLECLICKED
wxEVT_CALENDAR_SEL_CHANGED = _calendar.wxEVT_CALENDAR_SEL_CHANGED
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.
+ 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):
+ thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')
+ __repr__ = _swig_repr
+ def __init__(self, *args, **kwargs):
"""
__init__(self, Window parent, int id=-1, DateTime date=DefaultDateTime,
Point pos=DefaultPosition, Size size=DefaultSize,
Create and show a calendar control.
"""
- newobj = _calendar.new_CalendarCtrl(*args, **kwargs)
- self.this = newobj.this
- self.thisown = 1
- del newobj.thisown
+ _calendar.CalendarCtrl_swiginit(self,_calendar.new_CalendarCtrl(*args, **kwargs))
self._setOORInfo(self)
def Create(*args, **kwargs):
return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs)
GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
+ def PySetDate(self, date):
+ """takes datetime.datetime or datetime.date object"""
+ self.SetDate(_pydate2wxdate(date))
+
+ def PyGetDate(self):
+ """returns datetime.date object"""
+ return _wxdate2pydate(self.GetDate())
-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)
+ def PySetLowerDateLimit(self, date):
+ """takes datetime.datetime or datetime.date object"""
+ self.SetLowerDateLimit(_pydate2wxdate(date))
+
+ def PySetUpperDateLimit(self, date):
+ """takes datetime.datetime or datetime.date object"""
+ self.SetUpperDateLimit(_pydate2wxdate(date))
+
+ def PySetDateRange(self, lowerdate, upperdate):
+ """takes datetime.datetime or datetime.date objects"""
+ self.PySetLowerDateLimit(lowerdate)
+ self.PySetUpperDateLimit(upperdate)
+
+ def PyGetLowerDateLimit(self):
+ """returns datetime.date object"""
+ return _wxdate2pydate(self.GetLowerDateLimit())
+
+ def PyGetUpperDateLimit(self):
+ """returns datetime.date object"""
+ return _wxdate2pydate(self.GetUpperDateLimit())
+
+_calendar.CalendarCtrl_swigregister(CalendarCtrl)
cvar = _calendar.cvar
CalendarNameStr = cvar.CalendarNameStr
Precreate a CalendarCtrl for 2-phase creation.
"""
val = _calendar.new_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
the returned font. See `wx.Window.SetWindowVariant` for more about
this.
"""
- return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs)
+ return _calendar.CalendarCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
+def _pydate2wxdate(date):
+ import datetime
+ assert isinstance(date, (datetime.datetime, datetime.date))
+ tt = date.timetuple()
+ dmy = (tt[2], tt[1]-1, tt[0])
+ return wx.DateTimeFromDMY(*dmy)
+
+def _wxdate2pydate(date):
+ import datetime
+ assert isinstance(date, wx.DateTime)
+ if date.IsValid():
+ ymd = map(int, date.FormatISODate().split('-'))
+ return datetime.date(*ymd)
+ else:
+ return None
+