Preferences/ConfigurationPages/EditorAutocompletionPage.py

Tue, 03 Oct 2017 19:37:44 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 03 Oct 2017 19:37:44 +0200
changeset 5888
f23f3d2b7516
parent 5887
9a6ce5faed7a
child 5906
fef02b3fdc32
permissions
-rw-r--r--

Added a cache for the already determined completion lists.

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

# Copyright (c) 2006 - 2017 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


# TODO: add spinbox for AutoCompletionCacheSize
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.acEnabledCheckBox.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.acTimeoutSpinBox.setValue(
            Preferences.getEditor("AutoCompletionTimeout"))
        
    def save(self):
        """
        Public slot to save the Editor Autocompletion configuration.
        """
        Preferences.setEditor(
            "AutoCompletionEnabled",
            self.acEnabledCheckBox.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(
            "AutoCompletionTimeout",
            self.acTimeoutSpinBox.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