dockPanelUtil.py (2026B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\mapView\dockPanelUtil.py 2 from carbonui import const as uiconst 3 from carbonui.uicore import uicore 4 from eve.client.script.ui.shared.mapView import dockPanelConst 5 6 def GetDockPanelManager(): 7 if getattr(uicore, 'dockablePanelManager', None) is None: 8 from eve.client.script.ui.shared.mapView.dockPanelManager import DockablePanelManager 9 uicore.dockablePanelManager = DockablePanelManager() 10 return uicore.dockablePanelManager 11 12 13 def GetPanelSettings(panelID): 14 defaultSettings = {'align': dockPanelConst.DEFAULT_ALIGN.get(panelID, uiconst.TOALL), 15 'dblToggleFullScreenAlign': uiconst.TOPLEFT, 16 'positionX': 0.5, 17 'positionY': 0.5, 18 'widthProportion': dockPanelConst.DEFAULT_WIDTH_PROPORTION.get(panelID, 0.8), 19 'heightProportion': 0.8, 20 'widthProportion_docked': dockPanelConst.DEFAULT_WIDTH_PROPORTION_DOCKED.get(panelID, 0.5), 21 'heightProportion_docked': 1.0, 22 'pushedBy': []} 23 if panelID: 24 charSetting = settings.char 25 try: 26 registered = charSetting.dockPanels.Get(panelID, {}) 27 except AttributeError: 28 charSetting.CreateGroup('dockPanels') 29 registered = charSetting.dockPanels.Get(panelID, {}) 30 31 defaultSettings.update(registered) 32 return defaultSettings 33 34 35 def HasPanelSettings(panelID): 36 if panelID: 37 try: 38 return bool(settings.char.dockPanels.Get(panelID, {})) 39 except AttributeError: 40 return False 41 42 return False 43 44 45 def RegisterPanelSettings(panelID, panelSettings): 46 settings.char.dockPanels.Set(panelID, panelSettings) 47 48 49 def SetPanelDefaultAlignMode(panelID, defaultAlignMode): 50 if HasPanelSettings(panelID): 51 return 52 panelSettings = GetPanelSettings(panelID) 53 panelSettings['align'] = defaultAlignMode 54 RegisterPanelSettings(panelID, panelSettings) 55 56 57 def GetPanelAlignMode(panelID): 58 return GetPanelSettings(panelID)['align']