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

stanceButtons.py (1317B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\stanceButtons.py
      2 import carbonui.const as uiconst
      3 from carbonui.primitives.container import Container
      4 from eve.client.script.ui.inflight import shipstance
      5 from eve.client.script.ui.inflight.ship_stance_button import ShipStanceButton
      6 
      7 class StanceButtons(Container):
      8 
      9     def ApplyAttributes(self, attributes):
     10         self._heightOffset = 32
     11         Container.ApplyAttributes(self, attributes)
     12         self.buttonSize = attributes.buttonSize
     13         self.shipStanceButtons = []
     14 
     15     def HasStances(self):
     16         return bool(self.shipStanceButtons)
     17 
     18     def UpdateButtonsForShip(self, shipID, typeID):
     19         self._RemoveStanceButtons()
     20         self._AddStanceButtons(shipID, typeID)
     21 
     22     def _AddStanceButtons(self, shipID, typeID):
     23         for idx, kwargs in enumerate(shipstance.get_ship_stance_buttons_args(typeID, shipID)):
     24             self.shipStanceButtons.append(ShipStanceButton(parent=self, shipID=shipID, typeID=typeID, left=(10 * (idx % 2)), top=(40 * idx), width=self.buttonSize, height=self.buttonSize, align=uiconst.TOPLEFT, **kwargs))
     25 
     26     def _RemoveStanceButtons(self):
     27         for stanceButton in self.shipStanceButtons:
     28             stanceButton.Close()
     29 
     30         self.shipStanceButtons = []