Skip to content

Commit

Permalink
Change layout of LoginRequiredDialog
Browse files Browse the repository at this point in the history
  • Loading branch information
erikjv committed May 7, 2024
1 parent 8fe2be4 commit 73f38e9
Show file tree
Hide file tree
Showing 4 changed files with 76 additions and 92 deletions.
4 changes: 2 additions & 2 deletions src/gui/accountmodalwidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,13 @@ QPushButton *AccountModalWidget::addButton(const QString &text, QDialogButtonBox
void AccountModalWidget::accept()
{
Q_EMIT accepted();
Q_EMIT finished(Accepted);
Q_EMIT finished(Result::Accepted);
}

void AccountModalWidget::reject()
{
Q_EMIT rejected();
Q_EMIT finished(Rejected);
Q_EMIT finished(Result::Rejected);
}

} // OCC
5 changes: 3 additions & 2 deletions src/gui/accountmodalwidget.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ class AccountModalWidget : public QWidget
public:
AccountModalWidget(const QString &title, QWidget *widget, QWidget *parent);

enum DialogCode { Rejected, Accepted };
enum class Result { Rejected, Accepted };
Q_ENUM(Result)

void setStandardButtons(QDialogButtonBox::StandardButtons buttons);
QPushButton *addButton(const QString &text, QDialogButtonBox::ButtonRole role);
Expand All @@ -40,7 +41,7 @@ public Q_SLOTS:
Q_SIGNALS:
void accepted();
void rejected();
void finished(DialogCode result);
void finished(Result result);

private:
Ui::AccountModalWidget *ui;
Expand Down
6 changes: 2 additions & 4 deletions src/gui/creds/httpcredentialsgui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,12 +124,11 @@ void HttpCredentialsGui::showDialog()
contentWidget->forceUsername(user());

auto *modalWidget = new AccountModalWidget(tr("Login required"), dialog, ocApp()->gui()->settingsDialog());
modalWidget->setAttribute(Qt::WA_DeleteOnClose);
modalWidget->addButton(tr("Log out"), QDialogButtonBox::RejectRole);
modalWidget->addButton(tr("Log in"), QDialogButtonBox::AcceptRole); // in this case, we want to use the login button
connect(this, &HttpCredentialsGui::oAuthLoginAccepted, modalWidget, &AccountModalWidget::accept);
connect(modalWidget, &AccountModalWidget::finished, ocApp()->gui()->settingsDialog(), [this, contentWidget](AccountModalWidget::DialogCode result) {
if (result == AccountModalWidget::Accepted) {
connect(modalWidget, &AccountModalWidget::finished, ocApp()->gui()->settingsDialog(), [this, contentWidget](AccountModalWidget::Result result) {
if (result == AccountModalWidget::Result::Accepted) {
_password = contentWidget->password();
_refreshToken.clear();
_ready = true;
Expand Down Expand Up @@ -186,7 +185,6 @@ void HttpCredentialsGui::restartOAuth()
});

auto *modalWidget = new AccountModalWidget(tr("Login required"), _loginRequiredDialog, ocApp()->gui()->settingsDialog());
modalWidget->setAttribute(Qt::WA_DeleteOnClose);
modalWidget->addButton(tr("Log out"), QDialogButtonBox::RejectRole);
connect(this, &HttpCredentialsGui::oAuthLoginAccepted, modalWidget, &AccountModalWidget::accept);
connect(modalWidget, &AccountModalWidget::rejected, this, &HttpCredentials::requestLogout);
Expand Down
153 changes: 69 additions & 84 deletions src/gui/loginrequireddialog/loginrequireddialog.ui
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>408</width>
<height>156</height>
<height>262</height>
</rect>
</property>
<property name="sizePolicy">
Expand All @@ -21,91 +21,76 @@
<number>12</number>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<widget class="QLabel" name="iconLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>128</width>
<height>128</height>
</size>
</property>
<property name="text">
<string notr="true">icon (placeholder)</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="topLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string notr="true">top label [placeholder]</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>0</number>
<widget class="QStackedWidget" name="contentWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<item>
<widget class="QLabel" name="iconLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>128</width>
<height>128</height>
</size>
</property>
<property name="text">
<string notr="true">icon (placeholder)</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="topLabel">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string notr="true">top label [placeholder]</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QStackedWidget" name="contentWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>1</number>
</property>
<widget class="OCC::BasicLoginWidget" name="basicLoginWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
<widget class="OCC::OAuthLoginWidget" name="oauthLoginWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</widget>
</item>
</layout>
</item>
</layout>
<property name="currentIndex">
<number>1</number>
</property>
<widget class="OCC::BasicLoginWidget" name="basicLoginWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
<widget class="OCC::OAuthLoginWidget" name="oauthLoginWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</widget>
</item>
</layout>
</item>
Expand Down

0 comments on commit 73f38e9

Please sign in to comment.