diff options
author | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-01-25 09:43:11 +0900 |
---|---|---|
committer | Kitsune Ral <Kitsune-Ral@users.sf.net> | 2018-01-25 14:46:48 +0900 |
commit | cb54a2a5f9e83a5076eb501e60e88846a4aa28df (patch) | |
tree | 71854c41cbec18b8e81a471a9be2247b1700e485 | |
parent | d45298d5db97663f300879002a8e0ccdf6b8d523 (diff) | |
download | libquotient-cb54a2a5f9e83a5076eb501e60e88846a4aa28df.tar.gz libquotient-cb54a2a5f9e83a5076eb501e60e88846a4aa28df.zip |
Expose avatar URLs of Room and User as Q_PROPERTY
This is needed for QML integration. Closes #155.
-rw-r--r-- | room.cpp | 5 | ||||
-rw-r--r-- | room.h | 4 | ||||
-rw-r--r-- | user.h | 3 |
3 files changed, 11 insertions, 1 deletions
@@ -262,6 +262,11 @@ QString Room::topic() const return d->topic; } +QUrl Room::avatarUrl() const +{ + return d->avatar.url(); +} + QImage Room::avatar(int dimension) { return avatar(dimension, dimension); @@ -105,6 +105,7 @@ namespace QMatrixClient Q_PROPERTY(QString canonicalAlias READ canonicalAlias NOTIFY namesChanged) Q_PROPERTY(QString displayName READ displayName NOTIFY namesChanged) Q_PROPERTY(QString topic READ topic NOTIFY topicChanged) + Q_PROPERTY(QUrl avatarUrl READ avatarUrl NOTIFY avatarChanged) Q_PROPERTY(int timelineSize READ timelineSize NOTIFY addedMessages) Q_PROPERTY(QStringList memberNames READ memberNames NOTIFY memberListChanged) Q_PROPERTY(int memberCount READ memberCount NOTIFY memberListChanged) @@ -122,6 +123,8 @@ namespace QMatrixClient Room(Connection* connection, QString id, JoinState initialJoinState); ~Room() override; + // Property accessors + Connection* connection() const; User* localUser() const; const QString& id() const; @@ -130,6 +133,7 @@ namespace QMatrixClient QString canonicalAlias() const; QString displayName() const; QString topic() const; + QUrl avatarUrl() const; Q_INVOKABLE JoinState joinState() const; Q_INVOKABLE QList<User*> usersTyping() const; QList<User*> membersLeft() const; @@ -33,6 +33,7 @@ namespace QMatrixClient Q_PROPERTY(QString name READ name NOTIFY nameChanged) Q_PROPERTY(QString displayName READ displayname NOTIFY nameChanged STORED false) Q_PROPERTY(QString bridgeName READ bridged NOTIFY nameChanged STORED false) + Q_PROPERTY(QUrl avatarUrl READ avatarUrl NOTIFY avatarChanged) public: User(QString userId, Connection* connection); ~User() override; @@ -61,7 +62,7 @@ namespace QMatrixClient Q_INVOKABLE QImage avatar(int dimension); Q_INVOKABLE QImage avatar(int requestedWidth, int requestedHeight); - Q_INVOKABLE QUrl avatarUrl() const; + QUrl avatarUrl() const; void processEvent(Event* event); |