0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
obs-studio/UI/auth-twitch.hpp

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

53 lines
1.0 KiB
C++
Raw Normal View History

2019-02-07 07:45:06 +01:00
#pragma once
#include <QDialog>
#include <QTimer>
#include <string>
#include <memory>
2021-08-16 13:28:41 +02:00
#include <json11.hpp>
2019-02-07 07:45:06 +01:00
#include "auth-oauth.hpp"
class BrowserDock;
2019-02-07 07:45:06 +01:00
class TwitchAuth : public OAuthStreamKey {
Q_OBJECT
friend class TwitchLogin;
QSharedPointer<BrowserDock> chat;
QSharedPointer<BrowserDock> info;
QSharedPointer<BrowserDock> stat;
QSharedPointer<BrowserDock> feed;
2019-02-07 07:45:06 +01:00
QSharedPointer<QAction> chatMenu;
QSharedPointer<QAction> infoMenu;
QSharedPointer<QAction> statMenu;
QSharedPointer<QAction> feedMenu;
2019-02-07 07:45:06 +01:00
bool uiLoaded = false;
std::string name;
std::string uuid;
2019-02-07 07:45:06 +01:00
virtual bool RetryLogin() override;
virtual void SaveInternal() override;
virtual bool LoadInternal() override;
2021-08-16 13:28:41 +02:00
bool MakeApiRequest(const char *path, json11::Json &json_out);
2019-02-07 07:45:06 +01:00
bool GetChannelInfo();
virtual void LoadUI() override;
public:
TwitchAuth(const Def &d);
static std::shared_ptr<Auth> Login(QWidget *parent,
const std::string &service_name);
2019-02-07 07:45:06 +01:00
QTimer uiLoadTimer;
public slots:
void TryLoadSecondaryUIPanes();
void LoadSecondaryUIPanes();
};