Introduce ExitCodeInterpreter, useful when exit code != 0 is valid

Task-number: QTCREATORBUG-10207

Change-Id: I3b440d40a968f09afc613b686ee50da6465ad88e
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
jkobus
2013-09-24 16:40:10 +02:00
committed by Jarek Kobus
parent 005bef9295
commit 696b0a8b80
8 changed files with 106 additions and 25 deletions

View File

@@ -44,6 +44,7 @@ QT_END_NAMESPACE
namespace Utils {
struct SynchronousProcessResponse;
class ExitCodeInterpreter;
}
namespace VcsBase {
@@ -150,6 +151,7 @@ protected:
};
virtual QString vcsCommandString(VcsCommand cmd) const;
virtual Core::Id vcsEditorKind(VcsCommand cmd) const = 0;
virtual Utils::ExitCodeInterpreter *exitCodeInterpreter(VcsCommand cmd, QObject *parent) const;
virtual QStringList revisionSpec(const QString &revision) const = 0;
virtual VcsBaseEditorParameterWidget *createDiffEditor(const QString &workingDir,
@@ -183,7 +185,7 @@ protected:
Command *createCommand(const QString &workingDirectory,
VcsBase::VcsBaseEditorWidget *editor = 0,
JobOutputBindMode mode = NoOutputBind);
void enqueueJob(Command *cmd, const QStringList &args);
void enqueueJob(Command *cmd, const QStringList &args, Utils::ExitCodeInterpreter *interpreter = 0);
void resetCachedVcsInfo(const QString &workingDir);