# HG changeset patch # User Laurent Bessard # Date 1362502611 -3600 # Node ID f1c6b7a6f44b3e8ade94d5107b603389958b5e7c # Parent 463d4b2b058db1fd16ced6e49ce4e4401b775a51# Parent c0dcbbdb0bb1046473ddfa7054f34d586e6a2112 Merged diff -r 463d4b2b058d -r f1c6b7a6f44b controls/CustomGrid.py --- a/controls/CustomGrid.py Tue Mar 05 20:14:12 2013 +0900 +++ b/controls/CustomGrid.py Tue Mar 05 17:56:51 2013 +0100 @@ -92,9 +92,8 @@ else: self.Table.InsertRow(new_row, self.DefaultValue.copy()) self.Table.ResetView(self) - self.SetGridCursor(new_row, col) - self.MakeCellVisible(new_row, col) - self.RefreshButtons() + if new_row is not None: + self.SetSelectedRow(new_row) def DeleteRow(self): self.CloseEditControl() @@ -106,10 +105,7 @@ else: self.Table.RemoveRow(row) self.Table.ResetView(self) - new_row = min(row, self.Table.GetNumberRows() - 1) - self.SetGridCursor(new_row, col) - self.MakeCellVisible(new_row, col) - self.RefreshButtons() + self.SetSelectedRow(min(row, self.Table.GetNumberRows() - 1)) def MoveRow(self, row, move): self.CloseEditControl() @@ -121,10 +117,14 @@ if new_row != row: self.Table.ResetView(self) if new_row != row: - self.SetGridCursor(new_row, col) - self.MakeCellVisible(new_row, col) - self.RefreshButtons() - + self.SetSelectedRow(new_row) + + def SetSelectedRow(self, row): + col = self.GetGridCursorCol() + self.SetGridCursor(row, col) + self.MakeCellVisible(row, col) + self.RefreshButtons() + def OnAddButton(self, event): self.AddRow() self.SetFocus() diff -r 463d4b2b058d -r f1c6b7a6f44b controls/DebugVariablePanel.py --- a/controls/DebugVariablePanel.py Tue Mar 05 20:14:12 2013 +0900 +++ b/controls/DebugVariablePanel.py Tue Mar 05 17:56:51 2013 +0100 @@ -1670,12 +1670,18 @@ panel.OnDragging(x_mouse - x, y_mouse - y) else: panel.SetHighlight(HIGHLIGHT_NONE) - self.ForceRefresh() + if wx.Platform == "__WXMSW__": + self.RefreshView() + else: + self.ForceRefresh() def ResetHighlight(self): for panel in self.GraphicPanels: panel.SetHighlight(HIGHLIGHT_NONE) - self.ForceRefresh() + if wx.Platform == "__WXMSW__": + self.RefreshView() + else: + self.ForceRefresh() def IsDragging(self): return self.DraggingAxesPanel is not None