eric6/Preferences/ConfigurationPages/EditorAutocompletionPage.py

Sun, 14 Apr 2019 15:09:21 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 14 Apr 2019 15:09:21 +0200
changeset 6942
2602857055c5
parent 6755
Preferences/ConfigurationPages/EditorAutocompletionPage.py@009812744917
child 6989
8b8cadf8d7e9
child 7229
53054eb5b15a
permissions
-rw-r--r--

Major restructuring of the source tree to get prepared for a setup.py based installation.

# -*- coding: utf-8 -*-

# Copyright (c) 2006 - 2019 Detlev Offenbach <detlev@die-offenbachs.de>
#

"""
Module implementing the Editor Autocompletion configuration page.
"""

from __future__ import unicode_literals

from .ConfigurationPageBase import ConfigurationPageBase
from .Ui_EditorAutocompletionPage import Ui_EditorAutocompletionPage

import Preferences


class EditorAutocompletionPage(ConfigurationPageBase,
                               Ui_EditorAutocompletionPage):
    """
    Class implementing the Editor Autocompletion configuration page.
    """
    def __init__(self):
        """
        Constructor
        """
        super(EditorAutocompletionPage, self).__init__()
        self.setupUi(self)
        self.setObjectName("EditorAutocompletionPage")
        
        # set initial values
        self.acEnabledGroupBox.setChecked(
            Preferences.getEditor("AutoCompletionEnabled"))
        self.acCaseSensitivityCheckBox.setChecked(
            Preferences.getEditor("AutoCompletionCaseSensitivity"))
        self.acReversedCheckBox.setChecked(
            Preferences.getEditor("AutoCompletionReversedList"))
        self.acReplaceWordCheckBox.setChecked(
            Preferences.getEditor("AutoCompletionReplaceWord"))
        self.acThresholdSlider.setValue(
            Preferences.getEditor("AutoCompletionThreshold"))
        self.acScintillaCheckBox.setChecked(
            Preferences.getEditor("AutoCompletionScintillaOnFail"))
        self.acTimeoutSpinBox.setValue(
            Preferences.getEditor("AutoCompletionTimeout"))
        self.acCacheGroup.setChecked(
            Preferences.getEditor("AutoCompletionCacheEnabled"))
        self.acCacheSizeSpinBox.setValue(
            Preferences.getEditor("AutoCompletionCacheSize"))
        self.acCacheTimeSpinBox.setValue(
            Preferences.getEditor("AutoCompletionCacheTime"))
        self.acWatchdogDoubleSpinBox.setValue(
            Preferences.getEditor("AutoCompletionWatchdogTime") / 1000.0)
        self.acLinesSlider.setValue(
            Preferences.getEditor("AutoCompletionMaxLines"))
        self.acCharSlider.setValue(
            Preferences.getEditor("AutoCompletionMaxChars"))
        
    def save(self):
        """
        Public slot to save the Editor Autocompletion configuration.
        """
        Preferences.setEditor(
            "AutoCompletionEnabled",
            self.acEnabledGroupBox.isChecked())
        Preferences.setEditor(
            "AutoCompletionCaseSensitivity",
            self.acCaseSensitivityCheckBox.isChecked())
            
        Preferences.setEditor(
            "AutoCompletionReversedList",
            self.acReversedCheckBox.isChecked())
        Preferences.setEditor(
            "AutoCompletionReplaceWord",
            self.acReplaceWordCheckBox.isChecked())
        Preferences.setEditor(
            "AutoCompletionThreshold",
            self.acThresholdSlider.value())
        Preferences.setEditor(
            "AutoCompletionScintillaOnFail",
            self.acScintillaCheckBox.isChecked())
        Preferences.setEditor(
            "AutoCompletionTimeout",
            self.acTimeoutSpinBox.value())
        Preferences.setEditor(
            "AutoCompletionCacheEnabled",
            self.acCacheGroup.isChecked())
        Preferences.setEditor(
            "AutoCompletionCacheSize",
            self.acCacheSizeSpinBox.value())
        Preferences.setEditor(
            "AutoCompletionCacheTime",
            self.acCacheTimeSpinBox.value())
        Preferences.setEditor(
            "AutoCompletionWatchdogTime",
            self.acWatchdogDoubleSpinBox.value() * 1000)
        Preferences.setEditor(
            "AutoCompletionMaxLines",
            self.acLinesSlider.value())
        Preferences.setEditor(
            "AutoCompletionMaxChars",
            self.acCharSlider.value())
    

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 = EditorAutocompletionPage()
    return page

eric ide

mercurial