1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-03-19 15:29:42 +01:00

Align some columns centered in playlistitemdelegate: albumpos, duration, etc

This commit is contained in:
Dominik Schmidt 2012-01-23 02:46:00 +01:00
parent 576c66133e
commit c9ceb5f813
2 changed files with 28 additions and 2 deletions

View File

@ -59,6 +59,9 @@ PlaylistItemDelegate::PlaylistItemDelegate( TrackView* parent, TrackProxyModel*
m_centerOption = QTextOption( Qt::AlignVCenter );
m_centerOption.setWrapMode( QTextOption::NoWrap );
m_hCenterOption = QTextOption( Qt::AlignHCenter );
m_hCenterOption.setWrapMode( QTextOption::NoWrap );
m_defaultAvatar = TomahawkUtils::createAvatarFrame( QPixmap( RESPATH "images/user-avatar.png" ) );
}
@ -307,15 +310,35 @@ PlaylistItemDelegate::paintDetailed( QPainter* painter, const QStyleOptionViewIt
painter->setPen( opt.palette.text().color() );
QString text = painter->fontMetrics().elidedText( index.data().toString(), Qt::ElideRight, r.width() - 3 );
painter->drawText( r.adjusted( 0, 1, 0, 0 ), text, m_centerOption );
painter->drawText( r.adjusted( 0, 1, 0, 0 ), text, textOptionForColumn( index.column() ) );
}
}
else
{
painter->setPen( opt.palette.text().color() );
QString text = painter->fontMetrics().elidedText( index.data().toString(), Qt::ElideRight, opt.rect.width() - 3 );
painter->drawText( opt.rect.adjusted( 3, 1, 0, 0 ), text, m_centerOption );
painter->drawText( opt.rect.adjusted( 3, 1, 0, 0 ), text, textOptionForColumn( index.column() ) );
}
painter->restore();
}
const QTextOption
PlaylistItemDelegate::textOptionForColumn( int column ) const
{
switch( column )
{
case TrackModel::Age:
case TrackModel::AlbumPos:
case TrackModel::Bitrate:
case TrackModel::Duration:
case TrackModel::Filesize:
case TrackModel::Year:
return m_hCenterOption;
break;
default:
return m_centerOption;
}
}

View File

@ -52,6 +52,8 @@ private:
void paintDetailed( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const;
void paintShort( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index, bool useAvatars = false ) const;
const QTextOption textOptionForColumn( int column ) const;
unsigned int m_removalProgress;
mutable QHash< qint64, QPixmap > m_cache;
@ -61,6 +63,7 @@ private:
QTextOption m_topOption;
QTextOption m_centerOption;
QTextOption m_bottomOption;
QTextOption m_hCenterOption;
TrackView* m_view;
TrackProxyModel* m_model;