Terminal: Enable TerminalProcessInterface

Adds a new helper app "process_stub" that replaces the previous.
"process_stub_unix/win". The purpose was and is to allow processes
to be "injected" into other hosts apps like terminals while still
being able to control and debug them.

A new base class called "TerminalInterface" is used for both the new
Terminal plugin and the legacy TerminalProcess implementation.

Fixes: QTCREATORBUG-16364
Change-Id: If21273fe53ad545d1a768c17c83db4bf2fd85395
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Marcus Tillmanns
2023-03-07 17:55:38 +01:00
parent 2d2eef1c2c
commit 0870f2583b
34 changed files with 1276 additions and 1502 deletions

View File

@@ -6,6 +6,7 @@
#include "commandline.h"
#include "environment.h"
#include "filepath.h"
#include "id.h"
#include <functional>
#include <memory>
@@ -46,6 +47,7 @@ struct OpenTerminalParameters
std::optional<FilePath> workingDirectory;
std::optional<Environment> environment;
ExitBehavior m_exitBehavior{ExitBehavior::Close};
std::optional<Id> identifier{std::nullopt};
};
struct NameAndCommandLine