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

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