diff -r 47b9ad1471cc -r d751b1c609b3 controls/CustomGrid.py --- a/controls/CustomGrid.py Mon Apr 23 11:16:40 2012 +0200 +++ b/controls/CustomGrid.py Fri Apr 27 01:55:45 2012 +0200 @@ -72,16 +72,17 @@ button.Bind(wx.EVT_BUTTON, getattr(self, "On%sButton" % name)) def RefreshButtons(self): - rows = self.Table.GetNumberRows() - row = self.GetGridCursorRow() - if self.AddButton is not None: - self.AddButton.Enable(self.Editable) - if self.DeleteButton is not None: - self.DeleteButton.Enable(self.Editable and rows > 0) - if self.UpButton is not None: - self.UpButton.Enable(self.Editable and row > 0) - if self.DownButton is not None: - self.DownButton.Enable(self.Editable and 0 <= row < rows - 1) + if self: + rows = self.Table.GetNumberRows() + row = self.GetGridCursorRow() + if self.AddButton is not None: + self.AddButton.Enable(self.Editable) + if self.DeleteButton is not None: + self.DeleteButton.Enable(self.Editable and rows > 0) + if self.UpButton is not None: + self.UpButton.Enable(self.Editable and row > 0) + if self.DownButton is not None: + self.DownButton.Enable(self.Editable and 0 <= row < rows - 1) def CloseEditControl(self): row, col = self.GetGridCursorRow(), self.GetGridCursorCol()