玉兔远程控制 0.1.0-bate8
载入中...
搜索中...
未找到
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
101 [[nodiscard]] virtual CParameterBase* GetParameter() const;
109 virtual int SetParameter(CParameterBase* p);
110
111 [[nodiscard]] virtual const QString Id() override;
112 [[nodiscard]] virtual const QString Name() override;
113 [[nodiscard]] virtual const QString Description() override;
114 [[nodiscard]] virtual const qint16 Version() const override;
115 [[nodiscard]] virtual QWidget *GetViewer() override;
116
117public Q_SLOTS:
118 virtual int Start() override;
119 virtual int Stop() override;
120 virtual void slotScreenShot();
121
122protected:
132 Q_INVOKABLE virtual CBackend* InstanceBackend() = 0;
138 virtual int SetGlobalParameters(CParameterPlugin *pPara) override;
139
140private Q_SLOTS:
142 void slotValueChanged(int v);
143 void slotShortcutCtlAltDel();
144 void slotShortcutLock();
145
146protected:
147 virtual int Initial() override;
148 virtual int Clean() override;
153 Q_INVOKABLE virtual int Load(QSettings &set) override;
158 Q_INVOKABLE virtual int Save(QSettings &set) override;
159
160 virtual int InitialMenu();
161
162private:
163 CParameterBase* m_pPara;
164 CBackendThread* m_pThread;
165 CFrmViewer *m_pFrmViewer;
166 CFrmScroll* m_pScroll;
167
168protected:
182 [[nodiscard]] virtual QString ServerName();
183private:
184 QString m_szServerName;
185private Q_SLOTS:
188 virtual void slotSetServerName(const QString &szName);
189
190private:
191 int LoadAdaptWindows();
192
193protected:
194 QAction* m_pMenuZoom;
195 QAction* m_pZoomToWindow;
196 QAction* m_pZoomAspectRatio;
197 QAction* m_pZoomOriginal;
198 QAction* m_pZoomIn;
199 QAction* m_pZoomOut;
200 QSpinBox* m_psbZoomFactor;
201 QAction* m_pScreenShot;
202
203#if HAVE_QT6_RECORD
204protected:
205 QAction* m_pRecord;
206 QAction* m_pRecordPause;
207public Q_SLOTS:
208 void slotRecorderStateChanged(QMediaRecorder::RecorderState state);
209Q_SIGNALS:
213 void sigRecord(bool bRecord);
214 void sigRecordPause(bool bPause);
215private Q_SLOTS:
220 virtual void slotRecord(bool checked);
221#endif
222};
223
The backend thread
后端接口。它由协议插件实现。 它默认启动一个定时器来开启一个非 Qt 事件循环(就是普通的循环处理)。 详见: Start()、 slotTimeOut()、 OnProcess() 。 当然,它仍然支...
Definition Backend.h:42
The scroll form class
Definition FrmScroll.h:17
用于显示从 CConnectDesktop 输出的图像,和向 CConnectDesktop 发送键盘、鼠标事件。
Definition FrmViewer.h:48
远程桌面操作接口
COperateDesktop(CPlugin *plugin)
virtual Q_INVOKABLE CBackend * InstanceBackend()=0
新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
操作接口。
Definition Operate.h:51
virtual const qint16 Version() const =0
版本
virtual int Start()=0
开始
virtual Q_INVOKABLE int Initial()
Initial parameters and resource
Definition Operate.cpp:190
virtual QWidget * GetViewer()=0
得到显示视图
virtual Q_INVOKABLE int Load(QSettings &set)=0
加载参数
virtual Q_INVOKABLE int SetGlobalParameters(CParameterPlugin *pPara)=0
应用插件全局参数
Definition Operate.cpp:224
virtual Q_INVOKABLE int Clean()
Clean parameters and resource
Definition Operate.cpp:207
virtual const QString Name()
名称
Definition Operate.cpp:46
virtual int Stop()=0
关闭
virtual const QString Description()
描述
Definition Operate.cpp:51
virtual Q_INVOKABLE int Save(QSettings &set)=0
保存参数
virtual const QString Id()
标识
Definition Operate.cpp:36
连接基础参数接口。包括基本参数(网络参数等)。 所有插件的连接参数都应从此类派生。
插件的全局参数。
插件接口
Definition Plugin.h:15