Mon, 16 Oct 2017 19:39:57 +0200
Added a timeout configuration value to the completions cache after which completions will be removed from the cache.
# -*- 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 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")) self.acCacheSizeSpinBox.setValue( Preferences.getEditor("AutoCompletionCacheSize")) self.acCacheTimeSpinBox.setValue( Preferences.getEditor("AutoCompletionCacheTime")) 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()) Preferences.setEditor( "AutoCompletionCacheSize", self.acCacheSizeSpinBox.value()) Preferences.setEditor( "AutoCompletionCacheTime", self.acCacheTimeSpinBox.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