src/eric7/Tools/TrayStarter.py

branch
eric7
changeset 9413
80c06d472826
parent 9377
b9c8dc3b7da1
child 9473
3f23dbf37dbe
equal deleted inserted replaced
9412:45e7bb09c120 9413:80c06d472826
14 14
15 from PyQt6.QtCore import QProcess, QSettings 15 from PyQt6.QtCore import QProcess, QSettings
16 from PyQt6.QtGui import QCursor 16 from PyQt6.QtGui import QCursor
17 from PyQt6.QtWidgets import QSystemTrayIcon, QMenu, QDialog, QApplication 17 from PyQt6.QtWidgets import QSystemTrayIcon, QMenu, QDialog, QApplication
18 18
19 from EricWidgets import EricMessageBox 19 from eric7.EricWidgets import EricMessageBox
20 from EricWidgets.EricApplication import ericApp 20 from eric7.EricWidgets.EricApplication import ericApp
21 21
22 import Globals 22 from eric7 import Globals, Preferences, Utilities
23 import UI.PixmapCache 23 from eric7.EricGui import EricPixmapCache
24 from UI.Info import Version, Program 24 from eric7.UI.Info import Version, Program
25
26 import Utilities
27 import Preferences
28 25
29 26
30 class TrayStarter(QSystemTrayIcon): 27 class TrayStarter(QSystemTrayIcon):
31 """ 28 """
32 Class implementing a starter for the system tray. 29 Class implementing a starter for the system tray.
38 35
39 @param settingsDir directory to be used for the settings files 36 @param settingsDir directory to be used for the settings files
40 @type str 37 @type str
41 """ 38 """
42 super().__init__( 39 super().__init__(
43 UI.PixmapCache.getIcon(Preferences.getTrayStarter("TrayStarterIcon")) 40 EricPixmapCache.getIcon(Preferences.getTrayStarter("TrayStarterIcon"))
44 ) 41 )
45 42
46 self.settingsDir = settingsDir 43 self.settingsDir = settingsDir
47 44
48 self.maxMenuFilePathLen = 75 45 self.maxMenuFilePathLen = 75
95 ) 92 )
96 self.__menu.addAction(self.tr("Python re editor"), self.__startPyRe) 93 self.__menu.addAction(self.tr("Python re editor"), self.__startPyRe)
97 self.__menu.addSeparator() 94 self.__menu.addSeparator()
98 95
99 self.__menu.addAction( 96 self.__menu.addAction(
100 UI.PixmapCache.getIcon("uiPreviewer"), 97 EricPixmapCache.getIcon("uiPreviewer"),
101 self.tr("UI Previewer"), 98 self.tr("UI Previewer"),
102 self.__startUIPreviewer, 99 self.__startUIPreviewer,
103 ) 100 )
104 self.__menu.addAction( 101 self.__menu.addAction(
105 UI.PixmapCache.getIcon("trPreviewer"), 102 EricPixmapCache.getIcon("trPreviewer"),
106 self.tr("Translations Previewer"), 103 self.tr("Translations Previewer"),
107 self.__startTRPreviewer, 104 self.__startTRPreviewer,
108 ) 105 )
109 self.__menu.addAction( 106 self.__menu.addAction(
110 UI.PixmapCache.getIcon("unittest"), self.tr("Testing"), self.__startTesting 107 EricPixmapCache.getIcon("unittest"), self.tr("Testing"), self.__startTesting
111 ) 108 )
112 self.__menu.addSeparator() 109 self.__menu.addSeparator()
113 110
114 self.__menu.addAction( 111 self.__menu.addAction(
115 UI.PixmapCache.getIcon("diffFiles"), 112 EricPixmapCache.getIcon("diffFiles"),
116 self.tr("Compare Files"), 113 self.tr("Compare Files"),
117 self.__startDiff, 114 self.__startDiff,
118 ) 115 )
119 self.__menu.addAction( 116 self.__menu.addAction(
120 UI.PixmapCache.getIcon("compareFiles"), 117 EricPixmapCache.getIcon("compareFiles"),
121 self.tr("Compare Files side by side"), 118 self.tr("Compare Files side by side"),
122 self.__startCompare, 119 self.__startCompare,
123 ) 120 )
124 self.__menu.addSeparator() 121 self.__menu.addSeparator()
125 122
126 self.__menu.addAction( 123 self.__menu.addAction(
127 UI.PixmapCache.getIcon("sqlBrowser"), 124 EricPixmapCache.getIcon("sqlBrowser"),
128 self.tr("SQL Browser"), 125 self.tr("SQL Browser"),
129 self.__startSqlBrowser, 126 self.__startSqlBrowser,
130 ) 127 )
131 self.__menu.addSeparator() 128 self.__menu.addSeparator()
132 129
133 self.__menu.addAction( 130 self.__menu.addAction(
134 UI.PixmapCache.getIcon("ericSnap"), 131 EricPixmapCache.getIcon("ericSnap"),
135 self.tr("Snapshot"), 132 self.tr("Snapshot"),
136 self.__startSnapshot, 133 self.__startSnapshot,
137 ) 134 )
138 self.__menu.addAction( 135 self.__menu.addAction(
139 UI.PixmapCache.getIcon("iconEditor"), 136 EricPixmapCache.getIcon("iconEditor"),
140 self.tr("Icon Editor"), 137 self.tr("Icon Editor"),
141 self.__startIconEditor, 138 self.__startIconEditor,
142 ) 139 )
143 self.__menu.addSeparator() 140 self.__menu.addSeparator()
144 141
145 self.__menu.addAction( 142 self.__menu.addAction(
146 UI.PixmapCache.getIcon("pluginInstall"), 143 EricPixmapCache.getIcon("pluginInstall"),
147 self.tr("Install Plugin"), 144 self.tr("Install Plugin"),
148 self.__startPluginInstall, 145 self.__startPluginInstall,
149 ) 146 )
150 self.__menu.addAction( 147 self.__menu.addAction(
151 UI.PixmapCache.getIcon("pluginUninstall"), 148 EricPixmapCache.getIcon("pluginUninstall"),
152 self.tr("Uninstall Plugin"), 149 self.tr("Uninstall Plugin"),
153 self.__startPluginUninstall, 150 self.__startPluginUninstall,
154 ) 151 )
155 self.__menu.addAction( 152 self.__menu.addAction(
156 UI.PixmapCache.getIcon("pluginRepository"), 153 EricPixmapCache.getIcon("pluginRepository"),
157 self.tr("Plugin Repository"), 154 self.tr("Plugin Repository"),
158 self.__startPluginRepository, 155 self.__startPluginRepository,
159 ) 156 )
160 self.__menu.addSeparator() 157 self.__menu.addSeparator()
161 158
162 self.__menu.addAction( 159 self.__menu.addAction(
163 UI.PixmapCache.getIcon("virtualenv"), 160 EricPixmapCache.getIcon("virtualenv"),
164 self.tr("Virtual Environments"), 161 self.tr("Virtual Environments"),
165 self.__startVirtualenvManager, 162 self.__startVirtualenvManager,
166 ) 163 )
167 self.__menu.addSeparator() 164 self.__menu.addSeparator()
168 165
169 self.__menu.addAction( 166 self.__menu.addAction(
170 UI.PixmapCache.getIcon("configure"), 167 EricPixmapCache.getIcon("configure"),
171 self.tr("Preferences"), 168 self.tr("Preferences"),
172 self.__startPreferences, 169 self.__startPreferences,
173 ) 170 )
174 self.__menu.addSeparator() 171 self.__menu.addSeparator()
175 172
176 self.__menu.addAction( 173 self.__menu.addAction(
177 UI.PixmapCache.getIcon("editor"), 174 EricPixmapCache.getIcon("editor"),
178 self.tr("eric Mini Editor"), 175 self.tr("eric Mini Editor"),
179 self.__startMiniEditor, 176 self.__startMiniEditor,
180 ) 177 )
181 self.__menu.addAction( 178 self.__menu.addAction(
182 UI.PixmapCache.getIcon("hexEditor"), 179 EricPixmapCache.getIcon("hexEditor"),
183 self.tr("eric Hex Editor"), 180 self.tr("eric Hex Editor"),
184 self.__startHexEditor, 181 self.__startHexEditor,
185 ) 182 )
186 self.__menu.addAction( 183 self.__menu.addAction(
187 UI.PixmapCache.getIcon("shell"), 184 EricPixmapCache.getIcon("shell"),
188 self.tr("eric Shell Window"), 185 self.tr("eric Shell Window"),
189 self.__startShell, 186 self.__startShell,
190 ) 187 )
191 self.__menu.addSeparator() 188 self.__menu.addSeparator()
192 189
193 self.__menu.addAction( 190 self.__menu.addAction(
194 UI.PixmapCache.getIcon("ericWeb"), 191 EricPixmapCache.getIcon("ericWeb"),
195 self.tr("eric Web Browser"), 192 self.tr("eric Web Browser"),
196 self.__startWebBrowser, 193 self.__startWebBrowser,
197 ) 194 )
198 self.__menu.addAction( 195 self.__menu.addAction(
199 UI.PixmapCache.getIcon("ericWeb"), 196 EricPixmapCache.getIcon("ericWeb"),
200 self.tr("eric Web Browser (with QtHelp)"), 197 self.tr("eric Web Browser (with QtHelp)"),
201 self.__startWebBrowserQtHelp, 198 self.__startWebBrowserQtHelp,
202 ) 199 )
203 self.__menu.addAction( 200 self.__menu.addAction(
204 UI.PixmapCache.getIcon("ericWeb"), 201 EricPixmapCache.getIcon("ericWeb"),
205 self.tr("eric Web Browser (Private Mode)"), 202 self.tr("eric Web Browser (Private Mode)"),
206 self.__startWebBrowserPrivate, 203 self.__startWebBrowserPrivate,
207 ) 204 )
208 self.__menu.addSeparator() 205 self.__menu.addSeparator()
209 206
216 # recent projects 213 # recent projects
217 self.menuRecentProjectsAct = self.__menu.addMenu(self.recentProjectsMenu) 214 self.menuRecentProjectsAct = self.__menu.addMenu(self.recentProjectsMenu)
218 self.__menu.addSeparator() 215 self.__menu.addSeparator()
219 216
220 self.__menu.addAction( 217 self.__menu.addAction(
221 UI.PixmapCache.getIcon("erict"), self.tr("eric IDE"), self.__startEric 218 EricPixmapCache.getIcon("erict"), self.tr("eric IDE"), self.__startEric
222 ) 219 )
223 self.__menu.addSeparator() 220 self.__menu.addSeparator()
224 221
225 self.__menu.addAction( 222 self.__menu.addAction(
226 UI.PixmapCache.getIcon("configure"), 223 EricPixmapCache.getIcon("configure"),
227 self.tr("Configure Tray Starter"), 224 self.tr("Configure Tray Starter"),
228 self.__showPreferences, 225 self.__showPreferences,
229 ) 226 )
230 self.__menu.addSeparator() 227 self.__menu.addSeparator()
231 228
232 self.__menu.addAction( 229 self.__menu.addAction(
233 UI.PixmapCache.getIcon("exit"), self.tr("Quit"), ericApp().quit 230 EricPixmapCache.getIcon("exit"), self.tr("Quit"), ericApp().quit
234 ) 231 )
235 232
236 def __loadRecentProjects(self): 233 def __loadRecentProjects(self):
237 """ 234 """
238 Private method to load the recently opened project filenames. 235 Private method to load the recently opened project filenames.
532 529
533 def __showPreferences(self): 530 def __showPreferences(self):
534 """ 531 """
535 Private slot to set the preferences. 532 Private slot to set the preferences.
536 """ 533 """
537 from Preferences.ConfigurationDialog import ( 534 from eric7.Preferences.ConfigurationDialog import (
538 ConfigurationDialog, 535 ConfigurationDialog,
539 ConfigurationMode, 536 ConfigurationMode,
540 ) 537 )
541 538
542 dlg = ConfigurationDialog( 539 dlg = ConfigurationDialog(
559 def preferencesChanged(self): 556 def preferencesChanged(self):
560 """ 557 """
561 Public slot to handle a change of preferences. 558 Public slot to handle a change of preferences.
562 """ 559 """
563 self.setIcon( 560 self.setIcon(
564 UI.PixmapCache.getIcon(Preferences.getTrayStarter("TrayStarterIcon")) 561 EricPixmapCache.getIcon(Preferences.getTrayStarter("TrayStarterIcon"))
565 ) 562 )
566 563
567 def __about(self): 564 def __about(self):
568 """ 565 """
569 Private slot to handle the About dialog. 566 Private slot to handle the About dialog.
570 """ 567 """
571 from Plugins.AboutPlugin.AboutDialog import AboutDialog 568 from eric7.Plugins.AboutPlugin.AboutDialog import AboutDialog
572 569
573 dlg = AboutDialog() 570 dlg = AboutDialog()
574 dlg.exec() 571 dlg.exec()
575 572
576 def __showVersions(self): 573 def __showVersions(self):
610 QSCINTILLA_VERSION_STR 607 QSCINTILLA_VERSION_STR
611 ) 608 )
612 609
613 # webengine (chromium) version 610 # webengine (chromium) version
614 with contextlib.suppress(ImportError): 611 with contextlib.suppress(ImportError):
615 from WebBrowser.Tools import WebBrowserTools 612 from eric7.WebBrowser.Tools import WebBrowserTools
616 613
617 ( 614 (
618 chromiumVersion, 615 chromiumVersion,
619 chromiumSecurityVersion, 616 chromiumSecurityVersion,
620 ) = WebBrowserTools.getWebEngineVersions()[0:2] 617 ) = WebBrowserTools.getWebEngineVersions()[0:2]

eric ide

mercurial