2017-10-01 19:49:36 +03:00
|
|
|
#include <QLabel>
|
2017-11-22 20:52:38 +03:00
|
|
|
#include <QStyleOption>
|
2017-11-22 22:13:22 +03:00
|
|
|
#include <QVBoxLayout>
|
2017-10-01 19:49:36 +03:00
|
|
|
|
2017-11-30 21:02:46 +03:00
|
|
|
#include "dialogs/LeaveRoom.h"
|
2017-11-30 14:53:28 +03:00
|
|
|
|
2018-07-17 16:37:25 +03:00
|
|
|
#include "Config.h"
|
|
|
|
#include "ui/FlatButton.h"
|
|
|
|
#include "ui/Theme.h"
|
|
|
|
|
2017-11-30 21:02:46 +03:00
|
|
|
using namespace dialogs;
|
|
|
|
|
|
|
|
LeaveRoom::LeaveRoom(QWidget *parent)
|
2017-10-01 19:49:36 +03:00
|
|
|
: QFrame(parent)
|
|
|
|
{
|
2018-07-22 18:03:12 +03:00
|
|
|
setMinimumWidth(conf::modals::MIN_WIDGET_WIDTH);
|
|
|
|
setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum);
|
2017-10-01 19:49:36 +03:00
|
|
|
|
|
|
|
auto layout = new QVBoxLayout(this);
|
2018-07-22 18:03:12 +03:00
|
|
|
layout->setSpacing(conf::modals::WIDGET_SPACING);
|
|
|
|
layout->setMargin(conf::modals::WIDGET_MARGIN);
|
2017-10-01 19:49:36 +03:00
|
|
|
|
|
|
|
auto buttonLayout = new QHBoxLayout();
|
|
|
|
buttonLayout->setSpacing(0);
|
|
|
|
buttonLayout->setMargin(0);
|
|
|
|
|
2018-07-22 18:03:12 +03:00
|
|
|
QFont buttonFont;
|
|
|
|
buttonFont.setPointSizeF(buttonFont.pointSizeF() * conf::modals::BUTTON_TEXT_SIZE_RATIO);
|
|
|
|
|
2017-10-01 19:49:36 +03:00
|
|
|
confirmBtn_ = new FlatButton("LEAVE", this);
|
2018-07-22 18:03:12 +03:00
|
|
|
confirmBtn_->setFont(buttonFont);
|
2017-10-01 19:49:36 +03:00
|
|
|
|
|
|
|
cancelBtn_ = new FlatButton(tr("CANCEL"), this);
|
2018-07-22 18:03:12 +03:00
|
|
|
cancelBtn_->setFont(buttonFont);
|
2017-10-01 19:49:36 +03:00
|
|
|
|
|
|
|
buttonLayout->addStretch(1);
|
|
|
|
buttonLayout->addWidget(confirmBtn_);
|
|
|
|
buttonLayout->addWidget(cancelBtn_);
|
|
|
|
|
|
|
|
QFont font;
|
2018-07-22 18:03:12 +03:00
|
|
|
font.setPointSizeF(font.pointSizeF() * conf::modals::LABEL_MEDIUM_SIZE_RATIO);
|
2017-10-01 19:49:36 +03:00
|
|
|
|
|
|
|
auto label = new QLabel(tr("Are you sure you want to leave?"), this);
|
|
|
|
label->setFont(font);
|
|
|
|
|
|
|
|
layout->addWidget(label);
|
|
|
|
layout->addLayout(buttonLayout);
|
|
|
|
|
2018-02-20 18:09:11 +03:00
|
|
|
connect(confirmBtn_, &QPushButton::clicked, [this]() { emit closing(true); });
|
|
|
|
connect(cancelBtn_, &QPushButton::clicked, [this]() { emit closing(false); });
|
2017-10-01 19:49:36 +03:00
|
|
|
}
|
2017-11-22 20:52:38 +03:00
|
|
|
|
|
|
|
void
|
2017-11-30 21:02:46 +03:00
|
|
|
LeaveRoom::paintEvent(QPaintEvent *)
|
2017-11-22 20:52:38 +03:00
|
|
|
{
|
|
|
|
QStyleOption opt;
|
|
|
|
opt.init(this);
|
|
|
|
QPainter p(this);
|
|
|
|
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
|
|
|
|
}
|