X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/f65b0899c3666561cafac14f67ab0bb8a5bfa00a..38c34eeca:/src/panels/information/phononwidget.h diff --git a/src/panels/information/phononwidget.h b/src/panels/information/phononwidget.h index 5510b0544..4662e47af 100644 --- a/src/panels/information/phononwidget.h +++ b/src/panels/information/phononwidget.h @@ -15,10 +15,10 @@ namespace Phonon { - class AudioOutput; - class MediaObject; - class SeekSlider; - class VideoPlayer; +class AudioOutput; +class MediaObject; +class SeekSlider; +class VideoPlayer; } // namespace Phonon class EmbeddedVideoPlayer; @@ -28,68 +28,64 @@ class QVBoxLayout; class PhononWidget : public QWidget { Q_OBJECT - public: - - enum MediaKind { - Video, - Audio - }; - - explicit PhononWidget(QWidget *parent = nullptr); - - void setUrl(const QUrl &url, MediaKind kind); - QUrl url() const; - void clearUrl(); - - void setVideoSize(const QSize& size); - QSize videoSize() const; - Phonon::State state() const; - - void setAutoPlay(bool autoPlay); - bool eventFilter(QObject *object, QEvent *event) override; - - Q_SIGNALS: - /** - * Is emitted whenever the video-state - * has changed: If true is returned, a video - * including control-buttons will be shown. - * If false is returned, no video is shown - * and the control-buttons are available for - * audio only. - */ - void hasVideoChanged(bool hasVideo); - - public Q_SLOTS: - void play(); - - protected: - void showEvent(QShowEvent *event) override; - void hideEvent(QHideEvent *event) override; - - private Q_SLOTS: - void stateChanged(Phonon::State newstate); - void stop(); - void finished(); - - private: - void applyVideoSize(); - - private: - void togglePlayback(); - - QUrl m_url; - QSize m_videoSize; - - QToolButton *m_playButton; - QToolButton *m_pauseButton; - - QVBoxLayout *m_topLayout; - Phonon::MediaObject *m_media; - Phonon::SeekSlider *m_seekSlider; - Phonon::AudioOutput *m_audioOutput; - EmbeddedVideoPlayer *m_videoPlayer; - bool m_autoPlay; - bool m_isVideo; +public: + enum MediaKind { Video, Audio }; + + explicit PhononWidget(QWidget *parent = nullptr); + + void setUrl(const QUrl &url, MediaKind kind); + QUrl url() const; + void clearUrl(); + + void setVideoSize(const QSize &size); + QSize videoSize() const; + Phonon::State state() const; + + void setAutoPlay(bool autoPlay); + bool eventFilter(QObject *object, QEvent *event) override; + +Q_SIGNALS: + /** + * Is emitted whenever the video-state + * has changed: If true is returned, a video + * including control-buttons will be shown. + * If false is returned, no video is shown + * and the control-buttons are available for + * audio only. + */ + void hasVideoChanged(bool hasVideo); + +public Q_SLOTS: + void play(); + +protected: + void showEvent(QShowEvent *event) override; + void hideEvent(QHideEvent *event) override; + +private Q_SLOTS: + void stateChanged(Phonon::State newstate); + void stop(); + void finished(); + +private: + void applyVideoSize(); + +private: + void togglePlayback(); + + QUrl m_url; + QSize m_videoSize; + + QToolButton *m_playButton; + QToolButton *m_pauseButton; + + QVBoxLayout *m_topLayout; + Phonon::MediaObject *m_media; + Phonon::SeekSlider *m_seekSlider; + Phonon::AudioOutput *m_audioOutput; + EmbeddedVideoPlayer *m_videoPlayer; + bool m_autoPlay; + bool m_isVideo; }; #endif // PHONONWIDGET_H