From 375d81166cd1e5cca78937d6f95ff17018fe9091 Mon Sep 17 00:00:00 2001 From: Kevin Michel Date: Mon, 29 Jun 2009 18:04:29 +0200 Subject: [PATCH] Allow adding files in generic project MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Merge-request: 736 Reviewed-by: Thorbjørn Lindeijer --- .../genericprojectmanager/genericproject.cpp | 15 +++++++++++++++ .../genericprojectmanager/genericproject.h | 2 ++ .../genericprojectmanager/genericprojectnodes.cpp | 7 ++++--- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp index 3482958f064..86d3fbd6955 100644 --- a/src/plugins/genericprojectmanager/genericproject.cpp +++ b/src/plugins/genericprojectmanager/genericproject.cpp @@ -168,6 +168,21 @@ static QStringList readLines(const QString &absoluteFileName) return lines; } +bool GenericProject::addFiles(const QStringList &filePaths) +{ + QFile file(filesFileName()); + if (file.open(QFile::Append)) { + QTextStream stream(&file); + QDir baseDir(QFileInfo(m_fileName).dir()); + foreach (const QString &filePath, filePaths) { + stream << baseDir.relativeFilePath(filePath) << "\n"; + } + file.close(); + refresh(GenericProject::Files); + return true; + } + return false; +} void GenericProject::parseProject(RefreshOptions options) { diff --git a/src/plugins/genericprojectmanager/genericproject.h b/src/plugins/genericprojectmanager/genericproject.h index 6602771ce2c..a22f2abda0a 100644 --- a/src/plugins/genericprojectmanager/genericproject.h +++ b/src/plugins/genericprojectmanager/genericproject.h @@ -94,6 +94,8 @@ public: QString buildParser(const QString &buildConfiguration) const; ProjectExplorer::ToolChain *toolChain() const; + bool addFiles(const QStringList &filePaths); + enum RefreshOptions { Files = 0x01, Configuration = 0x02, diff --git a/src/plugins/genericprojectmanager/genericprojectnodes.cpp b/src/plugins/genericprojectmanager/genericprojectnodes.cpp index c19eca0b59c..6376c1b3b99 100644 --- a/src/plugins/genericprojectmanager/genericprojectnodes.cpp +++ b/src/plugins/genericprojectmanager/genericprojectnodes.cpp @@ -165,7 +165,8 @@ bool GenericProjectNode::hasTargets() const QList GenericProjectNode::supportedActions() const { - return QList(); + return QList() + << AddFile; } bool GenericProjectNode::addSubProjects(const QStringList &proFilePaths) @@ -184,9 +185,9 @@ bool GenericProjectNode::addFiles(const ProjectExplorer::FileType fileType, const QStringList &filePaths, QStringList *notAdded) { Q_UNUSED(fileType); - Q_UNUSED(filePaths); Q_UNUSED(notAdded); - return false; + + return m_project->addFiles(filePaths); } bool GenericProjectNode::removeFiles(const ProjectExplorer::FileType fileType,