Exemplo n.º 1
0
 def _generateOptions(self, ctx=None):
     options = []
     vehicle = self.__getVehicle(self.vehCD)
     self._manageStartOptions(options, vehicle)
     if vehicle.isPurchased:
         options.append(
             self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL),
                            {'enabled': vehicle.canSell}))
     elif vehicle.isUnlocked:
         items = g_itemsCache.items
         label = MENU.CONTEXTMENU_RESTORE if vehicle.isRestoreAvailable(
         ) else MENU.CONTEXTMENU_BUY
         options.append(
             self._makeItem(
                 VEHICLE.BUY, label, {
                     'enabled':
                     vehicle.mayObtainWithMoneyExchange(
                         items.stats.money, items.shop.exchangeRate)
                 }))
     else:
         isAvailableToUnlock, _, _ = g_techTreeDP.isVehicleAvailableToUnlock(
             self.vehCD)
         options.append(
             self._makeItem(VEHICLE.RESEARCH,
                            MENU.contextmenu(VEHICLE.RESEARCH),
                            {'enabled': isAvailableToUnlock}))
     self._manageEndOptions(options, vehicle)
     return options
Exemplo n.º 2
0
 def _addSquadInfo(self, options, isIgnored):
     if not isIgnored and not self.isSquadCreator():
         canCreate = self.prbDispatcher.getFunctionalCollection().canCreateSquad()
         options.append(self._makeItem(USER.CREATE_SQUAD, MENU.contextmenu(USER.CREATE_SQUAD), optInitData={'enabled': canCreate}))
         if g_eventsCache.isEventEnabled():
             options.append(self._makeItem(USER.CREATE_EVENT_SQUAD, MENU.contextmenu(USER.CREATE_EVENT_SQUAD), optInitData={'enabled': canCreate}))
     return options
Exemplo n.º 3
0
 def _generateOptions(self, ctx=None):
     options = []
     vehicle = self.__getVehicle(self.vehCD)
     self._manageStartOptions(options, vehicle)
     if vehicle.hasNationGroup:
         isNew = not AccountSettings.getSettings(NATION_CHANGE_VIEWED)
         options.append(self._makeItem(VEHICLE.NATION_CHANGE, MENU.CONTEXTMENU_NATIONCHANGE, {'enabled': vehicle.isNationChangeAvailable,
          'isNew': isNew}))
     if vehicle.isPurchased:
         options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL), {'enabled': vehicle.canSell}))
     elif self.__isPurchaseEnabled(vehicle):
         items = self.itemsCache.items
         if vehicle.isRestoreAvailable():
             label = MENU.CONTEXTMENU_RESTORE
         elif vehicle.canTradeIn:
             label = MENU.CONTEXTMENU_BUYORTRADEIN
         else:
             label = MENU.CONTEXTMENU_BUY
         if vehicle.isCollectible and not self.__isCollectibleVehicleEnabled(vehicle):
             btnEnabled = False
         elif canBuyGoldForVehicleThroughWeb(vehicle):
             btnEnabled = True
         else:
             btnEnabled = vehicle.mayObtainWithMoneyExchange(items.stats.money, items.shop.exchangeRate)
         options.append(self._makeItem(VEHICLE.BUY, label, {'enabled': btnEnabled}))
     elif self.__isResearchEnabled(vehicle):
         isNextToUnlock, isXpEnough = g_techTreeDP.isVehicleAvailableToUnlock(self.vehCD)
         isAvailableToUnlock = isNextToUnlock and isXpEnough
         options.append(self._makeItem(VEHICLE.RESEARCH, MENU.contextmenu(VEHICLE.RESEARCH), {'enabled': isAvailableToUnlock}))
     self._manageEndOptions(options, vehicle)
     return options
Exemplo n.º 4
0
 def _makeAIBotOptions(self):
     return [
         self._makeItem(USER.VEHICLE_INFO,
                        MENU.contextmenu(USER.VEHICLE_INFO)),
         self._makeItem(USER.VEHICLE_PREVIEW,
                        MENU.contextmenu(USER.VEHICLE_PREVIEW))
     ]
Exemplo n.º 5
0
 def _addSquadInfo(self, options, isIgnored):
     if not isIgnored and not self.isSquadCreator(
     ) and self.prbDispatcher is not None:
         canCreate = self.prbEntity.getPermissions().canCreateSquad()
         options.append(
             self._makeItem(USER.CREATE_SQUAD,
                            MENU.contextmenu(USER.CREATE_SQUAD),
                            optInitData={'enabled': canCreate}))
         if self.eventsCache.isEventEnabled():
             options.append(
                 self._makeItem(USER.CREATE_EVENT_SQUAD,
                                MENU.contextmenu(USER.CREATE_EVENT_SQUAD),
                                optInitData={
                                    'enabled': canCreate,
                                    'textColor': 13347959
                                }))
         if self.__eventProgression.modeIsAvailable():
             primeTimeStatus, _, _ = self.__eventProgression.getPrimeTimeStatus(
             )
             options.append(
                 self._makeItem(
                     USER.CREATE_BATTLE_ROYALE_SQUAD,
                     MENU.contextmenu(USER.CREATE_BATTLE_ROYALE_SQUAD),
                     optInitData={
                         'enabled':
                         canCreate
                         and primeTimeStatus == PrimeTimeStatus.AVAILABLE,
                         'textColor':
                         13347959
                     }))
     return options
Exemplo n.º 6
0
 def _addFriendshipInfo(self, options, userCMInfo):
     if not userCMInfo.isFriend:
         options.append(self._makeItem(USER.ADD_TO_FRIENDS, MENU.contextmenu(USER.ADD_TO_FRIENDS), optInitData={'enabled': userCMInfo.isSameRealm}))
     elif self.proto.contacts.isBidiFriendshipSupported():
         if USER_TAG.SUB_NONE in userCMInfo.getTags():
             options.append(self._makeItem(USER.REQUEST_FRIENDSHIP, MENU.contextmenu(USER.ADD_TO_FRIENDS_AGAIN), optInitData={'enabled': userCMInfo.isSameRealm}))
     return options
Exemplo n.º 7
0
    def _generateOptions(self, ctx = None):
        userCMInfo = self._getUseCmInfo()
        if ctx is not None and not userCMInfo.hasClan:
            try:
                clanAbbrev = ctx.clanAbbrev
                userCMInfo.hasClan = bool(clanAbbrev)
            except:
                LOG_DEBUG('ctx has no property "clanAbbrev"')

        options = [self._makeItem(USER.INFO, MENU.contextmenu(USER.INFO))]
        options = self._addClanProfileInfo(options, userCMInfo)
        options = self._addFriendshipInfo(options, userCMInfo)
        options = self._addChannelInfo(options, userCMInfo)
        options.append(self._makeItem(USER.COPY_TO_CLIPBOARD, MENU.contextmenu(USER.COPY_TO_CLIPBOARD)))
        options = self._addSquadInfo(options, userCMInfo.isIgnored)
        options = self._addPrebattleInfo(options, userCMInfo)
        options = self._addClubInfo(options, userCMInfo)
        options = self._addContactsNoteInfo(options, userCMInfo)
        options = self._addAppealInfo(options)
        options = self._addIgnoreInfo(options, userCMInfo)
        options = self._addMutedInfo(options, userCMInfo)
        options = self._addRejectFriendshipInfo(options, userCMInfo)
        options = self._addRemoveFromGroupInfo(options, userCMInfo)
        options = self._addRemoveFriendInfo(options, userCMInfo)
        options = self._addInviteClanInfo(options, userCMInfo)
        return options
 def _addStrongholdsInfo(self, userCMInfo):
     if self.prbEntity.getEntityType() != PREBATTLE_TYPE.STRONGHOLD:
         return []
     options = []
     if self._canTakeEquipmentCommander(SUPPORT_TYPE):
         options.append(
             self._makeItem(
                 TAKE_ARTILLERY_EQUIPMENT_COMMANDER,
                 MENU.contextmenu(TAKE_ARTILLERY_EQUIPMENT_COMMANDER)))
     if self._canGiveEquipmentCommander(SUPPORT_TYPE):
         options.append(
             self._makeItem(
                 GIVE_ARTILLERY_EQUIPMENT_COMMANDER,
                 MENU.contextmenu(GIVE_ARTILLERY_EQUIPMENT_COMMANDER)))
     if self._canTakeEquipmentCommander(BOOST_TYPE):
         options.append(
             self._makeItem(
                 TAKE_INSPIRE_EQUIPMENT_COMMANDER,
                 MENU.contextmenu(TAKE_INSPIRE_EQUIPMENT_COMMANDER)))
     if self._canGiveEquipmentCommander(BOOST_TYPE):
         options.append(
             self._makeItem(
                 GIVE_INSPIRE_EQUIPMENT_COMMANDER,
                 MENU.contextmenu(GIVE_INSPIRE_EQUIPMENT_COMMANDER)))
     return options
Exemplo n.º 9
0
 def __addDyncSquadInfo(self, options):
     make = self._makeItem
     ctx = self.sessionProvider.getCtx()
     if not ctx.isInvitationEnabled() or ctx.hasSquadRestrictions():
         return options
     elif not self.__userInfo.isAlly:
         return options
     else:
         contact = self.usersStorage.getUser(self.__userInfo.databaseID)
         isIgnored = contact is not None and contact.isIgnored()
         status = self.__vInfo.invitationDeliveryStatus
         if status & _D_STATUS.FORBIDDEN_BY_RECEIVER > 0 or status & _D_STATUS.SENT_TO > 0 and not status & _D_STATUS.SENT_INACTIVE:
             optionID = DYN_SQUAD_OPTION_ID.SENT_INVITATION
             isEnabled = False
         elif status & _D_STATUS.RECEIVED_FROM > 0 and not status & _D_STATUS.RECEIVED_INACTIVE:
             optionID = None
         elif self.__vInfo.isSquadMan():
             optionID = DYN_SQUAD_OPTION_ID.IN_SQUAD
             isEnabled = False
         else:
             optionID = DYN_SQUAD_OPTION_ID.SENT_INVITATION
             isEnabled = not isIgnored
         if optionID is not None:
             options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
         if status & _D_STATUS.RECEIVED_FROM > 0 and not status & _D_STATUS.RECEIVED_INACTIVE:
             options.append(make(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION, MENU.contextmenu(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION), optInitData=self._getOptionInitData(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION, not isIgnored)))
             options.append(make(DYN_SQUAD_OPTION_ID.REJECT_INVITATION, MENU.contextmenu(DYN_SQUAD_OPTION_ID.REJECT_INVITATION), optInitData=self._getOptionInitData(DYN_SQUAD_OPTION_ID.REJECT_INVITATION, not isIgnored)))
         return options
Exemplo n.º 10
0
 def _generateOptions(self, ctx = None):
     options = [self._makeItem(MODULE.INFO, MENU.contextmenu(MODULE.INFO))]
     if self._isCanceled:
         options.append(self._makeItem(MODULE.CANCEL_BUY, MENU.contextmenu(MODULE.CANCEL_BUY)))
     else:
         options.append(self._makeItem(MODULE.UNLOAD, MENU.contextmenu(MODULE.UNLOAD)))
     return options
Exemplo n.º 11
0
 def generateOptions(self):
     options = [self._constructOptionVO(self.OPTIONS.MINIMIZE_ALL, MENU.contextmenu('messenger/minimizeAll')),
      self._constructOptionVO(_SEPARATOR_ID),
      self._constructOptionVO(self.OPTIONS.CLOSE_CURRENT, MENU.contextmenu('messenger/closeCurrent'), {'enabled': self._ctx.canCloseCurrent}),
      self._constructOptionVO(_SEPARATOR_ID),
      self._constructOptionVO(self.OPTIONS.CLOSE_ALL_EXCEPT_CURRENT, MENU.contextmenu('messenger/closeAllExceptCurrent'))]
     return options
Exemplo n.º 12
0
    def _generateOptions(self, ctx=None):
        userCMInfo = self._getUseCmInfo()
        if ctx is not None and not userCMInfo.hasClan:
            try:
                clanAbbrev = ctx.clanAbbrev
                userCMInfo.hasClan = bool(clanAbbrev)
            except Exception:
                LOG_DEBUG('ctx has no property "clanAbbrev"')

        if userCMInfo.isBot:
            return self._makeAIBotOptions()
        else:
            options = [self._makeItem(USER.INFO, MENU.contextmenu(USER.INFO))]
            options = self._addVehicleInfo(options)
            options = self._addClanProfileInfo(options, userCMInfo)
            options = self._addFriendshipInfo(options, userCMInfo)
            options = self._addChannelInfo(options, userCMInfo)
            options.append(self._makeItem(USER.COPY_TO_CLIPBOARD, MENU.contextmenu(USER.COPY_TO_CLIPBOARD)))
            options = self._addSquadInfo(options, userCMInfo.isIgnored)
            options = self._addPrebattleInfo(options, userCMInfo)
            options = self._addContactsNoteInfo(options, userCMInfo)
            options = self._addAppealInfo(options)
            options = self._addIgnoreInfo(options, userCMInfo)
            if not IS_CHINA:
                options = self._addMutedInfo(options, userCMInfo)
            options = self._addRejectFriendshipInfo(options, userCMInfo)
            options = self._addRemoveFromGroupInfo(options, userCMInfo)
            options = self._addRemoveFriendInfo(options, userCMInfo)
            options = self._addInviteClanInfo(options, userCMInfo)
            return options
Exemplo n.º 13
0
 def _generateOptions(self, ctx = None):
     options = [self._makeItem(MODULE.INFO, MENU.contextmenu(MODULE.INFO))]
     if self._isCanceled:
         options.append(self._makeItem(MODULE.CANCEL_BUY, MENU.contextmenu(MODULE.CANCEL_BUY)))
     else:
         options.append(self._makeItem(MODULE.UNLOAD, MENU.contextmenu(MODULE.UNLOAD)))
     return options
Exemplo n.º 14
0
 def _generateOptions(self, ctx=None):
     return [
         self._makeItem(CREW.PERSONAL_CASE,
                        MENU.contextmenu('personalCase')),
         self._makeSeparator(),
         self._makeItem(CREW.UNLOAD, MENU.contextmenu('tankmanUnload'))
     ]
Exemplo n.º 15
0
 def _addFriendshipInfo(self, options, userCMInfo):
     if not userCMInfo.isFriend:
         options.append(self._makeItem(USER.ADD_TO_FRIENDS, MENU.contextmenu(USER.ADD_TO_FRIENDS), optInitData={'enabled': userCMInfo.isSameRealm}))
     elif self.proto.contacts.isBidiFriendshipSupported():
         if USER_TAG.SUB_NONE in userCMInfo.getTags():
             options.append(self._makeItem(USER.REQUEST_FRIENDSHIP, MENU.contextmenu(USER.ADD_TO_FRIENDS_AGAIN), optInitData={'enabled': userCMInfo.isSameRealm}))
     return options
Exemplo n.º 16
0
 def _generateOptions(self, ctx=None):
     return [
         self._makeItem(CLAN_CM_OPTIONS.CLAN_PROFILE,
                        MENU.contextmenu('viewClanProfile')),
         self._makeItem(CLAN_CM_OPTIONS.COPY_TO_CB,
                        MENU.contextmenu('copyClanName'))
     ]
 def _generateOptions(self, ctx=None):
     options = []
     vehicle = self.__getVehicle(self.vehCD)
     self._manageStartOptions(options, vehicle)
     if vehicle.isPurchased:
         options.append(
             self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL),
                            {'enabled': vehicle.canSell}))
     elif vehicle.isUnlocked:
         items = self.itemsCache.items
         if vehicle.isRestoreAvailable():
             label = MENU.CONTEXTMENU_RESTORE
         elif vehicle.canTradeIn:
             label = MENU.CONTEXTMENU_BUYORTRADEIN
         else:
             label = MENU.CONTEXTMENU_BUY
         if canBuyGoldForVehicleThroughWeb(vehicle):
             btnEnabled = True
         else:
             btnEnabled = vehicle.mayObtainWithMoneyExchange(
                 items.stats.money, items.shop.exchangeRate)
         options.append(
             self._makeItem(VEHICLE.BUY, label, {'enabled': btnEnabled}))
     else:
         isAvailableToUnlock, _, _ = g_techTreeDP.isVehicleAvailableToUnlock(
             self.vehCD)
         options.append(
             self._makeItem(VEHICLE.RESEARCH,
                            MENU.contextmenu(VEHICLE.RESEARCH),
                            {'enabled': isAvailableToUnlock}))
     self._manageEndOptions(options, vehicle)
     return options
Exemplo n.º 18
0
 def __addDyncSquadInfo(self, options):
     make = self._makeItem
     ctx = g_sessionProvider.getCtx()
     if not ctx.isInvitationEnabled() or ctx.hasSquadRestrictions():
         return options
     elif not self.__userInfo.isAlly:
         return options
     else:
         contact = self.usersStorage.getUser(self.__userInfo.databaseID)
         isIgnored = contact is not None and contact.isIgnored()
         status = self.__vInfo.invitationDeliveryStatus
         if status & _D_STATUS.FORBIDDEN_BY_RECEIVER > 0 or status & _D_STATUS.SENT_TO > 0 and not status & _D_STATUS.SENT_INACTIVE:
             optionID = DYN_SQUAD_OPTION_ID.SENT_INVITATION
             isEnabled = False
         elif status & _D_STATUS.RECEIVED_FROM > 0 and not status & _D_STATUS.RECEIVED_INACTIVE:
             optionID = None
         elif self.__vInfo.isSquadMan():
             optionID = DYN_SQUAD_OPTION_ID.IN_SQUAD
             isEnabled = False
         else:
             optionID = DYN_SQUAD_OPTION_ID.SENT_INVITATION
             isEnabled = not isIgnored
         if optionID is not None:
             options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
         if status & _D_STATUS.RECEIVED_FROM > 0 and not status & _D_STATUS.RECEIVED_INACTIVE:
             options.append(make(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION, MENU.contextmenu(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION), optInitData=self._getOptionInitData(DYN_SQUAD_OPTION_ID.ACCEPT_INVITATION, not isIgnored)))
             options.append(make(DYN_SQUAD_OPTION_ID.REJECT_INVITATION, MENU.contextmenu(DYN_SQUAD_OPTION_ID.REJECT_INVITATION), optInitData=self._getOptionInitData(DYN_SQUAD_OPTION_ID.REJECT_INVITATION, not isIgnored)))
         return options
Exemplo n.º 19
0
 def _addSquadInfo(self, options, isIgnored):
     if not isIgnored and not self.isSquadCreator():
         canCreate = self.prbDispatcher.getFunctionalCollection().canCreateSquad()
         options.append(self._makeItem(USER.CREATE_SQUAD, MENU.contextmenu(USER.CREATE_SQUAD), optInitData={'enabled': canCreate}))
         if g_eventsCache.isEventEnabled():
             options.append(self._makeItem(USER.CREATE_EVENT_SQUAD, MENU.contextmenu(USER.CREATE_EVENT_SQUAD), optInitData={'enabled': canCreate}))
     return options
Exemplo n.º 20
0
 def _addPrebattleInfo(self, options, userCMInfo):
     if self.prbEntity.getPermissions().canKick():
         options.append(self._makeItem(KICK_FROM_UNIT, MENU.contextmenu(KICK_FROM_UNIT)))
     if self._canGiveLeadership():
         options.append(self._makeItem(GIVE_LEADERSHIP, MENU.contextmenu(GIVE_LEADERSHIP)))
     if self._canTakeLeadership():
         options.append(self._makeItem(TAKE_LEADERSHIP, MENU.contextmenu(TAKE_LEADERSHIP)))
     return options
Exemplo n.º 21
0
 def _addSquadInfo(self, options, isIgnored):
     if not isIgnored and not self.isSquadCreator() and self.prbDispatcher is not None:
         canCreate = self.prbEntity.getPermissions().canCreateSquad()
         options.append(self._makeItem(USER.CREATE_SQUAD, MENU.contextmenu(USER.CREATE_SQUAD), optInitData={'enabled': canCreate}))
         if self.eventsCache.isEventEnabled():
             options.append(self._makeItem(USER.CREATE_EVENT_SQUAD, MENU.contextmenu(USER.CREATE_EVENT_SQUAD), optInitData={'enabled': canCreate,
              'textColor': 13347959}))
     return options
Exemplo n.º 22
0
 def _addPrebattleInfo(self, options, userCMInfo):
     if self.unitFunctional.getPermissions().canKick():
         options.append(self._makeItem(KICK_FROM_UNIT, MENU.contextmenu(KICK_FROM_UNIT)))
     if self._canGiveLeadership():
         options.append(self._makeItem(GIVE_LEADERSHIP, MENU.contextmenu(GIVE_LEADERSHIP)))
     if self._canTakeLeadership():
         options.append(self._makeItem(TAKE_LEADERSHIP, MENU.contextmenu(TAKE_LEADERSHIP)))
     return options
Exemplo n.º 23
0
 def _generateOptions(self, ctx=None):
     return [
         self._makeItem(CREW.PERSONAL_CASE,
                        MENU.contextmenu('personalCase')),
         self._makeSeparator(),
         self._makeItem(CREW.UNLOAD, MENU.contextmenu('tankmanUnload'),
                        {'enabled': not g_currentVehicle.isInBattle()})
     ]
Exemplo n.º 24
0
 def _generateOptions(self, ctx = None):
     options = [self._makeItem(MODULE.INFO, MENU.contextmenu(MODULE.INFO)), self._makeSeparator(), self._makeItem(MODULE.UNLOCK, MENU.contextmenu(MODULE.UNLOCK), {'enabled': NODE_STATE.isAvailable2Unlock(self._nodeState)})]
     if NODE_STATE.isUnlocked(self._nodeState):
         if NODE_STATE.inInventory(self._nodeState) or NODE_STATE.isInstalled(self._nodeState):
             options.extend([self._makeItem(MODULE.EQUIP, MENU.contextmenu(MODULE.EQUIP), {'enabled': self._isAvailable2Install()}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': not NODE_STATE.isInstalled(self._nodeState)})])
         else:
             options.extend([self._makeItem(MODULE.BUY_AND_EQUIP, MENU.CONTEXTMENU_BUYANDEQUIP, {'enabled': self._isAvailable2Buy()}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': NODE_STATE.isAvailable2Sell(self._nodeState)})])
     else:
         options.extend([self._makeItem(MODULE.BUY_AND_EQUIP, MENU.CONTEXTMENU_BUYANDEQUIP, {'enabled': False}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': False})])
     return options
 def _generateOptions(self, ctx=None):
     options = []
     if self._isCanceled:
         options.append(
             self._makeItem(MODULE.UNEQUIP,
                            MENU.contextmenu(MODULE.UNEQUIP)))
     else:
         options.append(
             self._makeItem(MODULE.UNLOAD, MENU.contextmenu(MODULE.UNLOAD)))
     return options
Exemplo n.º 26
0
 def _generateOptions(self, ctx = None):
     options = [self._makeItem(MODULE.INFO, MENU.contextmenu(MODULE.INFO)), self._makeSeparator(), self._makeItem(MODULE.UNLOCK, MENU.contextmenu(MODULE.UNLOCK), {'enabled': NODE_STATE.isAvailable2Unlock(self._nodeState)})]
     if NODE_STATE.isUnlocked(self._nodeState):
         if NODE_STATE.inInventory(self._nodeState) or NODE_STATE.isInstalled(self._nodeState):
             options.extend([self._makeItem(MODULE.EQUIP, MENU.contextmenu(MODULE.EQUIP), {'enabled': self._isAvailable2Install()}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': not NODE_STATE.isInstalled(self._nodeState)})])
         else:
             options.extend([self._makeItem(MODULE.BUY_AND_EQUIP, MENU.CONTEXTMENU_BUYANDEQUIP, {'enabled': self._isAvailable2Buy()}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': NODE_STATE.isAvailable2Sell(self._nodeState)})])
     else:
         options.extend([self._makeItem(MODULE.BUY_AND_EQUIP, MENU.CONTEXTMENU_BUYANDEQUIP, {'enabled': False}), self._makeSeparator(), self._makeItem(MODULE.SELL, MENU.CONTEXTMENU_SELLFROMINVENTORY, {'enabled': False})])
     return options
Exemplo n.º 27
0
 def _addPrebattleInfo(self, options, userCMInfo):
     if self._canKick():
         options.append(self._makeItem(KICK_FROM_UNIT, MENU.contextmenu(KICK_FROM_UNIT)))
     if self._canGiveLeadership():
         options.append(self._makeItem(GIVE_LEADERSHIP, MENU.contextmenu(GIVE_LEADERSHIP)))
     if self._canTakeLeadership():
         options.append(self._makeItem(TAKE_LEADERSHIP, MENU.contextmenu(TAKE_LEADERSHIP)))
     if self.prbEntity.getEntityType() == PREBATTLE_TYPE.STRONGHOLD:
         options.extend(self._addStrongholdsInfo(userCMInfo))
     return options
Exemplo n.º 28
0
 def _addVehicleInfo(self, options):
     if self._vehicleCD > 0:
         vehicle = g_itemsCache.items.getItemByCD(self._vehicleCD)
         if not vehicle.isSecret:
             if vehicle.isPreviewAllowed():
                 action = USER.VEHICLE_PREVIEW
                 label = MENU.contextmenu(USER.VEHICLE_PREVIEW)
             else:
                 action = USER.VEHICLE_INFO
                 label = MENU.contextmenu(USER.VEHICLE_INFO)
             options.append(self._makeItem(action, label))
     return options
 def _generateOptions(self, ctx=None):
     return [
         self._makeItem(CHANNEL.MINIMIZE_ALL,
                        MENU.contextmenu('messenger/minimizeAll')),
         self._makeSeparator(),
         self._makeItem(CHANNEL.CLOSE_CURRENT,
                        MENU.contextmenu('messenger/closeCurrent'),
                        {'enabled': self._canClose}),
         self._makeSeparator(),
         self._makeItem(CHANNEL.CLOSE_ALL_EXCEPT_CURRENT,
                        MENU.contextmenu('messenger/closeAllExceptCurrent'))
     ]
Exemplo n.º 30
0
 def _addVehicleInfo(self, options):
     if self._vehicleCD > 0:
         vehicle = g_itemsCache.items.getItemByCD(self._vehicleCD)
         if not vehicle.isSecret:
             if vehicle.isPreviewAllowed():
                 action = USER.VEHICLE_PREVIEW
                 label = MENU.contextmenu(USER.VEHICLE_PREVIEW)
             else:
                 action = USER.VEHICLE_INFO
                 label = MENU.contextmenu(USER.VEHICLE_INFO)
             options.append(self._makeItem(action, label))
     return options
Exemplo n.º 31
0
 def _manageStartOptions(self, options, vehicle):
     options.append(
         self._makeItem(VEHICLE.INFO, MENU.contextmenu(VEHICLE.INFO)))
     super(VehicleContextMenuHandler,
           self)._manageStartOptions(options, vehicle)
     if self.comparisonBasket.isEnabled():
         options.append(
             self._makeItem(
                 VEHICLE.COMPARE, MENU.contextmenu(VEHICLE.COMPARE), {
                     'enabled':
                     self.comparisonBasket.isReadyToAdd(
                         g_itemsCache.items.getItemByCD(self.vehCD))
                 }))
Exemplo n.º 32
0
 def _addStrongholdsInfo(self, userCMInfo):
     if self.prbEntity.getEntityType() != PREBATTLE_TYPE.EXTERNAL:
         return []
     options = []
     if self._canTakeEquipmentCommander():
         options.append(
             self._makeItem(TAKE_EQUIPMENT_COMMANDER,
                            MENU.contextmenu(TAKE_EQUIPMENT_COMMANDER)))
     if self._canGiveEquipmentCommander():
         options.append(
             self._makeItem(GIVE_EQUIPMENT_COMMANDER,
                            MENU.contextmenu(GIVE_EQUIPMENT_COMMANDER)))
     return options
Exemplo n.º 33
0
 def generateOptions(self):
     options = []
     vehicle = g_itemsCache.items.getVehicle(self._itemId)
     vehicleWasInBattle = False
     accDossier = g_itemsCache.items.getAccountDossier(None)
     if accDossier:
         wasInBattleSet = set(accDossier.getTotalStats().getVehicles().keys())
         if vehicle.intCD in wasInBattleSet:
             vehicleWasInBattle = True
     if vehicle is not None:
         options.append(self._constructOptionVO(self.VEHICLE.INFO, MENU.contextmenu(self.VEHICLE.INFO)))
         options.append(self._constructOptionVO(self.VEHICLE.STATISTIC, MENU.contextmenu(self.VEHICLE.STATISTIC), {'enabled': vehicleWasInBattle}))
         options.append(self._constructOptionVO(_SEPARATOR_ID))
         if vehicle.isRented:
             if not vehicle.isPremiumIGR:
                 money = g_itemsCache.items.stats.money
                 (canBuyOrRent, _,) = vehicle.mayRentOrBuy(money)
                 options.append(self._constructOptionVO(self.VEHICLE.BUY, MENU.contextmenu(self.VEHICLE.BUY), {'enabled': canBuyOrRent}))
             options.append(self._constructOptionVO(self.VEHICLE.REMOVE, MENU.contextmenu(self.VEHICLE.REMOVE), {'enabled': vehicle.canSell and vehicle.rentalIsOver}))
         else:
             options.append(self._constructOptionVO(self.VEHICLE.SELL, MENU.contextmenu(self.VEHICLE.SELL), {'enabled': vehicle.canSell}))
         options.append(self._constructOptionVO(_SEPARATOR_ID))
         options.append(self._constructOptionVO(self.VEHICLE.RESEARCH, MENU.contextmenu(self.VEHICLE.RESEARCH)))
         if vehicle.isFavorite:
             options.append(self._constructOptionVO(self.VEHICLE.UNCHECK, MENU.contextmenu(self.VEHICLE.UNCHECK)))
         else:
             options.append(self._constructOptionVO(self.VEHICLE.CHECK, MENU.contextmenu(self.VEHICLE.CHECK)))
     return options
Exemplo n.º 34
0
 def _addVehicleInfo(self, options):
     if self._vehicleCD > 0:
         vehicle = g_itemsCache.items.getItemByCD(self._vehicleCD)
         if not vehicle.isSecret:
             isEnabled = True
             if vehicle.isPreviewAllowed():
                 isEnabled = not self.prbDispatcher.getFunctionalState().isNavigationDisabled()
                 action = USER.VEHICLE_PREVIEW
                 label = MENU.contextmenu(USER.VEHICLE_PREVIEW)
             else:
                 action = USER.VEHICLE_INFO
                 label = MENU.contextmenu(USER.VEHICLE_INFO)
             options.append(self._makeItem(action, label, optInitData={'enabled': isEnabled}))
     return options
Exemplo n.º 35
0
 def _generateOptions(self, ctx=None):
     options = []
     options.append(
         self._makeItem(VEHICLE.USER_INFO,
                        MENU.contextmenu(VEHICLE.USER_INFO)))
     user = self.usersStorage.getUser(self.__playerDBId)
     enabledInroaming = self.__isEnabledInRoaming(self.__playerDBId)
     isFriend = user is not None and user.isFriend()
     if enabledInroaming and not isFriend:
         options.append(
             self._makeItem(VEHICLE.ADD_TO_FRIEND,
                            MENU.contextmenu(VEHICLE.ADD_TO_FRIEND)))
     options.append(
         self._makeItem(VEHICLE.CREATE_PRIVATE_CHANNEL,
                        MENU.contextmenu(VEHICLE.CREATE_PRIVATE_CHANNEL)))
     options.append(
         self._makeItem(VEHICLE.COPY_TO_CLIP_BOARD,
                        MENU.contextmenu(VEHICLE.COPY_TO_CLIP_BOARD)))
     options.append(
         self._makeItem(VEHICLE.CREATE_BR_SQUAD,
                        MENU.contextmenu(VEHICLE.CREATE_BR_SQUAD)))
     if enabledInroaming and user is not None and user.isIgnored():
         options.append(
             self._makeItem(VEHICLE.REMOVE_FROM_IGNORED,
                            MENU.contextmenu(VEHICLE.REMOVE_FROM_IGNORED)))
     if enabledInroaming and isFriend:
         options.append(
             self._makeItem(VEHICLE.ADD_TO_IGNORED,
                            MENU.contextmenu(VEHICLE.ADD_TO_IGNORED)))
         options.append(
             self._makeItem(VEHICLE.REMOVE_FROM_FRIENDS,
                            MENU.contextmenu(VEHICLE.REMOVE_FROM_FRIENDS)))
     return options
Exemplo n.º 36
0
 def _addVehicleInfo(self, options):
     if self._vehicleCD > 0:
         vehicle = self.itemsCache.items.getItemByCD(self._vehicleCD)
         if not vehicle.isSecret:
             isEnabled = True
             if vehicle.isPreviewAllowed():
                 isEnabled = not self.prbDispatcher.getFunctionalState().isNavigationDisabled()
                 action = USER.VEHICLE_PREVIEW
                 label = MENU.contextmenu(USER.VEHICLE_PREVIEW)
             else:
                 action = USER.VEHICLE_INFO
                 label = MENU.contextmenu(USER.VEHICLE_INFO)
             options.append(self._makeItem(action, label, optInitData={'enabled': isEnabled}))
     return options
Exemplo n.º 37
0
 def _generateOptions(self, ctx=None):
     options = [self._makeItem(MODULE.INFO, MENU.contextmenu(MODULE.INFO))]
     equipment = self.itemsCache.items.getItemByCD(int(self._equipmentCD))
     if equipment is not None and equipment.isBuiltIn:
         return options
     else:
         if self._isCanceled:
             options.append(
                 self._makeItem(MODULE.CANCEL_BUY,
                                MENU.contextmenu(MODULE.CANCEL_BUY)))
         else:
             options.append(
                 self._makeItem(MODULE.UNLOAD,
                                MENU.contextmenu(MODULE.UNLOAD)))
         return options
Exemplo n.º 38
0
 def _addClubInfo(self, options, userCMInfo):
     club = self.clubsCtrl.getClub(self.__clubDbID)
     if club is not None:
         profile = self.clubsCtrl.getProfile()
         limits = self.clubsState.getLimits()
         member = club.getMember(self.databaseID)
         if limits.canTransferOwnership(profile, club).success:
             options.append(self._makeItem(GIVE_LEADERSHIP, MENU.contextmenu(GIVE_LEADERSHIP)))
         if member.isPrivate():
             if limits.canAssignOfficer(profile, club).success:
                 options.append(self._makeItem(ASSIGN_OFFICER, MENU.contextmenu(ASSIGN_OFFICER)))
         if member.isOfficer():
             if limits.canAssignPrivate(profile, club).success:
                 options.append(self._makeItem(ASSIGN_PRIVATE, MENU.contextmenu(ASSIGN_PRIVATE)))
     return options
 def _generateOptions(self, ctx = None):
     options = []
     vehicle = self.__getVehicle(self.vehCD)
     self._manageStartOptions(options, vehicle)
     if vehicle.isPurchased:
         options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL), {'enabled': vehicle.canSell}))
     elif vehicle.isUnlocked:
         items = g_itemsCache.items
         label = MENU.CONTEXTMENU_RESTORE if vehicle.isRestoreAvailable() else MENU.CONTEXTMENU_BUY
         options.append(self._makeItem(VEHICLE.BUY, label, {'enabled': vehicle.mayObtainWithMoneyExchange(items.stats.money, items.shop.exchangeRate)}))
     else:
         isAvailableToUnlock, _, _ = g_techTreeDP.isVehicleAvailableToUnlock(self.vehCD)
         options.append(self._makeItem(VEHICLE.RESEARCH, MENU.contextmenu(VEHICLE.RESEARCH), {'enabled': isAvailableToUnlock}))
     self._manageEndOptions(options, vehicle)
     return options
Exemplo n.º 40
0
 def _getSubmenuData(self):
     if self._isAlly or self._arenaGuiType in (ARENA_GUI_TYPE.UNKNOWN, ARENA_GUI_TYPE.TRAINING):
         order = DENUNCIATIONS.ORDER
     else:
         order = DENUNCIATIONS.ENEMY_ORDER
     make = self._makeItem
     return [ make(denunciation, MENU.contextmenu(denunciation), optInitData={'enabled': self._isAppealsForTopicEnabled(denunciation)}) for denunciation in order ]
Exemplo n.º 41
0
 def _addSquadInfo(self, options, isIgnored):
     if not isIgnored and not self.isSquadCreator() and self.prbDispatcher is not None:
         canCreate = self.prbEntity.getPermissions().canCreateSquad()
         options.append(self._makeItem(USER.CREATE_SQUAD, MENU.contextmenu(USER.CREATE_SQUAD), optInitData={'enabled': canCreate}))
         if self.__eventBattlesCtrl.isEnabled():
             options.append(self._makeItem(USER.CREATE_EVENT_SQUAD, MENU.contextmenu(USER.CREATE_EVENT_SQUAD), optInitData={'enabled': canCreate,
              'textColor': 13347959}))
         if self.__battleRoyale.isEnabled():
             primeTimeStatus, _, _ = self.__battleRoyale.getPrimeTimeStatus()
             options.append(self._makeItem(USER.CREATE_BATTLE_ROYALE_SQUAD, MENU.contextmenu(USER.CREATE_BATTLE_ROYALE_SQUAD), optInitData={'enabled': canCreate and primeTimeStatus == PrimeTimeStatus.AVAILABLE,
              'textColor': 13347959}))
         if self.__mapboxCtrl.isEnabled():
             isOptionEnabled = canCreate and self.__mapboxCtrl.isActive() and self.__mapboxCtrl.isInPrimeTime()
             options.append(self._makeItem(USER.CREATE_MAPBOX_SQUAD, backport.text(R.strings.menu.contextMenu.createMapboxSquad()), optInitData={'enabled': isOptionEnabled,
              'textColor': 13347959}))
     return options
Exemplo n.º 42
0
 def _addIgnoreInfo(self, options, userCMInfo):
     ignoring = USER.REMOVE_FROM_IGNORED if userCMInfo.isIgnored else USER.ADD_TO_IGNORED
     options.append(
         self._makeItem(ignoring,
                        MENU.contextmenu(ignoring),
                        optInitData={'enabled': userCMInfo.isSameRealm}))
     return options
Exemplo n.º 43
0
 def _manageVehCompareItem(self, optionsRef, vehicle):
     """
     :param vehicle: instance of gui.shared.gui_items.Vehicle.Vehicle
     :param optionsRef: reference to Context Menu items list
     """
     if self.comparisonBasket.isEnabled():
         optionsRef.append(self._makeItem(VEHICLE.COMPARE, MENU.contextmenu(VEHICLE.COMPARE), {'enabled': self.comparisonBasket.isReadyToAdd(vehicle)}))
Exemplo n.º 44
0
 def __addIgnoreInfo(self, options):
     data = {'enabled': self.__userInfo.isSameRealm}
     if self.__userInfo.isIgnored:
         optionID = USER.REMOVE_FROM_IGNORED
     else:
         optionID = USER.ADD_TO_IGNORED
     options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=data))
     return options
Exemplo n.º 45
0
 def __addFriendshipInfo(self, options):
     isEnabled = self.__userInfo.isSameRealm
     if self.__userInfo.isFriend:
         optionID = USER.REMOVE_FROM_FRIENDS
     else:
         optionID = USER.ADD_TO_FRIENDS
     options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
     return options
Exemplo n.º 46
0
 def __addFriendshipInfo(self, options):
     data = {'enabled': self.__userInfo.isSameRealm}
     if self.__userInfo.isFriend:
         optionID = USER.REMOVE_FROM_FRIENDS
     else:
         optionID = USER.ADD_TO_FRIENDS
     options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=data))
     return options
Exemplo n.º 47
0
 def _addContactsNoteInfo(self, options, userCMInfo):
     if self.proto.contacts.isNoteSupported():
         userNote = userCMInfo.getNote()
         if userNote:
             options.extend([self._makeItem(CONTACTS_ACTION_ID.EDIT_CONTACT_NOTE, MENU.contextmenu(CONTACTS_ACTION_ID.EDIT_CONTACT_NOTE)), self._makeItem(CONTACTS_ACTION_ID.REMOVE_CONTACT_NOTE, MENU.contextmenu(CONTACTS_ACTION_ID.REMOVE_CONTACT_NOTE))])
         else:
             options.append(self._makeItem(CONTACTS_ACTION_ID.CREATE_CONTACT_NOTE, MENU.contextmenu(CONTACTS_ACTION_ID.CREATE_CONTACT_NOTE)))
     return options
Exemplo n.º 48
0
 def _generateOptions(self):
     userCMInfo = self._getUseCmInfo()
     ignoring = USER.REMOVE_FROM_IGNORED if userCMInfo.isIgnored else USER.ADD_TO_IGNORED
     options = [self._makeItem(USER.INFO, MENU.contextmenu(USER.INFO))]
     options = self._addFriendshipInfo(options, userCMInfo)
     options = self._addChannelInfo(options, userCMInfo)
     options.append(self._makeItem(USER.COPY_TO_CLIPBOARD, MENU.contextmenu(USER.COPY_TO_CLIPBOARD)))
     options = self._addSquadInfo(options, userCMInfo.isIgnored)
     options = self._addPrebattleInfo(options, userCMInfo)
     options = self._addContactsNoteInfo(options, userCMInfo)
     options = self._addAppealInfo(options)
     options.append(self._makeItem(ignoring, MENU.contextmenu(ignoring)))
     options = self._addMutedInfo(options, userCMInfo)
     options = self._addRejectFriendshipInfo(options, userCMInfo)
     options = self._addRemoveFromGroupInfo(options, userCMInfo)
     options = self._addRemoveFriendInfo(options, userCMInfo)
     return options
Exemplo n.º 49
0
 def _manageVehCompareItem(self, optionsRef, vehicle):
     """
     :param vehicle: instance of gui.shared.gui_items.Vehicle.Vehicle
     :param optionsRef: reference to Context Menu items list
     """
     comparisonBasket = getVehicleComparisonBasketCtrl()
     if comparisonBasket.isEnabled():
         optionsRef.append(self._makeItem(VEHICLE.COMPARE, MENU.contextmenu(VEHICLE.COMPARE), {'enabled': comparisonBasket.isReadyToAdd(vehicle)}))
Exemplo n.º 50
0
 def _generateOptions(self, ctx = None):
     userCMInfo = self._getUseCmInfo()
     options = [self._makeItem(USER.INFO, MENU.contextmenu(USER.INFO))]
     options = self._addFriendshipInfo(options, userCMInfo)
     options = self._addChannelInfo(options, userCMInfo)
     options.append(self._makeItem(USER.COPY_TO_CLIPBOARD, MENU.contextmenu(USER.COPY_TO_CLIPBOARD)))
     options = self._addSquadInfo(options, userCMInfo.isIgnored)
     options = self._addPrebattleInfo(options, userCMInfo)
     options = self._addClubInfo(options, userCMInfo)
     options = self._addContactsNoteInfo(options, userCMInfo)
     options = self._addAppealInfo(options)
     options = self._addIgnoreInfo(options, userCMInfo)
     options = self._addMutedInfo(options, userCMInfo)
     options = self._addRejectFriendshipInfo(options, userCMInfo)
     options = self._addRemoveFromGroupInfo(options, userCMInfo)
     options = self._addRemoveFriendInfo(options, userCMInfo)
     return options
Exemplo n.º 51
0
 def _generateOptions(self, ctx = None):
     options = []
     vehicle = g_itemsCache.items.getVehicle(self.getVehInvID())
     vehicleWasInBattle = False
     accDossier = g_itemsCache.items.getAccountDossier(None)
     if accDossier:
         wasInBattleSet = set(accDossier.getTotalStats().getVehicles().keys())
         if vehicle.intCD in wasInBattleSet:
             vehicleWasInBattle = True
     if vehicle is not None:
         options.extend([self._makeItem(VEHICLE.INFO, MENU.contextmenu(VEHICLE.INFO)), self._makeItem(VEHICLE.STATS, MENU.contextmenu(VEHICLE.STATS), {'enabled': vehicleWasInBattle}), self._makeSeparator()])
         if vehicle.isRented:
             if not vehicle.isPremiumIGR:
                 money = g_itemsCache.items.stats.money
                 canBuyOrRent, _ = vehicle.mayRentOrBuy(money)
                 options.append(self._makeItem(VEHICLE.BUY, MENU.contextmenu(VEHICLE.BUY), {'enabled': canBuyOrRent}))
             options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.REMOVE), {'enabled': vehicle.canSell and vehicle.rentalIsOver}))
         else:
             options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL), {'enabled': vehicle.canSell}))
         options.extend([self._makeSeparator(), self._makeItem(VEHICLE.RESEARCH, MENU.contextmenu(VEHICLE.RESEARCH))])
         if vehicle.isFavorite:
             options.append(self._makeItem(VEHICLE.UNCHECK, MENU.contextmenu(VEHICLE.UNCHECK)))
         else:
             options.append(self._makeItem(VEHICLE.CHECK, MENU.contextmenu(VEHICLE.CHECK)))
     return options
Exemplo n.º 52
0
 def _generateOptions(self, ctx = None):
     vehicle = g_itemsCache.items.getItemByCD(self.__vehCD)
     options = []
     if not vehicle.isSecret or vehicle.isInInventory:
         options.append(self._makeItem(PROFILE.VEHICLE_INFO, MENU.CONTEXTMENU_VEHICLEINFOEX))
     comparisonBasket = getVehicleComparisonBasketCtrl()
     if comparisonBasket.isEnabled():
         options.append(self._makeItem(PROFILE.VEHICLE_COMPARE, MENU.contextmenu(PROFILE.VEHICLE_COMPARE), {'enabled': comparisonBasket.isReadyToAdd(vehicle)}))
     return options
Exemplo n.º 53
0
 def _getSubmenuData(self):
     return [self._makeItem(DENUICATIONS.OFFEND, MENU.contextmenu(DENUICATIONS.OFFEND)),
      self._makeItem(DENUICATIONS.FLOOD, MENU.contextmenu(DENUICATIONS.FLOOD)),
      self._makeItem(DENUICATIONS.BLACKMAIL, MENU.contextmenu(DENUICATIONS.BLACKMAIL)),
      self._makeItem(DENUICATIONS.SWINDLE, MENU.contextmenu(DENUICATIONS.SWINDLE)),
      self._makeItem(DENUICATIONS.NOT_FAIR_PLAY, MENU.contextmenu(DENUICATIONS.NOT_FAIR_PLAY)),
      self._makeItem(DENUICATIONS.FORBIDDEN_NICK, MENU.contextmenu(DENUICATIONS.FORBIDDEN_NICK)),
      self._makeItem(DENUICATIONS.BOT, MENU.contextmenu(DENUICATIONS.BOT))]
Exemplo n.º 54
0
 def __addMutedInfo(self, options):
     isVisible = self.bwProto.voipController.isVOIPEnabled() and (self.__userInfo.isAlly or self.arenaGuiType.isTrainingBattle())
     isEnabled = not self.__userInfo.isIgnored or self.__userInfo.isTemporaryIgnored
     if self.__userInfo.isMuted:
         optionID = USER.UNSET_MUTED
     else:
         optionID = USER.SET_MUTED
     if isVisible:
         options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
     return options
Exemplo n.º 55
0
 def __addDenunciationsInfo(self, options):
     make = self._makeItem
     if self.__userInfo.isAlly or self.arenaGuiType.isTrainingBattle():
         order = DENUNCIATIONS.ORDER
     else:
         order = DENUNCIATIONS.ENEMY_ORDER
     sub = [ make(denunciation, MENU.contextmenu(denunciation), optInitData={'enabled': self.__isAppealsForTopicEnabled(denunciation)}) for denunciation in order ]
     label = '{} {}/{}'.format(i18n.makeString(MENU.CONTEXTMENU_APPEAL), self.__denunciator.getDenunciationsLeft(), DENUNCIATIONS_PER_DAY)
     options.append(make(DENUNCIATIONS.APPEAL, label, optInitData={'enabled': self.__denunciator.isAppealsEnabled()}, optSubMenu=sub))
     return options
Exemplo n.º 56
0
 def __addIgnoreInfo(self, options):
     isEnabled = self.__userInfo.isSameRealm
     if self.__userInfo.isTemporaryIgnored:
         optionID = USER.ADD_TO_IGNORED
         isEnabled = False
     elif self.__userInfo.isIgnored:
         optionID = USER.REMOVE_FROM_IGNORED
     else:
         optionID = USER.ADD_TO_IGNORED
     options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
     return options
Exemplo n.º 57
0
 def __addCommunicationInfo(self, options):
     if self.__userInfo.isAlly and not self.arenaGuiType.isTrainingBattle():
         isEnabled = self.__userInfo.isSameRealm
         if self.__userInfo.isTemporaryIgnored:
             optionID = BATTLE_CHAT_OPTION_ID.ENABLE_COMMUNICATIONS
         elif not self.__userInfo.isIgnored:
             optionID = BATTLE_CHAT_OPTION_ID.DISABLE_COMMUNICATIONS
         else:
             optionID = BATTLE_CHAT_OPTION_ID.DISABLE_COMMUNICATIONS
             isEnabled = False
         options.append(self._makeItem(optionID, MENU.contextmenu(optionID), optInitData=self._getOptionInitData(optionID, isEnabled)))
     return options
Exemplo n.º 58
0
 def _generateOptions(self, ctx = None):
     options = []
     vehicle = g_itemsCache.items.getVehicle(self.getVehInvID())
     vehicleWasInBattle = False
     accDossier = g_itemsCache.items.getAccountDossier(None)
     isEventVehicle = vehicle.isOnlyForEventBattles
     if vehicle is None:
         return options
     else:
         if accDossier:
             wasInBattleSet = set(accDossier.getTotalStats().getVehicles().keys())
             if vehicle.intCD in wasInBattleSet:
                 vehicleWasInBattle = True
         if vehicle is not None:
             options.extend([self._makeItem(VEHICLE.INFO, MENU.contextmenu(VEHICLE.INFO)), self._makeItem(VEHICLE.STATS, MENU.contextmenu(VEHICLE.STATS), {'enabled': vehicleWasInBattle}), self._makeSeparator()])
             self._manageVehCompareOptions(options, vehicle)
             options.append(self._makeItem(VEHICLE.RESEARCH, MENU.contextmenu(VEHICLE.RESEARCH)))
             if vehicle.isRented:
                 if not vehicle.isPremiumIGR:
                     items = g_itemsCache.items
                     enabled = vehicle.mayObtainWithMoneyExchange(items.stats.money, items.shop.exchangeRate)
                     label = MENU.CONTEXTMENU_RESTORE if vehicle.isRestoreAvailable() else MENU.CONTEXTMENU_BUY
                     options.append(self._makeItem(VEHICLE.BUY, label, {'enabled': enabled}))
                 options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.REMOVE), {'enabled': vehicle.canSell and vehicle.rentalIsOver}))
             else:
                 options.append(self._makeItem(VEHICLE.SELL, MENU.contextmenu(VEHICLE.SELL), {'enabled': vehicle.canSell and not isEventVehicle}))
             if vehicle.isFavorite:
                 options.append(self._makeItem(VEHICLE.UNCHECK, MENU.contextmenu(VEHICLE.UNCHECK)))
             else:
                 options.append(self._makeItem(VEHICLE.CHECK, MENU.contextmenu(VEHICLE.CHECK), {'enabled': not isEventVehicle}))
         return options
Exemplo n.º 59
0
 def _addInviteClanInfo(self, options, userCMInfo):
     if g_lobbyContext.getServerSettings().clanProfile.isEnabled() and not userCMInfo.hasClan:
         profile = g_clanCtrl.getAccountProfile()
         canHandleClanInvites = profile.getMyClanPermissions().canHandleClanInvites()
         if profile.isInClan() and canHandleClanInvites:
             isEnabled = g_clanCtrl.isAvailable()
             canHandleClanInvites = profile.getMyClanPermissions().canHandleClanInvites()
             if isEnabled:
                 profile = g_clanCtrl.getAccountProfile()
                 dossier = profile.getClanDossier()
                 isEnabled = canHandleClanInvites and not dossier.isClanInviteSent(userCMInfo.databaseID) and not dossier.hasClanApplication(userCMInfo.databaseID)
             options.append(self._makeItem(USER.SEND_CLAN_INVITE, MENU.contextmenu(USER.SEND_CLAN_INVITE), optInitData={'enabled': isEnabled}))
     return options
Exemplo n.º 60
0
 def _generateOptions(self, ctx = None):
     return [self._makeItem(CREW.PERSONAL_CASE, MENU.contextmenu('personalCase')), self._makeSeparator(), self._makeItem(CREW.UNLOAD, MENU.contextmenu('tankmanUnload'))]