Rabbit Remote Control 0.1.0-alpha
Loading...
Searching...
No Matches
OperatePlayer.h
1// Author: Kang Lin <kl222@126.com>
2
3#ifndef CONNETERPLAYER_H
4#define CONNETERPLAYER_H
5
6#pragma once
7
8#include <QMenu>
9#include <QMediaPlayer>
10#include <QMediaRecorder>
11#if HAVE_QVideoWidget
12#include "FrmPlayer.h"
13#endif
14
15#include "OperateDesktop.h"
16#include "ParameterPlayer.h"
17
24{
25 Q_OBJECT
26
27public:
28 explicit COperatePlayer(CPlugin *plugin);
29 virtual ~COperatePlayer();
30
31 // CConnecter interface
32public:
33 [[nodiscard]] virtual const qint16 Version() const override;
34
35protected:
36 // CConnecterConnect interface
37 [[nodiscard]] virtual CBackend *InstanceBackend() override;
38 virtual int Initial() override;
39 virtual int Clean() override;
40 virtual int InitialMenu() override;
41
42Q_SIGNALS:
43 void sigStart(bool bStart);
44 void sigPause(bool bPause);
45 void sigChangePosition(qint64 pos);
46
47Q_SIGNALS:
48 void sigScreenShot();
49public Q_SLOTS:
50 virtual void slotScreenShot() override;
51
52private:
53 virtual QDialog *OnOpenDialogSettings(QWidget *parent) override;
54
55private:
56 CParameterPlayer m_Parameters;
57
58#if HAVE_QVideoWidget
59 CFrmPlayer m_Player;
60public:
61 virtual QWidget *GetViewer() override;
62 QVideoSink *GetVideoSink();
63 virtual const QString Description() override;
64public Q_SLOTS:
65 void slotPositionChanged(qint64 pos, qint64 duration);
66 void slotPlaybackStateChanged(QMediaPlayer::PlaybackState state);
67 void slotPlaybackError(QMediaPlayer::Error error, const QString &errorString);
68#if HAVE_QT6_RECORD
69 void slotRecordStateChanged(QMediaRecorder::RecorderState state);
70#endif
71#else // #if HAVE_QVideoWidget
72 QAction* m_pPause;
73#endif // #if HAVE_QVideoWidget
74};
75
76#endif // CONNETERPLAYER_H
Backend interface.
Definition Backend.h:42
Remote desktop operate interface.
virtual QWidget * GetViewer() override
Get Viewer.
virtual const QString Description() override
Description.
virtual int Clean() override
Clean parameters and resource.
virtual CBackend * InstanceBackend() override
New CBackend.
virtual int Initial() override
Initial parameters and resource.
virtual const qint16 Version() const override
Version.
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
Plugin interface.
Definition Plugin.h:15