aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2019-05-29 19:28:43 +0200
committerhjk <hjk@qt.io>2019-06-03 12:32:07 +0000
commit959fec76dc257515a7bca74c00fde645f50e84c5 (patch)
treea5188ced7eab8302f7dcc91b5e9635dd7125030d
parenta154f26af5f29d51cbc9fd69c2d5c5ad4c343da4 (diff)
Utils: Move CommandLine to fileutils.{cpp,h}
Causes less #include hassle when using downstream instead of command/argument pairs. Change-Id: I0fa0d016374df0b8e0a22f3786623652af684d36 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
-rw-r--r--src/libs/utils/fileutils.cpp28
-rw-r--r--src/libs/utils/fileutils.h23
-rw-r--r--src/libs/utils/qtcprocess.cpp20
-rw-r--r--src/libs/utils/qtcprocess.h23
-rw-r--r--src/tools/sdktool/sdktool.pro4
-rw-r--r--src/tools/sdktool/sdktool.qbs2
6 files changed, 57 insertions, 43 deletions
diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp
index 4bf278a041..0553d7f0d9 100644
--- a/src/libs/utils/fileutils.cpp
+++ b/src/libs/utils/fileutils.cpp
@@ -28,6 +28,7 @@
#include "algorithm.h"
#include "qtcassert.h"
+#include "qtcprocess.h"
#include <QDataStream>
#include <QDir>
@@ -66,6 +67,33 @@ QT_END_NAMESPACE
namespace Utils {
+/*! \class Utils::CommandLine
+
+ \brief The CommandLine class represents a command line of a QProcess
+ or similar utility.
+
+*/
+
+void CommandLine::addArg(const QString &arg)
+{
+ QtcProcess::addArg(&m_arguments, arg);
+}
+
+void CommandLine::addArgs(const QStringList &inArgs)
+{
+ QtcProcess::addArgs(&m_arguments, inArgs);
+}
+
+void CommandLine::addArgs(const QString &inArgs)
+{
+ QtcProcess::addArgs(&m_arguments, inArgs);
+}
+
+QString CommandLine::toUserOutput() const
+{
+ return m_executable.toUserOutput() + ' ' + m_arguments;
+}
+
/*! \class Utils::FileUtils
\brief The FileUtils class contains file and directory related convenience
diff --git a/src/libs/utils/fileutils.h b/src/libs/utils/fileutils.h
index fd8f4f7422..d840c350af 100644
--- a/src/libs/utils/fileutils.h
+++ b/src/libs/utils/fileutils.h
@@ -128,6 +128,29 @@ using FilePathList = QList<FilePath>;
using FileName = FilePath;
using FileNameList = FilePathList;
+class QTCREATOR_UTILS_EXPORT CommandLine
+{
+public:
+ CommandLine() {}
+
+ CommandLine(const FilePath &executable, const QString &arguments)
+ : m_executable(executable), m_arguments(arguments)
+ {}
+
+ void addArg(const QString &arg);
+ void addArgs(const QStringList &inArgs);
+ void addArgs(const QString &inArgs);
+
+ QString toUserOutput() const;
+
+ FilePath executable() const { return m_executable; }
+ QString arguments() const { return m_arguments; }
+
+private:
+ FilePath m_executable;
+ QString m_arguments;
+};
+
class QTCREATOR_UTILS_EXPORT FileUtils {
public:
static bool removeRecursively(const FilePath &filePath, QString *error = nullptr);
diff --git a/src/libs/utils/qtcprocess.cpp b/src/libs/utils/qtcprocess.cpp
index dce239b488..d05746d5b1 100644
--- a/src/libs/utils/qtcprocess.cpp
+++ b/src/libs/utils/qtcprocess.cpp
@@ -1521,24 +1521,4 @@ QString QtcProcess::Arguments::toString() const
return QtcProcess::joinArgs(m_unixArgs, OsTypeLinux);
}
-void CommandLine::addArg(const QString &arg)
-{
- QtcProcess::addArg(&m_arguments, arg);
-}
-
-void CommandLine::addArgs(const QStringList &inArgs)
-{
- QtcProcess::addArgs(&m_arguments, inArgs);
-}
-
-void CommandLine::addArgs(const QString &inArgs)
-{
- QtcProcess::addArgs(&m_arguments, inArgs);
-}
-
-QString CommandLine::toUserOutput() const
-{
- return m_executable.toUserOutput() + ' ' + m_arguments;
-}
-
} // namespace Utils
diff --git a/src/libs/utils/qtcprocess.h b/src/libs/utils/qtcprocess.h
index 1a831d3a5a..d3d22d3415 100644
--- a/src/libs/utils/qtcprocess.h
+++ b/src/libs/utils/qtcprocess.h
@@ -32,29 +32,6 @@
namespace Utils {
class AbstractMacroExpander;
-class QTCREATOR_UTILS_EXPORT CommandLine
-{
-public:
- CommandLine() {}
-
- CommandLine(const FilePath &executable, const QString &arguments)
- : m_executable(executable), m_arguments(arguments)
- {}
-
- void addArg(const QString &arg);
- void addArgs(const QStringList &inArgs);
- void addArgs(const QString &inArgs);
-
- QString toUserOutput() const;
-
- FilePath executable() const { return m_executable; }
- QString arguments() const { return m_arguments; }
-
-private:
- FilePath m_executable;
- QString m_arguments;
-};
-
class QTCREATOR_UTILS_EXPORT QtcProcess : public QProcess
{
Q_OBJECT
diff --git a/src/tools/sdktool/sdktool.pro b/src/tools/sdktool/sdktool.pro
index 098897f1e2..434da257c5 100644
--- a/src/tools/sdktool/sdktool.pro
+++ b/src/tools/sdktool/sdktool.pro
@@ -30,10 +30,12 @@ SOURCES += \
rmqtoperation.cpp \
rmtoolchainoperation.cpp \
settings.cpp \
+ $$UTILS/environment.cpp \
$$UTILS/fileutils.cpp \
$$UTILS/hostosinfo.cpp \
$$UTILS/persistentsettings.cpp \
$$UTILS/qtcassert.cpp \
+ $$UTILS/qtcprocess.cpp \
$$UTILS/savefile.cpp \
HEADERS += \
@@ -57,10 +59,12 @@ HEADERS += \
rmqtoperation.h \
rmtoolchainoperation.h \
settings.h \
+ $$UTILS/environment.h \
$$UTILS/fileutils.h \
$$UTILS/hostosinfo.h \
$$UTILS/persistentsettings.h \
$$UTILS/qtcassert.h \
+ $$UTILS/qtcprocess.h \
$$UTILS/savefile.h \
macos {
diff --git a/src/tools/sdktool/sdktool.qbs b/src/tools/sdktool/sdktool.qbs
index 67b1d8e3c3..1c672d783e 100644
--- a/src/tools/sdktool/sdktool.qbs
+++ b/src/tools/sdktool/sdktool.qbs
@@ -66,10 +66,12 @@ QtcTool {
name: "Utils"
prefix: libsDir + "/utils/"
files: [
+ "environment.cpp", "environment.h",
"fileutils.cpp", "fileutils.h",
"hostosinfo.cpp", "hostosinfo.h",
"persistentsettings.cpp", "persistentsettings.h",
"qtcassert.cpp", "qtcassert.h",
+ "qtcprocess.cpp", "qtcprocess.h",
"savefile.cpp", "savefile.h"
]
}