File indexing completed on 2024-05-05 05:38:31
0001 /* 0002 SPDX-FileCopyrightText: 2020 Shah Bhushan <bshah@kde.org> 0003 SPDX-FileCopyrightText: 2018-2019 Kai Uwe Broulik <kde@privat.broulik.de> 0004 0005 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0006 */ 0007 0008 #pragma once 0009 0010 #include "abstractnotificationsmodel.h" 0011 0012 #include "notificationmanager_export.h" 0013 0014 namespace NotificationManager 0015 { 0016 class NOTIFICATIONMANAGER_EXPORT NotificationsModel : public AbstractNotificationsModel 0017 { 0018 public: 0019 using Ptr = std::shared_ptr<NotificationsModel>; 0020 static Ptr createNotificationsModel(); 0021 void expire(uint notificationId) override; 0022 void close(uint notificationId) override; 0023 0024 void invokeDefaultAction(uint notificationId, Notifications::InvokeBehavior behavior) override; 0025 void invokeAction(uint notificationId, const QString &actionName, Notifications::InvokeBehavior behavior) override; 0026 void reply(uint notificationId, const QString &text, Notifications::InvokeBehavior behavior) override; 0027 0028 void configure(uint notificationId); 0029 void configure(const QString &desktopEntry, const QString ¬ifyRcName, const QString &eventId); 0030 0031 private: 0032 NotificationsModel(); 0033 }; 0034 0035 }