File indexing completed on 2024-04-28 04:37:15

0001 /*
0002     SPDX-FileCopyrightText: 2008 David Nolden <david.nolden.kdevelop@art-master.de>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef KDEVPLATFORM_COMPLETIONSETTINGS_H
0008 #define KDEVPLATFORM_COMPLETIONSETTINGS_H
0009 
0010 #include <interfaces/icompletionsettings.h>
0011 #include <KConfigGroup>
0012 
0013 namespace KDevelop
0014 {
0015 
0016 class CompletionSettings : public KDevelop::ICompletionSettings
0017 {
0018     Q_OBJECT
0019 public:
0020     CompletionLevel completionLevel() const override;
0021 
0022     bool automaticCompletionEnabled() const override;
0023 
0024     void emitChanged() { emit settingsChanged(this); }
0025 
0026     int localColorizationLevel() const override;
0027 
0028     int globalColorizationLevel() const override;
0029 
0030     GlobalColorSource globalColorSource() const override;
0031 
0032     bool highlightSemanticProblems() const override;
0033 
0034     bool highlightProblematicLines() const override;
0035 
0036     ProblemInlineNotesLevel problemInlineNotesLevel() const override;
0037 
0038     bool boldDeclarations() const override;
0039 
0040     bool showMultiLineSelectionInformation() const override;
0041 
0042     int minFilesForSimplifiedParsing() const override;
0043 
0044     QStringList todoMarkerWords() const override;
0045 
0046     PrecompiledPreambleStorage precompiledPreambleStorage() const override;
0047 
0048     static CompletionSettings& self();
0049 
0050 private:
0051     CompletionSettings();
0052 
0053     const CompletionLevel m_level = MinimalWhenAutomatic;
0054     const bool m_automatic = true;
0055     const bool m_highlightSemanticProblems = true;
0056     const bool m_highlightProblematicLines = false;
0057     const bool m_showMultiLineInformation = false;
0058     const bool m_boldDeclarations = true;
0059     const int m_localColorizationLevel = 170;
0060     const int m_globalColorizationLevel = 255;
0061     const GlobalColorSource m_globalColorSource = GlobalColorSource::AutoGenerated;
0062     const int m_minFilesForSimplifiedParsing = 100000;
0063     const QString m_todoMarkerWords;
0064 
0065     const KConfigGroup m_languageGroup;
0066 };
0067 }
0068 #endif