NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

personalizationPanel.py (2222B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\neocom\charsheet\personalizationPanel.py
      2 from carbonui.primitives.container import Container
      3 from carbonui.control.tabGroup import TabGroup, GetTabData
      4 import carbonui.const as uiconst
      5 from eve.client.script.ui.shared.neocom.charsheet import GetPanelName, GetPanelDescription, PANEL_SHIPSKINS, PANEL_SHIPEMBLEMS, GetPanelUniqueName
      6 from eve.client.script.ui.shared.neocom.charsheet.emblemsPanel import EmblemsPanel
      7 from eve.client.script.ui.shared.neocom.charsheet.skinsPanel import SkinsPanel
      8 
      9 class PersonalizationPanel(Container):
     10     default_name = 'PersonalizationPanel'
     11     default_padTop = 6
     12 
     13     def ApplyAttributes(self, attributes):
     14         Container.ApplyAttributes(self, attributes)
     15         self._emblemsErrorScreenPadding = attributes.emblemsErrorScreenPadding
     16         self.isConstructed = False
     17 
     18     def ConstructLayout(self):
     19         if self.isConstructed:
     20             return
     21         self.isConstructed = True
     22         self.panelCont = Container(name='panelCont', parent=self, align=uiconst.TOALL)
     23         self.skinsPanel = SkinsPanel(parent=self.panelCont, state=uiconst.UI_HIDDEN)
     24         self.emblemsPanel = EmblemsPanel(parent=self.panelCont, state=uiconst.UI_HIDDEN, errorScreenPadding=self._emblemsErrorScreenPadding)
     25         self.tabs = TabGroup(parent=self, align=uiconst.TOTOP, padding=0, groupID='PersonalizationPanelTabs', idx=0, autoselecttab=False, tabs=self.GetTabs())
     26 
     27     def GetTabs(self):
     28         return (self.GetTabEntry(self.skinsPanel, PANEL_SHIPSKINS), self.GetTabEntry(self.emblemsPanel, PANEL_SHIPEMBLEMS))
     29 
     30     def GetTabEntry(self, panel, panelID):
     31         return GetTabData(label=GetPanelName(panelID), panel=panel, code=self, tabID=panelID, hint=GetPanelDescription(panelID), uniqueName=GetPanelUniqueName(panelID))
     32 
     33     def LoadPanel(self):
     34         self.ConstructLayout()
     35         self.tabs.AutoSelect()
     36 
     37     def LoadSubPanel(self, panelID):
     38         if self.isConstructed and self.tabs.GetSelectedID() == panelID:
     39             return
     40         self.ConstructLayout()
     41         self.tabs.SelectByID(panelID)
     42 
     43     def GetActivePanelID(self):
     44         return self.tabs.GetSelectedID()