#----------------------------------------------------------------------------
-# Name: wxPython.lib.mixins.grid
-# Purpose: Helpful mix-in classes for wxGrid
+# Name: wx.lib.mixins.grid
+# Purpose: Helpful mix-in classes for wx.Grid
#
# Author: Robin Dunn
#
# o 2.5 compatability update.
# o Untested
#
+# 12/21/2003 - Jeff Grimmett (grimmtooth@softhome.net)
+#
+# o wxGridAutoEditMixin -> GridAutoEditMixin
+#
import wx
import wx.grid
#----------------------------------------------------------------------------
-class wxGridAutoEditMixin:
+class GridAutoEditMixin:
"""A mix-in class that automatically enables the grid edit control when
a cell is selected.
"""
def __init__(self):
- self.__enableEdit = 0
- self.Bind(wx.EVT_IDLE, self.__OnIdle)
self.Bind(wx.grid.EVT_GRID_SELECT_CELL, self.__OnSelectCell)
- def __OnIdle(self, evt):
- if self.__enableEdit:
- if self.CanEnableCellControl():
- self.EnableCellEditControl()
- self.__enableEdit = 0
- evt.Skip()
+ def __DoEnableEdit(self):
+ if self.CanEnableCellControl():
+ self.EnableCellEditControl()
def __OnSelectCell(self, evt):
- self.__enableEdit = 1
+ wx.CallAfter(self.__DoEnableEdit)
evt.Skip()