15 #ifndef hifi_LoginDialog_h
16 #define hifi_LoginDialog_h
18 #include <OffscreenQmlDialog.h>
22 extern const QUrl LOGIN_DIALOG;
24 class LoginDialog :
public OffscreenQmlDialog {
29 static void toggleAction();
31 LoginDialog(QQuickItem* parent =
nullptr);
35 static void showWithSelection();
38 void handleLoginCompleted();
39 void handleLoginFailed();
41 void handleLinkCompleted();
42 void handleLinkFailed(QString error);
44 void handleCreateCompleted();
45 void handleCreateFailed(QString error);
47 void handleSignupCompleted();
48 void handleSignupFailed(QString errorString);
51 void dismissedLoginDialog();
57 void linkCompleted(QNetworkReply* reply);
58 void linkFailed(QNetworkReply* reply);
60 void createCompleted(QNetworkReply* reply);
61 void createFailed(QNetworkReply* reply);
63 void signupCompleted(QNetworkReply* reply);
64 void signupFailed(QNetworkReply* reply);
67 Q_INVOKABLE
void dismissLoginDialog();
69 Q_INVOKABLE
bool isSteamRunning()
const;
70 Q_INVOKABLE
bool isOculusRunning()
const;
72 Q_INVOKABLE QString oculusUserID()
const;
74 Q_INVOKABLE
void login(
const QString& username,
const QString& password)
const;
75 Q_INVOKABLE
void loginDomain(
const QString& username,
const QString& password)
const;
76 Q_INVOKABLE
void loginThroughSteam();
77 Q_INVOKABLE
void linkSteam();
78 Q_INVOKABLE
void createAccountFromSteam(QString username = QString());
79 Q_INVOKABLE
void loginThroughOculus();
80 Q_INVOKABLE
void linkOculus();
81 Q_INVOKABLE
void createAccountFromOculus(QString email = QString(), QString username = QString(), QString password = QString());
83 Q_INVOKABLE
void signup(
const QString& email,
const QString& username,
const QString& password);
85 Q_INVOKABLE
bool getLoginDialogPoppedUp()
const;
87 Q_INVOKABLE
bool getDomainLoginRequested()
const;
88 Q_INVOKABLE QString getDomainLoginDomain()
const;