aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-03-01 15:24:39 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-03-01 15:24:39 +0000
commitfcfed31904dca982b71caebcbbf908a316d41a7f (patch)
tree7a7ad8f9d9d8e5b0c214929596973f382548ffb5
parent17ee74fd620b8718f284f9d3252432d4b8000b2e (diff)
downloadqmmp-fcfed31904dca982b71caebcbbf908a316d41a7f.tar.gz
qmmp-fcfed31904dca982b71caebcbbf908a316d41a7f.tar.bz2
qmmp-fcfed31904dca982b71caebcbbf908a316d41a7f.zip
fixed drawing bugs
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4754 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/plugins/Ui/skinned/listwidgetdrawer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/Ui/skinned/listwidgetdrawer.cpp b/src/plugins/Ui/skinned/listwidgetdrawer.cpp
index 6f4ac55f2..ddd2d885c 100644
--- a/src/plugins/Ui/skinned/listwidgetdrawer.cpp
+++ b/src/plugins/Ui/skinned/listwidgetdrawer.cpp
@@ -243,10 +243,15 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row)
int offset = 0;
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;
+
painter->drawText(row->x[ListWidgetRow::TITLE] + offset, sy, row->titles[i]);
offset += QmmpUiSettings::instance()->columnManager()->size(i);
- if(i != QmmpUiSettings::instance()->columnManager()->count() - 1)
+
+ if(i != 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);