summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppcodemodelsettingspage.cpp
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2016-08-16 13:37:49 +0200
committerNikolai Kosjar <nikolai.kosjar@qt.io>2016-08-31 07:47:27 +0000
commit83ea1f4deb4f5752f4eb1e36664761a7cdc79a9e (patch)
tree4b95a5d93201e259063d03ab31258b561e8746fd /src/plugins/cpptools/cppcodemodelsettingspage.cpp
parent6c00095181d8ef1dd1ff2d6090e8668376641e1b (diff)
downloadqt-creator-83ea1f4deb4f5752f4eb1e36664761a7cdc79a9e.tar.gz
CppTools: Add UI for file size limit of indexer
Task-number: QTCREATORBUG-16712 Change-Id: I92db8cbcac9669cbd5e4ee5f7ef6f613797c753a Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/cpptools/cppcodemodelsettingspage.cpp')
-rw-r--r--src/plugins/cpptools/cppcodemodelsettingspage.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/plugins/cpptools/cppcodemodelsettingspage.cpp b/src/plugins/cpptools/cppcodemodelsettingspage.cpp
index 8fb52b72cc..c3addc400b 100644
--- a/src/plugins/cpptools/cppcodemodelsettingspage.cpp
+++ b/src/plugins/cpptools/cppcodemodelsettingspage.cpp
@@ -58,6 +58,7 @@ void CppCodeModelSettingsWidget::setSettings(const QSharedPointer<CppCodeModelSe
setupClangCodeModelWidgets();
setupPchCheckBox();
+ setupSkipIndexingFilesWidgets();
}
void CppCodeModelSettingsWidget::applyToSettings() const
@@ -66,6 +67,7 @@ void CppCodeModelSettingsWidget::applyToSettings() const
changed |= applyClangCodeModelWidgetsToSettings();
changed |= applyPchCheckBoxToSettings();
+ changed |= applySkipIndexingFilesWidgets();
if (changed)
m_settings->toSettings(Core::ICore::settings());
@@ -92,6 +94,12 @@ void CppCodeModelSettingsWidget::setupPchCheckBox() const
m_ui->ignorePCHCheckBox->setChecked(ignorePch);
}
+void CppCodeModelSettingsWidget::setupSkipIndexingFilesWidgets()
+{
+ m_ui->skipIndexingBigFilesCheckBox->setChecked(m_settings->skipIndexingBigFiles());
+ m_ui->bigFilesLimitSpinBox->setValue(m_settings->indexerFileSizeLimitInMb());
+}
+
bool CppCodeModelSettingsWidget::applyClangCodeModelWidgetsToSettings() const
{
bool settingsChanged = false;
@@ -131,6 +139,25 @@ bool CppCodeModelSettingsWidget::applyPchCheckBoxToSettings() const
return false;
}
+bool CppCodeModelSettingsWidget::applySkipIndexingFilesWidgets() const
+{
+ bool settingsChanged = false;
+
+ const bool newSkipIndexingBigFiles = m_ui->skipIndexingBigFilesCheckBox->isChecked();
+ if (m_settings->skipIndexingBigFiles() != newSkipIndexingBigFiles) {
+ m_settings->setSkipIndexingBigFiles(newSkipIndexingBigFiles);
+ settingsChanged = true;
+ }
+
+ const int newFileSizeLimit = m_ui->bigFilesLimitSpinBox->value();
+ if (m_settings->indexerFileSizeLimitInMb() != newFileSizeLimit) {
+ m_settings->setIndexerFileSizeLimitInMb(newFileSizeLimit);
+ settingsChanged = true;
+ }
+
+ return settingsChanged;
+}
+
CppCodeModelSettingsPage::CppCodeModelSettingsPage(QSharedPointer<CppCodeModelSettings> &settings,
QObject *parent)
: Core::IOptionsPage(parent)