diff options
author | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-08-19 18:20:49 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-09-10 07:36:25 +0200 |
commit | 87a3aac18f70daa6921292f944fb69378c75aaf7 (patch) | |
tree | fb386fbd0bf181d8e429db94b0d158d9f259579a /src/plugins/cpptools/cppmodelmanager.cpp | |
parent | fbf64eae72473efb7c5d52d3f7ad369b912b6098 (diff) | |
download | qt-creator-87a3aac18f70daa6921292f944fb69378c75aaf7.tar.gz |
C++: add fallback project part querying
When a file is not part of any other project part, this project part can
be used to get at least some compiler flags, defines, etc. to use. This
can happen when either a file outside a project is opened, or when the
project description is incomplete.
Change-Id: I5d595fae7195e8b61dbad14368b6cae9eb15c21b
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanager.cpp')
-rw-r--r-- | src/plugins/cpptools/cppmodelmanager.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp index 6e942767fd..0de3470e62 100644 --- a/src/plugins/cpptools/cppmodelmanager.cpp +++ b/src/plugins/cpptools/cppmodelmanager.cpp @@ -410,7 +410,7 @@ void CppModelManager::dumpModelManagerConfiguration() cxxExtensions << QLatin1String("MicrosoftExtensions"); if (part->cxxExtensions & ProjectPart::BorlandExtensions) cxxExtensions << QLatin1String("BorlandExtensions"); - if (part->cxxExtensions & ProjectPart::OpenMP) + if (part->cxxExtensions & ProjectPart::OpenMPExtensions) cxxExtensions << QLatin1String("OpenMP"); qDebug() << "cVersion:" << cVersion; @@ -777,6 +777,21 @@ QList<ProjectPart::Ptr> CppModelManager::projectPart(const QString &fileName) co return parts; } +ProjectPart::Ptr CppModelManager::fallbackProjectPart() const +{ + ProjectPart::Ptr part(new ProjectPart); + + part->defines = m_definedMacros; + part->includePaths = m_includePaths; + part->frameworkPaths = m_frameworkPaths; + part->cVersion = ProjectPart::C11; + part->cxxVersion = ProjectPart::CXX11; + part->cxxExtensions = ProjectPart::AllExtensions; + part->qtVersion = ProjectPart::Qt5; + + return part; +} + bool CppModelManager::isCppEditor(Core::IEditor *editor) const { return editor->context().contains(ProjectExplorer::Constants::LANG_CXX); |