From 520ef07a7660d70d3add9a0aaf255524023888b3 Mon Sep 17 00:00:00 2001 From: trialuser02 Date: Sat, 7 Mar 2015 09:08:53 +0000 Subject: fixed geometry git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4763 90c681e8-e032-0410-971d-27865f9a5e38 --- src/plugins/Ui/skinned/listwidget.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/plugins') diff --git a/src/plugins/Ui/skinned/listwidget.cpp b/src/plugins/Ui/skinned/listwidget.cpp index 9a0587952..08720f261 100644 --- a/src/plugins/Ui/skinned/listwidget.cpp +++ b/src/plugins/Ui/skinned/listwidget.cpp @@ -101,7 +101,7 @@ void ListWidget::readSettings() if (m_update) { - m_row_count = height() / m_drawer.rowHeight(); + m_row_count = (height() - (m_header ? m_header->height() : 0)) / m_drawer.rowHeight(); updateList(PlayListModel::STRUCTURE); if(m_popupWidget) { @@ -254,7 +254,7 @@ void ListWidget::mousePressEvent(QMouseEvent *e) void ListWidget::resizeEvent(QResizeEvent *e) { m_header->setGeometry(0,0,width(), m_drawer.rowHeight()); - m_row_count = e->size().height() / m_drawer.rowHeight(); + m_row_count = (e->size().height() - (m_header ? m_header->height() : 0)) / m_drawer.rowHeight(); updateList(PlayListModel::STRUCTURE); QWidget::resizeEvent(e); } @@ -350,7 +350,8 @@ void ListWidget::updateList(int flags) if(flags == PlayListModel::SELECTION) continue; - row->rect = QRect(5, i * m_drawer.rowHeight(), width() - 10, m_drawer.rowHeight() - 1); + row->rect = QRect(5, (m_header ? m_header->height() : 0) + i * m_drawer.rowHeight(), + width() - 10, m_drawer.rowHeight() - 1); row->titles = items[i]->formattedTitles(); (m_first + i) == m_model->currentIndex() ? row->flags |= ListWidgetRow::CURRENT : @@ -587,6 +588,8 @@ void ListWidget::mouseReleaseEvent(QMouseEvent *e) int ListWidget::indexAt(int y) const { + if(m_header) + y -= m_header->height(); for (int i = 0; i < qMin(m_row_count, m_model->count() - m_first); ++i) { if ((y >= i * m_drawer.rowHeight()) && (y <= (i+1) * m_drawer.rowHeight())) -- cgit v1.2.3-13-gbd6f