diff options
Diffstat (limited to 'src/plugins/Ui/skinned/listwidgetdrawer.cpp')
| -rw-r--r-- | src/plugins/Ui/skinned/listwidgetdrawer.cpp | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/src/plugins/Ui/skinned/listwidgetdrawer.cpp b/src/plugins/Ui/skinned/listwidgetdrawer.cpp index 1bbd33dfd..f9285bf6b 100644 --- a/src/plugins/Ui/skinned/listwidgetdrawer.cpp +++ b/src/plugins/Ui/skinned/listwidgetdrawer.cpp @@ -233,14 +233,6 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row) painter->drawText(row->x[ListWidgetRow::TITLE] + offset, sy, row->titles[i]); offset += QmmpUiSettings::instance()->columnManager()->size(i); - - - if(QmmpUiSettings::instance()->columnManager()->count() > 1 && - row->x[ListWidgetRow::TITLE] + offset < row->x[ListWidgetRow::EXTRA_STRING] - m_metrics->width("9")) - { - painter->drawLine(row->x[ListWidgetRow::TITLE] + offset - m_metrics->width("9")/2, row->rect.top(), - row->x[ListWidgetRow::TITLE] + offset - m_metrics->width("9")/2, row->rect.bottom() + 1); - } } QString extra_string = row->extraString; @@ -253,6 +245,27 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row) } if(!row->length.isEmpty()) painter->drawText(row->x[ListWidgetRow::LENGTH], sy, row->length); + + if(QmmpUiSettings::instance()->columnManager()->count() == 1) + return; + + offset = 0; + painter->setPen(m_normal); + for(int i = 0; i < QmmpUiSettings::instance()->columnManager()->count(); i++) + { + if(row->x[ListWidgetRow::TITLE] + offset >= row->x[ListWidgetRow::EXTRA_STRING] - m_metrics->width("9")) + break; + + offset += QmmpUiSettings::instance()->columnManager()->size(i); + + if(QmmpUiSettings::instance()->columnManager()->count() > 1 && + row->x[ListWidgetRow::TITLE] + offset < row->x[ListWidgetRow::EXTRA_STRING] - m_metrics->width("9")) + { + painter->drawLine(row->x[ListWidgetRow::TITLE] + offset - m_metrics->width("9")/2, row->rect.top(), + row->x[ListWidgetRow::TITLE] + offset - m_metrics->width("9")/2, row->rect.bottom() + 1); + } + } + } void ListWidgetDrawer::drawDropLine(QPainter *painter, int row_number, int width) |
