aboutsummaryrefslogtreecommitdiff
path: root/launcher/screenshots/ImgurUpload.h
blob: a10405510af48d9162536c3e94442cd531ddaec0 (plain)
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
#pragma once
#include "QObjectPtr.h"
#include "net/NetAction.h"
#include "Screenshot.h"

class ImgurUpload : public NetAction {
public:
    using Ptr = shared_qobject_ptr<ImgurUpload>;

    explicit ImgurUpload(ScreenShot::Ptr shot);
    static Ptr make(ScreenShot::Ptr shot) {
        return Ptr(new ImgurUpload(shot));
    }

protected
slots:
    void downloadProgress(qint64 bytesReceived, qint64 bytesTotal) override;
    void downloadError(QNetworkReply::NetworkError error) override;
    void downloadFinished() override;
    void downloadReadyRead() override {}

public
slots:
    void executeTask() override;

private:
    ScreenShot::Ptr m_shot;
    bool finished = true;
};