UI/UserInterface.py

changeset 6337
c6af560e0039
parent 6300
cfb21ace8d09
child 6338
104ee21d765d
--- a/UI/UserInterface.py	Sat Jun 09 12:09:21 2018 +0200
+++ b/UI/UserInterface.py	Sat Jun 09 17:19:37 2018 +0200
@@ -546,6 +546,9 @@
             QDesktopServices.setUrlHandler("http", self.handleUrl)
             QDesktopServices.setUrlHandler("https", self.handleUrl)
         
+        from VirtualEnv.VirtualenvManager import VirtualenvManager
+        self.virtualenvManager = VirtualenvManager(self)
+        
         # register all relevant objects
         splash.showMessage(self.tr("Registering Objects..."))
         e5App().registerObject("UserInterface", self)
@@ -568,6 +571,7 @@
         e5App().registerObject("Symbols", self.symbolsViewer)
         e5App().registerObject("Numbers", self.numbersViewer)
         e5App().registerObject("DocuViewer", self.codeDocumentationViewer)
+        e5App().registerObject("VirtualEnvManager", self.virtualenvManager)
         
         # list of web addresses serving the versions file
         self.__httpAlternatives = Preferences.getUI("VersionsUrls6")
@@ -2414,6 +2418,24 @@
         self.pluginRepoAct.triggered.connect(self.showPluginsAvailable)
         self.actions.append(self.pluginRepoAct)
         
+        self.virtualenvConfigAct = E5Action(
+            self.tr('Virtualenv Configurator'),
+            UI.PixmapCache.getIcon("virtualenv.png"),
+            self.tr('&Virtualenv Configurator...'),
+            0, 0, self,
+            'virtualenv_configurator')
+        self.virtualenvConfigAct.setStatusTip(self.tr(
+            'Virtualenv Configurator'))
+        self.virtualenvConfigAct.setWhatsThis(self.tr(
+            """<b>Virtualenv Configurator</b>"""
+            """<p>This opens a dialog for entering all the parameters"""
+            """ needed to create a Python virtual environment using"""
+            """ virtualenv or pyvenv.</p>"""
+        ))
+        self.virtualenvConfigAct.triggered.connect(
+            self.virtualenvManager.createVirtualEnv)
+        self.actions.append(self.virtualenvConfigAct)
+        
         # initialize viewmanager actions
         self.viewmanager.initActions()
         
@@ -2671,6 +2693,8 @@
         self.wizardsMenuAct.setEnabled(False)
         self.__menus["macros"] = self.viewmanager.initMacroMenu()
         self.__menus["extras"].addMenu(self.__menus["macros"])
+        self.__menus["extras"].addSeparator()
+        self.__menus["extras"].addAction(self.virtualenvConfigAct)
         self.toolGroupsMenu = QMenu(self.tr("Select Tool Group"), self)
         self.toolGroupsMenu.aboutToShow.connect(self.__showToolGroupsMenu)
         self.toolGroupsMenu.triggered.connect(self.__toolGroupSelected)
@@ -2870,6 +2894,8 @@
         toolstb.addAction(self.hexEditorAct)
         toolstb.addAction(self.iconEditorAct)
         toolstb.addAction(self.snapshotAct)
+        toolstb.addSeparator()
+        toolstb.addAction(self.virtualenvConfigAct)
         if self.webBrowserAct:
             toolstb.addSeparator()
             toolstb.addAction(self.webBrowserAct)

eric ide

mercurial