Replace all uses of QSignalMapper with lambda expressions
This commit is contained in:
@@ -32,22 +32,22 @@
|
||||
#include <QHash>
|
||||
#include <QString>
|
||||
#include <QIcon>
|
||||
#include <QMenu>
|
||||
#include <QPainter>
|
||||
#include <QColor>
|
||||
#include <QRect>
|
||||
#include <QFont>
|
||||
#include <QSignalMapper>
|
||||
#include <QStylePainter>
|
||||
#include <QTimer>
|
||||
#include <QLayout>
|
||||
#include <QVBoxLayout>
|
||||
#include <QMouseEvent>
|
||||
#include <QSettings>
|
||||
#include <QSize>
|
||||
#include <QPoint>
|
||||
#include <QTransform>
|
||||
#include <QMenu>
|
||||
#include <QAction>
|
||||
#include <QActionGroup>
|
||||
#include <QSettings>
|
||||
#include <QMouseEvent>
|
||||
|
||||
const QSize FancyTabWidget::IconSize_LargeSidebar = QSize(24, 24);
|
||||
const QSize FancyTabWidget::IconSize_SmallSidebar = QSize(22, 22);
|
||||
@@ -536,12 +536,11 @@ void FancyTabWidget::SetMode(FancyTabWidget::Mode mode) {
|
||||
|
||||
}
|
||||
|
||||
void FancyTabWidget::addMenuItem(QSignalMapper* mapper, QActionGroup* group, const QString& text, Mode mode) {
|
||||
void FancyTabWidget::addMenuItem(QActionGroup* group, const QString& text, Mode mode) {
|
||||
|
||||
QAction* action = group->addAction(text);
|
||||
action->setCheckable(true);
|
||||
mapper->setMapping(action, mode);
|
||||
connect(action, SIGNAL(triggered()), mapper, SLOT(map()));
|
||||
connect(action, &QAction::triggered, [this, mode]() { SetMode(mode); } );
|
||||
|
||||
if (mode == mode_) action->setChecked(true);
|
||||
|
||||
@@ -550,18 +549,14 @@ void FancyTabWidget::addMenuItem(QSignalMapper* mapper, QActionGroup* group, con
|
||||
void FancyTabWidget::contextMenuEvent(QContextMenuEvent* e) {
|
||||
|
||||
if (!menu_) {
|
||||
|
||||
menu_ = new QMenu(this);
|
||||
QSignalMapper* mapper = new QSignalMapper(this);
|
||||
QActionGroup* group = new QActionGroup(this);
|
||||
addMenuItem(mapper, group, tr("Large sidebar"), Mode_LargeSidebar);
|
||||
addMenuItem(mapper, group, tr("Small sidebar"), Mode_SmallSidebar);
|
||||
addMenuItem(mapper, group, tr("Plain sidebar"), Mode_PlainSidebar);
|
||||
addMenuItem(mapper, group, tr("Tabs on top"), Mode_Tabs);
|
||||
addMenuItem(mapper, group, tr("Icons on top"), Mode_IconOnlyTabs);
|
||||
addMenuItem(group, tr("Large sidebar"), Mode_LargeSidebar);
|
||||
addMenuItem(group, tr("Small sidebar"), Mode_SmallSidebar);
|
||||
addMenuItem(group, tr("Plain sidebar"), Mode_PlainSidebar);
|
||||
addMenuItem(group, tr("Tabs on top"), Mode_Tabs);
|
||||
addMenuItem(group, tr("Icons on top"), Mode_IconOnlyTabs);
|
||||
menu_->addActions(group->actions());
|
||||
connect(mapper, SIGNAL(mapped(int)), SLOT(SetMode(int)));
|
||||
|
||||
}
|
||||
|
||||
menu_->popup(e->globalPos());
|
||||
|
||||
@@ -24,18 +24,16 @@
|
||||
|
||||
#include <memory>
|
||||
|
||||
#include <QObject>
|
||||
#include <QTabWidget>
|
||||
#include <QWidget>
|
||||
#include <QActionGroup>
|
||||
#include <QMenu>
|
||||
#include <QSignalMapper>
|
||||
#include <QMap>
|
||||
#include <QString>
|
||||
#include <QIcon>
|
||||
#include <QPixmap>
|
||||
#include <QSize>
|
||||
#include <QtEvents>
|
||||
|
||||
class QMenu;
|
||||
class QActionGroup;
|
||||
class TabData;
|
||||
|
||||
namespace Core {
|
||||
@@ -95,7 +93,7 @@ class FancyTabWidget : public QTabWidget {
|
||||
void paintEvent(QPaintEvent *);
|
||||
void contextMenuEvent(QContextMenuEvent* e);
|
||||
private:
|
||||
void addMenuItem(QSignalMapper* mapper, QActionGroup* group, const QString& text, Mode mode);
|
||||
void addMenuItem(QActionGroup* group, const QString& text, Mode mode);
|
||||
|
||||
QPixmap background_pixmap_;
|
||||
QMenu* menu_;
|
||||
|
||||
@@ -50,7 +50,7 @@ class LoginStateWidget : public QWidget {
|
||||
|
||||
public slots:
|
||||
// Changes the "You are logged in/out" label, shows/hides any QGroupBoxes added with AddCredentialGroup.
|
||||
void SetLoggedIn(State state, const QString &account_name = QString::null);
|
||||
void SetLoggedIn(State state, const QString &account_name = QString());
|
||||
|
||||
// Hides the "You are logged in/out" label completely.
|
||||
void HideLoggedInState();
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
#include <QPainter>
|
||||
#include <QPalette>
|
||||
#include <QBrush>
|
||||
#include <QSignalMapper>
|
||||
#include <QTextDocument>
|
||||
#include <QTimeLine>
|
||||
#include <QAction>
|
||||
@@ -101,10 +100,8 @@ PlayingWidget::PlayingWidget(QWidget *parent)
|
||||
|
||||
// Context menu
|
||||
QActionGroup *mode_group = new QActionGroup(this);
|
||||
QSignalMapper *mode_mapper = new QSignalMapper(this);
|
||||
connect(mode_mapper, SIGNAL(mapped(int)), SLOT(SetMode(int)));
|
||||
CreateModeAction(SmallSongDetails, tr("Small album cover"), mode_group, mode_mapper);
|
||||
CreateModeAction(LargeSongDetails, tr("Large album cover"), mode_group, mode_mapper);
|
||||
CreateModeAction(SmallSongDetails, tr("Small album cover"), mode_group);
|
||||
CreateModeAction(LargeSongDetails, tr("Large album cover"), mode_group);
|
||||
menu_->addActions(mode_group->actions());
|
||||
|
||||
fit_cover_width_action_ = menu_->addAction(tr("Fit cover to width"));
|
||||
@@ -200,12 +197,11 @@ QSize PlayingWidget::sizeHint() const {
|
||||
return QSize(cover_loader_options_.desired_height_, total_height_);
|
||||
}
|
||||
|
||||
void PlayingWidget::CreateModeAction(Mode mode, const QString &text, QActionGroup *group, QSignalMapper *mapper) {
|
||||
void PlayingWidget::CreateModeAction(Mode mode, const QString &text, QActionGroup *group) {
|
||||
|
||||
QAction *action = new QAction(text, group);
|
||||
action->setCheckable(true);
|
||||
mapper->setMapping(action, mode);
|
||||
connect(action, SIGNAL(triggered()), mapper, SLOT(map()));
|
||||
connect(action, &QAction::triggered, [this, mode]() { SetMode(mode); } );
|
||||
|
||||
if (mode == mode_) action->setChecked(true);
|
||||
|
||||
@@ -287,7 +283,7 @@ void PlayingWidget::SetImage(const QImage &image) {
|
||||
QSize psize(size());
|
||||
if (size().height() <= 0) psize.setHeight(total_height_);
|
||||
pixmap_previous_track_ = QPixmap(psize);
|
||||
pixmap_previous_track_.fill(palette().background().color());
|
||||
pixmap_previous_track_.fill(palette().window().color());
|
||||
pixmap_previous_track_opacity_ = 1.0;
|
||||
QPainter p(&pixmap_previous_track_);
|
||||
DrawContents(&p);
|
||||
|
||||
@@ -31,24 +31,24 @@
|
||||
#include <QObject>
|
||||
#include <QWidget>
|
||||
#include <QString>
|
||||
#include <QUrl>
|
||||
#include <QImage>
|
||||
#include <QPixmap>
|
||||
#include <QPainter>
|
||||
#include <QSize>
|
||||
#include <QSignalMapper>
|
||||
#include <QTextDocument>
|
||||
#include <QTimeLine>
|
||||
#include <QAction>
|
||||
#include <QActionGroup>
|
||||
#include <QMenu>
|
||||
#include <QMovie>
|
||||
#include <QtEvents>
|
||||
|
||||
#include "core/song.h"
|
||||
#include "covermanager/albumcoverloaderoptions.h"
|
||||
|
||||
using std::unique_ptr;
|
||||
|
||||
class QTimeLine;
|
||||
class QTextDocument;
|
||||
class QPainter;
|
||||
class QMenu;
|
||||
class QAction;
|
||||
class QActionGroup;
|
||||
class QContextMenuEvent;
|
||||
class QDragEnterEvent;
|
||||
class QDropEvent;
|
||||
@@ -148,7 +148,7 @@ class PlayingWidget : public QWidget {
|
||||
std::unique_ptr<QMovie> spinner_animation_;
|
||||
|
||||
void SetVisible(bool visible);
|
||||
void CreateModeAction(Mode mode, const QString &text, QActionGroup *group, QSignalMapper *mapper);
|
||||
void CreateModeAction(Mode mode, const QString &text, QActionGroup *group);
|
||||
void UpdateDetailsText();
|
||||
void UpdateHeight();
|
||||
void SetImage(const QImage &image);
|
||||
|
||||
Reference in New Issue
Block a user