File indexing completed on 2024-04-28 16:45:10

0001 /*
0002     SPDX-FileCopyrightText: 2016 Sebastian Kügler <sebas@kde.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef OSDM_H
0008 #define OSDM_H
0009 
0010 #include <QDBusContext>
0011 #include <QMap>
0012 #include <QObject>
0013 #include <QString>
0014 #include <QTimer>
0015 
0016 #include "../common/osdaction.h"
0017 
0018 namespace KScreen
0019 {
0020 class ConfigOperation;
0021 class Osd;
0022 class Output;
0023 
0024 class OsdManager : public QObject, public QDBusContext
0025 {
0026     Q_OBJECT
0027 
0028 public:
0029     OsdManager(QObject *parent = nullptr);
0030     ~OsdManager() override;
0031 
0032 public Q_SLOTS:
0033     void hideOsd();
0034     OsdAction::Action showActionSelector();
0035 
0036 private:
0037     void quit();
0038     QMap<QString, KScreen::Osd *> m_osds;
0039     QTimer *m_cleanupTimer;
0040 };
0041 
0042 } // ns
0043 #endif // OSDM_H