diff options
author | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-09-06 13:14:15 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-09-13 14:37:48 +0200 |
commit | c9f5a14bdde5a9ba7cbdcddf6b7799abac32a5e2 (patch) | |
tree | c4c389cd6ef805f25444de975740bae4adf9794c /src/plugins/cpptools/cpptoolsplugin.cpp | |
parent | f33d145e64aed43e4b59df3cd028b14eca105e71 (diff) | |
download | qt-creator-c9f5a14bdde5a9ba7cbdcddf6b7799abac32a5e2.tar.gz |
C++: add code-model settings to choose one by mime-type.
The model-manager now supports multiple code models for semantic
highlighting and code completion, and will choose one based on the
mime-type of the editor.
The settings page is currently disabled. It will get enabled when a
second plug-in lands that has a ModelManagerSupport class.
Change-Id: I10023f52322ed6860397da15dba1c231e80e6517
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cpptoolsplugin.cpp')
-rw-r--r-- | src/plugins/cpptools/cpptoolsplugin.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/plugins/cpptools/cpptoolsplugin.cpp b/src/plugins/cpptools/cpptoolsplugin.cpp index 2d027ad091..3d84020d06 100644 --- a/src/plugins/cpptools/cpptoolsplugin.cpp +++ b/src/plugins/cpptools/cpptoolsplugin.cpp @@ -30,6 +30,7 @@ #include "cpptoolsconstants.h" #include "cpptoolsplugin.h" #include "cppfilesettingspage.h" +#include "cppcodemodelsettingspage.h" #include "cppcodestylesettingspage.h" #include "cppclassesfilter.h" #include "cppfunctionsfilter.h" @@ -74,8 +75,9 @@ enum { debug = 0 }; static CppToolsPlugin *m_instance = 0; static QHash<QString, QString> m_headerSourceMapping; -CppToolsPlugin::CppToolsPlugin() : - m_fileSettings(new CppFileSettings) +CppToolsPlugin::CppToolsPlugin() + : m_fileSettings(new CppFileSettings) + , m_codeModelSettings(new CppCodeModelSettings) { m_instance = this; } @@ -127,6 +129,7 @@ bool CppToolsPlugin::initialize(const QStringList &arguments, QString *error) addAutoReleasedObject(new CppFunctionsFilter(locatorData)); addAutoReleasedObject(new CppCurrentDocumentFilter(modelManager)); addAutoReleasedObject(new CppFileSettingsPage(m_fileSettings)); +// addAutoReleasedObject(new CppCodeModelSettingsPage(m_codeModelSettings)); addAutoReleasedObject(new SymbolsFindFilter(modelManager)); addAutoReleasedObject(new CppCodeStyleSettingsPage); @@ -165,6 +168,7 @@ void CppToolsPlugin::extensionsInitialized() m_fileSettings->fromSettings(ICore::settings()); if (!m_fileSettings->applySuffixesToMimeDB()) qWarning("Unable to apply cpp suffixes to mime database (cpp mime types not found).\n"); + m_codeModelSettings->fromSettings(ICore::settings()); } ExtensionSystem::IPlugin::ShutdownFlag CppToolsPlugin::aboutToShutdown() @@ -172,6 +176,11 @@ ExtensionSystem::IPlugin::ShutdownFlag CppToolsPlugin::aboutToShutdown() return SynchronousShutdown; } +QSharedPointer<CppCodeModelSettings> CppToolsPlugin::codeModelSettings() const +{ + return m_codeModelSettings; +} + void CppToolsPlugin::switchHeaderSource() { QString otherFile = correspondingHeaderOrSource( |