forked from qt-creator/qt-creator
Utils: Move QtcProcess constructor setup data to shared setup data
This includes replacing DeviceProcess terminal handling with base member. Change-Id: Id1541bfce33c71dddc71b4816ad0b174dce3879c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This commit is contained in:
@@ -60,6 +60,9 @@ class QTCREATOR_UTILS_EXPORT QtcProcess : public QObject
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
QtcProcess(QObject *parent = nullptr);
|
||||
~QtcProcess();
|
||||
|
||||
enum ProcessImpl {
|
||||
QProcessImpl,
|
||||
ProcessLauncherImpl,
|
||||
@@ -74,24 +77,6 @@ public:
|
||||
TerminalOn = TerminalRun // default mode for ON
|
||||
};
|
||||
|
||||
struct Setup {
|
||||
Setup() {}
|
||||
Setup(ProcessImpl processImpl) : processImpl(processImpl) {}
|
||||
Setup(ProcessMode processMode) : processMode(processMode) {}
|
||||
Setup(TerminalMode terminalMode) : terminalMode(terminalMode) {}
|
||||
|
||||
ProcessImpl processImpl = DefaultImpl;
|
||||
ProcessMode processMode = ProcessMode::Reader;
|
||||
TerminalMode terminalMode = TerminalOff;
|
||||
};
|
||||
|
||||
QtcProcess(const Setup &setup = {}, QObject *parent = nullptr);
|
||||
QtcProcess(QObject *parent);
|
||||
~QtcProcess();
|
||||
|
||||
ProcessMode processMode() const;
|
||||
TerminalMode terminalMode() const;
|
||||
|
||||
enum Result {
|
||||
// Finished successfully. Unless an ExitCodeInterpreter is set
|
||||
// this corresponds to a return code 0.
|
||||
@@ -109,6 +94,15 @@ public:
|
||||
Hang
|
||||
};
|
||||
|
||||
void setProcessImpl(ProcessImpl processImpl);
|
||||
|
||||
void setTerminalMode(TerminalMode mode);
|
||||
bool usesTerminal() const { return terminalMode() != TerminalOff; }
|
||||
TerminalMode terminalMode() const;
|
||||
|
||||
void setProcessMode(ProcessMode processMode);
|
||||
ProcessMode processMode() const;
|
||||
|
||||
void setEnvironment(const Environment &env);
|
||||
void unsetEnvironment();
|
||||
const Environment &environment() const;
|
||||
|
||||
Reference in New Issue
Block a user