defaultoverviews.py (3953B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\parklife\overview\default\defaultoverviews.py 2 from eve.client.script.parklife.overview.default import categories 3 from eve.client.script.parklife.overview.default.const import DEFAULT, OVERVIEWS, OverviewType 4 from eve.client.script.parklife.overview.default.fsddefaultoverview import FsdDefaultOverview 5 from eve.client.script.parklife.overview.default.yamldefaultoverview import YamlDefaultOverview 6 7 class DefaultOverviews(object): 8 9 def __init__(self, general_settings_loader): 10 self._initialize(DEFAULT, general_settings_loader) 11 12 def _create_overview(self, overview_id, overview_type, should_inform_of_update, general_settings_loader): 13 if overview_type == OverviewType.FSD: 14 return FsdDefaultOverview(should_inform_of_update) 15 if overview_type == OverviewType.YAML: 16 return YamlDefaultOverview(overview_id, should_inform_of_update, general_settings_loader) 17 18 def _initialize(self, default_overview_id, general_settings_loader): 19 self.default_overview_id = default_overview_id 20 self.overviews = {} 21 for overview_id, overview_type, should_inform_of_update in OVERVIEWS: 22 overview = self._create_overview(overview_id, overview_type, should_inform_of_update, general_settings_loader) 23 if overview: 24 self.overviews[overview_id] = overview 25 26 self.default_overview = self.overviews[self.default_overview_id] 27 self._initialize_other_presets() 28 29 def _initialize_other_presets(self): 30 self.presets_from_others = {} 31 current_preset_names = self.default_overview.all_presets.keys() 32 for overview_id, overview in self.overviews.iteritems(): 33 if overview_id != self.default_overview_id: 34 other_presets = overview.get_all_presets_data() 35 for preset_name, preset_data in other_presets.iteritems(): 36 if preset_name not in current_preset_names: 37 localized_name = overview.get_name(preset_name) 38 self.presets_from_others[preset_name] = (localized_name, preset_data) 39 40 def should_inform_of_update(self): 41 return self.default_overview.should_inform_of_update 42 43 def switch(self, default_overview_id, general_settings_loader): 44 self._initialize(default_overview_id, general_settings_loader) 45 46 def activate_default_overview(self, general_settings_loader): 47 if isinstance(self.default_overview, YamlDefaultOverview): 48 self.default_overview.general_settings_loader = general_settings_loader 49 self.default_overview.activate() 50 51 def get_old_preset(self, preset_name): 52 try: 53 return self.presets_from_others[preset_name] 54 except KeyError: 55 return (None, None) 56 57 def get_default_preset(self): 58 return self.default_overview.default_preset 59 60 def get_all_presets(self): 61 return self.default_overview.all_presets 62 63 def get_all_presets_data(self): 64 return {preset_name:self.get_preset_data(preset_name) for preset_name in self.get_all_presets()} 65 66 def get_default_preset_data(self): 67 return self.default_overview.get_default_preset_data() 68 69 def get_preset_name(self, name): 70 return self.default_overview.get_name(name) 71 72 def get_preset_name_with_category(self, name): 73 return self.default_overview.get_name_with_category(name) 74 75 def get_preset_description(self, name): 76 return self.default_overview.get_description(name) 77 78 def get_preset_category_id(self, name): 79 return self.default_overview.get_category_id(name) 80 81 def get_preset_data(self, name): 82 return self.default_overview.get_data(name) 83 84 def get_preset_names(self): 85 return self.default_overview.sorted_preset_names 86 87 def get_tabs(self): 88 return self.default_overview.default_tabs