Make playlist moodbar column respect moodbar enabled setting

This commit is contained in:
Jonas Kvinge 2021-01-28 21:43:06 +01:00
parent 819800d3a4
commit 9f5249e5b8
2 changed files with 12 additions and 1 deletions

View File

@ -51,6 +51,7 @@ MoodbarItemDelegate::MoodbarItemDelegate(Application *app, PlaylistView *view, Q
: QItemDelegate(parent),
app_(app),
view_(view),
enabled_(false),
style_(MoodbarRenderer::Style_Normal) {
QObject::connect(app_, &Application::SettingsChanged, this, &MoodbarItemDelegate::ReloadSettings);
@ -62,9 +63,14 @@ void MoodbarItemDelegate::ReloadSettings() {
QSettings s;
s.beginGroup(MoodbarSettingsPage::kSettingsGroup);
enabled_ = s.value("enabled", false).toBool();
MoodbarRenderer::MoodbarStyle new_style = static_cast<MoodbarRenderer::MoodbarStyle>(s.value("style", MoodbarRenderer::Style_Normal).toInt());
s.endGroup();
if (!enabled_) {
data_.clear();
}
if (new_style != style_) {
style_ = new_style;
ReloadAllColors();
@ -74,7 +80,11 @@ void MoodbarItemDelegate::ReloadSettings() {
void MoodbarItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &idx) const {
QPixmap pixmap = const_cast<MoodbarItemDelegate*>(this)->PixmapForIndex(idx, option.rect.size());
QPixmap pixmap;
if (enabled_) {
pixmap = const_cast<MoodbarItemDelegate*>(this)->PixmapForIndex(idx, option.rect.size());
}
drawBackground(painter, option, idx);

View File

@ -91,6 +91,7 @@ class MoodbarItemDelegate : public QItemDelegate {
PlaylistView *view_;
QCache<QUrl, Data> data_;
bool enabled_;
MoodbarRenderer::MoodbarStyle style_;
};