1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-05 21:57:41 +02:00

* Now-Playing signals can use tracks instead.

This commit is contained in:
Christian Muehlhaeuser
2013-04-22 09:23:54 +02:00
parent 9be6dfaad5
commit 0bde2a5521
4 changed files with 19 additions and 17 deletions

View File

@@ -443,26 +443,26 @@ Source::playlistInterface()
void void
Source::onPlaybackStarted( const Tomahawk::query_ptr& query, unsigned int duration ) Source::onPlaybackStarted( const Tomahawk::track_ptr& track, unsigned int duration )
{ {
tLog( LOGVERBOSE ) << Q_FUNC_INFO << query->toString(); tLog( LOGVERBOSE ) << Q_FUNC_INFO << track->toString();
m_currentTrack = query; m_currentTrack = track->toQuery();
m_currentTrackTimer.start( duration * 1000 + 900000 ); // duration comes in seconds m_currentTrackTimer.start( duration * 1000 + 900000 ); // duration comes in seconds
if ( m_playlistInterface.isNull() ) if ( m_playlistInterface.isNull() )
playlistInterface(); playlistInterface();
emit playbackStarted( query ); emit playbackStarted( track );
emit stateChanged(); emit stateChanged();
} }
void void
Source::onPlaybackFinished( const Tomahawk::query_ptr& query ) Source::onPlaybackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed )
{ {
tDebug() << Q_FUNC_INFO << query->toString(); tDebug() << Q_FUNC_INFO << track->toString();
emit playbackFinished( query ); emit playbackFinished( track, playtime, secsPlayed );
m_currentTrack.clear(); m_currentTrack.clear();
emit stateChanged(); emit stateChanged();
@@ -625,7 +625,7 @@ Source::textStatus() const
if ( !currentTrack().isNull() ) if ( !currentTrack().isNull() )
{ {
return currentTrack()->artist() + " - " + currentTrack()->track(); return currentTrack()->queryTrack()->artist() + " - " + currentTrack()->queryTrack()->track();
} }
// do not use isOnline() here - it will always return true for the local source // do not use isOnline() here - it will always return true for the local source

View File

@@ -113,8 +113,8 @@ signals:
void stats( const QVariantMap& ); void stats( const QVariantMap& );
void playbackStarted( const Tomahawk::query_ptr& query ); void playbackStarted( const Tomahawk::track_ptr& track );
void playbackFinished( const Tomahawk::query_ptr& query ); void playbackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed );
void stateChanged(); void stateChanged();
void commandsFinished(); void commandsFinished();
@@ -138,8 +138,8 @@ private slots:
void onStateChanged( DBSyncConnection::State newstate, DBSyncConnection::State oldstate, const QString& info ); void onStateChanged( DBSyncConnection::State newstate, DBSyncConnection::State oldstate, const QString& info );
void onPlaybackStarted( const Tomahawk::query_ptr& query, unsigned int duration ); void onPlaybackStarted( const Tomahawk::track_ptr& track, unsigned int duration );
void onPlaybackFinished( const Tomahawk::query_ptr& query ); void onPlaybackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed );
void trackTimerFired(); void trackTimerFired();
void executeCommands(); void executeCommands();

View File

@@ -37,7 +37,7 @@ SourcePlaylistInterface::SourcePlaylistInterface( Tomahawk::Source* source, Toma
setLatchMode( latchMode ); setLatchMode( latchMode );
if ( !m_source.isNull() ) if ( !m_source.isNull() )
connect( m_source.data(), SIGNAL( playbackStarted( const Tomahawk::query_ptr& ) ), SLOT( onSourcePlaybackStarted( const Tomahawk::query_ptr& ) ) ); connect( m_source.data(), SIGNAL( playbackStarted( const Tomahawk::track_ptr& ) ), SLOT( onSourcePlaybackStarted( const Tomahawk::track_ptr& ) ) );
if ( AudioEngine::instance() ) if ( AudioEngine::instance() )
connect( AudioEngine::instance(), SIGNAL( paused() ), SLOT( audioPaused() ) ); connect( AudioEngine::instance(), SIGNAL( paused() ), SLOT( audioPaused() ) );
@@ -164,9 +164,11 @@ SourcePlaylistInterface::reset()
void void
SourcePlaylistInterface::onSourcePlaybackStarted( const Tomahawk::query_ptr& query ) SourcePlaylistInterface::onSourcePlaybackStarted( const Tomahawk::track_ptr& track )
{ {
tDebug( LOGVERBOSE ) << Q_FUNC_INFO; tDebug( LOGVERBOSE ) << Q_FUNC_INFO;
query_ptr query = track->toQuery();
connect( query.data(), SIGNAL( resolvingFinished( bool ) ), SLOT( resolvingFinished( bool ) ) ); connect( query.data(), SIGNAL( resolvingFinished( bool ) ), SLOT( resolvingFinished( bool ) ) );
Pipeline::instance()->resolve( query ); Pipeline::instance()->resolve( query );
m_gotNextItem = false; m_gotNextItem = false;

View File

@@ -75,7 +75,7 @@ public slots:
virtual void audioPaused() { setLatchMode( PlaylistModes::StayOnSong ); } virtual void audioPaused() { setLatchMode( PlaylistModes::StayOnSong ); }
private slots: private slots:
void onSourcePlaybackStarted( const Tomahawk::query_ptr& query ); void onSourcePlaybackStarted( const Tomahawk::track_ptr& track );
void resolvingFinished( bool hasResults ); void resolvingFinished( bool hasResults );
private: private: