aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/mediaplayer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qmmpui/mediaplayer.cpp')
-rw-r--r--src/qmmpui/mediaplayer.cpp27
1 files changed, 26 insertions, 1 deletions
diff --git a/src/qmmpui/mediaplayer.cpp b/src/qmmpui/mediaplayer.cpp
index 0f6b7a79f..3f7545091 100644
--- a/src/qmmpui/mediaplayer.cpp
+++ b/src/qmmpui/mediaplayer.cpp
@@ -64,6 +64,7 @@ void MediaPlayer::initialize(SoundCore *core, PlayListModel *model)
m_model = model;
m_repeat = FALSE;
connect(m_core, SIGNAL(finished()), SLOT(next()));
+ connect(m_core, SIGNAL(aboutToFinish()), SLOT(sendNext()));
}
PlayListModel *MediaPlayer::playListModel()
@@ -78,7 +79,9 @@ bool MediaPlayer::isRepeatable() const
void MediaPlayer::play()
{
+ qDebug("+1");
m_model->doCurrentVisibleRequest();
+ qDebug("+2");
if (m_core->state() == Qmmp::Paused)
{
m_core->pause();
@@ -87,12 +90,15 @@ void MediaPlayer::play()
if (m_model->count() == 0)
return;
-
+ qDebug("+3");
QString s = m_model->currentItem()->url();
if (s.isEmpty())
return;
+ qDebug("+4");
+ //m_core->setNext (m_model->nextItem()->url());
if (!m_core->play(s))
{
+ qDebug("+5");
//find out the reason why playback failed
switch ((int) m_core->state())
{
@@ -127,7 +133,19 @@ void MediaPlayer::play()
}
}
else
+ {
+ qDebug("1");
m_skips = 0;
+ qDebug("2");
+ if(m_model->nextItem())
+ {
+ qDebug("3");
+ m_core->setNext (m_model->nextItem()->url());
+ qDebug("MediaPlayer: current item: %s",qPrintable(m_core->url()));
+ qDebug("MediaPlayer: next item: %s",qPrintable(m_core->nextUrl()));
+ qDebug("4");
+ }
+ }
}
void MediaPlayer::stop()
@@ -190,3 +208,10 @@ void MediaPlayer::setRepeatable(bool r)
m_repeat = r;
emit repeatableChanged(r);
}
+
+void MediaPlayer::sendNext()
+{
+ /*if(m_model->nextItem())
+ qDebug("MediaPlayer: next item: %s",qPrintable(m_model->nextItem()->url()));*/
+}
+