#ifndef PHONONWIDGET_H
#define PHONONWIDGET_H
-#include <QUrl>
+#include <Phonon/Global>
+
#include <QSize>
+#include <QUrl>
#include <QWidget>
-#include <Phonon/Global>
-
namespace Phonon
{
class AudioOutput;
{
Q_OBJECT
public:
- PhononWidget(QWidget *parent = 0);
- void setUrl(const QUrl &url);
+ enum MediaKind {
+ Video,
+ Audio
+ };
+
+ explicit PhononWidget(QWidget *parent = nullptr);
+
+ void setUrl(const QUrl &url, MediaKind kind);
QUrl url() const;
void setVideoSize(const QSize& size);
QSize videoSize() const;
+ void setAutoPlay(bool autoPlay);
+
signals:
/**
* Is emitted whenever the video-state
*/
void hasVideoChanged(bool hasVideo);
+ public slots:
+ void play();
+
protected:
- virtual void showEvent(QShowEvent *event);
- virtual void hideEvent(QHideEvent *event);
+ void showEvent(QShowEvent *event) override;
+ void hideEvent(QHideEvent *event) override;
private slots:
- void stateChanged(Phonon::State);
- void play();
+ void stateChanged(Phonon::State newstate);
void stop();
- void slotHasVideoChanged(bool);
+ void finished();
private:
void applyVideoSize();
Phonon::SeekSlider *m_seekSlider;
Phonon::AudioOutput *m_audioOutput;
EmbeddedVideoPlayer *m_videoPlayer;
+ bool m_autoPlay;
+ bool m_isVideo;
};
#endif // PHONONWIDGET_H