File indexing completed on 2024-05-12 05:36:58

0001 /*
0002  *  SPDX-FileCopyrightText: 2023 Oliver Beard <olib141@outlook.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005  */
0006 
0007 #pragma once
0008 
0009 #include <QObject>
0010 #include <qqmlregistration.h>
0011 
0012 class ApplicationInfo : public QObject
0013 {
0014     Q_OBJECT
0015     Q_PROPERTY(QString desktopName MEMBER m_desktopName WRITE setDesktopName NOTIFY desktopNameChanged)
0016     Q_PROPERTY(bool exists MEMBER m_exists NOTIFY existsChanged)
0017     Q_PROPERTY(QString name MEMBER m_name NOTIFY nameChanged)
0018     Q_PROPERTY(QString icon MEMBER m_icon NOTIFY iconChanged)
0019     QML_ELEMENT
0020 
0021 public:
0022     void setDesktopName(const QString &desktopName);
0023 
0024 Q_SIGNALS:
0025     void desktopNameChanged();
0026     void existsChanged();
0027     void nameChanged();
0028     void iconChanged();
0029 
0030 private:
0031     QString m_desktopName;
0032     bool m_exists;
0033     QString m_name;
0034     QString m_icon;
0035 };