From 3efe0ff22b052600f424c5c350830cf09cb3d907 Mon Sep 17 00:00:00 2001 From: Christopher Reichert Date: Thu, 16 Jun 2011 14:02:35 -0500 Subject: [PATCH] Added the love button. Its in an odd place for now but Muesli is going to correct the positioning manually. We need to get this button to switch to notLoved.png when a track is no longer loved. More implementation coming soon. For now this will send love status to lastfm. --- data/images/loved.png | Bin 0 -> 1230 bytes data/images/not-loved.png | Bin 0 -> 1180 bytes resources.qrc | 2 ++ src/audiocontrols.cpp | 5 +++++ src/audiocontrols.ui | 15 ++++++++++++++- 5 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 data/images/loved.png create mode 100644 data/images/not-loved.png diff --git a/data/images/loved.png b/data/images/loved.png new file mode 100644 index 0000000000000000000000000000000000000000..8650a44299c20c734d53217607d2cd688f88cdfa GIT binary patch literal 1230 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`k|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*9U+m=!WZB1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG z`a!A1`K3k4z=%sz23b{L1hwUYGpj(%jU%5}4i;gkEQydO-;xw*Y9fOKMSOS!#+~QGTuh*uz$txZPrj(>$o& z6x?oc#Hm*w=oo!av?4__ObD2EKuma|1#;lYJ~a=R){B6NdR}d=3HfYNX4x+ zm-lPCCdwTDSX~rr_;W4Kk}JLwJ=lyVuanSkK3cy(gWJr0*G7XANfRXkVw9A`p1KEZ zlE`6;ToPb)@BXh9w=Y}P9SL54`Q^`#wda1;%|HIR*8Y>cuJqp<2Q|YcoRG*rZgg%# zx8su=4ec>&9?2C~xUsSobd+yNk|{soEU$Gj)6vbaUn}R4RItXec}+K}y^?RQIHq$< z=YU~W0h9efD^D7PFA!WyAT>w~GT*bN}^NEcx{;`EU2putp};iW`5|OgWVn zIiDxOrdKE@QSHtBH!ZP?#60(S1l2y5_^Ib8s}*l9b+JM2Yw6C(dnYKAT@oufk>kf* sRrq^0x7cB&XPiWg#7?-2qgrs%Nx;9hAv-q%$$kKBn68)L< zQY$&xg@Ln{t@N_vU>o#M*p}O}j&^K1tZNHBhOLxQ20QF9LJw`AUG|j5X%BS;(tF?I z_xpX{`@SDqD^8z1*f-cmQPjc0lvpBb*nfM2vbyroO*BSPG|&anXj7{;npvGLE31o2N@XU-!I&!$0Uco(xcZXe2yU9$)fLFzKjs*)3&D$N z=2=k{sR(kWjX;8h5e1GwFv7EZES^jzPlG7rAqS%zAC2%yAr=)N1bYudve{})D2ZqG za*-&_EMRO299OT`*?NpM?Rkz*rBc2|G#Vj@h_hl~*^L;^iME1>9L3fwteFPz73HeA zjMEIM^w|}3YhTuI_S!@m#<{Y^@htSO)CNk@tD(BSk9KegJ+Jqr!cKX`LR<+s=CZAj z!PQRqsVpI9BN>}^*)*5hT`Vq`*mM?53*=@JU{*6!v+nGoB}ph44welC6~r_{_^hU> zLSh6aa@o{mA_k*8pNFHPB8kN~jOVjS7|*u3qNyzF$iQu``kb5V$n}k&TO_lHZ0#IU z&)B98b}uYwooh*T)Z62#oomT<u1 zI~cyvUCjZuaq_=@Zzyx`koR|^@_H-QtaP>LOfcTH-WNXm)y60Ntvb!e!q=#+f%x`z z@z$|V>Gi?Tw_5>zB9zL5@nEcR;i5&aJOzj2$K9K-(eqdOQs7Z@^NRy?hJSd>gMkPC zWKK_>uLZ#MZm$NL?|^Ypt$deNu7p1LvZwVKwLUs@=jY6i!>ucSmWm;7wz=7L;rOo` zpEtj6UON1=@%U(X9;`J>_azV#XK%ND2^W8RzgPOIkI^@+0Yi}3lBJ_hJ#gX@Z en$pe%dm*(w1+Q-Oe>~*>FADi-@teuH^Zx^V6ns$t literal 0 HcmV?d00001 diff --git a/resources.qrc b/resources.qrc index 4e88a8098..952acaa8a 100644 --- a/resources.qrc +++ b/resources.qrc @@ -7,6 +7,8 @@ ./data/images/back-pressed.png ./data/images/back-rest.png ./data/images/cover-shadow.png + ./data/images/loved.png + ./data/images/not-loved.png ./data/images/magnifying-glass.png ./data/images/no-album-art-placeholder.png ./data/images/now-playing-panel.png diff --git a/src/audiocontrols.cpp b/src/audiocontrols.cpp index d8de7ee44..c94b6fa63 100644 --- a/src/audiocontrols.cpp +++ b/src/audiocontrols.cpp @@ -79,6 +79,7 @@ AudioControls::AudioControls( QWidget* parent ) ui->repeatButton->setPixmap( RESPATH "images/repeat-off-pressed.png", QIcon::Off, QIcon::Active ); ui->volumeLowButton->setPixmap( RESPATH "images/volume-icon-muted.png" ); ui->volumeHighButton->setPixmap( RESPATH "images/volume-icon-full.png" ); + ui->loveButton->setPixmap( RESPATH "images/not-loved.png" ); ui->ownerLabel->setForegroundRole( QPalette::Dark ); ui->metaDataArea->setStyleSheet( "QWidget#metaDataArea {\nborder-width: 4px;\nborder-image: url(" RESPATH "images/now-playing-panel.png) 4 4 4 4 stretch stretch; }" ); @@ -150,6 +151,7 @@ AudioControls::AudioControls( QWidget* parent ) connect( ui->artistTrackLabel, SIGNAL( clickedArtist() ), SLOT( onArtistClicked() ) ); connect( ui->artistTrackLabel, SIGNAL( clickedTrack() ), SLOT( onTrackClicked() ) ); connect( ui->albumLabel, SIGNAL( clickedAlbum() ), SLOT( onAlbumClicked() ) ); + connect( ui->loveButton, SIGNAL( clicked() ), SLOT( onLoveButtonClicked() ) ); // connect( AudioEngine::instance(), SIGNAL( loading( Tomahawk::result_ptr ) ), SLOT( onPlaybackLoading( Tomahawk::result_ptr ) ) ); @@ -280,6 +282,7 @@ AudioControls::onPlaybackLoading( const Tomahawk::result_ptr& result ) ui->albumLabel->setResult( result ); ui->ownerLabel->setText( result->friendlySource() ); ui->coverImage->setPixmap( m_defaultCover ); + ui->loveButton->setVisible( true ); ui->timeLabel->setText( TomahawkUtils::timeToString( 0 ) ); ui->timeLeftLabel->setText( "-" + TomahawkUtils::timeToString( result->duration() ) ); @@ -321,6 +324,7 @@ AudioControls::onPlaybackResumed() ui->playPauseButton->setEnabled( false ); ui->pauseButton->setVisible( true ); ui->pauseButton->setEnabled( true ); + ui->loveButton->setVisible( true ); } @@ -336,6 +340,7 @@ AudioControls::onPlaybackStopped() ui->timeLeftLabel->setText( "" ); ui->coverImage->setPixmap( QPixmap() ); ui->seekSlider->setVisible( false ); + ui->loveButton->setVisible( false ); ui->pauseButton->setVisible( false ); ui->pauseButton->setEnabled( false ); diff --git a/src/audiocontrols.ui b/src/audiocontrols.ui index 31ac8f656..2a72910b5 100644 --- a/src/audiocontrols.ui +++ b/src/audiocontrols.ui @@ -250,7 +250,20 @@ - + + + + + + 0 + 0 + + + + love + + +