1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-22 13:43:11 +02:00

* Fixed now playing indicator painting in delegates.

This commit is contained in:
Christian Muehlhaeuser
2012-12-07 05:53:43 +01:00
parent 8fd9958a4f
commit 82efe3bf49
3 changed files with 20 additions and 17 deletions

View File

@@ -168,11 +168,11 @@ PlaylistItemDelegate::paintShort( QPainter* painter, const QStyleOptionViewItem&
// Paint Now Playing Speaker Icon // Paint Now Playing Speaker Icon
if ( item->isPlaying() ) if ( item->isPlaying() )
{ {
QPixmap nowPlayingIcon = TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker ); const int pixMargin = 2;
QRect npr = r.adjusted( 3, r.height() / 2 - nowPlayingIcon.height() / 2, 18 - r.width(), -r.height() / 2 + nowPlayingIcon.height() / 2 ); const int pixHeight = r.height() - pixMargin * 2;
nowPlayingIcon = TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ); QRect npr = r.adjusted( pixMargin, pixMargin + 1, pixHeight - r.width() + pixMargin, -pixMargin + 1 );
painter->drawPixmap( npr, nowPlayingIcon ); painter->drawPixmap( npr, TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ) );
r.adjust( 22, 0, 0, 0 ); r.adjust( pixHeight + 8, 0, 0, 0 );
} }
painter->setPen( opt.palette.text().color() ); painter->setPen( opt.palette.text().color() );
@@ -273,9 +273,11 @@ PlaylistItemDelegate::paintDetailed( QPainter* painter, const QStyleOptionViewIt
// Paint Now Playing Speaker Icon // Paint Now Playing Speaker Icon
if ( m_view->header()->visualIndex( index.column() ) == 0 ) if ( m_view->header()->visualIndex( index.column() ) == 0 )
{ {
r.adjust( 0, 0, 0, -3 ); const int pixMargin = 1;
painter->drawPixmap( r.adjusted( 3, 1, 18 - r.width(), 1 ), TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker ) ); const int pixHeight = r.height() - pixMargin * 2;
r.adjust( 25, 0, 0, 3 ); QRect npr = r.adjusted( pixMargin, pixMargin, pixHeight - r.width() + pixMargin, -pixMargin );
painter->drawPixmap( npr, TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ) );
r.adjust( pixHeight + 6, 0, 0, 0 );
} }
painter->setPen( opt.palette.text().color() ); painter->setPen( opt.palette.text().color() );

View File

@@ -170,16 +170,16 @@ PlaylistLargeItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem&
painter->save(); painter->save();
{ {
QRect r = opt.rect.adjusted( 3, 6, 0, -6 ); QRect r = opt.rect.adjusted( 4, 6, 0, -6 );
// Paint Now Playing Speaker Icon // Paint Now Playing Speaker Icon
if ( item->isPlaying() ) if ( item->isPlaying() )
{ {
QPixmap nowPlayingIcon = TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker ); const int pixMargin = 4;
QRect npr = r.adjusted( 3, r.height() / 2 - nowPlayingIcon.height() / 2, 18 - r.width(), -r.height() / 2 + nowPlayingIcon.height() / 2 ); const int pixHeight = r.height() - pixMargin * 2;
nowPlayingIcon = TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ); QRect npr = r.adjusted( pixMargin, pixMargin + 1, pixHeight - r.width() + pixMargin, -pixMargin + 1 );
painter->drawPixmap( npr, nowPlayingIcon ); painter->drawPixmap( npr, TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ) );
r.adjust( 22, 0, 0, 0 ); r.adjust( pixHeight + 8, 0, 0, 0 );
} }
painter->setPen( opt.palette.text().color() ); painter->setPen( opt.palette.text().color() );

View File

@@ -115,10 +115,11 @@ TreeItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option,
// Paint Now Playing Speaker Icon // Paint Now Playing Speaker Icon
if ( item->isPlaying() && m_view->header()->visualIndex( index.column() ) == 0 ) if ( item->isPlaying() && m_view->header()->visualIndex( index.column() ) == 0 )
{ {
r.adjust( 0, 0, 0, -3 ); const int pixMargin = 1;
QRect npr = r.adjusted( 3, 1, 18 - r.width(), 1 ); const int pixHeight = r.height() - pixMargin * 2;
QRect npr = r.adjusted( pixMargin, pixMargin, pixHeight - r.width() + pixMargin, -pixMargin );
painter->drawPixmap( npr, TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ) ); painter->drawPixmap( npr, TomahawkUtils::defaultPixmap( TomahawkUtils::NowPlayingSpeaker, TomahawkUtils::Original, npr.size() ) );
r.adjust( 25, 0, 0, 3 ); r.adjust( pixHeight + 6, 0, 0, 0 );
} }
painter->setPen( o.palette.text().color() ); painter->setPen( o.palette.text().color() );