ShellCommand: De-virtualize runCommand()

Add virtual postRunCommand() method, called
by the end of runCommand().

In this way the rest of the API of VcsCommand remains
an implementation detail.

Change-Id: Ia4149334bd39a1448266d2406e0987bee07a9c58
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
Jarek Kobus
2022-07-12 13:34:26 +02:00
parent 3de1fffbeb
commit e3da02248a
4 changed files with 14 additions and 20 deletions

View File

@@ -48,16 +48,12 @@ public:
VcsCommand(const Utils::FilePath &defaultWorkingDirectory, const Utils::Environment &environment);
void runCommand(Utils::QtcProcess &process,
const Utils::CommandLine &command,
const Utils::FilePath &workDirectory = {}) override;
protected:
Utils::Environment environment() const override;
void addTask(QFuture<void> &future) override;
private:
void emitRepositoryChanged(const Utils::FilePath &workingDirectory);
void addTask(QFuture<void> &future) override;
void postRunCommand(const Utils::FilePath &workDirectory) override;
QPointer<Core::FutureProgress> m_progress;
bool m_preventRepositoryChanged;