summary refs log tree commit diff
path: root/src/AvatarProvider.h
blob: 0bdb8b7c0550bef318c6d9fa1adc8846b1179eb2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// SPDX-FileCopyrightText: 2017 Konstantinos Sideris <siderisk@auth.gr>
// SPDX-FileCopyrightText: 2021 Nheko Contributors
// SPDX-FileCopyrightText: 2022 Nheko Contributors
//
// SPDX-License-Identifier: GPL-3.0-or-later

#pragma once

#include <QPixmap>
#include <functional>

using AvatarCallback = std::function<void(QPixmap)>;

class AvatarProxy final : public QObject
{
    Q_OBJECT

signals:
    void avatarDownloaded(QPixmap pm);
};

namespace AvatarProvider {
void
resolve(QString avatarUrl, int size, QObject *receiver, AvatarCallback cb);
void
resolve(const QString &room_id,
        const QString &user_id,
        int size,
        QObject *receiver,
        AvatarCallback cb);
}