File indexing completed on 2025-02-02 05:26:31
0001 /* 0002 SPDX-FileCopyrightText: 2010 Jacopo De Simoi <wilderkde@gmail.com> 0003 SPDX-FileCopyrightText: 2014 Lukáš Tinkl <ltinkl@redhat.com> 0004 0005 SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #include "devicenotificationsengine.h" 0009 0010 #include <Plasma5Support/DataContainer> 0011 0012 DeviceNotificationsEngine::DeviceNotificationsEngine(QObject *parent) 0013 : Plasma5Support::DataEngine(parent) 0014 , m_solidNotify(new KSolidNotify(this)) 0015 { 0016 qWarning("DeviceNotificationsEngine is deprecated. Import KSolidNotify from org.kde.plasma.private.devicenotifier instead."); 0017 connect(m_solidNotify, &KSolidNotify::notify, this, &DeviceNotificationsEngine::notify); 0018 connect(m_solidNotify, &KSolidNotify::clearNotification, this, &DeviceNotificationsEngine::clearNotification); 0019 } 0020 0021 DeviceNotificationsEngine::~DeviceNotificationsEngine() 0022 { 0023 } 0024 0025 void DeviceNotificationsEngine::notify(Solid::ErrorType solidError, const QString &error, const QString &errorDetails, const QString &udi) 0026 { 0027 const QString source = QStringLiteral("%1 notification").arg(udi); 0028 0029 Plasma5Support::DataEngine::Data notificationData; 0030 notificationData.insert(QStringLiteral("solidError"), solidError); 0031 notificationData.insert(QStringLiteral("error"), error); 0032 notificationData.insert(QStringLiteral("errorDetails"), errorDetails); 0033 notificationData.insert(QStringLiteral("udi"), udi); 0034 0035 setData(source, notificationData); 0036 } 0037 0038 void DeviceNotificationsEngine::clearNotification(const QString &udi) 0039 { 0040 removeSource(QStringLiteral("%1 notification").arg(udi)); 0041 } 0042 0043 K_PLUGIN_CLASS_WITH_JSON(DeviceNotificationsEngine, "plasma-dataengine-devicenotifications.json") 0044 0045 #include "devicenotificationsengine.moc"