Exemplo n.º 1
0
void
Amarok::OSD::engineStateChanged( Phonon::State state, Phonon::State oldState )
{
    Q_UNUSED( oldState )
    DEBUG_BLOCK

    Meta::TrackPtr track = The::engineController()->currentTrack();

    switch( state )
    {
        case Phonon::PlayingState:
            unsubscribeFrom( m_currentTrack );
            m_currentTrack = track;
            subscribeTo( track );
            metadataChanged( track );
            m_paused = false;
            break;

        case Phonon::PausedState:
            setImage( QImage( KIconLoader::global()->iconPath( "amarok", -KIconLoader::SizeHuge ) ) );
            OSDWidget::show( i18n( "Paused" ) );
            m_paused = true;
            break;

        default:
            break;
    }
}
Exemplo n.º 2
0
void
AlbumItem::setAlbum( Meta::AlbumPtr albumPtr )
{
    if( m_album )
        unsubscribeFrom( m_album );
    m_album = albumPtr;
    subscribeTo( m_album );
    update();
}
Exemplo n.º 3
0
void
TrackItem::setTrack( Meta::TrackPtr trackPtr )
{
    if( m_track )
        unsubscribeFrom( m_track );
    m_track = trackPtr;
    subscribeTo( m_track );

    metadataChanged( m_track );
}
Exemplo n.º 4
0
void
SqlPlaylist::removeTrack( int position )
{
    if( !m_tracksLoaded )
        loadTracks();

    if( position < 0 || position >= m_tracks.size() )
        return;
    Meta::TrackPtr track = m_tracks.takeAt( position );
    unsubscribeFrom( track );
    saveToDb( true );
    notifyObserversTrackRemoved( position );
}
Exemplo n.º 5
0
bool
IpodPlaylistProvider::deletePlaylists( Playlists::PlaylistList playlistlist )
{
    if( !isWritable() )
        return false;

    foreach( Playlists::PlaylistPtr playlist, playlistlist )
    {
        if( !m_playlists.contains( playlist ) )
            continue;
        if( KSharedPtr<IpodPlaylist>::staticCast( playlist )->type() != IpodPlaylist::Normal )
            continue;  // special playlists cannot be removed using this method
        m_playlists.removeOne( playlist );

        unsubscribeFrom( playlist );
        IpodPlaylist *ipodPlaylist = static_cast<IpodPlaylist *>( playlist.data() );
        itdb_playlist_unlink( ipodPlaylist->itdbPlaylist() );

        emit playlistRemoved( playlist );
        emit startWriteDatabaseTimer();
    }
    return true;
}
Exemplo n.º 6
0
AlbumItem::~AlbumItem()
{
    if( m_album )
        unsubscribeFrom( m_album );
}