src/eric7/Preferences/ConfigurationPages/EditorGeneralPage.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9413
80c06d472826
diff -r e9e7eca7efee -r bf71ee032bb4 src/eric7/Preferences/ConfigurationPages/EditorGeneralPage.py
--- a/src/eric7/Preferences/ConfigurationPages/EditorGeneralPage.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/Preferences/ConfigurationPages/EditorGeneralPage.py	Wed Jul 13 14:55:47 2022 +0200
@@ -15,9 +15,7 @@
 
 from .ConfigurationPageBase import ConfigurationPageBase
 from .Ui_EditorGeneralPage import Ui_EditorGeneralPage
-from .EditorLanguageTabIndentOverrideDialog import (
-    EditorLanguageTabIndentOverrideDialog
-)
+from .EditorLanguageTabIndentOverrideDialog import EditorLanguageTabIndentOverrideDialog
 
 from QScintilla.DocstringGenerator import getSupportedDocstringTypes
 
@@ -29,6 +27,7 @@
     """
     Class implementing the Editor General configuration page.
     """
+
     def __init__(self):
         """
         Constructor
@@ -36,132 +35,115 @@
         super().__init__()
         self.setupUi(self)
         self.setObjectName("EditorGeneralPage")
-        
+
         self.addButton.setIcon(UI.PixmapCache.getIcon("plus"))
         self.deleteButton.setIcon(UI.PixmapCache.getIcon("minus"))
         self.editButton.setIcon(UI.PixmapCache.getIcon("edit"))
-        
-        for docstringType, docstringStyle in sorted(
-            getSupportedDocstringTypes()
-        ):
+
+        for docstringType, docstringStyle in sorted(getSupportedDocstringTypes()):
             self.docstringStyleComboBox.addItem(docstringStyle, docstringType)
-        
+
         # set initial values
-        self.tabwidthSlider.setValue(
-            Preferences.getEditor("TabWidth"))
-        self.indentwidthSlider.setValue(
-            Preferences.getEditor("IndentWidth"))
+        self.tabwidthSlider.setValue(Preferences.getEditor("TabWidth"))
+        self.indentwidthSlider.setValue(Preferences.getEditor("IndentWidth"))
         self.tabforindentationCheckBox.setChecked(
-            Preferences.getEditor("TabForIndentation"))
-        self.tabindentsCheckBox.setChecked(
-            Preferences.getEditor("TabIndents"))
-        self.converttabsCheckBox.setChecked(
-            Preferences.getEditor("ConvertTabsOnLoad"))
-        self.autoindentCheckBox.setChecked(
-            Preferences.getEditor("AutoIndentation"))
-        self.comment0CheckBox.setChecked(
-            Preferences.getEditor("CommentColumn0"))
-        
+            Preferences.getEditor("TabForIndentation")
+        )
+        self.tabindentsCheckBox.setChecked(Preferences.getEditor("TabIndents"))
+        self.converttabsCheckBox.setChecked(Preferences.getEditor("ConvertTabsOnLoad"))
+        self.autoindentCheckBox.setChecked(Preferences.getEditor("AutoIndentation"))
+        self.comment0CheckBox.setChecked(Preferences.getEditor("CommentColumn0"))
+
         self.sourceOutlineGroupBox.setChecked(
-            Preferences.getEditor("ShowSourceOutline"))
+            Preferences.getEditor("ShowSourceOutline")
+        )
         self.sourceOutlineWidthSpinBox.setValue(
-            Preferences.getEditor("SourceOutlineWidth"))
+            Preferences.getEditor("SourceOutlineWidth")
+        )
         self.sourceOutlineWidthStepSpinBox.setValue(
-            Preferences.getEditor("SourceOutlineStepSize"))
+            Preferences.getEditor("SourceOutlineStepSize")
+        )
         self.sourceOutlineShowCodingCheckBox.setChecked(
-            Preferences.getEditor("SourceOutlineShowCoding"))
-        
+            Preferences.getEditor("SourceOutlineShowCoding")
+        )
+
         index = self.docstringStyleComboBox.findData(
-            Preferences.getEditor("DocstringType"))
+            Preferences.getEditor("DocstringType")
+        )
         self.docstringStyleComboBox.setCurrentIndex(index)
         self.docstringCompletionCheckBox.setChecked(
-            Preferences.getEditor("DocstringAutoGenerate"))
-        
-        self.mouseHoverHelpGroupBox.setChecked(
-            Preferences.getEditor("MouseHoverHelp"))
-        self.mouseDwellTimeSpinBox.setValue(
-            Preferences.getEditor("MouseHoverTimeout"))
-        
+            Preferences.getEditor("DocstringAutoGenerate")
+        )
+
+        self.mouseHoverHelpGroupBox.setChecked(Preferences.getEditor("MouseHoverHelp"))
+        self.mouseDwellTimeSpinBox.setValue(Preferences.getEditor("MouseHoverTimeout"))
+
         virtualSpaceOptions = Preferences.getEditor("VirtualSpaceOptions")
         self.vsSelectionCheckBox.setChecked(
-            virtualSpaceOptions & QsciScintillaBase.SCVS_RECTANGULARSELECTION)
+            virtualSpaceOptions & QsciScintillaBase.SCVS_RECTANGULARSELECTION
+        )
         self.vsUserCheckBox.setChecked(
-            virtualSpaceOptions & QsciScintillaBase.SCVS_USERACCESSIBLE)
-        
+            virtualSpaceOptions & QsciScintillaBase.SCVS_USERACCESSIBLE
+        )
+
         self.__populateLanguageOverrideWidget()
-    
+
     def save(self):
         """
         Public slot to save the Editor General configuration.
         """
-        Preferences.setEditor(
-            "TabWidth",
-            self.tabwidthSlider.value())
-        Preferences.setEditor(
-            "IndentWidth",
-            self.indentwidthSlider.value())
-        Preferences.setEditor(
-            "TabForIndentation",
-            self.tabforindentationCheckBox.isChecked())
+        Preferences.setEditor("TabWidth", self.tabwidthSlider.value())
+        Preferences.setEditor("IndentWidth", self.indentwidthSlider.value())
         Preferences.setEditor(
-            "TabIndents",
-            self.tabindentsCheckBox.isChecked())
-        Preferences.setEditor(
-            "ConvertTabsOnLoad",
-            self.converttabsCheckBox.isChecked())
+            "TabForIndentation", self.tabforindentationCheckBox.isChecked()
+        )
+        Preferences.setEditor("TabIndents", self.tabindentsCheckBox.isChecked())
+        Preferences.setEditor("ConvertTabsOnLoad", self.converttabsCheckBox.isChecked())
+        Preferences.setEditor("AutoIndentation", self.autoindentCheckBox.isChecked())
+        Preferences.setEditor("CommentColumn0", self.comment0CheckBox.isChecked())
+
         Preferences.setEditor(
-            "AutoIndentation",
-            self.autoindentCheckBox.isChecked())
+            "ShowSourceOutline", self.sourceOutlineGroupBox.isChecked()
+        )
         Preferences.setEditor(
-            "CommentColumn0",
-            self.comment0CheckBox.isChecked())
-        
+            "SourceOutlineWidth", self.sourceOutlineWidthSpinBox.value()
+        )
         Preferences.setEditor(
-            "ShowSourceOutline",
-            self.sourceOutlineGroupBox.isChecked())
-        Preferences.setEditor(
-            "SourceOutlineWidth",
-            self.sourceOutlineWidthSpinBox.value())
+            "SourceOutlineStepSize", self.sourceOutlineWidthStepSpinBox.value()
+        )
         Preferences.setEditor(
-            "SourceOutlineStepSize",
-            self.sourceOutlineWidthStepSpinBox.value())
-        Preferences.setEditor(
-            "SourceOutlineShowCoding",
-            self.sourceOutlineShowCodingCheckBox.isChecked())
-        
+            "SourceOutlineShowCoding", self.sourceOutlineShowCodingCheckBox.isChecked()
+        )
+
         Preferences.setEditor(
-            "DocstringType",
-            self.docstringStyleComboBox.currentData())
-        Preferences.setEditor(
-            "DocstringAutoGenerate",
-            self.docstringCompletionCheckBox.isChecked())
-        
+            "DocstringType", self.docstringStyleComboBox.currentData()
+        )
         Preferences.setEditor(
-            "MouseHoverHelp",
-            self.mouseHoverHelpGroupBox.isChecked())
-        Preferences.setEditor(
-            "MouseHoverTimeout",
-            self.mouseDwellTimeSpinBox.value())
-        
+            "DocstringAutoGenerate", self.docstringCompletionCheckBox.isChecked()
+        )
+
+        Preferences.setEditor("MouseHoverHelp", self.mouseHoverHelpGroupBox.isChecked())
+        Preferences.setEditor("MouseHoverTimeout", self.mouseDwellTimeSpinBox.value())
+
         virtualSpaceOptions = QsciScintillaBase.SCVS_NONE
         if self.vsSelectionCheckBox.isChecked():
             virtualSpaceOptions |= QsciScintillaBase.SCVS_RECTANGULARSELECTION
         if self.vsUserCheckBox.isChecked():
             virtualSpaceOptions |= QsciScintillaBase.SCVS_USERACCESSIBLE
         Preferences.setEditor("VirtualSpaceOptions", virtualSpaceOptions)
-        
+
         self.__saveLanguageOverrides()
-        
+
     def on_tabforindentationCheckBox_toggled(self, checked):
         """
         Private slot used to set the tab conversion check box.
-        
+
         @param checked flag received from the signal (boolean)
         """
         if checked and self.converttabsCheckBox.isChecked():
             self.converttabsCheckBox.setChecked(not checked)
         self.converttabsCheckBox.setEnabled(not checked)
-    
+
     def __populateLanguageOverrideWidget(self):
         """
         Private method to populate the language specific indentation and tab
@@ -173,11 +155,11 @@
         self.languageOverrideWidget.sortItems(0, Qt.SortOrder.AscendingOrder)
         self.__resizeOverrideColumns()
         self.on_languageOverrideWidget_itemSelectionChanged()
-    
+
     def __createOverrideItem(self, language, tabWidth, indentWidth):
         """
         Private method to create an entry for a language override.
-        
+
         @param language name of the language
         @type str
         @param tabWidth tabulator width
@@ -185,21 +167,22 @@
         @param indentWidth indentation width
         @type int
         """
-        itm = QTreeWidgetItem(self.languageOverrideWidget, [
-            language,
-            "{0:2d}".format(tabWidth),
-            "{0:2d}".format(indentWidth)])
+        itm = QTreeWidgetItem(
+            self.languageOverrideWidget,
+            [language, "{0:2d}".format(tabWidth), "{0:2d}".format(indentWidth)],
+        )
         itm.setTextAlignment(1, Qt.AlignmentFlag.AlignHCenter)
         itm.setTextAlignment(2, Qt.AlignmentFlag.AlignHCenter)
-        
+
     def __resizeOverrideColumns(self):
         """
         Private method to resize the list columns.
         """
         self.languageOverrideWidget.header().resizeSections(
-            QHeaderView.ResizeMode.ResizeToContents)
+            QHeaderView.ResizeMode.ResizeToContents
+        )
         self.languageOverrideWidget.header().setStretchLastSection(True)
-    
+
     def __saveLanguageOverrides(self):
         """
         Private method to save the language specific indentation and tab width
@@ -213,19 +196,21 @@
                 int(itm.text(1)),
                 int(itm.text(2)),
             ]
-        
+
         Preferences.setEditor("TabIndentOverride", overrides)
-    
+
     @pyqtSlot()
     def on_languageOverrideWidget_itemSelectionChanged(self):
         """
         Private slot handling a change of the override selection.
         """
         self.deleteButton.setEnabled(
-            len(self.languageOverrideWidget.selectedItems()) > 0)
+            len(self.languageOverrideWidget.selectedItems()) > 0
+        )
         self.editButton.setEnabled(
-            len(self.languageOverrideWidget.selectedItems()) == 1)
-    
+            len(self.languageOverrideWidget.selectedItems()) == 1
+        )
+
     @pyqtSlot()
     def on_addButton_clicked(self):
         """
@@ -244,10 +229,9 @@
         if dlg.exec() == QDialog.DialogCode.Accepted:
             language, tabWidth, indentWidth = dlg.getData()
             self.__createOverrideItem(language, tabWidth, indentWidth)
-            self.languageOverrideWidget.sortItems(
-                0, Qt.SortOrder.AscendingOrder)
+            self.languageOverrideWidget.sortItems(0, Qt.SortOrder.AscendingOrder)
             self.__resizeOverrideColumns()
-    
+
     @pyqtSlot()
     def on_deleteButton_clicked(self):
         """
@@ -256,13 +240,14 @@
         ok = EricMessageBox.yesNo(
             self,
             self.tr("Tab and Indent Override"),
-            self.tr("""Shall the selected entries really be removed?"""))
+            self.tr("""Shall the selected entries really be removed?"""),
+        )
         if ok:
             for itm in self.languageOverrideWidget.selectedItems():
                 index = self.languageOverrideWidget.indexOfTopLevelItem(itm)
                 self.languageOverrideWidget.takeTopLevelItem(index)
                 del itm
-    
+
     @pyqtSlot()
     def on_editButton_clicked(self):
         """
@@ -284,7 +269,7 @@
 def create(dlg):
     """
     Module function to create the configuration page.
-    
+
     @param dlg reference to the configuration dialog
     @return reference to the instantiated page (ConfigurationPageBase)
     """

eric ide

mercurial