eric7/UI/UserInterface.py

branch
eric7
changeset 8414
8c3b52d1b4b6
parent 8389
1298e767879c
child 8419
32506bc52886
diff -r 65ed18753c40 -r 8c3b52d1b4b6 eric7/UI/UserInterface.py
--- a/eric7/UI/UserInterface.py	Tue Jun 08 19:41:08 2021 +0200
+++ b/eric7/UI/UserInterface.py	Wed Jun 09 17:13:01 2021 +0200
@@ -243,31 +243,39 @@
         # load the view profiles
         self.profiles = Preferences.getUI("ViewProfiles")
         
+        splash.showMessage(self.tr("Initializing Basic Services..."))
+        
         # Generate the conda interface
+        logging.debug("Creating Conda Interface...")
         from CondaInterface.Conda import Conda
         self.condaInterface = Conda(self)
         ericApp().registerObject("Conda", self.condaInterface)
         
         # Generate the pip interface
+        logging.debug("Creating Pip Interface...")
         from PipInterface.Pip import Pip
         self.pipInterface = Pip(self)
         ericApp().registerObject("Pip", self.pipInterface)
         
         # Generate the virtual environment manager
+        logging.debug("Creating Virtual Environments Manager...")
         from VirtualEnv.VirtualenvManager import VirtualenvManager
         self.virtualenvManager = VirtualenvManager(self)
         # register it early because it is needed very soon
         ericApp().registerObject("VirtualEnvManager", self.virtualenvManager)
         
         # Generate an empty project object and multi project object
+        logging.debug("Creating Project Manager...")
         from Project.Project import Project
         self.project = Project(self)
         ericApp().registerObject("Project", self.project)
         
         from MultiProject.MultiProject import MultiProject
+        logging.debug("Creating Multi-Project Manager...")
         self.multiProject = MultiProject(self.project, self)
         
         # Generate the debug server object
+        logging.debug("Creating Debug Server...")
         from Debugger.DebugServer import DebugServer
         debugServer = DebugServer(self.__originalPathString,
                                   project=self.project, parent=self)
@@ -300,9 +308,12 @@
         self.__webBrowserClient = None
         self.__webBrowserSAName = QUuid.createUuid().toString()[1:-1]
         
+        logging.debug("Creating Application Objects...")
+        self.__createObjects(debugServer)
+        
         # Create the main window now so that we can connect QActions to it.
         logging.debug("Creating Layout...")
-        self.__createLayout(debugServer)
+        self.__createLayout()
         self.__currentRightWidget = None
         self.__currentBottomWidget = None
         
@@ -767,18 +778,164 @@
         """
         return self.__networkManager
     
-    def __createLayout(self, debugServer):
-        """
-        Private method to create the layout of the various windows.
+    def __createObjects(self, debugServer):
+        """
+        Private method to create the various objects of the application.
         
         @param debugServer reference to the debug server object
-        @exception ValueError raised to indicate an invalid layout type
+        @type DebugServer
         """
         # Create the view manager depending on the configuration setting
         logging.debug("Creating Viewmanager...")
         import ViewManager
         self.viewmanager = ViewManager.factory(
             self, self, debugServer, self.pluginManager)
+        
+        # Create previewer
+        logging.debug("Creating Previewer...")
+        from .Previewer import Previewer
+        self.__previewer = Previewer(self.viewmanager)
+        
+        # Create AST viewer
+        logging.debug("Creating Python AST Viewer")
+        from .PythonAstViewer import PythonAstViewer
+        self.__astViewer = PythonAstViewer(self.viewmanager)
+        
+        # Create DIS viewer
+        logging.debug("Creating Python Disassembly Viewer")
+        from .PythonDisViewer import PythonDisViewer
+        self.__disViewer = PythonDisViewer(self.viewmanager)
+        
+        # Create the project browser
+        logging.debug("Creating Project Browser...")
+        from Project.ProjectBrowser import ProjectBrowser
+        self.projectBrowser = ProjectBrowser(self.project)
+        
+        # Create the multi project browser
+        logging.debug("Creating Multiproject Browser...")
+        from MultiProject.MultiProjectBrowser import MultiProjectBrowser
+        self.multiProjectBrowser = MultiProjectBrowser(
+            self.multiProject, self.project)
+        
+        # Create the task viewer part of the user interface
+        logging.debug("Creating Task Viewer...")
+        from Tasks.TaskViewer import TaskViewer
+        self.taskViewer = TaskViewer(None, self.project)
+        
+        # Create the log viewer part of the user interface
+        logging.debug("Creating Log Viewer...")
+        from .LogView import LogViewer
+        self.logViewer = LogViewer(self)
+        
+        # Create the debug viewer
+        logging.debug("Creating Debug Viewer...")
+        from Debugger.DebugViewer import DebugViewer
+        self.debugViewer = DebugViewer(debugServer)
+        
+        # Create the shell
+        logging.debug("Creating Shell...")
+        from QScintilla.Shell import ShellAssembly
+        self.shellAssembly = ShellAssembly(
+            debugServer, self.viewmanager, self.project, True)
+        self.shell = self.shellAssembly.shell()
+        
+        if Preferences.getUI("ShowTemplateViewer"):
+            # Create the template viewer part of the user interface
+            logging.debug("Creating Template Viewer...")
+            from Templates.TemplateViewer import TemplateViewer
+            self.templateViewer = TemplateViewer(
+                None, self.viewmanager)
+        else:
+            logging.debug("Template Viewer disabled")
+            self.templateViewer = None
+        
+        if Preferences.getUI("ShowFileBrowser"):
+            # Create the file browser
+            logging.debug("Creating File Browser...")
+            from .Browser import Browser
+            self.browser = Browser()
+        else:
+            logging.debug("File Browser disabled")
+            self.browser = None
+        
+        if Preferences.getUI("ShowSymbolsViewer"):
+            # Create the symbols viewer
+            logging.debug("Creating Symbols Viewer...")
+            from .SymbolsWidget import SymbolsWidget
+            self.symbolsViewer = SymbolsWidget()
+        else:
+            logging.debug("Symbols Viewer disabled")
+            self.symbolsViewer = None
+        
+        if Preferences.getUI("ShowCodeDocumentationViewer"):
+            # Create the code documentation viewer
+            logging.debug("Creating Code Documentation Viewer...")
+            from .CodeDocumentationViewer import CodeDocumentationViewer
+            self.codeDocumentationViewer = CodeDocumentationViewer(self)
+        else:
+            logging.debug("Code Documentation Viewer disabled")
+            self.codeDocumentationViewer = None
+        
+        if Preferences.getUI("ShowPyPIPackageManager"):
+            # Create the PyPI package manager
+            logging.debug("Creating PyPI Package Manager...")
+            from PipInterface.PipPackagesWidget import PipPackagesWidget
+            self.pipWidget = PipPackagesWidget(self.pipInterface)
+        else:
+            logging.debug("PyPI Package Manager disabled")
+            self.pipWidget = None
+        
+        if Preferences.getUI("ShowCondaPackageManager"):
+            # Create the conda package manager
+            logging.debug("Creating Conda Package Manager...")
+            from CondaInterface.CondaPackagesWidget import CondaPackagesWidget
+            self.condaWidget = CondaPackagesWidget(self.condaInterface)
+        else:
+            logging.debug("Conda Package Manager disabled")
+            self.condaWidget = None
+        
+        if Preferences.getUI("ShowCooperation"):
+            # Create the chat part of the user interface
+            logging.debug("Creating Chat Widget...")
+            from Cooperation.ChatWidget import ChatWidget
+            self.cooperation = ChatWidget(self)
+        else:
+            logging.debug("Chat Widget disabled")
+            self.cooperation = None
+        
+        if Preferences.getUI("ShowIrc"):
+            # Create the IRC part of the user interface
+            logging.debug("Creating IRC Widget...")
+            from Network.IRC.IrcWidget import IrcWidget
+            self.irc = IrcWidget(self)
+        else:
+            logging.debug("IRC Widget disabled")
+            self.irc = None
+        
+        if Preferences.getUI("ShowMicroPython"):
+            # Create the MicroPython part of the user interface
+            logging.debug("Creating MicroPython Widget...")
+            from MicroPython.MicroPythonWidget import MicroPythonWidget
+            self.microPythonWidget = MicroPythonWidget(self)
+        else:
+            logging.debug("MicroPython Widget disabled")
+            self.microPythonWidget = None
+        
+        if Preferences.getUI("ShowNumbersViewer"):
+            # Create the numbers viewer
+            logging.debug("Creating Numbers Viewer...")
+            from .NumbersWidget import NumbersWidget
+            self.numbersViewer = NumbersWidget()
+        else:
+            logging.debug("Numbers Viewer disabled")
+            self.numbersViewer = None
+    
+    def __createLayout(self):
+        """
+        Private method to create the layout of the various windows.
+        
+        @exception ValueError raised to indicate an invalid layout type
+        """
         leftWidget = QWidget()
         layout = QVBoxLayout()
         layout.setContentsMargins(1, 1, 1, 1)
@@ -796,44 +953,31 @@
         splitter.addWidget(leftWidget)
         self.setCentralWidget(splitter)
         
-        # Create previewer
-        logging.debug("Creating Previewer...")
-        from .Previewer import Previewer
-        self.__previewer = Previewer(self.viewmanager, splitter)
+        self.__previewer.setSplitter(splitter)
         splitter.addWidget(self.__previewer)
         
-        # Create AST viewer
-        logging.debug("Creating Python AST Viewer")
-        from .PythonAstViewer import PythonAstViewer
-        self.__astViewer = PythonAstViewer(self.viewmanager, splitter)
         splitter.addWidget(self.__astViewer)
         
-        # Create DIS viewer
-        logging.debug("Creating Python Disassembly Viewer")
-        from .PythonDisViewer import PythonDisViewer
-        self.__disViewer = PythonDisViewer(self.viewmanager, parent=splitter)
         splitter.addWidget(self.__disViewer)
         
         # Create layout with toolbox windows embedded in dock windows
         if self.__layoutType == "Toolboxes":
             logging.debug("Creating toolboxes...")
-            self.__createToolboxesLayout(debugServer)
+            self.__createToolboxesLayout()
         
         # Create layout with sidebar windows embedded in dock windows
         elif self.__layoutType == "Sidebars":
             logging.debug("Creating sidebars...")
-            self.__createSidebarsLayout(debugServer)
+            self.__createSidebarsLayout()
         
         else:
             raise ValueError("Wrong layout type given ({0})".format(
                 self.__layoutType))
         logging.debug("Created Layout")
 
-    def __createToolboxesLayout(self, debugServer):
+    def __createToolboxesLayout(self):
         """
         Private method to create the Toolboxes layout.
-        
-        @param debugServer reference to the debug server object
         """
         from EricWidgets.EricToolBox import (
             EricVerticalToolBox, EricHorizontalToolBox
@@ -869,95 +1013,63 @@
         ## Populate the left toolbox
         ####################################################
         
-        # Create the project browser
-        logging.debug("Creating Project Browser...")
-        from Project.ProjectBrowser import ProjectBrowser
-        self.projectBrowser = ProjectBrowser(self.project)
         self.lToolbox.addItem(self.projectBrowser,
                               UI.PixmapCache.getIcon("projectViewer"),
                               self.tr("Project-Viewer"))
 
-        # Create the multi project browser
-        logging.debug("Creating Multiproject Browser...")
-        from MultiProject.MultiProjectBrowser import MultiProjectBrowser
-        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject,
-                                                       self.project)
         self.lToolbox.addItem(self.multiProjectBrowser,
                               UI.PixmapCache.getIcon("multiProjectViewer"),
                               self.tr("Multiproject-Viewer"))
         
-        if Preferences.getUI("ShowTemplateViewer"):
-            # Create the template viewer part of the user interface
-            logging.debug("Creating Template Viewer...")
-            from Templates.TemplateViewer import TemplateViewer
-            self.templateViewer = TemplateViewer(None,
-                                                 self.viewmanager)
+        if self.templateViewer:
             self.lToolbox.addItem(self.templateViewer,
                                   UI.PixmapCache.getIcon("templateViewer"),
                                   self.tr("Template-Viewer"))
+
+        if self.browser:
+            self.lToolbox.addItem(self.browser,
+                                  UI.PixmapCache.getIcon("browser"),
+                                  self.tr("File-Browser"))
+        
+        if self.symbolsViewer:
+            self.lToolbox.addItem(self.symbolsViewer,
+                                  UI.PixmapCache.getIcon("symbols"),
+                                  self.tr("Symbols"))
         
         ####################################################
         ## Populate the right toolbox
         ####################################################
         
-        if Preferences.getUI("ShowCodeDocumentationViewer"):
-            # Create the code documentation viewer
-            logging.debug("Creating Code Documentation Viewer...")
-            from .CodeDocumentationViewer import CodeDocumentationViewer
-            self.codeDocumentationViewer = CodeDocumentationViewer(self)
+        if self.codeDocumentationViewer:
             self.rToolbox.addItem(self.codeDocumentationViewer,
                                   UI.PixmapCache.getIcon("codeDocuViewer"),
                                   self.tr("Code Documentation Viewer"))
         
-        # Create the debug viewer
-        logging.debug("Creating Debug Viewer...")
-        from Debugger.DebugViewer import DebugViewer
-        self.debugViewer = DebugViewer(debugServer)
         self.rToolbox.addItem(self.debugViewer,
                               UI.PixmapCache.getIcon("debugViewer"),
                               self.tr("Debug-Viewer"))
         
-        if Preferences.getUI("ShowPyPIPackageManager"):
-            # Create the PyPI package manager
-            logging.debug("Creating PyPI Package Manager...")
-            from PipInterface.PipPackagesWidget import PipPackagesWidget
-            self.pipWidget = PipPackagesWidget(self.pipInterface)
+        if self.pipWidget:
             self.rToolbox.addItem(self.pipWidget,
                                   UI.PixmapCache.getIcon("pypi"),
                                   self.tr("PyPI"))
         
-        if Preferences.getUI("ShowCondaPackageManager"):
-            # Create the conda package manager
-            logging.debug("Creating Conda Package Manager...")
-            from CondaInterface.CondaPackagesWidget import CondaPackagesWidget
-            self.condaWidget = CondaPackagesWidget(self.condaInterface)
+        if self.condaWidget:
             self.rToolbox.addItem(self.condaWidget,
                                   UI.PixmapCache.getIcon("miniconda"),
                                   self.tr("Conda"))
         
-        if Preferences.getUI("ShowCooperation"):
-            # Create the chat part of the user interface
-            logging.debug("Creating Chat Widget...")
-            from Cooperation.ChatWidget import ChatWidget
-            self.cooperation = ChatWidget(self)
+        if self.cooperation:
             self.rToolbox.addItem(self.cooperation,
                                   UI.PixmapCache.getIcon("cooperation"),
                                   self.tr("Cooperation"))
         
-        if Preferences.getUI("ShowIrc"):
-            # Create the IRC part of the user interface
-            logging.debug("Creating IRC Widget...")
-            from Network.IRC.IrcWidget import IrcWidget
-            self.irc = IrcWidget(self)
+        if self.irc:
             self.rToolbox.addItem(self.irc,
                                   UI.PixmapCache.getIcon("irc"),
                                   self.tr("IRC"))
         
-        if Preferences.getUI("ShowMicroPython"):
-            # Create the MicroPython part of the user interface
-            logging.debug("Creating MicroPython Widget...")
-            from MicroPython.MicroPythonWidget import MicroPythonWidget
-            self.microPythonWidget = MicroPythonWidget(self)
+        if self.microPythonWidget:
             self.rToolbox.addItem(self.microPythonWidget,
                                   UI.PixmapCache.getIcon("micropython"),
                                   self.tr("MicroPython"))
@@ -966,45 +1078,15 @@
         ## Populate the bottom toolbox
         ####################################################
         
-        # Create the task viewer part of the user interface
-        logging.debug("Creating Task Viewer...")
-        from Tasks.TaskViewer import TaskViewer
-        self.taskViewer = TaskViewer(None, self.project)
         self.hToolbox.addItem(self.taskViewer,
                               UI.PixmapCache.getIcon("task"),
                               self.tr("Task-Viewer"))
 
-        # Create the log viewer part of the user interface
-        logging.debug("Creating Log Viewer...")
-        from .LogView import LogViewer
-        self.logViewer = LogViewer(self)
         self.hToolbox.addItem(self.logViewer,
                               UI.PixmapCache.getIcon("logViewer"),
                               self.tr("Log-Viewer"))
-
-        if Preferences.getUI("ShowFileBrowser"):
-            # Create the file browser
-            logging.debug("Creating File Browser...")
-            from .Browser import Browser
-            self.browser = Browser()
-            self.lToolbox.addItem(self.browser,
-                                  UI.PixmapCache.getIcon("browser"),
-                                  self.tr("File-Browser"))
-        
-        if Preferences.getUI("ShowSymbolsViewer"):
-            # Create the symbols viewer
-            logging.debug("Creating Symbols Viewer...")
-            from .SymbolsWidget import SymbolsWidget
-            self.symbolsViewer = SymbolsWidget()
-            self.lToolbox.addItem(self.symbolsViewer,
-                                  UI.PixmapCache.getIcon("symbols"),
-                                  self.tr("Symbols"))
-        
-        if Preferences.getUI("ShowNumbersViewer"):
-            # Create the numbers viewer
-            logging.debug("Creating Numbers Viewer...")
-            from .NumbersWidget import NumbersWidget
-            self.numbersViewer = NumbersWidget()
+        
+        if self.numbersViewer:
             self.hToolbox.addItem(self.numbersViewer,
                                   UI.PixmapCache.getIcon("numbers"),
                                   self.tr("Numbers"))
@@ -1013,8 +1095,6 @@
         ## Populate the configurable widgets
         ####################################################
         
-        # Create the shell
-        logging.debug("Creating Shell...")
         self.__shellPosition = Preferences.getUI("ShellPosition")
         if self.__shellPosition == "left":
             self.__shellParent = self.lToolboxDock
@@ -1022,10 +1102,6 @@
             self.__shellParent = self.rToolboxDock
         else:
             self.__shellParent = self.hToolboxDock
-        from QScintilla.Shell import ShellAssembly
-        self.shellAssembly = ShellAssembly(
-            debugServer, self.viewmanager, self.project, True)
-        self.shell = self.shellAssembly.shell()
         self.__shellParent.widget().insertItem(
             0, self.shellAssembly, UI.PixmapCache.getIcon("shell"),
             self.tr("Shell"))
@@ -1038,11 +1114,9 @@
         self.rToolbox.setCurrentIndex(0)
         self.hToolbox.setCurrentIndex(0)
         
-    def __createSidebarsLayout(self, debugServer):
+    def __createSidebarsLayout(self):
         """
         Private method to create the Sidebars layout.
-        
-        @param debugServer reference to the debug server object
         """
         from EricWidgets.EricSideBar import EricSideBar, EricSideBarSide
         
@@ -1062,99 +1136,67 @@
         ## Populate the left side bar
         ####################################################
         
-        # Create the project browser
-        logging.debug("Creating Project Browser...")
-        from Project.ProjectBrowser import ProjectBrowser
-        self.projectBrowser = ProjectBrowser(self.project)
         self.leftSidebar.addTab(
             self.projectBrowser,
             UI.PixmapCache.getIcon("projectViewer"),
             self.tr("Project-Viewer"))
 
-        # Create the multi project browser
-        logging.debug("Creating Multiproject Browser...")
-        from MultiProject.MultiProjectBrowser import MultiProjectBrowser
-        self.multiProjectBrowser = MultiProjectBrowser(self.multiProject,
-                                                       self.project)
         self.leftSidebar.addTab(
             self.multiProjectBrowser,
             UI.PixmapCache.getIcon("multiProjectViewer"),
             self.tr("Multiproject-Viewer"))
 
-        if Preferences.getUI("ShowTemplateViewer"):
-            # Create the template viewer part of the user interface
-            logging.debug("Creating Template Viewer...")
-            from Templates.TemplateViewer import TemplateViewer
-            self.templateViewer = TemplateViewer(None,
-                                                 self.viewmanager)
+        if self.templateViewer:
             self.leftSidebar.addTab(
                 self.templateViewer,
                 UI.PixmapCache.getIcon("templateViewer"),
                 self.tr("Template-Viewer"))
 
+        if self.browser:
+            self.leftSidebar.addTab(self.browser,
+                                    UI.PixmapCache.getIcon("browser"),
+                                    self.tr("File-Browser"))
+        
+        if self.symbolsViewer:
+            self.leftSidebar.addTab(self.symbolsViewer,
+                                    UI.PixmapCache.getIcon("symbols"),
+                                    self.tr("Symbols"))
+
         ####################################################
         ## Populate the right side bar
         ####################################################
         
-        if Preferences.getUI("ShowCodeDocumentationViewer"):
-            # Create the code documentation viewer
-            logging.debug("Creating Code Documentation Viewer...")
-            from .CodeDocumentationViewer import CodeDocumentationViewer
-            self.codeDocumentationViewer = CodeDocumentationViewer(self)
+        if self.codeDocumentationViewer:
             self.rightSidebar.addTab(
                 self.codeDocumentationViewer,
                 UI.PixmapCache.getIcon("codeDocuViewer"),
                 self.tr("Code Documentation Viewer"))
         
-        # Create the debug viewer
-        logging.debug("Creating Debug Viewer...")
-        from Debugger.DebugViewer import DebugViewer
-        self.debugViewer = DebugViewer(debugServer)
         self.rightSidebar.addTab(
             self.debugViewer, UI.PixmapCache.getIcon("debugViewer"),
             self.tr("Debug-Viewer"))
 
-        if Preferences.getUI("ShowPyPIPackageManager"):
-            # Create the PyPI package manager
-            logging.debug("Creating PyPI Package Manager...")
-            from PipInterface.PipPackagesWidget import PipPackagesWidget
-            self.pipWidget = PipPackagesWidget(self.pipInterface)
+        if self.pipWidget:
             self.rightSidebar.addTab(
                 self.pipWidget, UI.PixmapCache.getIcon("pypi"),
                 self.tr("PyPI"))
         
-        if Preferences.getUI("ShowCondaPackageManager"):
-            # Create the conda package manager
-            logging.debug("Creating Conda Package Manager...")
-            from CondaInterface.CondaPackagesWidget import CondaPackagesWidget
-            self.condaWidget = CondaPackagesWidget(self.condaInterface)
+        if self.condaWidget:
             self.rightSidebar.addTab(
                 self.condaWidget, UI.PixmapCache.getIcon("miniconda"),
                 self.tr("Conda"))
 
-        if Preferences.getUI("ShowCooperation"):
-            # Create the chat part of the user interface
-            logging.debug("Creating Chat Widget...")
-            from Cooperation.ChatWidget import ChatWidget
-            self.cooperation = ChatWidget(self)
+        if self.cooperation:
             self.rightSidebar.addTab(
                 self.cooperation, UI.PixmapCache.getIcon("cooperation"),
                 self.tr("Cooperation"))
         
-        if Preferences.getUI("ShowIrc"):
-            # Create the IRC part of the user interface
-            logging.debug("Creating IRC Widget...")
-            from Network.IRC.IrcWidget import IrcWidget
-            self.irc = IrcWidget(self)
+        if self.irc:
             self.rightSidebar.addTab(
                 self.irc, UI.PixmapCache.getIcon("irc"),
                 self.tr("IRC"))
         
-        if Preferences.getUI("ShowMicroPython"):
-            # Create the MicroPython part of the user interface
-            logging.debug("Creating MicroPython Widget...")
-            from MicroPython.MicroPythonWidget import MicroPythonWidget
-            self.microPythonWidget = MicroPythonWidget(self)
+        if self.microPythonWidget:
             self.rightSidebar.addTab(
                 self.microPythonWidget, UI.PixmapCache.getIcon("micropython"),
                 self.tr("MicroPython"))
@@ -1163,45 +1205,15 @@
         ## Populate the bottom side bar
         ####################################################
         
-        # Create the task viewer part of the user interface
-        logging.debug("Creating Task Viewer...")
-        from Tasks.TaskViewer import TaskViewer
-        self.taskViewer = TaskViewer(None, self.project)
         self.bottomSidebar.addTab(self.taskViewer,
                                   UI.PixmapCache.getIcon("task"),
                                   self.tr("Task-Viewer"))
 
-        # Create the log viewer part of the user interface
-        logging.debug("Creating Log Viewer...")
-        from .LogView import LogViewer
-        self.logViewer = LogViewer(self)
         self.bottomSidebar.addTab(self.logViewer,
                                   UI.PixmapCache.getIcon("logViewer"),
                                   self.tr("Log-Viewer"))
-
-        if Preferences.getUI("ShowFileBrowser"):
-            # Create the file browser
-            logging.debug("Creating File Browser...")
-            from .Browser import Browser
-            self.browser = Browser()
-            self.leftSidebar.addTab(self.browser,
-                                    UI.PixmapCache.getIcon("browser"),
-                                    self.tr("File-Browser"))
-        
-        if Preferences.getUI("ShowSymbolsViewer"):
-            # Create the symbols viewer
-            logging.debug("Creating Symbols Viewer...")
-            from .SymbolsWidget import SymbolsWidget
-            self.symbolsViewer = SymbolsWidget()
-            self.leftSidebar.addTab(self.symbolsViewer,
-                                    UI.PixmapCache.getIcon("symbols"),
-                                    self.tr("Symbols"))
-        
-        if Preferences.getUI("ShowNumbersViewer"):
-            # Create the numbers viewer
-            logging.debug("Creating Numbers Viewer...")
-            from .NumbersWidget import NumbersWidget
-            self.numbersViewer = NumbersWidget()
+        
+        if self.numbersViewer:
             self.bottomSidebar.addTab(self.numbersViewer,
                                       UI.PixmapCache.getIcon("numbers"),
                                       self.tr("Numbers"))
@@ -1210,8 +1222,6 @@
         ## Populate the configurable widgets
         ####################################################
         
-        # Create the shell
-        logging.debug("Creating Shell...")
         self.__shellPosition = Preferences.getUI("ShellPosition")
         if self.__shellPosition == "left":
             self.__shellParent = self.leftSidebar
@@ -1219,10 +1229,6 @@
             self.__shellParent = self.rightSidebar
         else:
             self.__shellParent = self.bottomSidebar
-        from QScintilla.Shell import ShellAssembly
-        self.shellAssembly = ShellAssembly(
-            debugServer, self.viewmanager, self.project, True)
-        self.shell = self.shellAssembly.shell()
         self.__shellParent.insertTab(0, self.shellAssembly,
                                      UI.PixmapCache.getIcon("shell"),
                                      self.tr("Shell"))

eric ide

mercurial