KNMusicBackendPhononThread::KNMusicBackendPhononThread(QObject *parent) : KNMusicBackendThread(parent) { //Initial the media object and audio output. m_mediaObject=new MediaObject; // m_mediaObject->moveToThread(&m_workingThread); m_mediaObject->setTickInterval(10); m_audioOutput=new AudioOutput(MusicCategory); // m_audioOutput->moveToThread(&m_workingThread); //Initial the state. m_state=KNMusic::StoppedState; //Link the media object and audio output. createPath(m_mediaObject, m_audioOutput); //Link signals. connect(m_mediaObject, &MediaObject::totalTimeChanged, this, &KNMusicBackendPhononThread::onActionDurationChanged); connect(m_mediaObject, &MediaObject::tick, this, &KNMusicBackendPhononThread::onActionPositionChanged); connect(m_mediaObject, SIGNAL(stateChanged(Phonon::State,Phonon::State)), this, SLOT(onActionStateChanged(State,State))); connect(m_mediaObject, SIGNAL(finished()), this, SLOT(onActionFinished())); }
bool DialogAction::update( double dTime, float fElapsedTime ) { Action::update( dTime, fElapsedTime ); if ( m_dialog && !m_dialog->isTalking() ) { onActionFinished(); deactivate(); return false; } return true; }