Add a bunch of event.Skip() statements where needed.

Wire up a few events in the fittingView
Make the + button actualy add new tabs
This commit is contained in:
cncfanatics
2010-08-25 14:59:46 +02:00
parent 12e348a0c3
commit 2d33a5dda5
3 changed files with 37 additions and 1 deletions

View File

@@ -26,6 +26,7 @@ class FitMultiSwitch(wx.Notebook):
wx.Notebook.__init__(self, parent, wx.ID_ANY)
self.fitPanes = []
self.AddPage(wx.Panel(self), "+")
self.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGING, self.checkAdd)
def AddTab(self):
p = wx.Panel(self)
@@ -36,4 +37,10 @@ class FitMultiSwitch(wx.Notebook):
p.SetSizer(sizer)
pos = self.GetPageCount() - 1
self.InsertPage(pos, p, "Empty tab")
self.SetSelection(pos)
wx.CallAfter(self.ChangeSelection, pos)
def checkAdd(self, event):
if event.Selection == self.GetPageCount() - 1:
self.AddTab()
event.Veto()

View File

@@ -20,6 +20,7 @@
import wx
import sys
import gui.builtinViewColumns
import gui.mainFrame
from gui.builtinViewColumns import *
class FittingView(wx.ListCtrl):
@@ -43,6 +44,10 @@ class FittingView(wx.ListCtrl):
self.Bind(wx.EVT_LIST_COL_END_DRAG, self.dragCheck)
#Listen to when stuff in the ship browser changes
mainFrame = gui.mainFrame.MainFrame.getInstance()
for tree in (mainFrame.shipBrowser.shipView, mainFrame.shipBrowser.searchView):
tree.Bind(wx.EVT_TREE_SEL_CHANGED, self.changeFit)
tree.Bind(wx.EVT_TREE_END_LABEL_EDIT, self.renameFit)
i = 0
for colName in FittingView.DEFAULT_COLS:
@@ -78,3 +83,11 @@ class FittingView(wx.ListCtrl):
def dragEnd(self, event):
print event
def renameFit(self, event):
print event
event.Skip()
def changeFit(self, event):
print event
event.Skip()

View File

@@ -111,6 +111,8 @@ class ShipBrowser(wx.Panel):
for btn in btns:
btn.Enable(False)
event.Skip()
def expandLookup(self, event):
tree = self.getActiveTree()
root = event.Item
@@ -133,6 +135,8 @@ class ShipBrowser(wx.Panel):
tree.SortChildren(root)
event.Skip()
def newFit(self, event):
tree = self.getActiveTree()
root = tree.GetSelection()
@@ -150,6 +154,7 @@ class ShipBrowser(wx.Panel):
tree.Expand(root)
tree.SelectItem(childId)
tree.EditLabel(childId)
event.Skip()
def renameOrExpand(self, event):
tree = self.getActiveTree()
@@ -168,6 +173,8 @@ class ShipBrowser(wx.Panel):
if type == "fit":
tree.EditLabel(root)
event.Skip()
def changeFitName(self, event):
tree = self.getActiveTree()
item = event.Item
@@ -176,6 +183,7 @@ class ShipBrowser(wx.Panel):
cFit = controller.Fit.getInstance()
cFit.renameFit(fitID, newName)
wx.CallAfter(tree.SortChildren, tree.GetItemParent(item))
event.Skip()
def deleteFit(self, event):
tree = self.getActiveTree()
@@ -186,6 +194,8 @@ class ShipBrowser(wx.Panel):
cFit.deleteFit(fitID)
tree.Delete(root)
event.Skip()
def copyFit(self, event):
tree = self.getActiveTree()
root = tree.GetSelection()
@@ -200,9 +210,12 @@ class ShipBrowser(wx.Panel):
tree.SelectItem(childId)
tree.EditLabel(childId)
event.Skip()
def scheduleSearch(self, event):
self.searchTimer.Stop()
self.searchTimer.Start(50, wx.TIMER_ONE_SHOT)
event.Skip()
def clearSearch(self, event, clearText=True):
if self.getActiveTree() == self.searchView:
@@ -216,6 +229,8 @@ class ShipBrowser(wx.Panel):
self.viewSizer.Layout()
event.Skip()
def startSearch(self, event):
search = self.shipMenu.search.GetLineText(0)
if len(search) < 3:
@@ -262,6 +277,7 @@ class ShipBrowser(wx.Panel):
self.shipView.Collapse(child)
child, cookie = self.shipView.GetNextChild(root, cookie)
event.Skip()
class ShipView(wx.TreeCtrl):
def __init__(self, parent):