aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/cmakeprojectmanager/fileapiparser.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/cmakeprojectmanager/fileapiparser.h')
-rw-r--r--src/plugins/cmakeprojectmanager/fileapiparser.h37
1 files changed, 10 insertions, 27 deletions
diff --git a/src/plugins/cmakeprojectmanager/fileapiparser.h b/src/plugins/cmakeprojectmanager/fileapiparser.h
index 0a5d19649e..eb096b8a73 100644
--- a/src/plugins/cmakeprojectmanager/fileapiparser.h
+++ b/src/plugins/cmakeprojectmanager/fileapiparser.h
@@ -33,7 +33,11 @@
#include <utils/filesystemwatcher.h>
#include <utils/fileutils.h>
-#include <QObject>
+#include <QDir>
+#include <QString>
+#include <QVector>
+
+#include <vector>
namespace CMakeProjectManager {
namespace Internal {
@@ -237,38 +241,17 @@ public:
std::vector<FileApiDetails::TargetDetails> targetDetails;
};
-class FileApiParser final : public QObject
+class FileApiParser
{
- Q_OBJECT
-
public:
- FileApiParser(const Utils::FilePath &sourceDirectory, const Utils::FilePath &buildDirectory);
- ~FileApiParser() final;
-
- Utils::FilePath cmakeReplyDirectory() const;
- QFileInfo scanForCMakeReplyFile() const;
-
- QStringList cmakeQueryFileNames() const;
- QStringList cmakeQueryFilePaths() const;
-
- void setParsedReplyFilePath(const QString &filePath);
-
static FileApiData parseData(const QFileInfo &replyFileInfo, QString &errorMessage);
-signals:
- void dataAvailable() const;
- void errorOccurred(const QString &message) const;
- void dirty() const;
-
-private:
- void setupCMakeFileApi() const;
+ static bool setupCMakeFileApi(const Utils::FilePath &buildDirectory,
+ Utils::FileSystemWatcher &watcher);
- const Utils::FilePath &m_sourceDirectory;
- const Utils::FilePath &m_buildDirectory;
+ static QStringList cmakeQueryFilePaths(const Utils::FilePath &buildDirectory);
- void replyDirectoryHasChanged(const QString &directory) const;
- Utils::FileSystemWatcher m_watcher;
- QString m_lastParsedReplyFile;
+ static QFileInfo scanForCMakeReplyFile(const Utils::FilePath &buildDirectory);
};
} // namespace Internal