From c1afea3723732a837536ac0e6b9902f8921fc12b Mon Sep 17 00:00:00 2001 From: cncfanatics Date: Sat, 11 Sep 2010 19:33:13 +0200 Subject: [PATCH] Change EditLabel implementation slightly, should work everywhere now --- gui/shipBrowser.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gui/shipBrowser.py b/gui/shipBrowser.py index ccc4fec5a..37e92ba70 100644 --- a/gui/shipBrowser.py +++ b/gui/shipBrowser.py @@ -179,6 +179,7 @@ class ShipBrowser(wx.Panel): wx.PostEvent(self.mainFrame, FitCreated(fitID=fitID)) def renameFit(self, event): + print "r" tree = self.getActiveTree() root = tree.GetSelection() type, _ = tree.GetPyData(root) @@ -310,6 +311,8 @@ class ShipBrowser(wx.Panel): class ShipView(wx.TreeCtrl): def __init__(self, parent): wx.TreeCtrl.__init__(self, parent, style=wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT | wx.TR_EDIT_LABELS) + self.Bind(wx.EVT_TREE_BEGIN_LABEL_EDIT, self.vetoEdit) + self.rename = False def OnCompareItems(self, treeId1, treeId2): child, cookie = self.GetFirstChild(treeId1) @@ -332,6 +335,14 @@ class ShipView(wx.TreeCtrl): #Prevent flicker by not letting the parent's method get called. pass + def EditLabel(self, childId): + self.rename = True + wx.TreeCtrl.EditLabel(self, childId) + + def vetoEdit(self, event): + if not self.rename: + event.Veto() + class ShipMenu(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent)