Port away from KService.
This commit is contained in:
parent
bbfff249cb
commit
722ef62ebb
|
@ -55,7 +55,7 @@ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
|||
# Load the frameworks we need
|
||||
find_package(KF5 REQUIRED
|
||||
I18n
|
||||
Service
|
||||
CoreAddons
|
||||
WidgetsAddons
|
||||
)
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ target_link_libraries( kpmcore
|
|||
${LIBATASMART_LIBRARIES}
|
||||
Qt5::DBus
|
||||
KF5::I18n
|
||||
KF5::Service
|
||||
KF5::CoreAddons
|
||||
KF5::WidgetsAddons
|
||||
)
|
||||
|
||||
|
|
|
@ -23,10 +23,12 @@
|
|||
#include <QDebug>
|
||||
#include <QStringList>
|
||||
#include <QString>
|
||||
#include <QVector>
|
||||
|
||||
#include <KLocalizedString>
|
||||
#include <KPluginFactory>
|
||||
#include <KPluginLoader>
|
||||
#include <KServiceTypeTrader>
|
||||
#include <KPluginMetaData>
|
||||
|
||||
CoreBackendManager::CoreBackendManager() :
|
||||
m_Backend(nullptr)
|
||||
|
@ -43,10 +45,15 @@ CoreBackendManager* CoreBackendManager::self()
|
|||
return instance;
|
||||
}
|
||||
|
||||
KService::List CoreBackendManager::list() const
|
||||
QVector<KPluginMetaData> CoreBackendManager::list() const
|
||||
{
|
||||
return KServiceTypeTrader::self()->query(QStringLiteral("PartitionManager/Plugin"),
|
||||
QStringLiteral("[X-KDE-PluginInfo-Category] == 'BackendPlugin'"));
|
||||
auto filter = [&](const KPluginMetaData &metaData) {
|
||||
return metaData.serviceTypes().contains(QStringLiteral("PartitionManager/Plugin")) &&
|
||||
metaData.category().contains(QStringLiteral("BackendPlugin"));
|
||||
};
|
||||
|
||||
// find backend plugins in standard path (e.g. /usr/lib64/qt5/plugins) using filter from above
|
||||
return KPluginLoader::findPlugins(QString(), filter);
|
||||
}
|
||||
|
||||
bool CoreBackendManager::load(const QString& name)
|
||||
|
|
|
@ -21,10 +21,11 @@
|
|||
|
||||
#include "util/libpartitionmanagerexport.h"
|
||||
|
||||
#include <KService>
|
||||
#include <QVector>
|
||||
|
||||
class QString;
|
||||
class QStringList;
|
||||
class KPluginMetaData;
|
||||
class CoreBackend;
|
||||
|
||||
/**
|
||||
|
@ -55,7 +56,7 @@ public:
|
|||
/**
|
||||
* @return a list of available backend plugins
|
||||
*/
|
||||
KService::List list() const;
|
||||
QVector<KPluginMetaData> list() const;
|
||||
|
||||
/**
|
||||
* Loads the given backend plugin into the application.
|
||||
|
|
Loading…
Reference in New Issue