digiKam
Loading...
Searching...
No Matches
slidevideo.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2014-09-22
7 * Description : Slideshow video viewer based on QtMultimedia
8 *
9 * SPDX-FileCopyrightText: 2014-2023 Gilles Caulier <caulier dot gilles at gmail dot com>
10 *
11 * SPDX-License-Identifier: GPL-2.0-or-later
12 *
13 * ============================================================ */
14
15#pragma once
16
17// Qt includes
18
19#include <QWidget>
20#include <QEvent>
21#include <QUrl>
22#include <QMediaPlayer>
23
24// Local includes
25
26#include "dinfointerface.h"
27#include "digikam_export.h"
28
29namespace Digikam
30{
31
32class DIGIKAM_EXPORT SlideVideo : public QWidget
33{
34 Q_OBJECT
35
36public:
37
38 explicit SlideVideo(QWidget* const parent);
39 ~SlideVideo() override;
40
41 void setInfoInterface(DInfoInterface* const iface);
42 void setCurrentUrl(const QUrl& url);
43 void pause(bool);
44 void stop();
45
46Q_SIGNALS:
47
50
51 void signalVideoPosition(qint64);
52 void signalVideoDuration(qint64);
54
55public Q_SLOTS:
56
57 void slotPositionChanged(int position);
58 void slotVolumeChanged(int volume);
59
60private Q_SLOTS:
61
62 void slotPlayerStateChanged(QMediaPlayer::PlaybackState newState);
63 void slotMediaStatusChanged(QMediaPlayer::MediaStatus status);
64 void slotHandlePlayerError(QMediaPlayer::Error, const QString&);
65 void slotNativeSizeChanged();
66
67private:
68
69 void resizeEvent(QResizeEvent*) override;
70
71private:
72
73 class Private;
74 Private* const d = nullptr;
75};
76
77} // namespace Digikam
Definition dinfointerface.h:48
Definition slidevideo.h:33
void signalVideoDuration(qint64)
void signalVideoVolume(int)
void signalVideoPosition(qint64)
void signalVideoLoaded(bool)
Definition datefolderview.cpp:34