From 1e48c18f6a7c6cd3c751e3156310a53bc63c27fc Mon Sep 17 00:00:00 2001 From: Kitsune Ral Date: Sat, 3 Feb 2018 19:20:53 +0900 Subject: thumbnailInfo() for event content classes and RoomMessageEvent: hasThumbnail --- events/eventcontent.h | 4 ++++ events/roommessageevent.cpp | 5 +++++ events/roommessageevent.h | 1 + 3 files changed, 10 insertions(+) (limited to 'events') diff --git a/events/eventcontent.h b/events/eventcontent.h index 4afbaff3..9d44aec0 100644 --- a/events/eventcontent.h +++ b/events/eventcontent.h @@ -200,6 +200,7 @@ namespace QMatrixClient explicit TypedBase(const QJsonObject& o = {}) : Base(o) { } virtual QMimeType type() const = 0; virtual const FileInfo* fileInfo() const { return nullptr; } + virtual const Thumbnail* thumbnailInfo() const { return nullptr; } }; /** @@ -256,6 +257,9 @@ namespace QMatrixClient "thumbnailMediaId", thumbnail.mediaId()); } + const Thumbnail* thumbnailInfo() const override + { return &thumbnail; } + public: Thumbnail thumbnail; diff --git a/events/roommessageevent.cpp b/events/roommessageevent.cpp index 8c088f21..dec0ca50 100644 --- a/events/roommessageevent.cpp +++ b/events/roommessageevent.cpp @@ -128,6 +128,11 @@ bool RoomMessageEvent::hasFileContent() const return content() && content()->fileInfo(); } +bool RoomMessageEvent::hasThumbnail() const +{ + return content() && content()->thumbnailInfo(); +} + QJsonObject RoomMessageEvent::toJson() const { QJsonObject obj = _content ? _content->toJson() : QJsonObject(); diff --git a/events/roommessageevent.h b/events/roommessageevent.h index 2a5eeb7e..a55564ed 100644 --- a/events/roommessageevent.h +++ b/events/roommessageevent.h @@ -61,6 +61,7 @@ namespace QMatrixClient QMimeType mimeType() const; bool hasTextContent() const; bool hasFileContent() const; + bool hasThumbnail() const; QJsonObject toJson() const; -- cgit v1.2.3