diff --git a/wxPython/wxPython/lib/calendar.py b/wxPython/wxPython/lib/calendar.py index aadd662e5d..b523932d01 100644 --- a/wxPython/wxPython/lib/calendar.py +++ b/wxPython/wxPython/lib/calendar.py @@ -5,8 +5,8 @@ # Author: Lorne White (email: lorne.white@telusplanet.net) # # Created: -# Version 0.8 -# Date: Feb 27, 2001 +# Version 0.85 +# Date: June 20, 2001 # Licence: wxWindows license #---------------------------------------------------------------------------- @@ -31,7 +31,7 @@ def GetMonthList(): if name != None: monthlist.append(name) return monthlist - + class CalDraw: def __init__(self, parent): self.pwidth = 1 @@ -635,7 +635,7 @@ class wxCalendar(wxWindow): def ClearDsp(self): self.Clear() - + class CalenDlg(wxDialog): def __init__(self, parent, month=None, day = None, year=None): wxDialog.__init__(self, parent, -1, "Event Calendar", wxPyDefaultPosition, wxSize(280, 360)) @@ -647,8 +647,8 @@ class CalenDlg(wxDialog): start_month = self.calend.GetMonth() start_year = self.calend.GetYear() else: - start_month = month - start_year = year + self.calend.month = start_month = month + self.calend.year = start_year = year self.calend.SetDayValue(day) self.calend.HideTitle() @@ -691,7 +691,7 @@ class CalenDlg(wxDialog): mID = NewId() wxButton(self, mID, ' Ok ', wxPoint(x_pos, y_pos), but_size) EVT_BUTTON(self, mID, self.OnOk) - + mID = NewId() wxButton(self, mID, ' Close ', wxPoint(x_pos + 120, y_pos), but_size) EVT_BUTTON(self, mID, self.OnCancel) @@ -704,6 +704,7 @@ class CalenDlg(wxDialog): # log the mouse clicks def MouseClick(self, evt): + self.month = evt.month self.result = [evt.click, str(evt.day), Month[evt.month], str(evt.year)] # result click type and date if evt.click == 'DLEFT': @@ -737,3 +738,4 @@ class CalenDlg(wxDialog): self.calend.Refresh() + diff --git a/wxPython/wxPython/lib/mixins/grid.py b/wxPython/wxPython/lib/mixins/grid.py new file mode 100644 index 0000000000..b6040111b7 --- /dev/null +++ b/wxPython/wxPython/lib/mixins/grid.py @@ -0,0 +1,43 @@ +#---------------------------------------------------------------------------- +# Name: wxPython.lib.mixins.grid +# Purpose: Helpful mix-in classes for wxGrid +# +# Author: Robin Dunn +# +# Created: 5-June-2001 +# RCS-ID: $Id$ +# Copyright: (c) 2001 by Total Control Software +# Licence: wxWindows license +#---------------------------------------------------------------------------- + +from wxPython import wx, grid + +#---------------------------------------------------------------------------- + + +class wxGridAutoEditMixin: + """A mix-in class that automatically enables the grid edit control when + a cell is selected. + + If your class hooks EVT_GRID_SELECT_CELL be sure to call event.Skip so + this handler will be called too. + """ + + def __init__(self): + self.__enableEdit = 0 + wx.EVT_IDLE(self, self.__OnIdle) + grid.EVT_GRID_SELECT_CELL(self, self.__OnSelectCell) + + + def __OnIdle(self, evt): + if self.__enableEdit: + if self.CanEnableCellControl(): + self.EnableCellEditControl() + self.__enableEdit = 0 + evt.Skip() + + + def __OnSelectCell(self, evt): + self.__enableEdit = 1 + evt.Skip() + diff --git a/wxPython/wxPython/lib/mixins/imagelist.py b/wxPython/wxPython/lib/mixins/imagelist.py index e411c1e25a..421772fb82 100644 --- a/wxPython/wxPython/lib/mixins/imagelist.py +++ b/wxPython/wxPython/lib/mixins/imagelist.py @@ -50,14 +50,15 @@ class MagicImageList: '''Add an icon to the image list, or get the index if already there''' index = self.__magicImageListMapping.get (id (icon)) if index is None: - if isinstance( icon, wxIcon ): + if isinstance( icon, wxIconPtr ): index = self.__magicImageList.AddIcon( icon ) - elif isinstance( icon, wxBitmap ): + elif isinstance( icon, wxBitmapPtr ): if isinstance( mask, wxColour ): index = self.__magicImageList.AddWithColourMask( icon, mask ) else: index = self.__magicImageList.Add( icon, mask ) else: + print icon.__class__.__name__ raise ValueError("Unexpected icon object %s, " "expected wxIcon or wxBitmap" % (icon)) self.__magicImageListMapping [id (icon)] = index