addTabPopup.py (4743B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\inflight\overview\addTabPopup.py 2 from carbonui import uiconst 3 from carbonui.control.checkbox import Checkbox 4 from carbonui.control.combo import Combo 5 from carbonui.primitives.container import Container 6 from carbonui.primitives.containerAutoSize import ContainerAutoSize 7 from eve.client.script.ui.control.eveLabel import EveLabelMedium 8 from eve.client.script.ui.control.infoIcon import MoreInfoIcon 9 from eve.client.script.ui.inflight.overview import overviewUtil 10 from eve.client.script.ui.util.namedPopup import NamePopupWnd 11 from localization import GetByLabel 12 from overviewPresets import overviewSettingsConst 13 from player_messaging.client.ui_message import prompt_player_fsd_dialog 14 15 class AddTabPopup(NamePopupWnd): 16 default_width = 360 17 default_height = 350 18 default_minSize = (default_width, default_height) 19 default_maxLength = overviewSettingsConst.MAX_TAB_NAME_LENGTH 20 default_body = GetByLabel('UI/Overview/AddTabInstructions') 21 22 def ApplyAttributes(self, attributes): 23 self.overview_service = sm.GetService('overviewPresetSvc') 24 super(AddTabPopup, self).ApplyAttributes(attributes) 25 26 def ConstructLayout(self): 27 caption = GetByLabel('UI/Overview/AddTab') 28 self.SetCaption(caption) 29 self.label = GetByLabel('UI/Overview/TypeInLabel') 30 super(AddTabPopup, self).ConstructLayout() 31 32 def AddMainContainerOld(self): 33 return Container(parent=self.sr.main, align=uiconst.TOALL, padding=16) 34 35 def AddExtra(self, parent): 36 container = ContainerAutoSize(name='extra_container', parent=parent, align=uiconst.TOTOP) 37 self.overview_presets_combo = self._add_presets_configurator(parent=container, name='overview_presets', title=GetByLabel('UI/Overview/Filter'), description=GetByLabel('UI/Overview/ChooseOverviewPreset'), is_for_brackets=False) 38 self.bracket_presets_combo = self._add_presets_configurator(parent=container, name='bracket_presets', title=GetByLabel('UI/Overview/BracketFilter'), description=GetByLabel('UI/Overview/ChooseBracketPreset'), is_for_brackets=True) 39 self.new_window_checkbox = Checkbox(parent=container, padding=(0, 8, 0, 8), text=GetByLabel('UI/Overview/InNewWindow')) 40 41 def _add_presets_configurator(self, parent, name, title, description, is_for_brackets): 42 container = self._add_combo_container(parent, name) 43 self._add_combo_title(container, name, title, description) 44 combo = self._add_combo_dropdown(container, name, is_for_brackets) 45 return combo 46 47 def _add_combo_container(self, parent, name): 48 return ContainerAutoSize(name=name + '_container', parent=parent, align=uiconst.TOTOP, padBottom=8) 49 50 def _add_combo_title(self, parent, name, title, description): 51 title_container = Container(name=name + 'title_container', parent=parent, align=uiconst.TOTOP, padding=(0, 16, 0, 8), height=16) 52 EveLabelMedium(name=name + '_label', parent=title_container, align=uiconst.TOLEFT, text=title) 53 icon_container = ContainerAutoSize(name=name + '_icon_container', parent=title_container, align=uiconst.TOLEFT, padLeft=8) 54 MoreInfoIcon(name=name + '_description_icon', parent=icon_container, align=uiconst.CENTER, hint=description) 55 56 def _add_combo_dropdown(self, parent, name, is_for_brackets): 57 container = ContainerAutoSize(name=name + '_combo_container', parent=parent, align=uiconst.TOTOP) 58 options = [] 59 if is_for_brackets: 60 options += [(GetByLabel('UI/Overview/ShowAllBrackets'), overviewSettingsConst.BRACKET_FILTER_SHOWALL)] 61 selected = overviewSettingsConst.BRACKET_FILTER_SHOWALL 62 else: 63 selected = overviewUtil.GetDefaultFiltersSorted()[0] 64 options += overviewUtil.GetFilterComboOptions() 65 combo = Combo(name=name + '_combo', parent=container, align=uiconst.TOTOP, options=options, select=selected) 66 return combo 67 68 def Confirm(self, *args): 69 if not hasattr(self, 'newName'): 70 return 71 new_name = self.newName.GetValue() 72 error = self.funcValidator(new_name) 73 new_overview_preset = self.overview_presets_combo.GetValue() 74 new_bracket_preset = self.bracket_presets_combo.GetValue() 75 in_new_window = self.new_window_checkbox.GetValue() 76 if error: 77 prompt_player_fsd_dialog('CustomInfo', {'info': error}) 78 else: 79 self.result = (new_name, 80 new_overview_preset, 81 new_bracket_preset, 82 in_new_window) 83 self.SetModalResult(1) 84 85 def Cancel(self, *args): 86 self.result = (None, None, None) 87 self.SetModalResult(0)