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()