From 367def9fdb4072a9b9c9492833ee9bd74bd17c48 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Wed, 13 Feb 2019 20:05:07 +0000 Subject: qsui: fixed current track text color (#989) git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@8711 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Ui/qsui/listwidgetdrawer.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/plugins/Ui/qsui') diff --git a/src/plugins/Ui/qsui/listwidgetdrawer.cpp b/src/plugins/Ui/qsui/listwidgetdrawer.cpp index 81f68d568..b819fed4d 100644 --- a/src/plugins/Ui/qsui/listwidgetdrawer.cpp +++ b/src/plugins/Ui/qsui/listwidgetdrawer.cpp @@ -311,18 +311,22 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl bool draw_extra = false; painter->setFont(m_font); - painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal); QFontMetrics *metrics = nullptr; + QColor textColor = m_normal; + if(row->flags & ListWidgetRow::CURRENT) { m_font.setBold(true); painter->setFont(m_font); m_font.setBold(false); metrics = m_bold_metrics; + textColor = m_current; } else metrics = m_metrics; + painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : textColor); + if(rtl) { //|=duration=extra=|= col1=|=number =| @@ -337,7 +341,7 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl { painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_splitter); painter->drawLine(sx, row->rect.top(), sx, row->rect.bottom() + 1); - painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal); + painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : textColor); } } @@ -362,7 +366,7 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl { for(int i = 0; i < row->sizes.count(); i++) { - painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal); + painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : textColor); draw_extra = (i == row->trackStateColumn && !row->extraString.isEmpty()); if(row->alignment[i] == ListWidgetRow::ALIGN_LEFT) @@ -416,7 +420,7 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl { painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_splitter); painter->drawLine(sx, row->rect.top(), sx, row->rect.bottom() + 1); - painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal); + painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : textColor); } } @@ -441,7 +445,7 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row, bool rtl { for(int i = 0; i < row->sizes.count(); i++) { - painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : m_normal); + painter->setPen(row->flags & ListWidgetRow::SELECTED ? m_highlighted : textColor); draw_extra = (i == row->trackStateColumn && !row->extraString.isEmpty()); if(row->alignment[i] == ListWidgetRow::ALIGN_LEFT) -- cgit v1.2.3-13-gbd6f