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/subversion/subversioncontrol.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/subversion/subversioncontrol.cpp')
-rw-r--r-- | src/plugins/subversion/subversioncontrol.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/plugins/subversion/subversioncontrol.cpp b/src/plugins/subversion/subversioncontrol.cpp index 4be772918a..08fab79557 100644 --- a/src/plugins/subversion/subversioncontrol.cpp +++ b/src/plugins/subversion/subversioncontrol.cpp @@ -32,6 +32,7 @@ #include "subversioncontrol.h" #include "subversionplugin.h" +#include "subversionsettings.h" #include <QtCore/QFileInfo> @@ -48,9 +49,18 @@ QString SubversionControl::displayName() const return QLatin1String("subversion"); } +bool SubversionControl::isConfigured() const +{ + const QString binary = m_plugin->settings().svnCommand; + if (binary.isEmpty()) + return false; + QFileInfo fi(binary); + return fi.exists() && fi.isFile() && fi.isExecutable(); +} + bool SubversionControl::supportsOperation(Operation operation) const { - bool rc = true; + bool rc = isConfigured(); switch (operation) { case AddOperation: case DeleteOperation: |