src/eric7/Preferences/ConfigurationPages/EditorAutocompletionQScintillaPage.py

branch
eric7
changeset 9209
b99e7fd55fd3
parent 8881
54e42bc2437a
child 9221
bf71ee032bb4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/eric7/Preferences/ConfigurationPages/EditorAutocompletionQScintillaPage.py	Thu Jul 07 11:23:56 2022 +0200
@@ -0,0 +1,79 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2006 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing the QScintilla Autocompletion configuration page.
+"""
+
+from PyQt6.Qsci import QsciScintilla
+
+from .ConfigurationPageBase import ConfigurationPageBase
+from .Ui_EditorAutocompletionQScintillaPage import (
+    Ui_EditorAutocompletionQScintillaPage
+)
+
+import Preferences
+
+
+class EditorAutocompletionQScintillaPage(
+        ConfigurationPageBase, Ui_EditorAutocompletionQScintillaPage):
+    """
+    Class implementing the QScintilla Autocompletion configuration page.
+    """
+    def __init__(self):
+        """
+        Constructor
+        """
+        super().__init__()
+        self.setupUi(self)
+        self.setObjectName("EditorAutocompletionQScintillaPage")
+        
+        # set initial values
+        self.acShowSingleCheckBox.setChecked(
+            Preferences.getEditor("AutoCompletionShowSingle"))
+        self.acFillupsCheckBox.setChecked(
+            Preferences.getEditor("AutoCompletionFillups"))
+        
+        acSource = Preferences.getEditor("AutoCompletionSource")
+        if acSource == QsciScintilla.AutoCompletionSource.AcsDocument:
+            self.acSourceDocumentRadioButton.setChecked(True)
+        elif acSource == QsciScintilla.AutoCompletionSource.AcsAPIs:
+            self.acSourceAPIsRadioButton.setChecked(True)
+        elif acSource == QsciScintilla.AutoCompletionSource.AcsAll:
+            self.acSourceAllRadioButton.setChecked(True)
+        
+    def save(self):
+        """
+        Public slot to save the Editor Autocompletion configuration.
+        """
+        Preferences.setEditor(
+            "AutoCompletionShowSingle",
+            self.acShowSingleCheckBox.isChecked())
+        Preferences.setEditor(
+            "AutoCompletionFillups",
+            self.acFillupsCheckBox.isChecked())
+        if self.acSourceDocumentRadioButton.isChecked():
+            Preferences.setEditor(
+                "AutoCompletionSource",
+                QsciScintilla.AutoCompletionSource.AcsDocument)
+        elif self.acSourceAPIsRadioButton.isChecked():
+            Preferences.setEditor(
+                "AutoCompletionSource",
+                QsciScintilla.AutoCompletionSource.AcsAPIs)
+        elif self.acSourceAllRadioButton.isChecked():
+            Preferences.setEditor(
+                "AutoCompletionSource",
+                QsciScintilla.AutoCompletionSource.AcsAll)
+
+
+def create(dlg):
+    """
+    Module function to create the configuration page.
+    
+    @param dlg reference to the configuration dialog
+    @return reference to the instantiated page (ConfigurationPageBase)
+    """
+    page = EditorAutocompletionQScintillaPage()
+    return page

eric ide

mercurial