From 313724ace923b5b4a453722139c31ae2d8465e9c Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Wed, 1 Jul 2015 12:33:03 +0200 Subject: Adapt to API change in main QtC. Change-Id: I1496b29cc4b3a9802587f67d078b9c3d953f0141 Reviewed-by: Andre Poenitz --- plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 -- cgit v1.2.1 From daa478adad625b40d51cea9d90be8a77210a6818 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Wed, 1 Jul 2015 17:20:45 +0200 Subject: Factor out license check. Change-Id: Ifcaab7252239bde1affa8bc55ab38761c0f6e99f Reviewed-by: Nikolai Kosjar --- .../clangstaticanalyzer/clangstaticanalyzer.pro | 1 + .../clangstaticanalyzer/clangstaticanalyzer.qbs | 1 + .../clangstaticanalyzerlicensecheck.h | 45 ++++++++++++++++++++++ .../clangstaticanalyzerplugin.cpp | 24 ++---------- 4 files changed, 51 insertions(+), 20 deletions(-) create mode 100644 plugins/clangstaticanalyzer/clangstaticanalyzerlicensecheck.h 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 +#include +#endif + +inline bool enterpriseFeaturesAvailable() +{ +#ifdef LICENSECHECKER + LicenseChecker::LicenseCheckerPlugin *licenseChecker + = ExtensionSystem::PluginManager::getObject(); + + 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 #include -#ifdef LICENSECHECKER -#include -#endif - -#include - #include #include #include @@ -117,21 +112,7 @@ bool ClangStaticAnalyzerPlugin::initialize(const QStringList &arguments, QString panelFactory->setDisplayName(tr("Clang Static Analyzer Settings")); panelFactory->setSimpleCreateWidgetFunction(QIcon()); ProjectExplorer::ProjectPanelFactory::registerFactory(panelFactory); - -#ifdef LICENSECHECKER - LicenseChecker::LicenseCheckerPlugin *licenseChecker - = ExtensionSystem::PluginManager::getObject(); - - 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); -- cgit v1.2.1