玉兔远程控制 0.1.0-bate8
载入中...
搜索中...
未找到
Public 槽 | Public 成员函数 | Protected 成员函数 | Protected 属性 | Private 槽 | Private 成员函数 | Private 属性 | 所有成员列表
COperateDesktop类 参考abstract

远程桌面操作接口 更多...

#include <OperateDesktop.h>

类 COperateDesktop 继承关系图:
Inheritance graph
[图例]
COperateDesktop 的协作图:
Collaboration graph
[图例]

Public 槽

virtual int Start () override
 
virtual int Stop () override
 
virtual void slotScreenShot ()
 

Public 成员函数

 COperateDesktop (CPlugin *plugin)
 
virtual CParameterBaseGetParameter () const
 Get parameter
 
virtual int SetParameter (CParameterBase *p)
 设置参数指针
 
virtual const QString Id () override
 标识
 
virtual const QString Name () override
 [The name of the desktop operate]
 
virtual const QString Description () override
 [The name of the desktop operate]
 
virtual const qint16 Version () const override
 [The description of the desktop operate]
 
virtual QWidget * GetViewer () override
 得到显示视图
 
- Public 成员函数 继承自 COperate
 COperate (CPlugin *plugin)
 
virtual int OpenDialogSettings (QWidget *parent=nullptr)
 打开设置对话框
 
virtual QMenu * GetMenu (QWidget *parent=nullptr)
 Get menu
 
virtual const QString Protocol () const
 协议
 
virtual const QIcon Icon () const
 图标
 
virtual const QString GetTypeName () const
 类型名
 
virtual QString GetSettingsFile ()
 
virtual int SetSettingsFile (const QString &szFile)
 
virtual CStatsGetStats ()
 得到统计信息。如果有,其派生类则需要重载此函数提供统计信息。
 
virtual CSecurityLevel::Levels GetSecurityLevel () const
 Get Security Level
 
virtual int Start ()=0
 开始
 
virtual int Stop ()=0
 关闭
 

Protected 成员函数

virtual Q_INVOKABLE CBackendInstanceBackend ()=0
 新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
 
virtual int SetGlobalParameters (CParameterPlugin *pPara) override
 Set Global Parameters
 
virtual int Initial () override
 Initial parameters and resource
 
virtual int Clean () override
 Clean parameters and resource
 
virtual Q_INVOKABLE int Load (QSettings &set) override
 加载参数
 
virtual Q_INVOKABLE int Save (QSettings &set) override
 保存参数
 
virtual int InitialMenu ()
 
virtual QString ServerName ()
 当前连接服务名(远程桌面的名称,如果没有,则是 IP:端口)。例如:服务名或 IP:端口
 
- Protected 成员函数 继承自 COperate
Q_INVOKABLE CPluginGetPlugin () const
 Get plugin
 
virtual Q_INVOKABLE int Load (QString szFile=QString())
 从文件中加载参数
 
virtual Q_INVOKABLE int Save (QString szFile=QString())
 保存参数到文件中
 

Protected 属性

QAction * m_pMenuZoom
 
QAction * m_pZoomToWindow
 
QAction * m_pZoomAspectRatio
 
QAction * m_pZoomOriginal
 
QAction * m_pZoomIn
 
QAction * m_pZoomOut
 
QSpinBox * m_psbZoomFactor
 
QAction * m_pScreenShot
 
- Protected 属性 继承自 COperate
QMenu m_Menu
 
QAction * m_pActionSettings
 

Private 槽

void slotValueChanged (int v)
 emit by zoom menu in the class
 
void slotShortcutCtlAltDel ()
 
void slotShortcutLock ()
 
virtual void slotSetServerName (const QString &szName)
 [Get server name]
 

Private 成员函数

int LoadAdaptWindows ()
 

Private 属性

CParameterBasem_pPara
 
CBackendThreadm_pThread
 
CFrmViewerm_pFrmViewer
 
CFrmScrollm_pScroll
 
QString m_szServerName
 

额外继承的成员函数

- 信号 继承自 COperate
void sigViewerFocusIn (QWidget *pView)
 视图获得焦点
 
void sigFullScreen (bool bFullScreen)
 全屏。由操作触发
 
void sigUpdateName (const QString &szName)
 
void sigUpdateParameters (COperate *pOperate)
 更新参数,通知应用程序保存或显示参数
 
void sigError (const int nError, const QString &szError)
 当有错误产生时触发。
 
void sigInformation (const QString &szInfo)
 中主窗口中显示信息
 
void sigShowMessageBox (const QString &title, const QString &message, const QMessageBox::Icon &icon=QMessageBox::Information)
 从后台线程中触发在主线程中显示消息对话框(QMessageBox),不阻塞后台线程
 
void sigClipBoardChanged ()
 
void sigSecurityLevel ()
 当安全级别改变时触发。其派生类不要直接触发,需要使用 slotSetSecurityLevel 触发
 
void sigRunning ()
 开始成功信号。仅由插件触发。
 
void sigStop ()
 通知用户停止。仅由插件触发。 当从插件中需要停止时触发。例如:对端断开连接、重置连接或者连接出错。 当应用接收到此信号后,调用 Stop() 关闭连接。
 
void sigFinished ()
 断开连接成功信号。仅由插件触发
 
- Protected 槽 继承自 COperate
void slotUpdateName ()
 
void slotSetSecurityLevel (CSecurityLevel::Levels level)
 
- 静态 Protected 成员函数 继承自 COperate
static QObject * createObject (const QString &className, QObject *parent=NULL)
 Create Object
 

详细描述

远程桌面操作接口

默认启动一个后台线程。实现一个后台线程处理一个后端操作。 可与插件接口从 CPlugin 派生的插件一起使用,用于操作是阻塞模型的。

原理:在 Start() 中启动一个后台线程 CBackendThread 。 在线程中调用 InstanceBackend() 实例化 CBackend , 并在 CBackend::Start() 启动定时器, 此定时器在后台线程中调用,通过对定时器的操作,实现一个非 Qt 事件循环(可能会阻塞),详见 CBackend 。 并且 CBackend 仍然支持 Qt 事件(QObject 的 信号 - 槽 机制)(非阻塞)。

序列图:

注解
此接口仅由插件实现。
此接口实例运行在主线程(UI线程)中。
具体的插件需要实现下面接口:
  1. 实现 InstanceBackend() ,生成连接对象。连接对象运行在后台线程中。
参见
CBackend CBackendThread COperate CPlugin CFrmViewer

在文件 OperateDesktop.h68 行定义.

构造及析构函数说明

◆ COperateDesktop()

COperateDesktop::COperateDesktop ( CPlugin plugin)
explicit
参数
plugin此指针必须是相应的 CPlugin 派生类的实例指针
注解
如果需要插件的全局参数(CParameterPlugin) 请在其派生类的构造函数(或者 Initial() )中实例化参数, 并在 Initial() 调用 COperateDesktop::SetParameter 设置参数指针。 如果参数不需要 CParameterClient , 那请在其派生类重载 COperate::SetGlobalParameters 并忽略它。
参见
CManager::CreateConnecter SetGlobalParameters SetParameter CParameterOperate CParameterClient

◆ ~COperateDesktop()

COperateDesktop::~COperateDesktop ( )
virtual

在文件 OperateDesktop.cpp35 行定义.

成员函数说明

◆ Clean()

int COperateDesktop::Clean ( )
overrideprotectedvirtual

Clean parameters and resource

参见
CManager::DeleteOperate

重载 COperate .

COperateFreeRDP, COperateLibVNCServer, COperatePlayer , 以及 COperateVnc 重载.

在文件 OperateDesktop.cpp212 行定义.

◆ Description()

const QString COperateDesktop::Description ( )
overridevirtual

[The name of the desktop operate]

[The description of the desktop operate]

重载 COperate .

在文件 OperateDesktop.cpp117 行定义.

◆ GetParameter()

CParameterBase * COperateDesktop::GetParameter ( ) const
virtual

Get parameter

[Desktop set global paramets]

在文件 OperateDesktop.cpp446 行定义.

◆ GetViewer()

QWidget * COperateDesktop::GetViewer ( )
overridevirtual

得到显示视图

返回
QWidget*: 视图指针。它的所有者是本类或其派生类的实例
注解
如果自己实现视图,则需要在开始时禁用视图,在 sigRunning 后允许视图。
参见
sigRunning CFrmViewer::CFrmViewer

实现了 COperate.

在文件 OperateDesktop.cpp376 行定义.

◆ Id()

const QString COperateDesktop::Id ( )
overridevirtual

标识

重载 COperate .

COperateVnc 重载.

在文件 OperateDesktop.cpp40 行定义.

◆ Initial()

int COperateDesktop::Initial ( )
overrideprotectedvirtual

Initial parameters and resource

注解
Call before Load()
参见
CManager::CreateOperate Load

重载 COperate .

COperateFreeRDP, COperateLibVNCServer, COperatePlayer , 以及 COperateVnc 重载.

在文件 OperateDesktop.cpp189 行定义.

◆ InitialMenu()

int COperateDesktop::InitialMenu ( )
protectedvirtual

在文件 OperateDesktop.cpp225 行定义.

◆ InstanceBackend()

virtual Q_INVOKABLE CBackend * COperateDesktop::InstanceBackend ( )
protectedpure virtual

新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。

COperateFreeRDP, COperateLibVNCServer, COperatePlayer , 以及 COperateVnc 内被实现.

◆ Load()

int COperateDesktop::Load ( QSettings &  set)
overrideprotectedvirtual

加载参数

实现了 COperate.

在文件 OperateDesktop.cpp516 行定义.

◆ LoadAdaptWindows()

int COperateDesktop::LoadAdaptWindows ( )
private

在文件 OperateDesktop.cpp487 行定义.

◆ Name()

const QString COperateDesktop::Name ( )
overridevirtual

[The name of the desktop operate]

重载 COperate .

在文件 OperateDesktop.cpp86 行定义.

◆ Save()

int COperateDesktop::Save ( QSettings &  set)
overrideprotectedvirtual

保存参数

实现了 COperate.

在文件 OperateDesktop.cpp539 行定义.

◆ ServerName()

QString COperateDesktop::ServerName ( )
protectedvirtual

当前连接服务名(远程桌面的名称,如果没有,则是 IP:端口)。例如:服务名或 IP:端口

[Get server name]

返回
返回服务名
参见
slotSetServerName

COperateVnc 重载.

在文件 OperateDesktop.cpp632 行定义.

◆ SetGlobalParameters()

int COperateDesktop::SetGlobalParameters ( CParameterPlugin pPara)
overrideprotectedvirtual

Set Global Parameters

[Desktop set global paramets]

参数
pPara
返回

实现了 COperate.

在文件 OperateDesktop.cpp410 行定义.

◆ SetParameter()

int COperateDesktop::SetParameter ( CParameterBase p)
virtual

设置参数指针

注解
先建立参数,然后构造函数或 Initial() 中调用此函数设置参数指针

在文件 OperateDesktop.cpp451 行定义.

◆ slotScreenShot

void COperateDesktop::slotScreenShot ( )
virtualslot

在文件 OperateDesktop.cpp592 行定义.

◆ slotSetServerName

void COperateDesktop::slotSetServerName ( const QString &  szName)
privatevirtualslot

[Get server name]

注解
仅由 CBackendDesktop::SetConnect() 使用

在文件 OperateDesktop.cpp658 行定义.

◆ slotShortcutCtlAltDel

void COperateDesktop::slotShortcutCtlAltDel ( )
privateslot

在文件 OperateDesktop.cpp607 行定义.

◆ slotShortcutLock

void COperateDesktop::slotShortcutLock ( )
privateslot

在文件 OperateDesktop.cpp620 行定义.

◆ slotValueChanged

void COperateDesktop::slotValueChanged ( int  v)
privateslot

emit by zoom menu in the class

在文件 OperateDesktop.cpp584 行定义.

◆ Start

int COperateDesktop::Start ( )
overridevirtualslot

在文件 OperateDesktop.cpp381 行定义.

◆ Stop

int COperateDesktop::Stop ( )
overridevirtualslot

在文件 OperateDesktop.cpp396 行定义.

◆ Version()

const qint16 COperateDesktop::Version ( ) const
overridevirtual

[The description of the desktop operate]

实现了 COperate.

COperateFreeRDP, COperateLibVNCServer, COperatePlayer , 以及 COperateVnc 重载.

在文件 OperateDesktop.cpp184 行定义.

类成员变量说明

◆ m_pFrmViewer

CFrmViewer* COperateDesktop::m_pFrmViewer
private

在文件 OperateDesktop.h165 行定义.

◆ m_pMenuZoom

QAction* COperateDesktop::m_pMenuZoom
protected

在文件 OperateDesktop.h194 行定义.

◆ m_pPara

CParameterBase* COperateDesktop::m_pPara
private

在文件 OperateDesktop.h163 行定义.

◆ m_psbZoomFactor

QSpinBox* COperateDesktop::m_psbZoomFactor
protected

在文件 OperateDesktop.h200 行定义.

◆ m_pScreenShot

QAction* COperateDesktop::m_pScreenShot
protected

在文件 OperateDesktop.h201 行定义.

◆ m_pScroll

CFrmScroll* COperateDesktop::m_pScroll
private

在文件 OperateDesktop.h166 行定义.

◆ m_pThread

CBackendThread* COperateDesktop::m_pThread
private

在文件 OperateDesktop.h164 行定义.

◆ m_pZoomAspectRatio

QAction* COperateDesktop::m_pZoomAspectRatio
protected

在文件 OperateDesktop.h196 行定义.

◆ m_pZoomIn

QAction* COperateDesktop::m_pZoomIn
protected

在文件 OperateDesktop.h198 行定义.

◆ m_pZoomOriginal

QAction* COperateDesktop::m_pZoomOriginal
protected

在文件 OperateDesktop.h197 行定义.

◆ m_pZoomOut

QAction* COperateDesktop::m_pZoomOut
protected

在文件 OperateDesktop.h199 行定义.

◆ m_pZoomToWindow

QAction* COperateDesktop::m_pZoomToWindow
protected

在文件 OperateDesktop.h195 行定义.

◆ m_szServerName

QString COperateDesktop::m_szServerName
private

在文件 OperateDesktop.h184 行定义.


该类的文档由以下文件生成: