mpdata/src/mpplaybackdata.cpp
changeset 43 0f32e550d9d8
parent 36 a0afa279b8fe
child 45 612c4815aebe
equal deleted inserted replaced
38:b93f525c9244 43:0f32e550d9d8
    80       mDuration(0),
    80       mDuration(0),
    81       mPosition(0),
    81       mPosition(0),
    82       mAlbumId(0),
    82       mAlbumId(0),
    83       mId(0),
    83       mId(0),
    84       mAlbumArt( "qtg_large_music_album" ),
    84       mAlbumArt( "qtg_large_music_album" ),
    85       mDefaultAlbumArt( "qtg_large_music_album" ),
       
    86       mPlaybackState( NotPlaying ),
    85       mPlaybackState( NotPlaying ),
    87       mRealAudio( false )
    86       mRealAudio( false )
    88 {
    87 {
    89     TX_ENTRY
    88     TX_ENTRY
    90     mThumbnailManager->setQualityPreference( ThumbnailManager::OptimizeForQuality );
    89     mThumbnailManager->setQualityPreference( ThumbnailManager::OptimizeForQuality );
   267             bool ok = mThumbnailManager->cancelRequest(mReqId);
   266             bool ok = mThumbnailManager->cancelRequest(mReqId);
   268         }
   267         }
   269         if ( ok ) {
   268         if ( ok ) {
   270             mReqId = mThumbnailManager->getThumbnail( albumArtUri );
   269             mReqId = mThumbnailManager->getThumbnail( albumArtUri );
   271             if ( mReqId == KUndefined ) {
   270             if ( mReqId == KUndefined ) {
   272                 // Request failed. Set default album art.
   271                 // Request failed. clear the icon.
   273                 mAlbumArt = mDefaultAlbumArt;
   272                 mAlbumArt.clear();
   274                 emit albumArtReady();
   273                 emit albumArtReady();
   275             }
   274             }
   276         }
   275         }
   277     }
   276     }
   278     else {
   277     else {
   279         // No album art uri. Set default album art.
   278         // No album art uri. clear the icon.
   280         mAlbumArt = mDefaultAlbumArt;
   279         mAlbumArt.clear();
   281         emit albumArtReady();
   280         emit albumArtReady();
   282     }
   281     }
   283     TX_EXIT
   282     TX_EXIT
   284 }
   283 }
   285 
   284 
   400     mAlbum = QString();
   399     mAlbum = QString();
   401     mArtist = QString();
   400     mArtist = QString();
   402     mUri = QString();
   401     mUri = QString();
   403     mAlbumId = 0;
   402     mAlbumId = 0;
   404     mId = 0;
   403     mId = 0;
   405     mAlbumArt = HbIcon();
   404     mAlbumArt.clear();
   406     mRealAudio = false;
   405     mRealAudio = false;
   407     
   406     
   408     emit durationChanged();
   407     emit durationChanged();
   409     emit positionChanged();
   408     emit positionChanged();
   410     emit albumArtReady();
   409     emit albumArtReady();
   418     const QPixmap& pixmap, void *data, int id, int error )
   417     const QPixmap& pixmap, void *data, int id, int error )
   419 {
   418 {
   420     TX_LOG_ARGS( "error = " << error << ", id = " << id )
   419     TX_LOG_ARGS( "error = " << error << ", id = " << id )
   421     Q_UNUSED(data);
   420     Q_UNUSED(data);
   422     if ( error == 0 && mReqId == id ) {
   421     if ( error == 0 && mReqId == id ) {
   423         QIcon qicon;
   422         mAlbumArt = HbIcon(QIcon( pixmap ));      
   424         QPixmap mCompositePixmap;
       
   425         mReqId = KUndefined;
       
   426         
       
   427         mCompositePixmap = QPixmap( 360, 360 );
       
   428         mCompositePixmap.fill( Qt::transparent );
       
   429         QPainter painter(&mCompositePixmap);
       
   430         painter.setCompositionMode(QPainter::CompositionMode_Clear);
       
   431         painter.setCompositionMode(QPainter::CompositionMode_SourceOver);
       
   432         painter.fillRect(mCompositePixmap.rect(), Qt::transparent);
       
   433         painter.drawPixmap(QRect(0, 0,360,360), pixmap);
       
   434         
       
   435         if ( !mCompositePixmap.isNull() ) {
       
   436             qicon = QIcon( mCompositePixmap );
       
   437         }
       
   438         else {
       
   439             qicon = QIcon( pixmap );
       
   440         }
       
   441         
       
   442         
       
   443         mAlbumArt = HbIcon(qicon);
       
   444         
       
   445         emit albumArtReady();
       
   446     }
   423     }
   447     else {
   424     else {
   448         mReqId = KUndefined;
   425         mReqId = KUndefined;
   449         mAlbumArt = mDefaultAlbumArt;
   426         mAlbumArt.clear();
   450         emit albumArtReady();
   427     }
   451     }
   428     emit albumArtReady();
   452     TX_EXIT
   429     TX_EXIT
   453 }
   430 }
   454 
   431