header.py (2039B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\control\entries\header.py 2 from carbonui import uiconst 3 from carbonui.button.const import HEIGHT_NORMAL 4 from carbonui.control.scrollentries import SE_BaseClassCore 5 from carbonui.primitives.fill import Fill 6 from carbonui.uicore import uicore 7 from eve.client.script.ui.control.eveLabel import EveLabelMedium 8 from eve.client.script.ui.control.themeColored import FillThemeColored 9 from eve.client.script.ui.util import uix 10 11 class Header(SE_BaseClassCore): 12 __guid__ = 'listentry.Header' 13 __params__ = ['label'] 14 default_showHilite = False 15 16 def Startup(self, args): 17 self.sr.label = EveLabelMedium(text='', parent=self, left=8, top=0, state=uiconst.UI_DISABLED, maxLines=1, align=uiconst.CENTERLEFT) 18 self.sr.mainFill = Fill(parent=self, opacity=0.05, padBottom=1) 19 20 def Load(self, node): 21 self.sr.node = node 22 self.sr.label.text = self.sr.node.label 23 24 def GetHeight(self, *args): 25 node, width = args 26 node.height = max(uicore.font.GetTextHeight(node.label, maxLines=1), HEIGHT_NORMAL) 27 return node.height 28 29 @classmethod 30 def GetCopyData(cls, node): 31 return node.label 32 33 34 class Subheader(SE_BaseClassCore): 35 __guid__ = 'listentry.Subheader' 36 __params__ = ['label'] 37 default_showHilite = False 38 39 def Startup(self, args): 40 self.sr.label = EveLabelMedium(text='', parent=self, left=8, top=0, state=uiconst.UI_DISABLED, align=uiconst.CENTERLEFT, bold=True) 41 self.sr.fill = FillThemeColored(parent=self, padding=(1, 1, 1, 1), colorType=uiconst.COLORTYPE_UIHILIGHT, opacity=0.125) 42 43 def Load(self, node): 44 self.sr.node = node 45 self.sr.label.text = self.sr.node.label 46 sublevel = node.sublevel or 0 47 offset = sublevel * 16 48 self.sr.label.left = 8 + offset 49 50 def GetHeight(self, *args): 51 node, width = args 52 node.height = uix.GetTextHeight(node.label, maxLines=1) + 6 53 return node.height