Polish some events
This commit is contained in:
@@ -504,14 +504,20 @@ class ImplantsTreeView (wx.Panel):
|
|||||||
availableSizer.Add(self.availableImplantsTree, 1, wx.EXPAND)
|
availableSizer.Add(self.availableImplantsTree, 1, wx.EXPAND)
|
||||||
|
|
||||||
buttonSizer = wx.BoxSizer(wx.VERTICAL)
|
buttonSizer = wx.BoxSizer(wx.VERTICAL)
|
||||||
pmainSizer.Add(buttonSizer, 0, wx.TOP, 5)
|
buttonSizer.AddStretchSpacer()
|
||||||
|
|
||||||
self.btnAdd = GenBitmapButton(self, wx.ID_ADD, bitmapLoader.getBitmap("fit_add_small", "icons"), style = wx.BORDER_NONE)
|
self.btnAdd = GenBitmapButton(self, wx.ID_ADD, bitmapLoader.getBitmap("fit_add_small", "icons"), style = wx.BORDER_NONE)
|
||||||
buttonSizer.Add(self.btnAdd, 0)
|
buttonSizer.Add(self.btnAdd, 0)
|
||||||
self.btnRemove = GenBitmapButton(self, wx.ID_REMOVE, bitmapLoader.getBitmap("fit_delete_small", "icons"), style = wx.BORDER_NONE)
|
self.btnRemove = GenBitmapButton(self, wx.ID_REMOVE, bitmapLoader.getBitmap("fit_delete_small", "icons"), style = wx.BORDER_NONE)
|
||||||
buttonSizer.Add(self.btnRemove, 0)
|
buttonSizer.Add(self.btnRemove, 0)
|
||||||
|
buttonSizer.AddStretchSpacer()
|
||||||
|
|
||||||
self.pluggedImplantsTree = AvailableImplantsView(self, style=wx.LC_SINGLE_SEL)
|
pmainSizer.Add(buttonSizer, 0, wx.EXPAND, 5)
|
||||||
|
|
||||||
|
self.pluggedImplantsTree = AvailableImplantsView(self)
|
||||||
|
|
||||||
|
sChar = service.Character.getInstance()
|
||||||
|
charID = self.Parent.Parent.getActiveCharacter()
|
||||||
|
self.update(sChar.getImplants(charID))
|
||||||
|
|
||||||
pmainSizer.Add(self.pluggedImplantsTree, 1, wx.ALL | wx.EXPAND, 5)
|
pmainSizer.Add(self.pluggedImplantsTree, 1, wx.ALL | wx.EXPAND, 5)
|
||||||
|
|
||||||
@@ -529,6 +535,7 @@ class ImplantsTreeView (wx.Panel):
|
|||||||
|
|
||||||
#Bind the event to replace dummies by real data
|
#Bind the event to replace dummies by real data
|
||||||
self.availableImplantsTree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup)
|
self.availableImplantsTree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup)
|
||||||
|
self.availableImplantsTree.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.addImplant)
|
||||||
|
|
||||||
#Bind add & remove buttons
|
#Bind add & remove buttons
|
||||||
self.btnAdd.Bind(wx.EVT_BUTTON, self.addImplant)
|
self.btnAdd.Bind(wx.EVT_BUTTON, self.addImplant)
|
||||||
@@ -562,6 +569,7 @@ class ImplantsTreeView (wx.Panel):
|
|||||||
parent = event.Item
|
parent = event.Item
|
||||||
child, _ = tree.GetFirstChild(parent)
|
child, _ = tree.GetFirstChild(parent)
|
||||||
text = tree.GetItemText(child)
|
text = tree.GetItemText(child)
|
||||||
|
|
||||||
if text == "dummy" or text == "itemdummy":
|
if text == "dummy" or text == "itemdummy":
|
||||||
tree.Delete(child)
|
tree.Delete(child)
|
||||||
|
|
||||||
@@ -600,21 +608,31 @@ class ImplantsTreeView (wx.Panel):
|
|||||||
itemID = self.availableImplantsTree.GetPyData(root)
|
itemID = self.availableImplantsTree.GetPyData(root)
|
||||||
sChar.addImplant(charID, itemID)
|
sChar.addImplant(charID, itemID)
|
||||||
self.update(sChar.getImplants(charID))
|
self.update(sChar.getImplants(charID))
|
||||||
|
else:
|
||||||
|
event.Skip()
|
||||||
|
|
||||||
def removeImplant(self, event):
|
def removeImplant(self, event):
|
||||||
pos = self.pluggedImplantsTree.GetFirstSelected()
|
pos = self.pluggedImplantsTree.GetFirstSelected()
|
||||||
if pos != -1:
|
if pos != -1:
|
||||||
sChar = service.Character.getInstance()
|
sChar = service.Character.getInstance()
|
||||||
charID = self.Parent.Parent.getActiveCharacter()
|
charID = self.Parent.Parent.getActiveCharacter()
|
||||||
sChar.removeImplant(charID, self.implants[pos].slot)
|
sChar.removeImplant(charID, self.implants[pos])
|
||||||
self.update(sChar.getImplants(charID))
|
self.update(sChar.getImplants(charID))
|
||||||
|
|
||||||
class AvailableImplantsView(d.Display):
|
class AvailableImplantsView(d.Display):
|
||||||
DEFAULT_COLS = ["Base Name",
|
DEFAULT_COLS = ["attr:implantness",
|
||||||
"attr:implantness"]
|
"Base Icon",
|
||||||
|
"Base Name"]
|
||||||
|
|
||||||
def __init__(self, parent, style):
|
def __init__(self, parent):
|
||||||
d.Display.__init__(self, parent, style=style)
|
d.Display.__init__(self, parent, style=wx.LC_SINGLE_SEL)
|
||||||
|
|
||||||
|
self.Bind(wx.EVT_LEFT_DCLICK, parent.removeImplant)
|
||||||
|
|
||||||
|
#if "__WXGTK__" in wx.PlatformInfo:
|
||||||
|
# self.Bind(wx.EVT_RIGHT_UP, self.scheduleMenu)
|
||||||
|
#else:
|
||||||
|
# self.Bind(wx.EVT_RIGHT_DOWN, self.scheduleMenu)
|
||||||
|
|
||||||
class APIView (wx.Panel):
|
class APIView (wx.Panel):
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
|
|||||||
@@ -344,12 +344,11 @@ class Character(object):
|
|||||||
def addImplant(self, charID, itemID):
|
def addImplant(self, charID, itemID):
|
||||||
char = eos.db.getCharacter(charID)
|
char = eos.db.getCharacter(charID)
|
||||||
implant = eos.types.Implant(eos.db.getItem(itemID))
|
implant = eos.types.Implant(eos.db.getItem(itemID))
|
||||||
char.implants.freeSlot(implant.slot)
|
|
||||||
char.implants.append(implant)
|
char.implants.append(implant)
|
||||||
|
|
||||||
def removeImplant(self, charID, slot):
|
def removeImplant(self, charID, implant):
|
||||||
char = eos.db.getCharacter(charID)
|
char = eos.db.getCharacter(charID)
|
||||||
char.implants.freeSlot(slot)
|
char.implants.remove(implant)
|
||||||
|
|
||||||
def getImplants(self, charID):
|
def getImplants(self, charID):
|
||||||
char = eos.db.getCharacter(charID)
|
char = eos.db.getCharacter(charID)
|
||||||
|
|||||||
Reference in New Issue
Block a user