eric6/Project/CreateDialogCodeDialog.py

branch
maintenance
changeset 8273
698ae46f40a4
parent 8176
31965986ecd1
parent 8259
2bbec88047dd
diff -r fb0ef164f536 -r 698ae46f40a4 eric6/Project/CreateDialogCodeDialog.py
--- a/eric6/Project/CreateDialogCodeDialog.py	Fri Apr 02 11:59:41 2021 +0200
+++ b/eric6/Project/CreateDialogCodeDialog.py	Sat May 01 14:27:20 2021 +0200
@@ -10,6 +10,7 @@
 import sys
 import os
 import json
+import contextlib
 
 from PyQt5.QtCore import (
     pyqtSlot, Qt, QMetaObject, QRegularExpression, QSortFilterProxyModel,
@@ -57,7 +58,7 @@
         @param project reference to the project object
         @param parent parent widget if the dialog (QWidget)
         """
-        super(CreateDialogCodeDialog, self).__init__(parent)
+        super().__init__(parent)
         self.setupUi(self)
         
         self.okButton = self.buttonBox.button(
@@ -96,17 +97,12 @@
                 self.__initError = True
                 return
             
-            try:
+            with contextlib.suppress(ImportError):
                 splitExt = os.path.splitext(self.srcFile)
-                if len(splitExt) == 2:
-                    exts = [splitExt[1]]
-                else:
-                    exts = None
+                exts = [splitExt[1]] if len(splitExt) == 2 else None
                 from Utilities import ModuleParser
                 self.__module = ModuleParser.readModule(
                     self.srcFile, extensions=exts, caching=False)
-            except ImportError:
-                pass
         
         if self.__module is not None:
             self.filenameEdit.setText(self.srcFile)
@@ -339,19 +335,19 @@
                     itm2 = QStandardItem(methodDict["signature"])
                     itm.appendRow(itm2)
                     
-                    if self.__module is not None:
-                        if (
-                            methodDict["methods"][0] in signatureList or
-                            methodDict["methods"][1] in signatureList
-                        ):
-                            itm2.setFlags(
-                                Qt.ItemFlags(Qt.ItemFlag.ItemIsEnabled))
-                            itm2.setCheckState(Qt.CheckState.Checked)
-                            if e5App().usesDarkPalette():
-                                itm2.setForeground(QBrush(QColor("#75bfff")))
-                            else:
-                                itm2.setForeground(QBrush(Qt.GlobalColor.blue))
-                            continue
+                    if (
+                        self.__module is not None and
+                        (methodDict["methods"][0] in signatureList or
+                         methodDict["methods"][1] in signatureList)
+                    ):
+                        itm2.setFlags(
+                            Qt.ItemFlags(Qt.ItemFlag.ItemIsEnabled))
+                        itm2.setCheckState(Qt.CheckState.Checked)
+                        if e5App().usesDarkPalette():
+                            itm2.setForeground(QBrush(QColor("#75bfff")))
+                        else:
+                            itm2.setForeground(QBrush(Qt.GlobalColor.blue))
+                        continue
             
                     itm2.setData(methodDict["pyqt_signature"],
                                  pyqtSignatureRole)
@@ -377,18 +373,11 @@
         """
         Private slot to generate the code as requested by the user.
         """
-        # first decide on extension
         if (
-            self.filenameEdit.text().endswith(".py") or
-            self.filenameEdit.text().endswith(".pyw")
+            self.filenameEdit.text().endswith(".rb") or
+            self.project.getProjectLanguage() == "Ruby"
         ):
-            self.__generatePythonCode()
-        elif self.filenameEdit.text().endswith(".rb"):
-            pass
-        # second decide on project language
-        elif self.project.getProjectLanguage() == "Python3":
-            self.__generatePythonCode()
-        elif self.project.getProjectLanguage() == "Ruby":
+            # Ruby code generation is not supported
             pass
         else:
             # assume Python (our global default)
@@ -511,10 +500,11 @@
                     break
         
         # do the coding stuff
-        if self.project.getProjectType() in ("PySide2", "PySide6"):
-            pyqtSignatureFormat = '@Slot({0})'
-        else:
-            pyqtSignatureFormat = '@pyqtSlot({0})'
+        pyqtSignatureFormat = (
+            '@Slot({0})'
+            if self.project.getProjectType() in ("PySide2", "PySide6") else
+            '@pyqtSlot({0})'
+        )
         for row in range(self.slotsModel.rowCount()):
             topItem = self.slotsModel.item(row)
             for childRow in range(topItem.rowCount()):
@@ -568,10 +558,8 @@
             sourceImpl[appendAtIndex:appendAtIndex] = slotsCode
         
         # write the new code
-        if self.project.useSystemEol():
-            newline = None
-        else:
-            newline = self.project.getEolString()
+        newline = (None if self.project.useSystemEol()
+                   else self.project.getEolString())
         fn = self.filenameEdit.text()
         try:
             with open(fn, 'w', encoding="utf-8", newline=newline) as srcFile:

eric ide

mercurial