File indexing completed on 2024-04-21 03:56:28

0001 /*
0002     This file is part of the KDE libraries
0003     SPDX-FileCopyrightText: 2005-2006 Olivier Goffart <ogoffart at kde.org>
0004     SPDX-FileCopyrightText: 2013-2014 Martin Klapetek <mklapetek@kde.org>
0005 
0006     code from KNotify/KNotifyClient
0007     SPDX-FileCopyrightText: 1997 Christian Esken <esken@kde.org>
0008     SPDX-FileCopyrightText: 2000 Charles Samuels <charles@kde.org>
0009     SPDX-FileCopyrightText: 2000 Stefan Schimanski <1Stein@gmx.de>
0010     SPDX-FileCopyrightText: 2000 Matthias Ettrich <ettrich@kde.org>
0011     SPDX-FileCopyrightText: 2000 Waldo Bastian <bastian@kde.org>
0012     SPDX-FileCopyrightText: 2000-2003 Carsten Pfeiffer <pfeiffer@kde.org>
0013     SPDX-FileCopyrightText: 2005 Allan Sandfeld Jensen <kde@carewolf.com>
0014 
0015     SPDX-License-Identifier: LGPL-2.0-only
0016 */
0017 
0018 #ifndef KNOITIFICATION_P_H
0019 #define KNOITIFICATION_P_H
0020 
0021 #include <QTimer>
0022 
0023 struct Q_DECL_HIDDEN KNotification::Private {
0024     QString eventId;
0025     int id = -1;
0026     int ref = 0;
0027 
0028     QString title;
0029     QString text;
0030     QString iconName;
0031     KNotificationAction *defaultAction = nullptr;
0032     QList<KNotificationAction *> actions;
0033     bool ownsActions = true;
0034     QString xdgActivationToken;
0035     std::unique_ptr<KNotificationReplyAction> replyAction;
0036     QPixmap pixmap;
0037     NotificationFlags flags = KNotification::CloseOnTimeout;
0038     QString componentName;
0039     KNotification::Urgency urgency = KNotification::DefaultUrgency;
0040     QVariantMap hints;
0041 
0042     QTimer updateTimer;
0043     bool needUpdate = false;
0044     bool isNew = true;
0045     bool autoDelete = true;
0046     QWindow *window = nullptr;
0047     int actionIdCounter = 1;
0048 };
0049 
0050 #endif