mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-08 23:26:40 +02:00
* Played / PlaybackFinished signals now use our PlaybackLog struct.
This commit is contained in:
@@ -467,6 +467,7 @@ TomahawkApp::registerMetaTypes()
|
|||||||
qRegisterMetaType< Tomahawk::playlistinterface_ptr >("Tomahawk::playlistinterface_ptr");
|
qRegisterMetaType< Tomahawk::playlistinterface_ptr >("Tomahawk::playlistinterface_ptr");
|
||||||
qRegisterMetaType< Tomahawk::dynplaylist_ptr >("Tomahawk::dynplaylist_ptr");
|
qRegisterMetaType< Tomahawk::dynplaylist_ptr >("Tomahawk::dynplaylist_ptr");
|
||||||
qRegisterMetaType< Tomahawk::geninterface_ptr >("Tomahawk::geninterface_ptr");
|
qRegisterMetaType< Tomahawk::geninterface_ptr >("Tomahawk::geninterface_ptr");
|
||||||
|
qRegisterMetaType< Tomahawk::PlaybackLog >("Tomahawk::PlaybackLog");
|
||||||
qRegisterMetaType< QList<Tomahawk::playlist_ptr> >("QList<Tomahawk::playlist_ptr>");
|
qRegisterMetaType< QList<Tomahawk::playlist_ptr> >("QList<Tomahawk::playlist_ptr>");
|
||||||
qRegisterMetaType< QList<Tomahawk::dynplaylist_ptr> >("QList<Tomahawk::dynplaylist_ptr>");
|
qRegisterMetaType< QList<Tomahawk::dynplaylist_ptr> >("QList<Tomahawk::dynplaylist_ptr>");
|
||||||
qRegisterMetaType< QList<Tomahawk::dyncontrol_ptr> >("QList<Tomahawk::dyncontrol_ptr>");
|
qRegisterMetaType< QList<Tomahawk::dyncontrol_ptr> >("QList<Tomahawk::dyncontrol_ptr>");
|
||||||
|
@@ -459,10 +459,10 @@ Source::onPlaybackStarted( const Tomahawk::track_ptr& track, unsigned int durati
|
|||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
Source::onPlaybackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed )
|
Source::onPlaybackFinished( const Tomahawk::track_ptr& track, const Tomahawk::PlaybackLog& log )
|
||||||
{
|
{
|
||||||
tDebug() << Q_FUNC_INFO << track->toString();
|
tDebug() << Q_FUNC_INFO << track->toString();
|
||||||
emit playbackFinished( track, playtime, secsPlayed );
|
emit playbackFinished( track, log );
|
||||||
|
|
||||||
m_currentTrack.clear();
|
m_currentTrack.clear();
|
||||||
emit stateChanged();
|
emit stateChanged();
|
||||||
|
@@ -114,7 +114,7 @@ signals:
|
|||||||
void stats( const QVariantMap& );
|
void stats( const QVariantMap& );
|
||||||
|
|
||||||
void playbackStarted( const Tomahawk::track_ptr& track );
|
void playbackStarted( const Tomahawk::track_ptr& track );
|
||||||
void playbackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed );
|
void playbackFinished( const Tomahawk::track_ptr& track, const Tomahawk::PlaybackLog& log );
|
||||||
|
|
||||||
void stateChanged();
|
void stateChanged();
|
||||||
void commandsFinished();
|
void commandsFinished();
|
||||||
@@ -139,7 +139,7 @@ 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::track_ptr& track, unsigned int duration );
|
void onPlaybackStarted( const Tomahawk::track_ptr& track, unsigned int duration );
|
||||||
void onPlaybackFinished( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed );
|
void onPlaybackFinished( const Tomahawk::track_ptr& track, const Tomahawk::PlaybackLog& log );
|
||||||
void trackTimerFired();
|
void trackTimerFired();
|
||||||
|
|
||||||
void executeCommands();
|
void executeCommands();
|
||||||
|
@@ -39,8 +39,8 @@ DatabaseCommand_LogPlayback::postCommitHook()
|
|||||||
{
|
{
|
||||||
connect( this, SIGNAL( trackPlaying( Tomahawk::track_ptr, unsigned int ) ),
|
connect( this, SIGNAL( trackPlaying( Tomahawk::track_ptr, unsigned int ) ),
|
||||||
source().data(), SLOT( onPlaybackStarted( Tomahawk::track_ptr, unsigned int ) ), Qt::QueuedConnection );
|
source().data(), SLOT( onPlaybackStarted( Tomahawk::track_ptr, unsigned int ) ), Qt::QueuedConnection );
|
||||||
connect( this, SIGNAL( trackPlayed( Tomahawk::track_ptr, unsigned int, unsigned int ) ),
|
connect( this, SIGNAL( trackPlayed( Tomahawk::track_ptr, Tomahawk::PlaybackLog ) ),
|
||||||
source().data(), SLOT( onPlaybackFinished( Tomahawk::track_ptr, unsigned int, unsigned int ) ), Qt::QueuedConnection );
|
source().data(), SLOT( onPlaybackFinished( Tomahawk::track_ptr, Tomahawk::PlaybackLog ) ), Qt::QueuedConnection );
|
||||||
|
|
||||||
track_ptr track = Track::get( m_artist, m_track, QString() );
|
track_ptr track = Track::get( m_artist, m_track, QString() );
|
||||||
if ( !track )
|
if ( !track )
|
||||||
@@ -48,7 +48,12 @@ DatabaseCommand_LogPlayback::postCommitHook()
|
|||||||
|
|
||||||
if ( m_action == Finished )
|
if ( m_action == Finished )
|
||||||
{
|
{
|
||||||
emit trackPlayed( track, m_playtime, m_secsPlayed );
|
PlaybackLog log;
|
||||||
|
log.source = source();
|
||||||
|
log.timestamp = m_playtime;
|
||||||
|
log.secsPlayed = m_secsPlayed;
|
||||||
|
|
||||||
|
emit trackPlayed( track, log );
|
||||||
}
|
}
|
||||||
// if the play time is more than 10 minutes in the past, ignore
|
// if the play time is more than 10 minutes in the past, ignore
|
||||||
else if ( m_action == Started && QDateTime::fromTime_t( playtime() ).secsTo( QDateTime::currentDateTime() ) < STARTED_THRESHOLD )
|
else if ( m_action == Started && QDateTime::fromTime_t( playtime() ).secsTo( QDateTime::currentDateTime() ) < STARTED_THRESHOLD )
|
||||||
|
@@ -91,7 +91,7 @@ public:
|
|||||||
|
|
||||||
signals:
|
signals:
|
||||||
void trackPlaying( const Tomahawk::track_ptr& track, unsigned int duration );
|
void trackPlaying( const Tomahawk::track_ptr& track, unsigned int duration );
|
||||||
void trackPlayed( const Tomahawk::track_ptr& track, unsigned int playtime, unsigned int secsPlayed );
|
void trackPlayed( const Tomahawk::track_ptr& track, const Tomahawk::PlaybackLog& log );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QString m_artist;
|
QString m_artist;
|
||||||
|
Reference in New Issue
Block a user