Introduced a new project type for eric6 plug-ins.

Sat, 05 Jul 2014 19:27:57 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 05 Jul 2014 19:27:57 +0200
changeset 3691
c473d6347610
parent 3688
1b5dae8f0173
child 3692
a934139966a0

Introduced a new project type for eric6 plug-ins.

Debugger/DebugUI.py file | annotate | diff | comparison | revisions
Preferences/__init__.py file | annotate | diff | comparison | revisions
Project/Project.py file | annotate | diff | comparison | revisions
Project/ProjectFormsBrowser.py file | annotate | diff | comparison | revisions
Project/ProjectResourcesBrowser.py file | annotate | diff | comparison | revisions
Project/ProjectTranslationsBrowser.py file | annotate | diff | comparison | revisions
--- a/Debugger/DebugUI.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Debugger/DebugUI.py	Sat Jul 05 19:27:57 2014 +0200
@@ -1565,7 +1565,8 @@
             self.viewmanager.unhighlight()
             
             if not doNotStart:
-                if runProject and self.project.getProjectType() == "E4Plugin":
+                if runProject and self.project.getProjectType() in [
+                        "E4Plugin", "E6Plugin"]:
                     argv = '--plugin="{0}" {1}'.format(fn, argv)
                     fn = os.path.join(getConfig('ericDir'), "eric6.py")
                 
@@ -1683,7 +1684,8 @@
             self.viewmanager.unhighlight()
             
             if not doNotStart:
-                if runProject and self.project.getProjectType() == "E4Plugin":
+                if runProject and self.project.getProjectType() in [
+                        "E4Plugin", "E6Plugin"]:
                     argv = '--plugin="{0}" {1}'.format(fn, argv)
                     fn = os.path.join(getConfig('ericDir'), "eric6.py")
                 
@@ -1804,7 +1806,8 @@
             self.viewmanager.unhighlight()
             
             if not doNotStart:
-                if runProject and self.project.getProjectType() == "E4Plugin":
+                if runProject and self.project.getProjectType() in [
+                        "E4Plugin", "E6Plugin"]:
                     argv = '--plugin="{0}" {1}'.format(fn, argv)
                     fn = os.path.join(getConfig('ericDir'), "eric6.py")
                 
@@ -1932,8 +1935,8 @@
             self.viewmanager.unhighlight()
             
             if not doNotStart:
-                if debugProject and \
-                        self.project.getProjectType() == "E4Plugin":
+                if debugProject and self.project.getProjectType() in [
+                        "E4Plugin", "E6Plugin"]:
                     argv = '--plugin="{0}" {1}'.format(fn, argv)
                     fn = os.path.join(getConfig('ericDir'), "eric6.py")
                     tracePython = True  # override flag because it must be true
@@ -1995,7 +1998,8 @@
         self.viewmanager.unhighlight()
         
         if not doNotStart:
-            if forProject and self.project.getProjectType() == "E4Plugin":
+            if forProject and self.project.getProjectType() in [
+                    "E4Plugin", "E6Plugin"]:
                 argv = '--plugin="{0}" {1}'.format(fn, argv)
                 fn = os.path.join(getConfig('ericDir'), "eric6.py")
             
--- a/Preferences/__init__.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Preferences/__init__.py	Sat Jul 05 19:27:57 2014 +0200
@@ -635,6 +635,13 @@
             TranslationsBrowserFlag |
             InterfacesBrowserFlag |
             OthersBrowserFlag),
+        "E6Plugin": (
+            SourcesBrowserFlag |
+            FormsBrowserFlag |
+            ResourcesBrowserFlag |
+            TranslationsBrowserFlag |
+            InterfacesBrowserFlag |
+            OthersBrowserFlag),
         "Console": (
             SourcesBrowserFlag |
             InterfacesBrowserFlag |
--- a/Project/Project.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Project/Project.py	Sat Jul 05 19:27:57 2014 +0200
@@ -245,15 +245,16 @@
         self.__projectTypes["Qt4C"] = self.tr("PyQt4 Console")
         self.__projectTypes["PyQt5"] = self.tr("PyQt5 GUI")
         self.__projectTypes["PyQt5C"] = self.tr("PyQt5 Console")
-        self.__projectTypes["E4Plugin"] = self.tr("Eric Plugin")
+        self.__projectTypes["E4Plugin"] = self.tr("Eric4/5 Plugin")
+        self.__projectTypes["E6Plugin"] = self.tr("Eric6 Plugin")
         self.__projectTypes["Console"] = self.tr("Console")
         self.__projectTypes["Other"] = self.tr("Other")
         
         self.__projectProgLanguages = {
             "Python2": ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
-                        "Console", "Other"],
+                        "E6Plugin", "Console", "Other"],
             "Python3": ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
-                        "Console", "Other"],
+                        "E6Plugin", "Console", "Other"],
             "Ruby": ["Qt4", "Qt4C", "Console", "Other"],
         }
         
@@ -504,14 +505,16 @@
             self.pdata["FILETYPES"]["*{0}".format(ext)] = "SOURCES"
         self.pdata["FILETYPES"]["*.idl"] = "INTERFACES"
         if self.pdata["PROJECTTYPE"][0] in ["Qt4", "PyQt5", "E4Plugin",
-                                            "PySide"]:
+                                            "E6Plugin", "PySide"]:
             self.pdata["FILETYPES"]["*.ui"] = "FORMS"
             self.pdata["FILETYPES"]["*.ui.h"] = "FORMS"
-        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin",
+        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C",
+                                            "E4Plugin", "E6Plugin",
                                             "PyQt5", "PyQt5C",
                                             "PySide", "PySideC"]:
             self.pdata["FILETYPES"]["*.qrc"] = "RESOURCES"
-        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin",
+        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C",
+                                            "E4Plugin", "E6Plugin",
                                             "PyQt5", "PyQt5C",
                                             "PySide", "PySideC"]:
             self.pdata["FILETYPES"]["*.ts"] = "TRANSLATIONS"
@@ -531,7 +534,8 @@
         Public method to update the filetype associations with new default
         values.
         """
-        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C", "E4Plugin",
+        if self.pdata["PROJECTTYPE"][0] in ["Qt4", "Qt4C",
+                                            "E4Plugin", "E6Plugin",
                                             "PyQt5", "PyQt5C",
                                             "PySide", "PySideC"]:
             if "*.ts" not in self.pdata["FILETYPES"]:
@@ -1234,8 +1238,8 @@
         if dlg.exec_() == QDialog.Accepted:
             lang = dlg.getSelectedLanguage()
             if self.pdata["PROJECTTYPE"][0] in \
-                    ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "PySide",
-                     "PySideC"]:
+                    ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
+                     "PySide", "PySideC"]:
                 langFile = self.pdata["TRANSLATIONPATTERN"][0]\
                     .replace("%language%", lang)
                 self.appendFile(langFile)
@@ -2061,7 +2065,7 @@
             self.menuApidocAct.setEnabled(True)
             self.menuPackagersAct.setEnabled(True)
             self.pluginGrp.setEnabled(
-                self.pdata["PROJECTTYPE"][0] == "E4Plugin")
+                self.pdata["PROJECTTYPE"][0] in ["E4Plugin", "E6Plugin"])
             self.addLanguageAct.setEnabled(
                 len(self.pdata["TRANSLATIONPATTERN"]) > 0 and
                 self.pdata["TRANSLATIONPATTERN"][0] != '')
@@ -2425,7 +2429,7 @@
                     self.subdirs.append(tp)
             
             self.pluginGrp.setEnabled(
-                self.pdata["PROJECTTYPE"][0] == "E4Plugin")
+                self.pdata["PROJECTTYPE"][0] in ["E4Plugin", "E6Plugin"])
             
             self.__model.projectPropertiesChanged()
             self.projectPropertiesChanged.emit()
@@ -2629,7 +2633,8 @@
                     self.menuApidocAct.setEnabled(True)
                     self.menuPackagersAct.setEnabled(True)
                     self.pluginGrp.setEnabled(
-                        self.pdata["PROJECTTYPE"][0] == "E4Plugin")
+                        self.pdata["PROJECTTYPE"][0] in [
+                            "E4Plugin", "E6Plugin"])
                     self.addLanguageAct.setEnabled(
                         len(self.pdata["TRANSLATIONPATTERN"]) > 0 and
                         self.pdata["TRANSLATIONPATTERN"][0] != '')
--- a/Project/ProjectFormsBrowser.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Project/ProjectFormsBrowser.py	Sat Jul 05 19:27:57 2014 +0200
@@ -129,7 +129,7 @@
         
         self.menu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             self.menu.addAction(
                 self.tr('Compile form'), self.__compileForm)
             self.menu.addAction(
@@ -184,7 +184,7 @@
         self.menuActions.append(act)
         self.menu.addSeparator()
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             self.menu.addAction(self.tr('New form...'), self.__newForm)
         else:
             if self.hooks["newForm"] is not None:
@@ -207,7 +207,7 @@
 
         self.backMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"] or \
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"] or \
                 self.hooks["compileAllForms"] is not None:
             self.backMenu.addAction(
                 self.tr('Compile all forms'), self.__compileAllForms)
@@ -234,7 +234,7 @@
         # create the menu for multiple selected files
         self.multiMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             act = self.multiMenu.addAction(
                 self.tr('Compile forms'), self.__compileSelectedForms)
             self.multiMenu.addSeparator()
@@ -276,7 +276,7 @@
 
         self.dirMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             self.dirMenu.addAction(
                 self.tr('Compile all forms'), self.__compileAllForms)
             self.dirMenu.addSeparator()
@@ -296,7 +296,7 @@
         self.dirMenuActions.append(act)
         self.dirMenu.addSeparator()
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             self.dirMenu.addAction(self.tr('New form...'), self.__newForm)
         else:
             if self.hooks["newForm"] is not None:
@@ -321,7 +321,7 @@
         
         self.dirMultiMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
             self.dirMultiMenu.addAction(
                 self.tr('Compile all forms'), self.__compileAllForms)
             self.dirMultiMenu.addSeparator()
@@ -539,7 +539,7 @@
             self.hooks["newForm"](path)
         else:
             if self.project.getProjectType() in \
-                    ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+                    ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
                 self.__newUiForm(path)
         
     def __newUiForm(self, path):
@@ -753,7 +753,7 @@
                     uic = self.uicompiler + '.bat'
                 else:
                     uic = self.uicompiler
-            elif self.project.getProjectType() == "PyQt5":
+            elif self.project.getProjectType() in ["PyQt5", "E6Plugin"]:
                 self.uicompiler = 'pyuic5'
                 if Utilities.isWindowsPlatform():
                     uic = self.uicompiler + '.bat'
@@ -930,7 +930,7 @@
             self.hooks["compileChangedForms"](self.project.pdata["FORMS"])
         else:
             if self.project.getProjectType() not in \
-               ["Qt4", "PyQt5", "E4Plugin", "PySide"]:
+               ["Qt4", "PyQt5", "E4Plugin", "E6Plugin", "PySide"]:
                 # ignore the request for non Qt GUI projects
                 return
             
--- a/Project/ProjectResourcesBrowser.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Project/ProjectResourcesBrowser.py	Sat Jul 05 19:27:57 2014 +0200
@@ -86,7 +86,7 @@
         
         self.menu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             self.menu.addAction(
                 self.tr('Compile resource'),
@@ -122,7 +122,7 @@
         self.menuActions.append(act)
         self.menu.addSeparator()
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             self.menu.addAction(
                 self.tr('New resource...'), self.__newResource)
@@ -150,7 +150,7 @@
 
         self.backMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             self.backMenu.addAction(
                 self.tr('Compile all resources'),
@@ -188,7 +188,7 @@
         # create the menu for multiple selected files
         self.multiMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             act = self.multiMenu.addAction(
                 self.tr('Compile resources'),
@@ -220,7 +220,7 @@
 
         self.dirMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             self.dirMenu.addAction(
                 self.tr('Compile all resources'),
@@ -261,7 +261,7 @@
         
         self.dirMultiMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             self.dirMultiMenu.addAction(
                 self.tr('Compile all resources'),
@@ -642,7 +642,8 @@
                         args.append("-py2")
                     else:
                         args.append("-py3")
-            elif self.project.getProjectType() in ["PyQt5", "PyQt5C"]:
+            elif self.project.getProjectType() in [
+                    "PyQt5", "PyQt5C", "E6Plugin"]:
                 self.rccCompiler = 'pyrcc5'
                 if Utilities.isWindowsPlatform():
                     self.rccCompiler += '.exe'
--- a/Project/ProjectTranslationsBrowser.py	Sat Jul 05 18:38:10 2014 +0200
+++ b/Project/ProjectTranslationsBrowser.py	Sat Jul 05 19:27:57 2014 +0200
@@ -113,7 +113,7 @@
         
         self.menu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             act = self.menu.addAction(
                 self.tr('Generate translation'), self.__generateSelected)
@@ -240,7 +240,7 @@
         
         self.backMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             act = self.backMenu.addAction(
                 self.tr('Generate all translations'),
@@ -301,7 +301,7 @@
         # create the menu for multiple selected files
         self.multiMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             act = self.multiMenu.addAction(
                 self.tr('Generate translations'),
@@ -385,7 +385,7 @@
 
         self.dirMenu = QMenu(self)
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             act = self.dirMenu.addAction(
                 self.tr('Generate all translations'),
@@ -503,7 +503,7 @@
         Private slot called by the menu aboutToShow signal.
         """
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             tsFiles = 0
             qmFiles = 0
@@ -545,7 +545,7 @@
         Private slot called by the multiMenu aboutToShow signal.
         """
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             tsFiles = 0
             qmFiles = 0
@@ -585,7 +585,7 @@
         Private slot called by the dirMenu aboutToShow signal.
         """
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             if self.pylupdateProcRunning:
                 for act in self.tsprocDirMenuActions:
@@ -605,7 +605,7 @@
         Private slot called by the backMenu aboutToShow signal.
         """
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             if self.pylupdateProcRunning:
                 for act in self.tsprocBackMenuActions:
@@ -1035,7 +1035,7 @@
             self.pylupdate = 'pylupdate4'
             if Utilities.isWindowsPlatform():
                 self.pylupdate = self.pylupdate + '.exe'
-        elif self.project.getProjectType() in ["PyQt5", "PyQt5C"]:
+        elif self.project.getProjectType() in ["PyQt5", "PyQt5C", "E6Plugin"]:
             self.pylupdate = 'pylupdate5'
             if Utilities.isWindowsPlatform():
                 self.pylupdate = self.pylupdate + '.exe'
@@ -1208,7 +1208,7 @@
             return
         
         if self.project.getProjectType() in \
-                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin",
+                ["Qt4", "Qt4C", "PyQt5", "PyQt5C", "E4Plugin", "E6Plugin",
                  "PySide", "PySideC"]:
             lrelease = os.path.join(
                 Utilities.getQtBinariesPath(),

eric ide

mercurial