From 80baf6b012accda59f962b1f1d7237d15056482a Mon Sep 17 00:00:00 2001 From: Giacomo Strangolino <giacomo.strangolino@elettra.eu> Date: Tue, 4 Jul 2023 11:03:55 +0200 Subject: [PATCH] use CuPluginLoader --- browsertreedbusextension.cpp | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/browsertreedbusextension.cpp b/browsertreedbusextension.cpp index 5018817..5ea4c76 100644 --- a/browsertreedbusextension.cpp +++ b/browsertreedbusextension.cpp @@ -10,6 +10,7 @@ #include <cumbiadbusplugin.h> #include <QDir> #include <QPluginLoader> +#include <cupluginloader.h> BrowserTreeDBusExtension::BrowserTreeDBusExtension(BrowserTree *tree) : QObject(tree) { @@ -163,19 +164,13 @@ AppInfo BrowserTreeDBusExtension::findApp(const QString& commandLine) void BrowserTreeDBusExtension::m_loadCumbiaPlugin() { - QDir pluginsDir(QUMBIA_PLUGIN_DIR); - // pluginsDir.cd("plugins"); - foreach (QString fileName, pluginsDir.entryList(QDir::Files)) { - QPluginLoader pluginLoader(pluginsDir.absoluteFilePath(fileName)); - QObject *plugin = pluginLoader.instance(); - if (plugin) { - QuDBusPluginInterface *dpi = qobject_cast<QuDBusPluginInterface *>(plugin); - if(dpi) - m_qudbusctrl_i = dpi->getAppCtrlIface(); - } - else - perr("BrowserTreeDBusExtension.m_loadCumbiaPlugin: error loading plugin: %s", qstoc(pluginLoader.errorString())); - } + CuPluginLoader pl; + QObject *plugin_o = nullptr; + QuDBusPluginInterface *dpi = pl.get<QuDBusPluginInterface>("libcumbia-dbus-plugin.so", &plugin_o); // qobject_cast<QuDBusPluginInterface *>(plugin); + if(dpi) + m_qudbusctrl_i = dpi->getAppCtrlIface(); + else + perr("BrowserTreeDBusExtension.m_loadCumbiaPlugin: error loading dbus plugin"); if(m_qudbusctrl_i) printf("\e[1;32m* \e[0msuccessfully loaded the \e[1;32;4mcumbia dbus\e[0m plugin\n"); } -- GitLab