summaryrefslogtreecommitdiff
path: root/src/intent-server-lib/intent.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/intent-server-lib/intent.h')
-rw-r--r--src/intent-server-lib/intent.h53
1 files changed, 34 insertions, 19 deletions
diff --git a/src/intent-server-lib/intent.h b/src/intent-server-lib/intent.h
index 0de7f4f1..a8a04d52 100644
--- a/src/intent-server-lib/intent.h
+++ b/src/intent-server-lib/intent.h
@@ -1,10 +1,11 @@
/****************************************************************************
**
+** Copyright (C) 2019 The Qt Company Ltd.
** Copyright (C) 2019 Luxoft Sweden AB
** Copyright (C) 2018 Pelagicore AG
** Contact: https://www.qt.io/licensing/
**
-** This file is part of the Luxoft Application Manager.
+** This file is part of the Qt Application Manager.
**
** $QT_BEGIN_LICENSE:LGPL-QTAS$
** Commercial License Usage
@@ -42,24 +43,31 @@
#pragma once
+#include <QObject>
#include <QString>
+#include <QUrl>
#include <QStringList>
#include <QVariantMap>
#include <QtAppManCommon/global.h>
QT_BEGIN_NAMESPACE_AM
-class Intent
+class Intent : public QObject
{
- Q_GADGET
- Q_CLASSINFO("AM-QmlType", "QtApplicationManager.SystemUI/Intent 2.0 UNCREATABLE")
+ Q_OBJECT
+ Q_CLASSINFO("AM-QmlType", "QtApplicationManager.SystemUI/IntentObject 2.0 UNCREATABLE")
- Q_PROPERTY(bool valid READ (operator bool))
- Q_PROPERTY(QString intentId READ intentId)
- Q_PROPERTY(QString applicationId READ applicationId)
- Q_PROPERTY(QT_PREPEND_NAMESPACE_AM(Intent)::Visibility visibility READ visibility)
- Q_PROPERTY(QStringList requiredCapabilities READ requiredCapabilities)
- Q_PROPERTY(QVariantMap parameterMatch READ parameterMatch)
+ Q_PROPERTY(QString intentId READ intentId CONSTANT)
+ Q_PROPERTY(QString packageId READ packageId CONSTANT)
+ Q_PROPERTY(QString applicationId READ applicationId CONSTANT)
+ Q_PROPERTY(QT_PREPEND_NAMESPACE_AM(Intent)::Visibility visibility READ visibility CONSTANT)
+ Q_PROPERTY(QStringList requiredCapabilities READ requiredCapabilities CONSTANT)
+ Q_PROPERTY(QVariantMap parameterMatch READ parameterMatch CONSTANT)
+
+ Q_PROPERTY(QUrl icon READ icon CONSTANT)
+ Q_PROPERTY(QString name READ name CONSTANT)
+ Q_PROPERTY(QVariantMap names READ names CONSTANT)
+ Q_PROPERTY(QStringList categories READ categories CONSTANT)
public:
enum Visibility {
@@ -69,38 +77,45 @@ public:
Q_ENUM(Visibility)
Intent();
- Intent(const Intent &other);
QString intentId() const;
Visibility visibility() const;
QStringList requiredCapabilities() const;
QVariantMap parameterMatch() const;
+ QString packageId() const;
QString applicationId() const;
- QString backgroundServiceId() const;
bool checkParameterMatch(const QVariantMap &parameters) const;
- explicit operator bool() const;
- bool operator ==(const Intent &other) const;
- bool operator <(const Intent &other) const; // need for QMetaType::registerComparators
+ QUrl icon() const;
+ QString name() const;
+ QVariantMap names() const;
+ QString description() const;
+ QVariantMap descriptions() const;
+ QStringList categories() const;
private:
- Intent(const QString &intentId, const QString &applicationId, const QString &backgroundHandlerId,
+ Intent(const QString &intentId, const QString &packageId, const QString &applicationId,
const QStringList &capabilities, Intent::Visibility visibility,
- const QVariantMap &parameterMatch = QVariantMap());
+ const QVariantMap &parameterMatch, const QMap<QString, QString> &names,
+ const QUrl &icon, const QStringList &categories);
QString m_intentId;
Visibility m_visibility = Private;
QStringList m_requiredCapabilities;
QVariantMap m_parameterMatch;
+ QString m_packageId;
QString m_applicationId;
- QString m_backgroundHandlerId;
+
+ QVariantMap m_names; // language -> name
+ QStringList m_categories;
+ QUrl m_icon;
friend class IntentServer;
};
QT_END_NAMESPACE_AM
-Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE_AM(Intent))
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE_AM(Intent *))