def __init__(self, parent): wx.Panel.__init__( self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 300), style=wx.TAB_TRAVERSAL ) pmainSizer = wx.BoxSizer(wx.HORIZONTAL) availableSizer = wx.BoxSizer(wx.VERTICAL) pmainSizer.Add(availableSizer, 1, wx.ALL | wx.EXPAND, 5) self.availableImplantsSearch = wx.SearchCtrl(self, wx.ID_ANY, style=wx.TE_PROCESS_ENTER) self.availableImplantsSearch.ShowCancelButton(True) availableSizer.Add(self.availableImplantsSearch, 0, wx.BOTTOM | wx.EXPAND, 2) self.availableImplantsTree = wx.TreeCtrl(self, wx.ID_ANY, style=wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT) root = self.availableRoot = self.availableImplantsTree.AddRoot("Available") self.availableImplantsImageList = wx.ImageList(16, 16) self.availableImplantsTree.SetImageList(self.availableImplantsImageList) availableSizer.Add(self.availableImplantsTree, 1, wx.EXPAND) buttonSizer = wx.BoxSizer(wx.VERTICAL) pmainSizer.Add(buttonSizer, 0, wx.TOP, 5) self.btnAdd = GenBitmapButton( self, wx.ID_ADD, bitmapLoader.getBitmap("fit_add_small", "icons"), style=wx.BORDER_NONE ) buttonSizer.Add(self.btnAdd, 0) self.btnRemove = GenBitmapButton( self, wx.ID_REMOVE, bitmapLoader.getBitmap("fit_delete_small", "icons"), style=wx.BORDER_NONE ) buttonSizer.Add(self.btnRemove, 0) self.pluggedImplantsTree = AvailableImplantsView(self, style=wx.LC_SINGLE_SEL) pmainSizer.Add(self.pluggedImplantsTree, 1, wx.ALL | wx.EXPAND, 5) self.SetSizer(pmainSizer) # Populate the market tree sMkt = service.Market.getInstance() for mktGrp in sMkt.getImplantTree(): iconId = self.addMarketViewImage(sMkt.getIconByMarketGroup(mktGrp)) childId = self.availableImplantsTree.AppendItem(root, mktGrp.name, iconId, data=wx.TreeItemData(mktGrp.ID)) if sMkt.marketGroupHasTypesCheck(mktGrp) is False: self.availableImplantsTree.AppendItem(childId, "dummy") self.availableImplantsTree.SortChildren(self.availableRoot) # Bind the event to replace dummies by real data self.availableImplantsTree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup) # Bind add & remove buttons self.btnAdd.Bind(wx.EVT_BUTTON, self.addImplant) self.btnRemove.Bind(wx.EVT_BUTTON, self.removeImplant) # Bind the change of a character* self.Parent.Parent.Bind(GE.CHAR_CHANGED, self.charChanged) self.Enable(False) self.Layout()
def __init__(self, parent, size=(0, 0)): wx.gizmos.TreeListCtrl.__init__(self, parent, size=size) self.tabManager = parent self.fleetId = None self.fleetImg = bitmapLoader.getImage("53_16", "pack") self.imageList = wx.ImageList(16, 16) self.SetImageList(self.imageList) for col in ("", "Fit", "Shiptype", "Character", "Bonusses"): self.AddColumn(col) self.SetMainColumn(1) self.icons = {} self.addImage = self.imageList.Add( bitmapLoader.getBitmap("add_small", "icons")) for icon in ("fb", "fc", "sb", "sc", "wb", "wc"): self.icons[icon] = self.imageList.Add( bitmapLoader.getBitmap("fleet_%s_small" % icon, "icons")) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.checkNew) self.mainFrame = gui.mainFrame.MainFrame.getInstance() self.mainFrame.Bind(gui.fleetBrowser.EVT_FLEET_RENAMED, self.fleetRenamed) self.mainFrame.Bind(gui.fleetBrowser.EVT_FLEET_REMOVED, self.fleetRemoved)
def __init__(self, parent, size = (0,0)): wx.gizmos.TreeListCtrl.__init__(self, parent, size = size) self.tabManager = parent self.fleetId = None self.fleetImg = bitmapLoader.getImage("53_16", "pack") self.imageList = wx.ImageList(16, 16) self.SetImageList(self.imageList) for col in ("", "Fit", "Shiptype", "Character", "Bonusses"): self.AddColumn(col) self.SetMainColumn(1) self.icons = {} self.addImage = self.imageList.Add(bitmapLoader.getBitmap("add_small", "icons")) for icon in ("fb", "fc", "sb", "sc", "wb", "wc"): self.icons[icon] = self.imageList.Add(bitmapLoader.getBitmap("fleet_%s_small" % icon, "icons")) self.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.checkNew) self.mainFrame = gui.mainFrame.MainFrame.getInstance() self.mainFrame.Bind(gui.fleetBrowser.EVT_FLEET_RENAMED, self.fleetRenamed) self.mainFrame.Bind(gui.fleetBrowser.EVT_FLEET_REMOVED, self.fleetRemoved)
def __init__(self, parent): self.mainFrame = gui.mainFrame.MainFrame.getInstance() wx.Panel.__init__(self, parent) mainSizer = wx.BoxSizer(wx.HORIZONTAL) self.SetSizer(mainSizer) mainSizer.Add(wx.StaticText(self, wx.ID_ANY, "Character: "), 0, wx.CENTER | wx.TOP | wx.RIGHT | wx.LEFT, 3) self.charChoice = wx.Choice(self) mainSizer.Add(self.charChoice, 1, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.RIGHT | wx.LEFT, 3) self.refreshCharacterList() self.skillReqsStaticBitmap = wx.StaticBitmap(self) mainSizer.Add(self.skillReqsStaticBitmap, 0, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.RIGHT | wx.LEFT, 3) self.cleanSkills = bitmapLoader.getBitmap("skill_big", "icons") self.redSkills = bitmapLoader.getBitmap("skillRed_big", "icons") self.greenSkills = bitmapLoader.getBitmap("skillGreen_big", "icons") self.skillReqsStaticBitmap.SetBitmap(self.cleanSkills) self.Bind(wx.EVT_CHOICE, self.charChanged) self.mainFrame.Bind(ce.CHAR_LIST_UPDATED, self.refreshCharacterList) self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged) # panelSize = wx.Size(-1,30) # self.SetMinSize(panelSize) self.charChoice.Enable(False)
def __init__(self, parent): SBox.PFSearchBox.__init__(self, parent) cancelBitmap = bitmapLoader.getBitmap("fit_delete_small","icons") searchBitmap = bitmapLoader.getBitmap("fsearch_small","icons") self.SetSearchBitmap(searchBitmap) self.SetCancelBitmap(cancelBitmap) self.ShowSearchButton() self.ShowCancelButton()
def __init__(self, parent, fleetID, fleetName, fleetCount, id=wx.ID_ANY, pos=wx.DefaultPosition, size=(0,40), style=0): SFItem.SFBrowserItem.__init__(self, parent, size = size) self.fleetBrowser = self.Parent self.fleetID = fleetID self.fleetName = fleetName self.fleetCount = fleetCount self.padding = 4 self.fontBig = wx.FontFromPixelSize((0,15),wx.SWISS, wx.NORMAL, wx.BOLD, False) self.fontNormal = wx.FontFromPixelSize((0,14),wx.SWISS, wx.NORMAL, wx.NORMAL, False) self.fontSmall = wx.FontFromPixelSize((0,12),wx.SWISS, wx.NORMAL, wx.NORMAL, False) self.copyBmp = bitmapLoader.getBitmap("fit_add_small", "icons") self.renameBmp = bitmapLoader.getBitmap("fit_rename_small", "icons") self.deleteBmp = bitmapLoader.getBitmap("fit_delete_small","icons") self.acceptBmp = bitmapLoader.getBitmap("faccept_small", "icons") self.fleetBmp = bitmapLoader.getBitmap("fleet_item_big", "icons") fleetImg = self.fleetBmp.ConvertToImage() fleetImg = fleetImg.Blur(2) if not fleetImg.HasAlpha(): fleetImg.InitAlpha() fleetImg = fleetImg.AdjustChannels(1, 1, 1, 0.5) self.fleetEffBmp = wx.BitmapFromImage(fleetImg) self.toolbar.AddButton(self.copyBmp, "Copy", self.CopyFleetCB) self.renameBtn = self.toolbar.AddButton(self.renameBmp, "Rename", self.RenameFleetCB) self.toolbar.AddButton(self.deleteBmp, "Delete", self.DeleteFleetCB) self.editWidth = 150 self.tcFleetName = wx.TextCtrl(self, wx.ID_ANY, "%s" % self.fleetName, wx.DefaultPosition, (self.editWidth,-1), wx.TE_PROCESS_ENTER) if self.fleetBrowser.fleetIDMustEditName != self.fleetID: self.tcFleetName.Show(False) else: self.tcFleetName.SetFocus() self.tcFleetName.SelectAll() self.fleetBrowser.fleetIDMustEditName = -1 self.renameBtn.SetBitmap(self.acceptBmp) self.selected = True self.tcFleetName.Bind(wx.EVT_KILL_FOCUS, self.OnEditLostFocus) self.tcFleetName.Bind(wx.EVT_TEXT_ENTER, self.RenameFleet) self.tcFleetName.Bind(wx.EVT_KEY_DOWN, self.EditCheckEsc) self.animCount = 0
def __init__(self, parent): self.mainFrame = gui.mainFrame.MainFrame.getInstance() wx.Panel.__init__(self, parent) mainSizer = wx.BoxSizer(wx.HORIZONTAL) self.SetSizer(mainSizer) mainSizer.Add(wx.StaticText(self, wx.ID_ANY, "Character: "), 0, wx.CENTER | wx.TOP | wx.RIGHT | wx.LEFT, 3) # cache current selection to fall back in case we choose to open char editor self.charCache = None self.charChoice = wx.Choice(self) mainSizer.Add(self.charChoice, 1, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.RIGHT | wx.LEFT, 3) self.refreshCharacterList() self.cleanSkills = bitmapLoader.getBitmap("skill_big", "icons") self.redSkills = bitmapLoader.getBitmap("skillRed_big", "icons") self.greenSkills = bitmapLoader.getBitmap("skillGreen_big", "icons") self.refresh = bitmapLoader.getBitmap("refresh", "icons") self.btnRefresh = wx.BitmapButton(self, wx.ID_ANY, self.refresh) size = self.btnRefresh.GetSize() self.btnRefresh.SetMinSize(size) self.btnRefresh.SetMaxSize(size) self.btnRefresh.SetToolTipString("Refresh API") self.btnRefresh.Bind(wx.EVT_BUTTON, self.refreshApi) self.btnRefresh.Enable(False) mainSizer.Add(self.btnRefresh, 0, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.RIGHT | wx.LEFT, 2) self.skillReqsStaticBitmap = wx.StaticBitmap(self) self.skillReqsStaticBitmap.SetBitmap(self.cleanSkills) mainSizer.Add(self.skillReqsStaticBitmap, 0, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.RIGHT | wx.LEFT, 3) self.Bind(wx.EVT_CHOICE, self.charChanged) self.mainFrame.Bind(GE.CHAR_LIST_UPDATED, self.refreshCharacterList) self.mainFrame.Bind(GE.FIT_CHANGED, self.fitChanged) # panelSize = wx.Size(-1,30) # self.SetMinSize(panelSize) self.charChoice.Enable(False)
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.size = 16 self.maxsize = self.size self.mask = wx.LIST_MASK_TEXT self.columnText = "" self.shipImage = fittingView.imageList.Add(bitmapLoader.getBitmap("ship_small", "icons"))
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) cAttribute = service.Attribute.getInstance() attributeSlave = params["attributeSlave"] or params["property"] try: info = cAttribute.getAttributeInfo(attributeSlave) except: info = None self.mask = 0 self.propertyName = params["property"] self.info = info if params["showIcon"]: if info.name == "power": iconFile = "pg_small" iconType = "icons" else: iconFile = info.icon.iconFile if info.icon else None iconType = "pack" if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, iconType) if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1 else: self.imageId = -1 else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = info.displayName if info.displayName != "" else info.name
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo(params["attribute"]) self.info = info if params["showIcon"]: if info.name == "power": iconFile = "pg_small" iconType = "icons" else: iconFile = info.icon.iconFile if info.icon else None iconType = "pack" if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, iconType) if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1 else: self.imageId = -1 self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = info.displayName if info.displayName != "" else info.name self.mask |= wx.LIST_MASK_IMAGE
def __init__(self, fittingView, params=None): if params == None: params = {"showIcon": True, "displayName": False} ViewColumn.__init__(self, fittingView) cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo("maxRange") self.info = info if params["showIcon"]: iconFile = info.icon.iconFile if info.icon else None if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1 else: self.imageId = -1 self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = info.displayName if info.displayName != "" else info.name self.mask |= wx.LIST_MASK_TEXT
def getSubMenu(self, context, selection, menu, i, pitem): menu.Bind( wx.EVT_MENU, self.handlePatternSwitch) # this bit is required for some reason if self.m[i] not in self.subMenus: # if we're trying to get submenu to something that shouldn't have one, # redirect event of the item to handlePatternSwitch and put pattern in # our patternIds mapping, then return None for no submenu id = pitem.GetId() self.patternIds[id] = self.singles[i] menu.Bind(wx.EVT_MENU, self.handlePatternSwitch, pitem) if self.patternIds[id] == self.fit.damagePattern: bitmap = bitmapLoader.getBitmap("state_active_small", "icons") pitem.SetBitmap(bitmap) return None sub = wx.Menu() sub.Bind(wx.EVT_MENU, self.handlePatternSwitch) # Items that have a parent for pattern in self.subMenus[self.m[i]]: sub.AppendItem(self.addPattern(sub, pattern)) return sub
def __init__(self, fittingView, params=None): if params == None: params = {"showIcon": True, "displayName": False} ViewColumn.__init__(self, fittingView) cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo("trackingSpeed") self.info = info if params["showIcon"]: iconFile = info.icon.iconFile if info.icon else None if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1 else: self.imageId = -1 self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = info.displayName if info.displayName != "" else info.name self.mask |= wx.LIST_MASK_TEXT
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.mask = wx.LIST_MASK_IMAGE bitmap = bitmapLoader.getBitmap("totalPrice_small", "icons") if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1
def addMarketViewImage(self, iconFile): if iconFile is None: return -1 bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap is None: return -1 else: return self.availableImplantsImageList.Add(bitmap)
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.size = 16 self.maxsize = self.size self.mask = wx.LIST_MASK_TEXT self.columnText = "" self.shipImage = fittingView.imageList.Add( bitmapLoader.getBitmap("ship_small", "icons"))
def getBitmap(self, context, selection): sFit = service.Fit.getInstance() fitID = self.mainFrame.getActiveFit() fit = sFit.getFit(fitID) if fit.factorReload: return bitmapLoader.getBitmap("state_active_small", "icons") else: return None
def loadIconFile(self, iconFile): if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap is None: return -1 else: return self.fittingView.imageList.Add(bitmap) else: return -1
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.mask = wx.LIST_MASK_IMAGE sAttr = service.Attribute.getInstance() info = sAttr.getAttributeInfo("capacitorNeed") self.imageId = fittingView.imageList.GetImageIndex("capacitorRecharge_small", "icons") self.bitmap = bitmapLoader.getBitmap("capacitorRecharge_small", "icons")
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.mask = wx.LIST_MASK_IMAGE sAttr = service.Attribute.getInstance() info = sAttr.getAttributeInfo("capacitorNeed") self.imageId = fittingView.imageList.GetImageIndex(info.icon.iconFile, "pack") self.bitmap = bitmapLoader.getBitmap(info.icon.iconFile, "pack")
def __init__(self, parent): wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 300), style=wx.TAB_TRAVERSAL) self.SetBackgroundColour( wx.SystemSettings_GetColour(wx.SYS_COLOUR_WINDOW)) pmainSizer = wx.BoxSizer(wx.VERTICAL) tree = self.skillTreeListCtrl = wx.gizmos.TreeListCtrl( self, wx.ID_ANY, style=wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT) pmainSizer.Add(tree, 1, wx.EXPAND | wx.ALL, 5) self.imageList = wx.ImageList(16, 16) tree.SetImageList(self.imageList) self.skillBookImageId = self.imageList.Add( bitmapLoader.getBitmap("skill_small", "icons")) tree.AddColumn("Skill") tree.AddColumn("Level") tree.SetMainColumn(0) self.root = tree.AddRoot("Skills") tree.SetItemText(self.root, "Levels", 1) tree.SetColumnWidth(0, 500) self.populateSkillTree() tree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup) tree.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.scheduleMenu) srcContext = "skillItem" itemContext = "Skill" context = (srcContext, itemContext) self.statsMenu = ContextMenu.getMenu(None, context) self.levelChangeMenu = ContextMenu.getMenu(None, context) or wx.Menu() self.levelChangeMenu.AppendSeparator() self.levelIds = {} idUnlearned = wx.NewId() self.levelIds[idUnlearned] = "Not learned" self.levelChangeMenu.Append(idUnlearned, "Unlearn") for level in xrange(6): id = wx.NewId() self.levelIds[id] = level self.levelChangeMenu.Append(id, "Level %d" % level) self.levelChangeMenu.Bind(wx.EVT_MENU, self.changeLevel) self.SetSizer(pmainSizer) self.Layout()
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.mask = wx.LIST_MASK_IMAGE cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo("capacitorNeed") self.imageId = fittingView.imageList.GetImageIndex( info.icon.iconFile, "pack") self.bitmap = bitmapLoader.getBitmap(info.icon.iconFile, "pack")
def getIcons(self): icons = {} sFit = service.Attribute.getInstance() for key, attrName in self.propertyAttributeMap.iteritems(): iconFile = sFit.getAttributeInfo(attrName).icon.iconFile bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap: icons[key] = bitmap return icons
def getIcons(self): icons = {} sAttr = service.Attribute.getInstance() for key, attrName in self.propertyAttributeMap.iteritems(): iconFile = sAttr.getAttributeInfo(attrName).icon.iconFile bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap: icons[key] = bitmap return icons
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) self.mask = wx.LIST_MASK_IMAGE cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo("capacitorNeed") bitmap = bitmapLoader.getBitmap(info.icon.iconFile, "pack") if bitmap: self.imageId = fittingView.imageList.Add(bitmap) else: self.imageId = -1
def addCharge(self, menu, charge): id = wx.NewId() name = charge.name if charge is not None else "Empty" self.chargeIds[id] = charge item = wx.MenuItem(menu, id, name) item.charge = charge if charge is not None and charge.icon is not None: bitmap = bitmapLoader.getBitmap(charge.icon.iconFile, "pack") if bitmap is not None: item.SetBitmap(bitmap) return item
def addCharge(self, rootMenu, charge): id = wx.NewId() name = charge.name if charge is not None else "Empty" self.chargeIds[id] = charge item = wx.MenuItem(rootMenu, id, name) rootMenu.Bind(wx.EVT_MENU, self.handleAmmoSwitch, item) item.charge = charge if charge is not None and charge.icon is not None: bitmap = bitmapLoader.getBitmap(charge.icon.iconFile, "pack") if bitmap is not None: item.SetBitmap(bitmap) return item
def __init__(self, parent): wx.Panel.__init__( self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 300), style=wx.TAB_TRAVERSAL ) pmainSizer = wx.BoxSizer(wx.VERTICAL) tree = self.skillTreeListCtrl = wx.gizmos.TreeListCtrl( self, wx.ID_ANY, style=wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT ) pmainSizer.Add(tree, 1, wx.EXPAND | wx.ALL, 5) self.imageList = wx.ImageList(16, 16) tree.SetImageList(self.imageList) self.skillBookImageId = self.imageList.Add(bitmapLoader.getBitmap("skill_small", "icons")) tree.AddColumn("Skill") tree.AddColumn("Level") tree.SetMainColumn(0) self.root = tree.AddRoot("Skills") tree.SetItemText(self.root, "Levels", 1) tree.SetColumnWidth(0, 500) self.populateSkillTree() tree.Bind(wx.EVT_TREE_ITEM_EXPANDING, self.expandLookup) tree.Bind(wx.EVT_TREE_ITEM_RIGHT_CLICK, self.scheduleMenu) srcContext = "skillItem" itemContext = "Skill" context = (srcContext, itemContext) self.statsMenu = ContextMenu.getMenu(None, context) self.levelChangeMenu = ContextMenu.getMenu(None, context) or wx.Menu() self.levelChangeMenu.AppendSeparator() self.levelIds = {} idUnlearned = wx.NewId() self.levelIds[idUnlearned] = "Not learned" self.levelChangeMenu.Append(idUnlearned, "Unlearn") for level in xrange(6): id = wx.NewId() self.levelIds[id] = level self.levelChangeMenu.Append(id, "Level %d" % level) self.levelChangeMenu.Bind(wx.EVT_MENU, self.changeLevel) self.SetSizer(pmainSizer) self.Layout()
def getImageId(self, stuff): if isinstance(stuff, Drone): return -1 if isinstance(stuff, Fit): return self.shipImage if isinstance(stuff, Module): if stuff.isEmpty: bitmap = bitmapLoader.getBitmap("slot_%s_small" % Slot.getName(stuff.slot).lower(), "icons") return self.fittingView.imageList.Add(bitmap) else: return self.loadIconFile(stuff.item.icon.iconFile if stuff.item.icon else "") item = getattr(stuff, "item", stuff) return self.loadIconFile(item.icon.iconFile if item.icon else "")
def getBitmap(self, context, selection): sFit = service.Fit.getInstance() fitID = self.mainFrame.getActiveFit() f = sFit.getFit(fitID) dp = f.damagePattern if dp is None: return None index = self.patterns.index(dp) bitmap = bitmapLoader.getBitmap("state_active_small", "icons") l = [None] * len(self.patterns) l[index] = bitmap return l
def __init__(self, fittingView, params=None): if params == None: params = {"showIcon": True, "displayName": False} ViewColumn.__init__(self, fittingView) if params["showIcon"]: self.imageId = fittingView.imageList.GetImageIndex("column_misc", "icons") self.bitmap = bitmapLoader.getBitmap("column_misc", "icons") self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = "Misc data" self.mask |= wx.LIST_MASK_TEXT
def __init__(self, fittingView, params=None): if params == None: params = {"showIcon": True, "displayName": False} ViewColumn.__init__(self, fittingView) if params["showIcon"]: self.imageId = fittingView.imageList.GetImageIndex( "column_misc", "icons") self.bitmap = bitmapLoader.getBitmap("column_misc", "icons") self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = "Misc data" self.mask |= wx.LIST_MASK_TEXT
def getImageId(self, stuff): if isinstance(stuff, Drone): return self.checkedId if stuff.amountActive > 0 else self.uncheckedId elif isinstance(stuff, Module): if stuff.isEmpty: return -1 else: bitmap = bitmapLoader.getBitmap("state_%s_small" % State_.getName(stuff.state).lower(), "icons") return self.fittingView.imageList.Add(bitmap) else: active = getattr(stuff, "active", None) if active is None: return -1 else: return self.checkedId if active else self.uncheckedId
def getImageId(self, stuff): if not isinstance(stuff, Module): return -1 if stuff.charge is None: return -1 else: iconFile = stuff.charge.icon.iconFile if stuff.item.icon else "" if iconFile: bitmap = bitmapLoader.getBitmap(iconFile, "pack") if bitmap is None: return -1 else: return self.fittingView.imageList.Add(bitmap) else: return -1
def getImageId(self, stuff): if isinstance(stuff, Drone): return self.checkedId if stuff.amountActive > 0 else self.uncheckedId elif isinstance(stuff, Module): if stuff.isEmpty: return -1 else: bitmap = bitmapLoader.getBitmap( "state_%s_small" % State_.getName(stuff.state).lower(), "icons") return self.fittingView.imageList.Add(bitmap) else: active = getattr(stuff, "active", None) if active is None: return -1 else: return self.checkedId if active else self.uncheckedId
def getImageId(self, stuff): if isinstance(stuff, Drone): return -1 if isinstance(stuff, Fit): return self.shipImage if isinstance(stuff, Module): if stuff.isEmpty: bitmap = bitmapLoader.getBitmap( "slot_%s_small" % Slot.getName(stuff.slot).lower(), "icons") return self.fittingView.imageList.Add(bitmap) else: return self.loadIconFile( stuff.item.icon.iconFile if stuff.item.icon else "") item = getattr(stuff, "item", stuff) return self.loadIconFile(item.icon.iconFile if item.icon else "")
def addPattern(self, menu, pattern, currBase = None): id = wx.NewId() name = getattr(pattern, "_name", pattern.name) if pattern is not None else "No Profile" self.patternIds[id] = pattern item = wx.MenuItem(menu, id, name) # set pattern attr to menu item item.pattern = pattern # determine active pattern sFit = service.Fit.getInstance() fitID = self.mainFrame.getActiveFit() f = sFit.getFit(fitID) tr = f.targetResists if tr == pattern: bitmap = bitmapLoader.getBitmap("state_active_small", "icons") item.SetBitmap(bitmap) return item
def getSubMenu(self, context, selection, rootMenu, i, pitem): self.skillIds = {} sub = wx.Menu() for skill in self.skills: skillItem = wx.MenuItem(sub, wx.NewId(), skill.item.name) grandSub = wx.Menu() skillItem.SetSubMenu(grandSub) if skill.learned: bitmap = bitmapLoader.getBitmap("lvl%s" % skill.level, "icons") if bitmap is not None: skillItem.SetBitmap(bitmap) for i in xrange(-1, 6): levelItem = self.addSkill(rootMenu, skill, i) grandSub.AppendItem(levelItem) #@ todo: add check to current level. Need to fix #109 first sub.AppendItem(skillItem) return sub
def addPattern(self, menu, pattern, currBase=None): id = wx.NewId() name = getattr(pattern, "_name", pattern.name) if pattern is not None else "No Profile" self.patternIds[id] = pattern item = wx.MenuItem(menu, id, name) # set pattern attr to menu item item.pattern = pattern # determine active pattern sFit = service.Fit.getInstance() fitID = self.mainFrame.getActiveFit() f = sFit.getFit(fitID) tr = f.targetResists if tr == pattern: bitmap = bitmapLoader.getBitmap("state_active_small", "icons") item.SetBitmap(bitmap) return item
def getSubMenu(self, context, selection, rootMenu, i, pitem): rootMenu.Bind(wx.EVT_MENU, self.handlePatternSwitch) # this bit is required for some reason if self.m[i] not in self.subMenus: # if we're trying to get submenu to something that shouldn't have one, # redirect event of the item to handlePatternSwitch and put pattern in # our patternIds mapping, then return None for no submenu id = pitem.GetId() self.patternIds[id] = self.singles[i] if self.patternIds[id] == self.fit.damagePattern: bitmap = bitmapLoader.getBitmap("state_active_small", "icons") pitem.SetBitmap(bitmap) return None sub = wx.Menu() # Items that have a parent for pattern in self.subMenus[self.m[i]]: sub.AppendItem(self.addPattern(rootMenu, pattern)) return sub
def addPattern(self, rootMenu, pattern): id = wx.NewId() name = getattr(pattern, "_name", pattern.name) if pattern is not None else "No Profile" self.patternIds[id] = pattern menuItem = wx.MenuItem(rootMenu, id, name) rootMenu.Bind(wx.EVT_MENU, self.handlePatternSwitch, menuItem) # set pattern attr to menu item menuItem.pattern = pattern # determine active pattern sFit = service.Fit.getInstance() fitID = self.mainFrame.getActiveFit() f = sFit.getFit(fitID) dp = f.damagePattern if dp == pattern: bitmap = bitmapLoader.getBitmap("state_active_small", "icons") menuItem.SetBitmap(bitmap) return menuItem
def __init__(self, fittingView, params): ViewColumn.__init__(self, fittingView) cAttribute = service.Attribute.getInstance() info = cAttribute.getAttributeInfo(params["attribute"]) self.info = info if params["showIcon"]: if info.name == "power": iconFile = "pg_small" iconType = "icons" else: iconFile = info.icon.iconFile if info.icon else None iconType = "pack" if iconFile: self.imageId = fittingView.imageList.GetImageIndex( iconFile, iconType) self.bitmap = bitmapLoader.getBitmap(iconFile, iconType) else: self.imageId = -1 self.mask = wx.LIST_MASK_IMAGE else: self.imageId = -1 if params["displayName"] or self.imageId == -1: self.columnText = info.displayName if info.displayName != "" else info.name self.mask |= wx.LIST_MASK_IMAGE if params["direct"]: self.direct = True self.view = fittingView originalRefresh = fittingView.refresh sMarket = service.Market.getInstance() #Hack into our master view and add a callback for ourselves to know when to query def refresh(stuff): self.directInfo = sMarket.directAttrRequest( stuff, info) if stuff else None originalRefresh(stuff) fittingView.refresh = refresh
def getSubMenu(self, context, selection, rootMenu, i, pitem): msw = True if "wxMSW" in wx.PlatformInfo else False self.skillIds = {} sub = wx.Menu() for skill in self.skills: skillItem = wx.MenuItem(sub, wx.NewId(), skill.item.name) grandSub = wx.Menu() skillItem.SetSubMenu(grandSub) if skill.learned: bitmap = bitmapLoader.getBitmap("lvl%s" % skill.level, "icons") if bitmap is not None: skillItem.SetBitmap(bitmap) for i in xrange(-1, 6): levelItem = self.addSkill(rootMenu if msw else grandSub, skill, i) grandSub.AppendItem(levelItem) if (not skill.learned and i == -1) or (skill.learned and skill.level == i): levelItem.Check(True) sub.AppendItem(skillItem) return sub
def __init__(self, parent): wx.Panel.__init__ (self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 24), style=wx.TAB_TRAVERSAL) self.SetBackgroundColour( wx.SystemSettings.GetColour( wx.SYS_COLOUR_BTNFACE ) ) self.newBmp = bitmapLoader.getBitmap("fit_add_small","icons") bmpSize = (16,16) mainSizer = wx.BoxSizer(wx.HORIZONTAL) if 'wxMac' in wx.PlatformInfo: bgcolour = wx.Colour(0, 0, 0, 0) else: bgcolour = wx.SystemSettings.GetColour( wx.SYS_COLOUR_BTNFACE ) self.fbNewFleet = PFGenBitmapButton( self, wx.ID_ANY, self.newBmp, wx.DefaultPosition, bmpSize, wx.BORDER_NONE ) mainSizer.Add(self.fbNewFleet, 0, wx.LEFT | wx.TOP | wx.BOTTOM | wx.ALIGN_CENTER_VERTICAL , 5) self.fbNewFleet.SetBackgroundColour( bgcolour ) self.sl1 = wx.StaticLine( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_VERTICAL ) mainSizer.Add( self.sl1, 0, wx.EXPAND |wx.LEFT, 5 ) self.tcFilter = wx.TextCtrl( self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0 ) mainSizer.Add( self.tcFilter, 0, wx.LEFT | wx.ALIGN_CENTER_VERTICAL, 5 ) self.stStatus = wx.StaticText( self, wx.ID_ANY, u"", wx.DefaultPosition, wx.DefaultSize, 0 ) self.stStatus.Wrap( -1 ) mainSizer.Add( self.stStatus, 1, wx.LEFT | wx.ALIGN_CENTER_VERTICAL, 5 ) self.SetSizer(mainSizer) self.Layout() self.fbNewFleet.Bind(wx.EVT_ENTER_WINDOW, self.fbNewEnterWindow) self.fbNewFleet.Bind(wx.EVT_LEAVE_WINDOW, self.fbHItemLeaveWindow) self.fbNewFleet.Bind(wx.EVT_BUTTON, self.OnNewFleetItem) self.tcFilter.Bind(wx.EVT_TEXT, self.OnFilterText) self.tcFilter.Bind(wx.EVT_ENTER_WINDOW, self.fbFilterEnterWindow) self.tcFilter.Bind(wx.EVT_LEAVE_WINDOW, self.fbHItemLeaveWindow)