diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-08-16 17:02:30 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2013-08-20 12:53:33 +0200 |
commit | cc2610aa71ae012261b5fecbf615d41250d088ac (patch) | |
tree | af25da496ce0ef7b11f2ebf5a00e95f52a1547d8 /src/plugins/vcsbase/vcsbaseplugin.h | |
parent | 1dd44cfba19be1063e2b8ba73a10df4ba36625ea (diff) | |
download | qt-creator-cc2610aa71ae012261b5fecbf615d41250d088ac.tar.gz |
VCS: Enable calling runVcs from non-GUI threads
* Introduce a proxy class for thread synchronization
* Use signals for appending text to output window
Change-Id: Iecbb010e6b6e9dab27d9862a43dafa450f2bb1f8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/vcsbase/vcsbaseplugin.h')
-rw-r--r-- | src/plugins/vcsbase/vcsbaseplugin.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/plugins/vcsbase/vcsbaseplugin.h b/src/plugins/vcsbase/vcsbaseplugin.h index ed60b866ad..5df80930ee 100644 --- a/src/plugins/vcsbase/vcsbaseplugin.h +++ b/src/plugins/vcsbase/vcsbaseplugin.h @@ -151,6 +151,8 @@ public: // requires a terminal-less process) and sets LANG to 'C' to force English // (suppress LOCALE warnings/parse commands output) if desired. static void setProcessEnvironment(QProcessEnvironment *e, bool forceCLocale); + // Returns SSH prompt configured in settings. + static QString sshPrompt(); // Returns whether an SSH prompt is configured. static bool isSshPromptConfigured(); @@ -175,6 +177,7 @@ public: const QStringList &arguments, int timeOutMS, QProcessEnvironment env, + const QString &sshPasswordPrompt, unsigned flags = 0, QTextCodec *outputCodec = 0); @@ -182,6 +185,7 @@ public: const QString &binary, const QStringList &arguments, int timeOutMS, + const QString &sshPasswordPrompt, unsigned flags = 0, QTextCodec *outputCodec = 0); @@ -241,6 +245,20 @@ private slots: void slotTestRemoveSnapshot(); private: + static void setProcessEnvironment(QProcessEnvironment *e, + bool forceCLocale, + const QString &sshPasswordPrompt); + + static Utils::SynchronousProcessResponse runVcsFullySynchronously( + const QString &workingDir, + const QString &binary, + const QStringList &arguments, + int timeOutMS, + QProcessEnvironment env, + const QString &sshPasswordPrompt, + unsigned flags, + QTextCodec *outputCodec = 0); + VcsBasePluginPrivate *d; }; |