From a5cb8d5ff4090b45a66a5207b82b629121e4e823 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Tue, 6 Aug 2013 14:26:46 +0000 Subject: fixed groups selection git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3572 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Ui/skinned/listwidget.cpp | 38 ++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 18 deletions(-) (limited to 'src/plugins/Ui/skinned/listwidget.cpp') diff --git a/src/plugins/Ui/skinned/listwidget.cpp b/src/plugins/Ui/skinned/listwidget.cpp index 64fb4f770..2ffa2e8b6 100644 --- a/src/plugins/Ui/skinned/listwidget.cpp +++ b/src/plugins/Ui/skinned/listwidget.cpp @@ -170,6 +170,24 @@ void ListWidget::paintEvent(QPaintEvent *) { sy = (i + 1) * (2 + m_metrics->lineSpacing()) - 2 - m_metrics->descent(); + if (m_show_anchor && i == m_anchor_row - m_first) + { + painter.setBrush(m_rows[i]->selected ? m_selected_bg : m_normal_bg); + painter.setPen(m_normal); + painter.drawRect (6, i * (m_metrics->lineSpacing() + 2), + width() - 10, m_metrics->lineSpacing() + 1); + } + else + { + if (m_rows[i]->selected) + { + painter.setBrush(QBrush(m_selected_bg)); + painter.setPen(m_selected_bg); + painter.drawRect (6, i * (m_metrics->lineSpacing() + 2), + width() - 10, m_metrics->lineSpacing() + 1); + } + } + if(m_rows[i]->separator) { painter.setPen(m_normal); @@ -197,23 +215,7 @@ void ListWidget::paintEvent(QPaintEvent *) continue; } - if (m_show_anchor && i == m_anchor_row - m_first) - { - painter.setBrush(m_rows[i]->selected ? m_selected_bg : m_normal_bg); - painter.setPen(m_normal); - painter.drawRect (6, i * (m_metrics->lineSpacing() + 2), - width() - 10, m_metrics->lineSpacing() + 1); - } - else - { - if (m_rows[i]->selected) - { - painter.setBrush(QBrush(m_selected_bg)); - painter.setPen(m_selected_bg); - painter.drawRect (6, i * (m_metrics->lineSpacing() + 2), - width() - 10, m_metrics->lineSpacing() + 1); - } - } + if (m_model->currentIndex() == m_first + i) @@ -445,7 +447,7 @@ void ListWidget::updateList() row->number = 0; row->title = items[i]->formattedTitle(); row->length.clear(); - row->selected = false; + row->selected = items[i]->isSelected(); row->title = m_metrics->elidedText (row->title, Qt::ElideRight, width() - m_number_width - 22 - 70); } -- cgit v1.2.3-13-gbd6f