-
-
Notifications
You must be signed in to change notification settings - Fork 78
Expand file tree
/
Copy pathScreenCapture.h
More file actions
67 lines (53 loc) · 1.56 KB
/
ScreenCapture.h
File metadata and controls
67 lines (53 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
// Author: Kang Lin <kl222@126.com>
#ifndef SCREENCAPTURE_H
#define SCREENCAPTURE_H
#pragma once
#include <QMediaCaptureSession>
#include <QScreenCapture>
#include <QWindowCapture>
#include <QImageCapture>
#include <QMediaRecorder>
#include <QVideoWidget>
#include <QMenu>
#include "Operate.h"
#include "ParameterScreenCapture.h"
class CScreenCapture : public COperate
{
Q_OBJECT
public:
explicit CScreenCapture(CPlugin *plugin);
virtual ~CScreenCapture();
// COperate interface
public:
[[nodiscard]] virtual QWidget *GetViewer() override;
[[nodiscard]] virtual const qint16 Version() const override;
protected:
virtual int Initial() override;
virtual int Clean() override;
public Q_SLOTS:
virtual int Start() override;
virtual int Stop() override;
private Q_SLOTS:
virtual int slotStart();
virtual int slotStop();
private:
[[nodiscard]] virtual QDialog *OnOpenDialogSettings(QWidget *parent) override;
QVideoWidget* m_pWidget;
CParameterScreenCapture m_Parameter;
QScreenCapture m_ScreenCapture;
QWindowCapture m_WindowCapture;
QMediaCaptureSession m_CaptureSessioin;
QMediaRecorder m_Recorder;
QImageCapture m_ImageCapture;
QString m_szRecordFile;
// QObject interface
public:
virtual bool eventFilter(QObject *watched, QEvent *event) override;
protected:
virtual int SetGlobalParameters(CParameterPlugin *pPara) override;
// COperate interface
protected:
virtual int Load(QSettings &set) override;
virtual int Save(QSettings &set) override;
};
#endif // SCREENCAPTURE_H