diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp index b291f43a616f111e48d7c606b71dce85a55933a2..f6e33ee5cadd8d30a2fb2ff0b0879527ba0f0283 100644 --- a/src/plugins/genericprojectmanager/genericproject.cpp +++ b/src/plugins/genericprojectmanager/genericproject.cpp @@ -262,13 +262,6 @@ QStringList GenericProject::files(FilesMode fileMode) const return _rootNode->files(); } -void GenericProject::saveSettingsImpl(ProjectExplorer::PersistentSettingsWriter &writer) -{ - qDebug() << Q_FUNC_INFO; - - Project::saveSettingsImpl(writer); -} - QStringList GenericProject::targets() const { QStringList targets; @@ -308,6 +301,26 @@ void GenericProject::restoreSettingsImpl(ProjectExplorer::PersistentSettingsRead const QFileInfo fileInfo(file()->fileName()); setValue(all, buildDirectory, fileInfo.absolutePath()); } + + QString toolChainId = reader.restoreValue(QLatin1String("toolChain")).toString(); + if (toolChainId.isEmpty()) + toolChainId = QLatin1String("gcc"); + + toolChainId = toolChainId.toLower(); // ### move + _rootNode->setToolChainId(toolChainId); + + const QStringList includePaths = reader.restoreValue(QLatin1String("includePaths")).toStringList(); + _rootNode->setIncludePaths(includePaths); +} + +void GenericProject::saveSettingsImpl(ProjectExplorer::PersistentSettingsWriter &writer) +{ + qDebug() << Q_FUNC_INFO; + + Project::saveSettingsImpl(writer); + + writer.saveValue("toolChain", _rootNode->toolChainId()); + writer.saveValue("includePaths", _rootNode->includePaths()); } //////////////////////////////////////////////////////////////////////////////////// diff --git a/src/plugins/genericprojectmanager/genericprojectnodes.cpp b/src/plugins/genericprojectmanager/genericprojectnodes.cpp index 2be47bdfe337f0f769f254f84d347271d19cd1bb..59739982bad11a6d905dd61f3080cfc951abcc91 100644 --- a/src/plugins/genericprojectmanager/genericprojectnodes.cpp +++ b/src/plugins/genericprojectmanager/genericprojectnodes.cpp @@ -74,9 +74,7 @@ void GenericProjectNode::refresh() _files = convertToAbsoluteFiles(projectPath, projectInfo.value(QLatin1String("files")).toStringList()); _generated = convertToAbsoluteFiles(projectPath, projectInfo.value(QLatin1String("generated")).toStringList()); - _includePaths = convertToAbsoluteFiles(projectPath, projectInfo.value(QLatin1String("includes")).toStringList()); _defines = projectInfo.value(QLatin1String("defines")).toStringList(); - _toolChainId = projectInfo.value(QLatin1String("toolchain"), QLatin1String("gcc")).toString().toLower(); FileNode *projectFileNode = new FileNode(projectFilePath(), ProjectFileType, /* generated = */ false); @@ -230,12 +228,18 @@ QStringList GenericProjectNode::generated() const QStringList GenericProjectNode::includePaths() const { return _includePaths; } +void GenericProjectNode::setIncludePaths(const QStringList &includePaths) +{ _includePaths = convertToAbsoluteFiles(QDir(path()), includePaths); } + QStringList GenericProjectNode::defines() const { return _defines; } QString GenericProjectNode::toolChainId() const { return _toolChainId; } +void GenericProjectNode::setToolChainId(const QString &toolChainId) +{ _toolChainId = toolChainId; } + bool GenericProjectNode::hasTargets() const { qDebug() << Q_FUNC_INFO; diff --git a/src/plugins/genericprojectmanager/genericprojectnodes.h b/src/plugins/genericprojectmanager/genericprojectnodes.h index d393b03d5d9f03094ff768d9ef0fb215588979b8..891debda7443a54a3f460728bef7d25ca3d0f87e 100644 --- a/src/plugins/genericprojectmanager/genericprojectnodes.h +++ b/src/plugins/genericprojectmanager/genericprojectnodes.h @@ -69,11 +69,15 @@ public: void refresh(); + QString toolChainId() const; + void setToolChainId(const QString &toolChainId); + + QStringList includePaths() const; + void setIncludePaths(const QStringList &includePaths); + QStringList files() const; QStringList generated() const; - QStringList includePaths() const; QStringList defines() const; - QString toolChainId() const; private: FolderNode *findOrCreateFolderByName(const QString &filePath);