diff options
author | Konstantinos Sideris <sideris.konstantin@gmail.com> | 2017-09-30 16:39:24 +0300 |
---|---|---|
committer | Konstantinos Sideris <sideris.konstantin@gmail.com> | 2017-09-30 16:39:24 +0300 |
commit | ff1bc797de845f5af4ce83b4e326bd37869461df (patch) | |
tree | 6c06fcc36575a601a45352ed3487e9cd69d199d0 /src/WelcomePage.cc | |
parent | Stop sync timer after logout (diff) | |
download | nheko-ff1bc797de845f5af4ce83b4e326bd37869461df.tar.xz |
Refactor the welcome page
Diffstat (limited to 'src/WelcomePage.cc')
-rw-r--r-- | src/WelcomePage.cc | 117 |
1 files changed, 47 insertions, 70 deletions
diff --git a/src/WelcomePage.cc b/src/WelcomePage.cc index 1673029f..5ea145f7 100644 --- a/src/WelcomePage.cc +++ b/src/WelcomePage.cc @@ -15,7 +15,7 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ -#include <QApplication> +#include <QLabel> #include <QLayout> #include "Config.h" @@ -26,79 +26,56 @@ WelcomePage::WelcomePage(QWidget *parent) { setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); - top_layout_ = new QVBoxLayout(this); - top_layout_->setSpacing(0); - top_layout_->setMargin(0); + auto topLayout_ = new QVBoxLayout(this); + topLayout_->setSpacing(20); - intro_banner_ = new QLabel(this); - intro_banner_->setPixmap(QPixmap(":/logos/nheko-256.png")); - intro_banner_->setAlignment(Qt::AlignCenter); + QFont headingFont("Open Sans", 23); + QFont subTitleFont("Open Sans", 22); - intro_text_ = new QLabel(this); + auto logo_ = new QLabel(this); + logo_->setPixmap(QPixmap(":/logos/nheko-256.png")); + logo_->setAlignment(Qt::AlignCenter); QString heading(tr("Welcome to nheko! The desktop client for the Matrix protocol.")); QString main(tr("Enjoy your stay!")); - intro_text_->setText(QString("<p align=\"center\" style=\"margin: 0; line-height: 2pt\">" - " <span style=\" font-size:18px; color:#515151;\"> %1 </span>" - "</p>" - "<p align=\"center\" style=\"margin: 1pt; line-height: 2pt;\">" - " <span style=\" font-size:18px; color:#515151;\"> %2 </span>" - "</p>") - .arg(heading) - .arg(main)); - - top_layout_->addStretch(1); - top_layout_->addWidget(intro_banner_); - top_layout_->addStretch(1); - top_layout_->addWidget(intro_text_, 0, Qt::AlignCenter); - top_layout_->addStretch(1); - - button_layout_ = new QHBoxLayout(); - button_layout_->setSpacing(0); - button_layout_->setContentsMargins(0, 20, 0, 80); - - register_button_ = new RaisedButton(tr("REGISTER"), this); - register_button_->setBackgroundColor(QColor("#333333")); - register_button_->setForegroundColor(QColor("white")); - register_button_->setMinimumSize(240, 60); - register_button_->setFontSize(conf::btn::fontSize); - register_button_->setCornerRadius(conf::btn::cornerRadius); - - login_button_ = new RaisedButton(tr("LOGIN"), this); - login_button_->setBackgroundColor(QColor("#333333")); - login_button_->setForegroundColor(QColor("white")); - login_button_->setMinimumSize(240, 60); - login_button_->setFontSize(conf::btn::fontSize); - login_button_->setCornerRadius(conf::btn::cornerRadius); - - button_spacer_ = - new QSpacerItem(20, 20, QSizePolicy::MinimumExpanding, QSizePolicy::Minimum); - - button_layout_->addStretch(1); - button_layout_->addWidget(register_button_); - button_layout_->addItem(button_spacer_); - button_layout_->addWidget(login_button_); - button_layout_->addStretch(1); - - top_layout_->addLayout(button_layout_); - - connect(register_button_, SIGNAL(clicked()), this, SLOT(onRegisterButtonClicked())); - connect(login_button_, SIGNAL(clicked()), this, SLOT(onLoginButtonClicked())); -} - -void -WelcomePage::onLoginButtonClicked() -{ - emit userLogin(); -} - -void -WelcomePage::onRegisterButtonClicked() -{ - emit userRegister(); -} - -WelcomePage::~WelcomePage() -{ + auto intoTxt_ = new QLabel(heading, this); + intoTxt_->setFont(headingFont); + intoTxt_->setContentsMargins(0, 20, 0, 0); + + auto subTitle = new QLabel(main, this); + subTitle->setFont(subTitleFont); + subTitle->setContentsMargins(0, 0, 0, 0); + + topLayout_->addStretch(1); + topLayout_->addWidget(logo_); + topLayout_->addWidget(intoTxt_, 0, Qt::AlignCenter); + topLayout_->addWidget(subTitle, 0, Qt::AlignCenter); + + auto btnLayout_ = new QHBoxLayout(); + btnLayout_->setSpacing(20); + btnLayout_->setContentsMargins(0, 20, 0, 20); + + registerBtn_ = new RaisedButton(tr("REGISTER"), this); + registerBtn_->setBackgroundColor(QColor("#333333")); + registerBtn_->setMinimumSize(240, 65); + registerBtn_->setFontSize(conf::btn::fontSize); + registerBtn_->setCornerRadius(conf::btn::cornerRadius); + + loginBtn_ = new RaisedButton(tr("LOGIN"), this); + loginBtn_->setBackgroundColor(QColor("#333333")); + loginBtn_->setMinimumSize(240, 65); + loginBtn_->setFontSize(conf::btn::fontSize); + loginBtn_->setCornerRadius(conf::btn::cornerRadius); + + btnLayout_->addStretch(1); + btnLayout_->addWidget(registerBtn_); + btnLayout_->addWidget(loginBtn_); + btnLayout_->addStretch(1); + + topLayout_->addLayout(btnLayout_); + topLayout_->addStretch(1); + + connect(registerBtn_, &QPushButton::clicked, this, &WelcomePage::userRegister); + connect(loginBtn_, &QPushButton::clicked, this, &WelcomePage::userLogin); } |