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

panelFormFleet.py (2299B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\fleet\panelFormFleet.py
      2 import localization.util
      3 from carbonui import uiconst
      4 from carbonui.control.button import Button
      5 from carbonui.control.combo import Combo
      6 from carbonui.control.comboEntryData import ComboEntryData
      7 from carbonui.control.scrollContainer import ScrollContainer
      8 from carbonui.primitives.container import Container
      9 from carbonui.primitives.containerAutoSize import ContainerAutoSize
     10 from carbonui.primitives.layoutGrid import LayoutGrid
     11 from eve.client.script.ui.control.eveLabel import EveLabelMedium, EveCaptionMedium
     12 from evefleet.client.util import GetFleetSetupOptionHint
     13 from evefleet.fleetSetupConst import FS_NAME
     14 from localization import GetByLabel
     15 
     16 class PanelFormFleet(Container):
     17 
     18     def __init__(self, **kwargs):
     19         self._setup_choice = None
     20         super(PanelFormFleet, self).__init__(**kwargs)
     21 
     22     def ApplyAttributes(self, attributes):
     23         super(PanelFormFleet, self).ApplyAttributes(attributes)
     24         scroll_cont = ScrollContainer(parent=self)
     25         EveCaptionMedium(parent=scroll_cont, align=uiconst.TOTOP, text=GetByLabel('UI/Fleet/FleetWindow/FormFleetHeader'))
     26         EveLabelMedium(parent=scroll_cont, align=uiconst.TOTOP, padTop=4, text=GetByLabel('UI/Fleet/FleetWindow/FormFleetDescription'))
     27         grid = LayoutGrid(parent=ContainerAutoSize(parent=self, align=uiconst.TOBOTTOM, padTop=8, idx=0), align=uiconst.TOPLEFT, columns=2, cellSpacing=(8, 8))
     28         Button(parent=grid, align=uiconst.TOPLEFT, label=GetByLabel('UI/Fleet/FleetWindow/FormFleet'), func=self._form_fleet, args=())
     29         self._setup_choice = Combo(parent=grid, align=uiconst.TOPLEFT, options=get_fleet_setup_options())
     30 
     31     def _form_fleet(self):
     32         setup = self._setup_choice.GetValue()
     33         return sm.GetService('fleet').StartNewFleet(setup)
     34 
     35 
     36 def get_fleet_setup_options():
     37     setups = [(GetByLabel('UI/Fleet/FleetWindow/DefaultSetup'), None)]
     38     fleet_service = sm.GetService('fleet')
     39     comboData = [ ComboEntryData(info[FS_NAME], info[FS_NAME], hint=GetFleetSetupOptionHint(info)) for info in fleet_service.GetFleetSetups().values() ]
     40     setups.extend(localization.util.Sort(comboData, key=lambda x: x.returnValue.lower()))
     41     return setups