X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b96c7a38a84ff9f6dfecd3885fba1971d30b9c0b..dae0faa6be08c5bb5635fd464b695ac8bb8f2b8d:/wxPython/demo/wxCalendarCtrl.py diff --git a/wxPython/demo/wxCalendarCtrl.py b/wxPython/demo/wxCalendarCtrl.py index 02c771ad33..03fc569b4d 100644 --- a/wxPython/demo/wxCalendarCtrl.py +++ b/wxPython/demo/wxCalendarCtrl.py @@ -1,24 +1,35 @@ +# 11/15/2003 - Jeff Grimmett (grimmtooth@softhome.net) +# +# o Updated for wx namespace +# -from wxPython.wx import * -from wxPython.calendar import * -from wxPython.utils import * +import wx +import wx.lib.calendar as calendar #---------------------------------------------------------------------- -class TestPanel(wxPanel): +class TestPanel(wx.Panel): def __init__(self, parent, ID, log): - wxPanel.__init__(self, parent, ID) + wx.Panel.__init__(self, parent, ID) self.log = log - cal = wxCalendarCtrl(self, -1, wxDateTime_Now(), pos = (25,50), - style = wxCAL_SHOW_HOLIDAYS | wxCAL_SUNDAY_FIRST) + cal = calendar.CalendarCtrl(self, -1, wx.DateTime_Now(), pos = (25,50), + style = calendar.CAL_SHOW_HOLIDAYS + | calendar.CAL_SUNDAY_FIRST + | calendar.CAL_SEQUENTIAL_MONTH_SELECTION + ) - EVT_CALENDAR(self, cal.GetId(), self.OnCalSelected) + self.Bind(calendar.EVT_CALENDAR, self.OnCalSelected, id=cal.GetId()) - b = wxButton(self, -1, "Destroy the Calendar", pos = (250, 50)) - EVT_BUTTON(self, b.GetId(), self.OnButton) + b = wx.Button(self, -1, "Destroy the Calendar", pos = (250, 50)) + self.Bind(wx.EVT_BUTTON, self.OnButton, id= b.GetId()) self.cal = cal + # Set up control to display a set of holidays: + self.Bind(calendar.EVT_CALENDAR_MONTH, self.OnChangeMonth, id=cal.GetId()) + self.holidays = [(1,1), (10,31), (12,25) ] # (these don't move around) + self.OnChangeMonth() + def OnButton(self, evt): self.cal.Destroy() self.cal = None @@ -26,6 +37,12 @@ class TestPanel(wxPanel): def OnCalSelected(self, evt): self.log.write('OnCalSelected: %s\n' % evt.GetDate()) + def OnChangeMonth(self, evt=None): + cur_month = self.cal.GetDate().GetMonth() + 1 # convert wxDateTime 0-11 => 1-12 + + for month, day in self.holidays: + if month == cur_month: + self.cal.SetHoliday(day) #---------------------------------------------------------------------- @@ -45,3 +62,12 @@ version described in the docs. This one will probably be a bit more efficient than the one in wxPython.lib.calendar, but I like a few things about it better, so I think both will stay in wxPython. """ + + + + +if __name__ == '__main__': + import sys,os + import run + run.main(['', os.path.basename(sys.argv[0])]) +