eric6/Preferences/ConfigurationPages/EditorAutocompletionPage.py

Sat, 04 May 2019 11:10:44 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 04 May 2019 11:10:44 +0200
branch
maintenance
changeset 6989
8b8cadf8d7e9
parent 6826
Preferences/ConfigurationPages/EditorAutocompletionPage.py@c6dda2cbe081
parent 6942
Preferences/ConfigurationPages/EditorAutocompletionPage.py@2602857055c5
child 7286
7eb04391adf7
permissions
-rw-r--r--

Merged with default branch to prepare release 19.5.

# -*- 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