eric7/E5Gui/EricSingleApplication.py

branch
eric7
changeset 8358
144a6b854f70
parent 8357
a081458cc57b
child 8359
0e29e54e9269
--- a/eric7/E5Gui/EricSingleApplication.py	Sat May 22 19:52:34 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,186 +0,0 @@
-# -*- coding: utf-8 -*-
-
-# Copyright (c) 2004 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
-#
-
-"""
-Module implementing the single application server and client.
-"""
-
-import os
-
-from E5Gui.EricApplication import ericApp
-
-from Toolbox.SingleApplication import (
-    SingleApplicationClient, SingleApplicationServer
-)
-
-import Utilities
-
-###########################################################################
-## define some module global stuff
-###########################################################################
-
-SAFile = "eric7"
-
-# define the protocol tokens
-SAOpenFile = 'OpenFile'
-SAOpenProject = 'OpenProject'
-SAOpenMultiProject = 'OpenMultiProject'
-SAArguments = 'Arguments'
-
-
-class EricSingleApplicationServer(SingleApplicationServer):
-    """
-    Class implementing the single application server embedded within the IDE.
-    """
-    def __init__(self):
-        """
-        Constructor
-        """
-        SingleApplicationServer.__init__(self, SAFile)
-
-    def handleCommand(self, command, arguments):
-        """
-        Public slot to handle the command sent by the client.
-        
-        @param command command sent by the client
-        @type str
-        @param arguments list of command arguments
-        @type list of str
-        """
-        if command == SAOpenFile:
-            self.__saOpenFile(arguments[0])
-            return
-
-        if command == SAOpenProject:
-            self.__saOpenProject(arguments[0])
-            return
-
-        if command == SAOpenMultiProject:
-            self.__saOpenMultiProject(arguments[0])
-            return
-
-        if command == SAArguments:
-            self.__saArguments(arguments[0])
-            return
-
-    def __saOpenFile(self, fname):
-        """
-        Private method used to handle the "Open File" command.
-        
-        @param fname filename to be opened (string)
-        """
-        ericApp().getObject("ViewManager").openSourceFile(fname)
-        
-    def __saOpenProject(self, pfname):
-        """
-        Private method used to handle the "Open Project" command.
-        
-        @param pfname filename of the project to be opened (string)
-        """
-        ericApp().getObject("Project").openProject(pfname)
-        
-    def __saOpenMultiProject(self, pfname):
-        """
-        Private method used to handle the "Open Multi-Project" command.
-        
-        @param pfname filename of the multi project to be opened (string)
-        """
-        ericApp().getObject("MultiProject").openMultiProject(pfname)
-        
-    def __saArguments(self, argsStr):
-        """
-        Private method used to handle the "Arguments" command.
-        
-        @param argsStr space delimited list of command args(string)
-        """
-        ericApp().getObject("DebugUI").setArgvHistory(argsStr)
-
-
-class EricSingleApplicationClient(SingleApplicationClient):
-    """
-    Class implementing the single application client of the IDE.
-    """
-    def __init__(self):
-        """
-        Constructor
-        """
-        SingleApplicationClient.__init__(self, SAFile)
-        
-    def processArgs(self, args):
-        """
-        Public method to process the command line args passed to the UI.
-        
-        @param args list of files to open
-        """
-        # no args, return
-        if args is None:
-            return
-        
-        # holds space delimited list of command args, if any
-        argsStr = None
-        # flag indicating '--' options was found
-        ddseen = False
-        
-        argChars = ['-', '/'] if Utilities.isWindowsPlatform() else ['-']
-        
-        for arg in args:
-            if arg == '--' and not ddseen:
-                ddseen = True
-                continue
-                
-            if arg[0] in argChars or ddseen:
-                if argsStr is None:
-                    argsStr = arg
-                else:
-                    argsStr = "{0} {1}".format(argsStr, arg)
-                continue
-            
-            ext = os.path.splitext(arg)[1]
-            ext = os.path.normcase(ext)
-            
-            if ext in ('.epj', '.e4p'):
-                self.__openProject(arg)
-            elif ext in ('.emj', '.e4m', '.e5m'):
-                self.__openMultiProject(arg)
-            else:
-                self.__openFile(arg)
-        
-        # send any args we had
-        if argsStr is not None:
-            self.__sendArguments(argsStr)
-        
-        self.disconnect()
-        
-    def __openFile(self, fname):
-        """
-        Private method to open a file in the application server.
-        
-        @param fname name of file to be opened (string)
-        """
-        self.sendCommand(SAOpenFile, [os.path.abspath(fname)])
-        
-    def __openProject(self, pfname):
-        """
-        Private method to open a project in the application server.
-        
-        @param pfname name of the projectfile to be opened (string)
-        """
-        self.sendCommand(SAOpenProject, [os.path.abspath(pfname)])
-        
-    def __openMultiProject(self, pfname):
-        """
-        Private method to open a project in the application server.
-        
-        @param pfname name of the projectfile to be opened (string)
-        """
-        self.sendCommand(SAOpenMultiProject, [os.path.abspath(pfname)])
-        
-    def __sendArguments(self, argsStr):
-        """
-        Private method to set the command arguments in the application server.
-        
-        @param argsStr space delimited list of command args (string)
-        """
-        self.sendCommand(SAArguments, [argsStr])

eric ide

mercurial