From 19bae2a2e63cc520d25a50658a3d923e083c0098 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Sun, 10 Dec 2017 15:22:01 +0200 Subject: Add gui option for joining rooms (#25) --- src/dialogs/JoinRoom.cc | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) (limited to 'src/dialogs') diff --git a/src/dialogs/JoinRoom.cc b/src/dialogs/JoinRoom.cc index 5b874011..59e1748d 100644 --- a/src/dialogs/JoinRoom.cc +++ b/src/dialogs/JoinRoom.cc @@ -1,8 +1,10 @@ #include +#include #include #include "Config.h" #include "FlatButton.h" +#include "TextField.h" #include "Theme.h" #include "dialogs/JoinRoom.h" @@ -35,17 +37,25 @@ JoinRoom::JoinRoom(QWidget *parent) QFont font; font.setPixelSize(conf::headerFontSize); - auto label = new QLabel(tr("Room alias to join:"), this); - label->setFont(font); + roomInput_ = new TextField(this); + roomInput_->setLabel(tr("Room ID or alias")); - roomAliasEdit_ = new QLineEdit(this); - - layout->addWidget(label); - layout->addWidget(roomAliasEdit_); + layout->addWidget(roomInput_); layout->addLayout(buttonLayout); + // TODO: input validation with error messages. connect(confirmBtn_, &QPushButton::clicked, [=]() { - emit closing(true, roomAliasEdit_->text()); + emit closing(true, roomInput_->text()); + roomInput_->clear(); }); - connect(cancelBtn_, &QPushButton::clicked, [=]() { emit closing(false, nullptr); }); + connect(cancelBtn_, &QPushButton::clicked, [=]() { emit closing(false, ""); }); +} + +void +JoinRoom::paintEvent(QPaintEvent *) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); } -- cgit 1.5.1