parent
6311ca2b46
commit
f70d3fff64
@ -1,102 +0,0 @@ |
||||
/*
|
||||
* Copyright (C) 2013 Open Education Foundation |
||||
* |
||||
* Copyright (C) 2010-2013 Groupement d'Intérêt Public pour |
||||
* l'Education Numérique en Afrique (GIP ENA) |
||||
* |
||||
* This file is part of OpenBoard. |
||||
* |
||||
* OpenBoard is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU General Public License as published by |
||||
* the Free Software Foundation, version 3 of the License, |
||||
* with a specific linking exception for the OpenSSL project's |
||||
* "OpenSSL" library (or with modified versions of it that use the |
||||
* same license as the "OpenSSL" library). |
||||
* |
||||
* OpenBoard is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU General Public License |
||||
* along with OpenBoard. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/ |
||||
|
||||
|
||||
|
||||
|
||||
#include "UBVideoPlayer.h" |
||||
|
||||
#include <QtGui> |
||||
|
||||
#include <phonon/MediaObject> |
||||
#include <phonon/SeekSlider> |
||||
#include <phonon/VolumeSlider> |
||||
|
||||
#include "core/memcheck.h" |
||||
|
||||
UBVideoPlayer::UBVideoPlayer(QWidget* pParent) |
||||
: QWidget(pParent) |
||||
, mVideoPlayer(0) |
||||
{ |
||||
mVideoPlayer = new Phonon::VideoPlayer(Phonon::VideoCategory, this); |
||||
QVBoxLayout* mainLayout = new QVBoxLayout(this); |
||||
setLayout(mainLayout); |
||||
|
||||
mainLayout->setContentsMargins(0, 0, 0, 0); |
||||
mainLayout->addWidget(mVideoPlayer); |
||||
|
||||
QHBoxLayout* transportLayout = new QHBoxLayout(this); |
||||
mainLayout->addLayout(transportLayout); |
||||
|
||||
mPlayPause = new QPushButton(this); |
||||
transportLayout->addWidget(mPlayPause); |
||||
|
||||
Phonon::SeekSlider *slider = new Phonon::SeekSlider(this); |
||||
slider->setMediaObject(mVideoPlayer->mediaObject()); |
||||
slider->setPageStep(100); |
||||
transportLayout->addWidget(slider); |
||||
|
||||
connect(mPlayPause, SIGNAL(clicked()), |
||||
this, SLOT(tooglePlayPause())); |
||||
|
||||
connect(mVideoPlayer->mediaObject(), SIGNAL(stateChanged ( Phonon::State, Phonon::State)), |
||||
this, SLOT(mediaStateChanged ( Phonon::State, Phonon::State))); |
||||
|
||||
} |
||||
|
||||
|
||||
UBVideoPlayer::~UBVideoPlayer() |
||||
{ |
||||
// NOOP
|
||||
} |
||||
|
||||
|
||||
void UBVideoPlayer::tooglePlayPause() |
||||
{ |
||||
if(mVideoPlayer->mediaObject()->state() == Phonon::PlayingState) |
||||
{ |
||||
mVideoPlayer->mediaObject()->pause(); |
||||
} |
||||
else |
||||
{ |
||||
mVideoPlayer->mediaObject()->play(); |
||||
} |
||||
|
||||
} |
||||
|
||||
|
||||
void UBVideoPlayer::mediaStateChanged( Phonon::State newstate, Phonon::State oldstate ) |
||||
{ |
||||
Q_UNUSED(oldstate); |
||||
|
||||
if (newstate == Phonon::PlayingState) |
||||
{ |
||||
mPlayPause->setIcon(QPixmap(":/images/pause.svg")); |
||||
} |
||||
else |
||||
{ |
||||
mPlayPause->setIcon(QPixmap(":/images/play.svg")); |
||||
} |
||||
} |
||||
|
@ -1,68 +0,0 @@ |
||||
/*
|
||||
* Copyright (C) 2013 Open Education Foundation |
||||
* |
||||
* Copyright (C) 2010-2013 Groupement d'Intérêt Public pour |
||||
* l'Education Numérique en Afrique (GIP ENA) |
||||
* |
||||
* This file is part of OpenBoard. |
||||
* |
||||
* OpenBoard is free software: you can redistribute it and/or modify |
||||
* it under the terms of the GNU General Public License as published by |
||||
* the Free Software Foundation, version 3 of the License, |
||||
* with a specific linking exception for the OpenSSL project's |
||||
* "OpenSSL" library (or with modified versions of it that use the |
||||
* same license as the "OpenSSL" library). |
||||
* |
||||
* OpenBoard is distributed in the hope that it will be useful, |
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
* GNU General Public License for more details. |
||||
* |
||||
* You should have received a copy of the GNU General Public License |
||||
* along with OpenBoard. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/ |
||||
|
||||
|
||||
|
||||
|
||||
#ifndef UBVIDEOPLAYER_H_ |
||||
#define UBVIDEOPLAYER_H_ |
||||
|
||||
|
||||
#include <QtGui> |
||||
#include <phonon/VideoPlayer> |
||||
|
||||
class UBVideoPlayerTransport; |
||||
|
||||
class UBVideoPlayer : public QWidget |
||||
{ |
||||
Q_OBJECT; |
||||
|
||||
public: |
||||
UBVideoPlayer(QWidget* pParent = 0); |
||||
virtual ~UBVideoPlayer(); |
||||
|
||||
Phonon::VideoPlayer* videoPlayer() |
||||
{ |
||||
return mVideoPlayer; |
||||
} |
||||
|
||||
void loadMedia(QUrl url) |
||||
{ |
||||
mVideoPlayer->load(Phonon::MediaSource(url)); |
||||
} |
||||
|
||||
protected: |
||||
|
||||
Phonon::VideoPlayer* mVideoPlayer; |
||||
QPushButton *mPlayPause; |
||||
|
||||
private slots: |
||||
|
||||
void mediaStateChanged(Phonon::State newstate, Phonon::State oldstate); |
||||
void tooglePlayPause(); |
||||
|
||||
}; |
||||
|
||||
|
||||
#endif /* UBVIDEOPLAYER_H_ */ |
Loading…
Reference in new issue