Rabbit Remote Control 0.0.37
Loading...
Searching...
No Matches
OperateDesktop.h
1// Author: Kang Lin <kl222@126.com>
2
3#pragma once
4
5#include <QSpinBox>
6#include "Operate.h"
7#include "Backend.h"
8#include "ParameterBase.h"
9#include "FrmScroll.h"
10
11class CBackendThread;
12
68class PLUGIN_EXPORT COperateDesktop : public COperate
69{
70 Q_OBJECT
71
72public:
95 explicit COperateDesktop(CPlugin *plugin);
96 virtual ~COperateDesktop();
97
107 [[nodiscard]] Q_INVOKABLE virtual CBackend* InstanceBackend() = 0;
111 [[nodiscard]] virtual CParameterBase* GetParameter();
119 virtual int SetParameter(CParameterBase* p);
120
121 [[nodiscard]] virtual const QString Id() override;
122 [[nodiscard]] virtual const QString Name() override;
123 [[nodiscard]] virtual const QString Description() override;
124 [[nodiscard]] virtual const qint16 Version() const override;
125 [[nodiscard]] virtual QWidget *GetViewer() override;
126
127public Q_SLOTS:
128 virtual int Start() override;
129 virtual int Stop() override;
130 virtual void slotScreenShot();
131
132protected:
133 virtual int SetGlobalParameters(CParameterPlugin *pPara) override;
134
135private Q_SLOTS:
137 void slotValueChanged(int v);
138 void slotShortcutCtlAltDel();
139 void slotShortcutLock();
140
141protected:
142 virtual int Initial() override;
143 virtual int Clean() override;
148 virtual int Load(QSettings &set) override;
153 virtual int Save(QSettings &set) override;
154
155 virtual int InitialMenu();
156
157private:
158 CParameterBase* m_pPara;
159 CBackendThread* m_pThread;
160 CFrmViewer *m_pFrmViewer;
161 CFrmScroll* m_pScroll;
162
163protected:
175 [[nodiscard]] virtual QString ServerName();
176private:
177 QString m_szServerName;
178private Q_SLOTS:
181 virtual void slotSetServerName(const QString &szName);
182
183private:
184 int LoadAdaptWindows();
185
186protected:
187 QAction* m_pMenuZoom;
188 QAction* m_pZoomToWindow;
189 QAction* m_pZoomAspectRatio;
190 QAction* m_pZoomOriginal;
191 QAction* m_pZoomIn;
192 QAction* m_pZoomOut;
193 QSpinBox* m_psbZoomFactor;
194 QAction* m_pScreenShot;
195
196#if HAVE_QT6_RECORD
197protected:
198 QAction* m_pRecord;
199 QAction* m_pRecordPause;
200public Q_SLOTS:
201 void slotRecorderStateChanged(QMediaRecorder::RecorderState state);
202Q_SIGNALS:
206 void sigRecord(bool bRecord);
207 void sigRecordPause(bool bPause);
208private Q_SLOTS:
213 virtual void slotRecord(bool checked);
214#endif
215};
216
The backend thread.
Backend interface.
Definition Backend.h:42
The scroll form class.
Definition FrmScroll.h:17
A widget which displays output image from a CConnectDesktop and sends input keypresses and mouse acti...
Definition FrmViewer.h:48
Remote desktop operate interface.
COperateDesktop(CPlugin *plugin)
virtual Q_INVOKABLE CBackend * InstanceBackend()=0
New CBackend.
Operate interface.
Definition Operate.h:50
virtual const qint16 Version() const =0
Version.
virtual int Load(QSettings &set)
Load parameters.
Definition Operate.cpp:211
virtual int Save(QSettings &set)
Save parameters.
Definition Operate.cpp:218
virtual int Start()=0
Start.
virtual Q_INVOKABLE int Initial()
Initial parameters and resource.
Definition Operate.cpp:225
virtual QWidget * GetViewer()=0
Get Viewer.
virtual Q_INVOKABLE int SetGlobalParameters(CParameterPlugin *pPara)=0
Apply the global parameters of the plug-in.
Definition Operate.cpp:259
virtual Q_INVOKABLE int Clean()
Clean parameters and resource.
Definition Operate.cpp:242
virtual const QString Name()
Name.
Definition Operate.cpp:41
virtual int Stop()=0
Stop.
virtual const QString Description()
Description.
Definition Operate.cpp:46
virtual const QString Id()
Identity.
Definition Operate.cpp:33
The interface of connecter parameters.
Global parameters of plugins.
Plugin interface.
Definition Plugin.h:15