File indexing completed on 2025-02-02 05:02:32

0001 /*
0002     SPDX-FileCopyrightText: 2020 Volker Krause <vkrause@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef NOTIFICATIONCONFIGCONTROLLER_H
0008 #define NOTIFICATIONCONFIGCONTROLLER_H
0009 
0010 #include <QMetaType>
0011 
0012 /** QML interface for notification configuration. */
0013 class NotificationConfigController
0014 {
0015     Q_GADGET
0016     Q_PROPERTY(bool canConfigureNotification READ canConfigureNotification)
0017     Q_PROPERTY(bool canShowOnLockScreen READ canShowOnLockScreen)
0018 public:
0019     /** Notification configuration dialog is available on this platform. */
0020     bool canConfigureNotification() const;
0021     /** Platform supports lock-screen visibility. */
0022     bool canShowOnLockScreen() const;
0023 
0024     /** Show notification config dialog. */
0025     Q_INVOKABLE void configureNotifications();
0026 };
0027 
0028 Q_DECLARE_METATYPE(NotificationConfigController)
0029 
0030 #endif // NOTIFICATIONCONFIGCONTROLLER_H