summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/dynamiclicensecheck.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmldesigner/dynamiclicensecheck.h')
-rw-r--r--src/plugins/qmldesigner/dynamiclicensecheck.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/dynamiclicensecheck.h b/src/plugins/qmldesigner/dynamiclicensecheck.h
index c26267c881..a3ddf6c192 100644
--- a/src/plugins/qmldesigner/dynamiclicensecheck.h
+++ b/src/plugins/qmldesigner/dynamiclicensecheck.h
@@ -32,6 +32,26 @@ inline ExtensionSystem::IPlugin *licenseCheckerPlugin()
return pluginSpec->plugin();
return nullptr;
}
+
+inline ExtensionSystem::IPlugin *dsLicenseCheckerPlugin()
+{
+ const ExtensionSystem::PluginSpec *pluginSpec = Utils::findOrDefault(
+ ExtensionSystem::PluginManager::plugins(),
+ Utils::equal(&ExtensionSystem::PluginSpec::name, QString("DSLicense")));
+
+ if (pluginSpec)
+ return pluginSpec->plugin();
+ return nullptr;
+}
+
+inline bool dsLicenseCheckerPluginExists()
+{
+ const ExtensionSystem::PluginSpec *pluginSpec = Utils::findOrDefault(
+ ExtensionSystem::PluginManager::plugins(),
+ Utils::equal(&ExtensionSystem::PluginSpec::name, QString("DSLicense")));
+
+ return pluginSpec;
+}
} // namespace Internal
inline FoundLicense checkLicense()
@@ -94,4 +114,23 @@ inline QString licenseeEmail()
return {};
}
+inline bool checkEnterpriseLicense()
+{
+ if (auto plugin = Internal::dsLicenseCheckerPlugin()) {
+ bool retVal = false;
+ bool success = QMetaObject::invokeMethod(plugin,
+ "checkEnterpriseLicense",
+ Qt::DirectConnection,
+ Q_RETURN_ARG(bool, retVal));
+
+ if (success)
+ return retVal;
+ }
+
+ if (Internal::dsLicenseCheckerPluginExists())
+ return false;
+
+ return true;
+}
+
} // namespace Utils