1 #ifndef SHORTCUTAPPMODEL_H
2 #define SHORTCUTAPPMODEL_H
4 #include <QtCore/QAbstractListModel>
5 #include <QXmlStreamReader>
6 #include <QXmlStreamWriter>
10 #include <QJsonDocument>
11 #include <QJsonParseError>
12 #include <QJsonObject>
13 #include <json_object.h>
22 class ShortcutAppModel : public QAbstractListModel
26 explicit ShortcutAppModel(QObject *parent = nullptr);
29 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
31 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
32 QHash<int, QByteArray> roleNames() const override;
34 Q_INVOKABLE QString getId(int index) const;
35 Q_INVOKABLE QString getName(int index) const;
36 Q_INVOKABLE QString getIcon(int index) const;
37 Q_INVOKABLE bool isBlank(int index) const;
42 void changeShortcut(QString id, QString name, QString position);
45 void updateShortcut();
46 void shortcutUpdated(QString id, struct json_object* object);
52 void setAppQueuePoint(QString id, QString name);
53 QString getIconPath(QString id);
54 struct json_object* makeAppListJson();
62 #endif // SHORTCUTAPPMODEL_H