File indexing completed on 2024-05-05 05:36:40
0001 /* 0002 SPDX-FileCopyrightText: 2019 Jonah BrĂ¼chert <jbb@kaidan.im> 0003 0004 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #include <KOSRelease> 0008 #include <QObject> 0009 0010 // clang-format off 0011 0012 #define PROPERTY(type, name) \ 0013 type name() const { return m_osrelease.name(); }\ 0014 0015 // clang-format off 0016 0017 #ifndef DISTROINFO_H 0018 #define DISTROINFO_H 0019 0020 class DistroInfo : public QObject 0021 { 0022 Q_OBJECT 0023 0024 Q_PROPERTY(QString name READ name CONSTANT) 0025 Q_PROPERTY(QString version READ version CONSTANT) 0026 Q_PROPERTY(QString id READ id CONSTANT) 0027 Q_PROPERTY(QStringList idLike READ idLike CONSTANT) 0028 Q_PROPERTY(QString versionCodename READ versionCodename CONSTANT) 0029 Q_PROPERTY(QString versionId READ versionId CONSTANT) 0030 Q_PROPERTY(QString prettyName READ prettyName CONSTANT) 0031 Q_PROPERTY(QString ansiColor READ ansiColor CONSTANT) 0032 Q_PROPERTY(QString cpeName READ cpeName CONSTANT) 0033 Q_PROPERTY(QString homeUrl READ homeUrl CONSTANT) 0034 Q_PROPERTY(QString documentationUrl READ documentationUrl CONSTANT) 0035 Q_PROPERTY(QString supportUrl READ supportUrl CONSTANT) 0036 Q_PROPERTY(QString bugReportUrl READ bugReportUrl CONSTANT) 0037 Q_PROPERTY(QString privacyPolicyUrl READ privacyPolicyUrl CONSTANT) 0038 Q_PROPERTY(QString buildId READ buildId CONSTANT) 0039 Q_PROPERTY(QString variant READ variant CONSTANT) 0040 Q_PROPERTY(QString variantId READ variantId CONSTANT) 0041 Q_PROPERTY(QString logo READ logo CONSTANT) 0042 0043 public: 0044 DistroInfo(QObject *parent = nullptr); 0045 0046 PROPERTY(QString, name) 0047 PROPERTY(QString, version) 0048 PROPERTY(QString, id) 0049 PROPERTY(QStringList, idLike) 0050 PROPERTY(QString, versionCodename) 0051 PROPERTY(QString, versionId) 0052 PROPERTY(QString, prettyName) 0053 PROPERTY(QString, ansiColor) 0054 PROPERTY(QString, cpeName) 0055 PROPERTY(QString, homeUrl) 0056 PROPERTY(QString, documentationUrl) 0057 PROPERTY(QString, supportUrl) 0058 PROPERTY(QString, bugReportUrl) 0059 PROPERTY(QString, privacyPolicyUrl) 0060 PROPERTY(QString, buildId) 0061 PROPERTY(QString, variant) 0062 PROPERTY(QString, variantId) 0063 PROPERTY(QString, logo) 0064 0065 private: 0066 KOSRelease m_osrelease; 0067 }; 0068 0069 #endif // DISTROINFO_H