#ifndef COCKATRICE_USER_AVATAR_PROVIDER_H #define COCKATRICE_USER_AVATAR_PROVIDER_H #include #include #include #include class AbstractClient; class UserAvatarProvider : public QObject { Q_OBJECT public: explicit UserAvatarProvider(AbstractClient *client, QObject *parent = nullptr); void requestAvatar(const QString &userName); const QMap &cache() const; signals: void avatarUpdated(const QString &userName); private: AbstractClient *client; QMap avatarCache; QSet pending; }; #endif // COCKATRICE_USER_AVATAR_PROVIDER_H