From 62844facf7995f8d730a0f94a6d8a8559ac5410b Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Sat, 20 May 2023 00:31:47 +0200 Subject: Allow scrolling to specific sections and order packs in sticker search by match quality --- src/GridImagePackModel.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/GridImagePackModel.h') diff --git a/src/GridImagePackModel.h b/src/GridImagePackModel.h index 8da61b8e..c6be3346 100644 --- a/src/GridImagePackModel.h +++ b/src/GridImagePackModel.h @@ -41,10 +41,24 @@ public: std::vector descriptor_; // roomid, statekey, shortcode }; +struct SectionDescription +{ + Q_GADGET + Q_PROPERTY(QString url MEMBER url CONSTANT) + Q_PROPERTY(QString name MEMBER name CONSTANT) + Q_PROPERTY(int firstRowWith MEMBER firstRowWith CONSTANT) + +public: + QString name; + QString url; + int firstRowWith = 0; +}; + class GridImagePackModel final : public QAbstractListModel { Q_OBJECT Q_PROPERTY(QString searchString READ searchString WRITE setSearchString NOTIFY newSearchString) + Q_PROPERTY(QList sections READ sections NOTIFY newSearchString) public: enum Roles @@ -61,6 +75,8 @@ public: QString searchString() const { return searchString_; } void setSearchString(QString newValue); + QList sections() const; + signals: void newSearchString(); @@ -87,4 +103,5 @@ private: std::vector rowToFirstRowEntryFromSearch; QString nameFromPack(const PackDesc &pack) const; + QString avatarFromPack(const PackDesc &pack) const; }; -- cgit 1.5.1