diff options
author | Justin McPherson <justin.mcpherson@nokia.com> | 2010-02-24 23:49:10 (GMT) |
---|---|---|
committer | Justin McPherson <justin.mcpherson@nokia.com> | 2010-02-24 23:49:10 (GMT) |
commit | 0bef5b3a51bf47851caf29bf0dedbf26a56cb8c4 (patch) | |
tree | f1c8379b25df379fda62cd3069df8e70b3ff86d7 /demos | |
parent | f39bb2af2d81640d30222cd5abc31b076105dd8b (diff) | |
parent | ef30a6f336d55c813423bf139d8363f50181179f (diff) | |
download | Qt-0bef5b3a51bf47851caf29bf0dedbf26a56cb8c4.zip Qt-0bef5b3a51bf47851caf29bf0dedbf26a56cb8c4.tar.gz Qt-0bef5b3a51bf47851caf29bf0dedbf26a56cb8c4.tar.bz2 |
Merge branch 'master' of ../../qt/master
Conflicts:
src/multimedia/qml/qml.pri
src/multimedia/qml/qmlaudio_p.h
src/multimedia/qml/qmlgraphicsvideo_p.h
src/multimedia/qml/qmlmediabase_p.h
src/plugins/qmlmodules/multimedia/multimedia.cpp
Diffstat (limited to 'demos')
-rw-r--r-- | demos/multimedia/player/player.cpp | 12 | ||||
-rw-r--r-- | demos/multimedia/player/player.h | 2 |
2 files changed, 13 insertions, 1 deletions
diff --git a/demos/multimedia/player/player.cpp b/demos/multimedia/player/player.cpp index 64b1f25..49d18cb 100644 --- a/demos/multimedia/player/player.cpp +++ b/demos/multimedia/player/player.cpp @@ -99,7 +99,7 @@ Player::Player(QWidget *parent) connect(controls, SIGNAL(pause()), player, SLOT(pause())); connect(controls, SIGNAL(stop()), player, SLOT(stop())); connect(controls, SIGNAL(next()), playlist, SLOT(next())); - connect(controls, SIGNAL(previous()), playlist, SLOT(previous())); + connect(controls, SIGNAL(previous()), this, SLOT(previousClicked())); connect(controls, SIGNAL(changeVolume(int)), player, SLOT(setVolume(int))); connect(controls, SIGNAL(changeMuting(bool)), player, SLOT(setMuted(bool))); connect(controls, SIGNAL(changeRate(qreal)), player, SLOT(setPlaybackRate(qreal))); @@ -200,6 +200,16 @@ void Player::metaDataChanged() } } +void Player::previousClicked() +{ + // Go to previous track if we are within the first 5 seconds of playback + // Otherwise, seek to the beginning. + if(player->position() <= 5000) + playlist->previous(); + else + player->setPosition(0); +} + void Player::jump(const QModelIndex &index) { if (index.isValid()) { diff --git a/demos/multimedia/player/player.h b/demos/multimedia/player/player.h index 0ad609b..1de8b1a 100644 --- a/demos/multimedia/player/player.h +++ b/demos/multimedia/player/player.h @@ -77,6 +77,8 @@ private slots: void positionChanged(qint64 progress); void metaDataChanged(); + void previousClicked(); + void seek(int seconds); void jump(const QModelIndex &index); void playlistPositionChanged(int); |