diff options
author | Tobias Hunger <tobias.hunger@nokia.com> | 2011-04-15 16:02:44 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@nokia.com> | 2011-04-15 16:06:38 +0200 |
commit | c07e2133990d23e1aa7df6a8bf6ff77ea50c2167 (patch) | |
tree | cf42bb98786dc8fa615510f8e36c418cde2f40cc /src/plugins/bazaar/bazaarcontrol.cpp | |
parent | 9978ebeda85bad33f017d2ed0c045ae3b1838714 (diff) | |
download | qt-creator-c07e2133990d23e1aa7df6a8bf6ff77ea50c2167.tar.gz |
VCS: Do not claim to support any operation if unconfigured
Make sure none of the VCS systems claims it does support any
VCS operation while unconfigured. This stops the specific
VCS from showing up in wizards, etc. till they can actually
be used.
Diffstat (limited to 'src/plugins/bazaar/bazaarcontrol.cpp')
-rw-r--r-- | src/plugins/bazaar/bazaarcontrol.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/plugins/bazaar/bazaarcontrol.cpp b/src/plugins/bazaar/bazaarcontrol.cpp index cf7f9fcfa4..43c0a8356f 100644 --- a/src/plugins/bazaar/bazaarcontrol.cpp +++ b/src/plugins/bazaar/bazaarcontrol.cpp @@ -33,6 +33,8 @@ #include "bazaarcontrol.h" #include "bazaarclient.h" +#include <vcsbase/vcsbaseclientsettings.h> + #include <QtCore/QFileInfo> #include <QtCore/QVariant> #include <QtCore/QStringList> @@ -59,9 +61,19 @@ bool BazaarControl::managesDirectory(const QString &directory, QString *topLevel return !topLevelFound.isEmpty(); } +bool BazaarControl::isConfigured() const +{ + const QString binary = m_bazaarClient->settings().binary(); + if (binary.isEmpty()) + return false; + QFileInfo fi(binary); + return fi.exists() && fi.isFile() && fi.isExecutable(); +} + bool BazaarControl::supportsOperation(Operation operation) const { - bool supported = true; + bool supported = isConfigured(); + switch (operation) { case Core::IVersionControl::AddOperation: case Core::IVersionControl::DeleteOperation: |