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

slimItemDisplayChecker.py (1993B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\overview\slimItemDisplayChecker.py
      2 from eve.common.lib import appConst as const
      3 from overviewPresets.overviewSettingsConst import SETTING_OVERVIEW_PRESET_NAME
      4 
      5 class SlimItemDisplayChecker(object):
      6 
      7     def __init__(self):
      8         self.stateSvc = sm.GetService('stateSvc')
      9         self.tacticalSvc = sm.GetService('tactical')
     10         self.presetSvc = sm.GetService('overviewPresetSvc')
     11         self.structureProximityTracker = sm.GetService('structureProximityTracker')
     12         self.presetName = None
     13 
     14     def UpdateState(self, tabID):
     15         if tabID is not None:
     16             tabSettingsByID = self.presetSvc.GetSettingsByTabID()
     17             self.presetName = tabSettingsByID[tabID][SETTING_OVERVIEW_PRESET_NAME]
     18         else:
     19             self.presetName = None
     20         self.filterGroups = self.presetSvc.GetValidGroups(presetName=self.presetName)
     21         self.filteredStates = self.tacticalSvc.GetFilteredStatesFunctionNames(presetName=self.presetName)
     22         self.alwaysShownStates = self.tacticalSvc.GetAlwaysShownStatesFunctionNames(presetName=self.presetName)
     23 
     24     def ShouldDisplayItem(self, slimItem):
     25         if not slimItem:
     26             return False
     27         if slimItem.itemID == session.shipid:
     28             return False
     29         overriddenState = self.presetSvc.GetOverrideState(slimItem)
     30         if overriddenState is not None:
     31             return overriddenState
     32         if slimItem.typeID in const.OVERVIEW_IGNORE_TYPES:
     33             return False
     34         if slimItem.groupID not in self.filterGroups:
     35             return False
     36         if self.stateSvc.CheckIfFilterItem(slimItem) and self.tacticalSvc.CheckFiltered(slimItem, self.filteredStates, self.alwaysShownStates):
     37             return False
     38         if slimItem.categoryID == const.categoryStructure and not self.structureProximityTracker.IsStructureVisible(slimItem.itemID):
     39             return False
     40         return True