From fce45b1d8d599412950235627f9b752bff5cb401 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Sat, 29 Oct 2011 04:26:02 +0200 Subject: [PATCH] * Commit dropshadow for reals. --- data/images/cover-shadow.png | Bin 3615 -> 0 bytes resources.qrc | 1 - .../playlist/albumitemdelegate.cpp | 29 +++++++++++++++--- 3 files changed, 25 insertions(+), 5 deletions(-) delete mode 100644 data/images/cover-shadow.png diff --git a/data/images/cover-shadow.png b/data/images/cover-shadow.png deleted file mode 100644 index e362118c62b06dbb8e6e25b63072de393d23e334..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3615 zcmeAS@N?(olHy`uVBq!ia0y~yV44EL9Be?5UFTQW04d25*NBqf{Irtt#G+IN$CUh} zR0Yr6#Prml)Wnp^!jq{$MZ5<+T^vIyZoRpCHt)8ZNW;a29{*KdEPBCx#c}hw#ZUf< zv)*FY=+e7&WSh#SC5FlI{cUAkWq~uFGl=&|b}~*m+b%ijRo$6;zdYdUxN+ZkxPQj0`vCEoIh!elz@d|H_R|W1BYR6n_7C_O$1^nrT2IwtRU| zS`}5X$N&8LMKyZL9UO^(3b}N&K!aCQ=rs;TtwvgbR#DuRU;7Z)HlF`n z{{8cvr-}{z=d&|3d@en+dH!>~^V4nqM+Vf*dfr~SZ~pV$HrGGLJS#5wC(poe?vly* z#Cg9f^Pc}SJ}>|IkKOtF^>YtQGiPA?P%!V+I_=|0%-f_2 zO*NtwBmLsOUE{Aj_1+U$AIvEYSXX*4;%KU|PW!R=BNNv6?>l4Xzf*F#IIuC5EyqTHteM^j?v>YSca{_u&R z+V`J-x9tI%6`r$yQ^$|+y#1FN3xEH9vJ2d}o~v_S`B%`66xx6n&uE@3{oXtzMy{JvH_9Z#$OM8oQs)B7UJE(<&Ok1SaMbjSS}Ij*UHpPHS0tsd=Yxo*mU)%Tyy4ZHW@Rv`n!Ho+Ob_1p#w-ifo9_IJ$e R1vau6JYD@<);T3K0RWW|XA}Sc diff --git a/resources.qrc b/resources.qrc index 02ee5f9ab..2260960e0 100644 --- a/resources.qrc +++ b/resources.qrc @@ -4,7 +4,6 @@ data/images/avatar-dude.png data/images/back-pressed.png data/images/back-rest.png - data/images/cover-shadow.png data/images/filter.png data/images/loved.png data/images/not-loved.png diff --git a/src/libtomahawk/playlist/albumitemdelegate.cpp b/src/libtomahawk/playlist/albumitemdelegate.cpp index 15a6844cd..c81722e0e 100644 --- a/src/libtomahawk/playlist/albumitemdelegate.cpp +++ b/src/libtomahawk/playlist/albumitemdelegate.cpp @@ -38,7 +38,6 @@ AlbumItemDelegate::AlbumItemDelegate( QAbstractItemView* parent, AlbumProxyModel , m_view( parent ) , m_model( proxy ) { - m_shadowPixmap = QPixmap( RESPATH "images/cover-shadow.png" ); m_defaultCover = QPixmap( RESPATH "images/no-album-art-placeholder.png" ); } @@ -63,9 +62,30 @@ AlbumItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, qApp->style()->drawControl( QStyle::CE_ItemViewItem, &opt, painter ); painter->save(); + painter->setRenderHint( QPainter::Antialiasing ); -// painter->setRenderHint( QPainter::Antialiasing ); -// painter->drawPixmap( option.rect.adjusted( 4, 4, -4, -38 ), m_shadowPixmap ); + if ( !( option.state & QStyle::State_Selected ) ) + { + QRect shadowRect = option.rect.adjusted( 5, 4, -5, -40 ); + painter->setPen( QColor( 90, 90, 90 ) ); + painter->drawRoundedRect( shadowRect, 0.5, 0.5 ); + + QPen shadowPen( QColor( 30, 30, 30 ) ); + shadowPen.setWidth( 0.4 ); + painter->drawLine( shadowRect.bottomLeft() + QPoint( -1, 2 ), shadowRect.bottomRight() + QPoint( 1, 2 ) ); + + shadowPen.setColor( QColor( 160, 160, 160 ) ); + painter->setPen( shadowPen ); + painter->drawLine( shadowRect.topLeft() + QPoint( -1, 2 ), shadowRect.bottomLeft() + QPoint( -1, 2 ) ); + painter->drawLine( shadowRect.topRight() + QPoint( 2, 2 ), shadowRect.bottomRight() + QPoint( 2, 2 ) ); + painter->drawLine( shadowRect.bottomLeft() + QPoint( 0, 3 ), shadowRect.bottomRight() + QPoint( 0, 3 ) ); + + shadowPen.setColor( QColor( 180, 180, 180 ) ); + painter->setPen( shadowPen ); + painter->drawLine( shadowRect.topLeft() + QPoint( -2, 3 ), shadowRect.bottomLeft() + QPoint( -2, 1 ) ); + painter->drawLine( shadowRect.topRight() + QPoint( 3, 3 ), shadowRect.bottomRight() + QPoint( 3, 1 ) ); + painter->drawLine( shadowRect.bottomLeft() + QPoint( 0, 4 ), shadowRect.bottomRight() + QPoint( 0, 4 ) ); + } QPixmap cover = item->cover.isNull() ? m_defaultCover : item->cover; QRect r = option.rect.adjusted( 6, 5, -6, -41 ); @@ -127,11 +147,12 @@ AlbumItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, } else { + painter->setFont( boldFont ); to.setAlignment( Qt::AlignHCenter | Qt::AlignTop ); text = painter->fontMetrics().elidedText( item->album()->name(), Qt::ElideRight, textRect.width() - 3 ); painter->drawText( textRect, text, to ); - painter->setFont( boldFont ); + painter->setPen( opt.palette.color( QPalette::Dark ) ); to.setAlignment( Qt::AlignHCenter | Qt::AlignBottom ); text = painter->fontMetrics().elidedText( item->album()->artist()->name(), Qt::ElideRight, textRect.width() - 3 ); painter->drawText( textRect, text, to );