aboutsummaryrefslogtreecommitdiffstats
path: root/interfaces/include/appframework.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'interfaces/include/appframework.hpp')
-rw-r--r--interfaces/include/appframework.hpp44
1 files changed, 31 insertions, 13 deletions
diff --git a/interfaces/include/appframework.hpp b/interfaces/include/appframework.hpp
index d4abefb..29c9b2b 100644
--- a/interfaces/include/appframework.hpp
+++ b/interfaces/include/appframework.hpp
@@ -17,31 +17,49 @@
#ifndef APPFRAMEWORK_HPP
#define APPFRAMEWORK_HPP
-#include <QtDBus>
+#include <QtCore/QSharedDataPointer>
+#include <QtDBus/QDBusArgument>
class AppInfo
{
+ Q_GADGET
+ Q_PROPERTY(QString id READ id)
+ Q_PROPERTY(QString version READ version)
+ Q_PROPERTY(int width READ width)
+ Q_PROPERTY(int height READ height)
+ Q_PROPERTY(QString name READ name)
+ Q_PROPERTY(QString description READ description)
+ Q_PROPERTY(QString shortname READ shortname)
+ Q_PROPERTY(QString author READ author)
+ Q_PROPERTY(QString iconPath READ iconPath)
public:
AppInfo();
+ AppInfo(const AppInfo &other);
virtual ~AppInfo();
+ AppInfo &operator =(const AppInfo &other);
+ void swap(AppInfo &other) { qSwap(d, other.d); }
- QString id;
- QString version;
- int width;
- int height;
- QString name;
- QString description;
- QString shortname;
- QString author;
- QString iconPath;
+ QString id() const;
+ QString version() const;
+ int width() const;
+ int height() const;
+ QString name() const;
+ QString description() const;
+ QString shortname() const;
+ QString author() const;
+ QString iconPath() const;
void read(const QJsonObject &json);
- friend QDBusArgument &operator <<(QDBusArgument &argument, const AppInfo &mAppInfo);
- friend const QDBusArgument &operator >>(const QDBusArgument &argument, AppInfo &mAppInfo);
-};
+ friend QDBusArgument &operator <<(QDBusArgument &argument, const AppInfo &appInfo);
+ friend const QDBusArgument &operator >>(const QDBusArgument &argument, AppInfo &appInfo);
+private:
+ class Private;
+ QSharedDataPointer<Private> d;
+};
+Q_DECLARE_SHARED(AppInfo)
Q_DECLARE_METATYPE(AppInfo)
Q_DECLARE_METATYPE(QList<AppInfo>)