diff options
author | Konstantinos Sideris <sideris.konstantin@gmail.com> | 2018-09-19 22:42:26 +0300 |
---|---|---|
committer | Konstantinos Sideris <sideris.konstantin@gmail.com> | 2018-09-19 22:42:26 +0300 |
commit | 1716502eff3e5108f05aba8acbabd5c9287d624c (patch) | |
tree | fe16cfce143a3350c1b1453edf47adbb5e13f665 /src/dialogs/MemberList.cpp | |
parent | ci: Don't count errors during brew upgrade (diff) | |
download | nheko-1716502eff3e5108f05aba8acbabd5c9287d624c.tar.xz |
Improvements on the system theme
Diffstat (limited to 'src/dialogs/MemberList.cpp')
-rw-r--r-- | src/dialogs/MemberList.cpp | 33 |
1 files changed, 20 insertions, 13 deletions
diff --git a/src/dialogs/MemberList.cpp b/src/dialogs/MemberList.cpp index b353229f..bd9b1edf 100644 --- a/src/dialogs/MemberList.cpp +++ b/src/dialogs/MemberList.cpp @@ -1,5 +1,7 @@ #include <QListWidgetItem> #include <QPainter> +#include <QPushButton> +#include <QShortcut> #include <QStyleOption> #include <QVBoxLayout> @@ -11,7 +13,6 @@ #include "Config.h" #include "Utils.h" #include "ui/Avatar.h" -#include "ui/FlatButton.h" using namespace dialogs; @@ -51,10 +52,22 @@ MemberItem::MemberItem(const RoomMember &member, QWidget *parent) topLayout_->addLayout(textLayout_, 1); } +void +MemberItem::paintEvent(QPaintEvent *) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +} + MemberList::MemberList(const QString &room_id, QWidget *parent) : QFrame(parent) , room_id_{room_id} { + setAutoFillBackground(true); + setWindowFlags(Qt::Tool | Qt::WindowStaysOnTopHint); + setWindowModality(Qt::WindowModal); setAttribute(Qt::WA_DeleteOnClose, true); auto layout = new QVBoxLayout(this); @@ -64,7 +77,6 @@ MemberList::MemberList(const QString &room_id, QWidget *parent) list_ = new QListWidget; list_->setFrameStyle(QFrame::NoFrame); list_->setSelectionMode(QAbstractItemView::NoSelection); - list_->setAttribute(Qt::WA_MacShowFocusRect, 0); list_->setSpacing(5); QFont doubleFont; @@ -89,7 +101,8 @@ MemberList::MemberList(const QString &room_id, QWidget *parent) list_->clear(); // Add button at the bottom. - moreBtn_ = new FlatButton(tr("SHOW MORE"), this); + moreBtn_ = new QPushButton(tr("Show more"), this); + moreBtn_->setFlat(true); auto item = new QListWidgetItem; item->setSizeHint(moreBtn_->minimumSizeHint()); item->setFlags(Qt::NoItemFlags); @@ -97,7 +110,7 @@ MemberList::MemberList(const QString &room_id, QWidget *parent) list_->insertItem(0, item); list_->setItemWidget(item, moreBtn_); - connect(moreBtn_, &FlatButton::clicked, this, [this]() { + connect(moreBtn_, &QPushButton::clicked, this, [this]() { const size_t numMembers = list_->count() - 1; if (numMembers > 0) @@ -109,6 +122,9 @@ MemberList::MemberList(const QString &room_id, QWidget *parent) } catch (const lmdb::error &e) { qCritical() << e.what(); } + + auto closeShortcut = new QShortcut(QKeySequence(tr("ESC")), this); + connect(closeShortcut, &QShortcut::activated, this, &MemberList::close); } void @@ -143,12 +159,3 @@ MemberList::addUsers(const std::vector<RoomMember> &members) list_->setItemWidget(item, user); } } - -void -MemberList::paintEvent(QPaintEvent *) -{ - QStyleOption opt; - opt.init(this); - QPainter p(this); - style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); -} |