summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@theqtcompany.com>2015-07-02 15:01:43 +0200
committerChristian Kandeler <christian.kandeler@theqtcompany.com>2015-07-02 15:02:45 +0200
commitfcf75731440e33e8f529d8e38ffd1348287443be (patch)
tree29932de6169b349550066d26d98fbe8723ba9beb
parentbed4005b3082b74f2ca1d7a495dcd7c85a9fde9b (diff)
parentdaa478adad625b40d51cea9d90be8a77210a6818 (diff)
downloadqt-creator-fcf75731440e33e8f529d8e38ffd1348287443be.tar.gz
Merge remote-tracking branch 'origin/3.5'
Last merge came in between an API change and the adaptation to it. Change-Id: Ie98242a00c41be851597acb9f79a6c70fa741063
-rw-r--r--plugins/clangstaticanalyzer/clangstaticanalyzer.pro1
-rw-r--r--plugins/clangstaticanalyzer/clangstaticanalyzer.qbs1
-rw-r--r--plugins/clangstaticanalyzer/clangstaticanalyzerlicensecheck.h45
-rw-r--r--plugins/clangstaticanalyzer/clangstaticanalyzerplugin.cpp24
-rw-r--r--plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp2
5 files changed, 52 insertions, 21 deletions
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzer.pro b/plugins/clangstaticanalyzer/clangstaticanalyzer.pro
index f348951ea7..176c3274f1 100644
--- a/plugins/clangstaticanalyzer/clangstaticanalyzer.pro
+++ b/plugins/clangstaticanalyzer/clangstaticanalyzer.pro
@@ -28,6 +28,7 @@ HEADERS += \
clangstaticanalyzerdiagnosticmodel.h \
clangstaticanalyzerdiagnosticview.h \
clangstaticanalyzer_global.h \
+ clangstaticanalyzerlicensecheck.h \
clangstaticanalyzerlogfilereader.h \
clangstaticanalyzerplugin.h \
clangstaticanalyzerprojectsettings.h \
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzer.qbs b/plugins/clangstaticanalyzer/clangstaticanalyzer.qbs
index 524debd500..beb745f529 100644
--- a/plugins/clangstaticanalyzer/clangstaticanalyzer.qbs
+++ b/plugins/clangstaticanalyzer/clangstaticanalyzer.qbs
@@ -30,6 +30,7 @@ QtcCommercialPlugin {
"clangstaticanalyzerdiagnosticmodel.h",
"clangstaticanalyzerdiagnosticview.cpp",
"clangstaticanalyzerdiagnosticview.h",
+ "clangstaticanalyzerlicensecheck.h",
"clangstaticanalyzerlogfilereader.cpp",
"clangstaticanalyzerlogfilereader.h",
"clangstaticanalyzerplugin.cpp",
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerlicensecheck.h b/plugins/clangstaticanalyzer/clangstaticanalyzerlicensecheck.h
new file mode 100644
index 0000000000..7b0d09ba9d
--- /dev/null
+++ b/plugins/clangstaticanalyzer/clangstaticanalyzerlicensecheck.h
@@ -0,0 +1,45 @@
+/****************************************************************************
+**
+** Copyright (C) 2015 The Qt Company Ltd
+** All rights reserved.
+** For any questions to The Qt Company, please use contact form at http://www.qt.io/contact-us
+**
+** This file is part of the Qt Enterprise ClangStaticAnalyzer Add-on.
+**
+** Licensees holding valid Qt Enterprise licenses may use this file in
+** accordance with the Qt Enterprise License Agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company.
+**
+** If you have questions regarding the use of this file, please use
+** contact form at http://www.qt.io/contact-us
+**
+****************************************************************************/
+
+#ifndef CLANGSTATICANALYZERLICENSECHECK_H
+#define CLANGSTATICANALYZERLICENSECHECK_H
+
+#ifdef LICENSECHECKER
+#include <extensionsystem/pluginmanager.h>
+#include <licensechecker/licensecheckerplugin.h>
+#endif
+
+inline bool enterpriseFeaturesAvailable()
+{
+#ifdef LICENSECHECKER
+ LicenseChecker::LicenseCheckerPlugin *licenseChecker
+ = ExtensionSystem::PluginManager::getObject<LicenseChecker::LicenseCheckerPlugin>();
+
+ if (licenseChecker && licenseChecker->hasValidLicense()) {
+ if (licenseChecker->enterpriseFeatures())
+ return true;
+ } else {
+ qWarning() << "Invalid license, disabling Clang Static Analyzer";
+ }
+ return false;
+#else // LICENSECHECKER
+ return true;
+#endif
+}
+
+#endif // Include guard.
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerplugin.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerplugin.cpp
index 2afd35cec3..2fb20ea644 100644
--- a/plugins/clangstaticanalyzer/clangstaticanalyzerplugin.cpp
+++ b/plugins/clangstaticanalyzer/clangstaticanalyzerplugin.cpp
@@ -20,6 +20,7 @@
#include "clangstaticanalyzerconfigwidget.h"
#include "clangstaticanalyzerconstants.h"
+#include "clangstaticanalyzerlicensecheck.h"
#include "clangstaticanalyzerprojectsettingswidget.h"
#include "clangstaticanalyzerruncontrolfactory.h"
#include "clangstaticanalyzertool.h"
@@ -38,12 +39,6 @@
#include <coreplugin/dialogs/ioptionspage.h>
#include <projectexplorer/projectpanelfactory.h>
-#ifdef LICENSECHECKER
-#include <licensechecker/licensecheckerplugin.h>
-#endif
-
-#include <extensionsystem/pluginmanager.h>
-
#include <QAction>
#include <QDebug>
#include <QMainWindow>
@@ -117,21 +112,7 @@ bool ClangStaticAnalyzerPlugin::initialize(const QStringList &arguments, QString
panelFactory->setDisplayName(tr("Clang Static Analyzer Settings"));
panelFactory->setSimpleCreateWidgetFunction<ProjectSettingsWidget>(QIcon());
ProjectExplorer::ProjectPanelFactory::registerFactory(panelFactory);
-
-#ifdef LICENSECHECKER
- LicenseChecker::LicenseCheckerPlugin *licenseChecker
- = ExtensionSystem::PluginManager::getObject<LicenseChecker::LicenseCheckerPlugin>();
-
- if (licenseChecker && licenseChecker->hasValidLicense()) {
- if (licenseChecker->enterpriseFeatures())
- return initializeEnterpriseFeatures(arguments, errorString);
- } else {
- qWarning() << "Invalid license, disabling Clang Static Analyzer";
- }
- return true;
-#else // LICENSECHECKER
return initializeEnterpriseFeatures(arguments, errorString);
-#endif
}
bool ClangStaticAnalyzerPlugin::initializeEnterpriseFeatures(const QStringList &arguments,
@@ -140,6 +121,9 @@ bool ClangStaticAnalyzerPlugin::initializeEnterpriseFeatures(const QStringList &
Q_UNUSED(arguments);
Q_UNUSED(errorString);
+ if (!enterpriseFeaturesAvailable())
+ return true;
+
auto tool = m_analyzerTool = new ClangStaticAnalyzerTool(this);
addAutoReleasedObject(new ClangStaticAnalyzerRunControlFactory(m_analyzerTool));
addAutoReleasedObject(new ClangStaticAnalyzerOptionsPage);
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
index 959de1c597..08ad19f170 100644
--- a/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
+++ b/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
@@ -316,7 +316,7 @@ void ClangStaticAnalyzerTool::handleStateUpdate()
message += tr("%n issues found (%1 suppressed).", 0, issuesFound)
.arg(issuesFound - issuesVisible);
}
- AnalyzerManager::showPermanentStatusMessage(message);
+ AnalyzerManager::showPermanentStatusMessage(ClangStaticAnalyzerToolId, message);
}
} // namespace Internal