btnController.py (1648B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\planet\mecDen\btnController.py 2 from appConst import maxCargoContainerTransferDistance 3 import eveicon 4 from eve.client.script.ui.control.statefulButtonLocationController import LocationButtonController 5 from localization import GetByLabel 6 STATE_ACCESS_MERC_DEN = -1 7 8 class MercDenButtonController(LocationButtonController, object): 9 10 def _GetButtonStateForLocationInSpace(self): 11 if self.IsInCurrentSolarSystem(): 12 slimItem = sm.GetService('michelle').GetItem(self.itemID) 13 if slimItem: 14 inRange = sm.GetService('autoPilot').InInteractionRange(self.itemID, maxCargoContainerTransferDistance) 15 if inRange: 16 return STATE_ACCESS_MERC_DEN 17 return super(MercDenButtonController, self)._GetButtonStateForLocationInSpace() 18 19 def GetButtonLabel(self): 20 if self.buttonState == STATE_ACCESS_MERC_DEN: 21 return GetByLabel('UI/Sovereignty/MercenaryDen/ConfigurationWindow/ConfigureMercenaryDen') 22 return super(MercDenButtonController, self).GetButtonLabel() 23 24 def GetButtonTexturePath(self): 25 if self.buttonState == STATE_ACCESS_MERC_DEN: 26 return eveicon.mercenary_den 27 return super(MercDenButtonController, self).GetButtonTexturePath() 28 29 def _ExecutePrimaryFunction(self, buttonState): 30 if self.buttonState == STATE_ACCESS_MERC_DEN: 31 sm.GetService('menu').OpenMercenaryDen(self.itemID) 32 return 33 return super(MercDenButtonController, self)._ExecutePrimaryFunction(buttonState)