summaryrefslogtreecommitdiff
path: root/src/plugins/genericprojectmanager/genericproject.cpp
diff options
context:
space:
mode:
authorThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2011-03-10 22:47:49 +0100
committerThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2011-03-11 12:37:29 +0100
commit82430a6b37d1d2cecc6aa1358650c352163cc230 (patch)
tree84460208cd3f94e7f9cb158d9f2b40d485cdc13e /src/plugins/genericprojectmanager/genericproject.cpp
parent3518dd00583a3e1905eaf588717b987a569bd81d (diff)
downloadqt-creator-82430a6b37d1d2cecc6aa1358650c352163cc230.tar.gz
Generic project: Made C++ code model work better without a tool chain
When no valid tool chain is selected, no project info update was done at all. After this patch, at least the project defines and include paths are used. Reviewed-by: Roberto Raggi
Diffstat (limited to 'src/plugins/genericprojectmanager/genericproject.cpp')
-rw-r--r--src/plugins/genericprojectmanager/genericproject.cpp29
1 files changed, 12 insertions, 17 deletions
diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp
index 841e547486..7f2545d79a 100644
--- a/src/plugins/genericprojectmanager/genericproject.cpp
+++ b/src/plugins/genericprojectmanager/genericproject.cpp
@@ -207,28 +207,23 @@ void GenericProject::refresh(RefreshOptions options)
CPlusPlus::CppModelManagerInterface *modelManager =
CPlusPlus::CppModelManagerInterface::instance();
- if (m_toolChain && modelManager) {
- const QByteArray predefinedMacros = m_toolChain->predefinedMacros();
-
+ if (modelManager) {
CPlusPlus::CppModelManagerInterface::ProjectInfo pinfo = modelManager->projectInfo(this);
- pinfo.defines = predefinedMacros;
- pinfo.defines += '\n';
- pinfo.defines += m_defines;
- QStringList allIncludePaths;
- QStringList allFrameworkPaths;
+ if (m_toolChain) {
+ pinfo.defines = m_toolChain->predefinedMacros();
+ pinfo.defines += '\n';
- foreach (const HeaderPath &headerPath, m_toolChain->systemHeaderPaths()) {
- if (headerPath.kind() == HeaderPath::FrameworkHeaderPath)
- allFrameworkPaths.append(headerPath.path());
- else
- allIncludePaths.append(headerPath.path());
+ foreach (const HeaderPath &headerPath, m_toolChain->systemHeaderPaths()) {
+ if (headerPath.kind() == HeaderPath::FrameworkHeaderPath)
+ pinfo.frameworkPaths.append(headerPath.path());
+ else
+ pinfo.includePaths.append(headerPath.path());
+ }
}
- allIncludePaths += this->allIncludePaths();
-
- pinfo.frameworkPaths = allFrameworkPaths;
- pinfo.includePaths = allIncludePaths;
+ pinfo.includePaths += allIncludePaths();
+ pinfo.defines += m_defines;
// ### add _defines.
pinfo.sourceFiles = files();