玉兔远程控制 0.1.0-alpha.2
载入中...
搜索中...
未找到
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 Q_INVOKABLE CBackendInstanceBackend ()=0
 新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
 
virtual CParameterBaseGetParameter ()
 Get parameter
 
virtual int SetParameter (CParameterBase *p)
 设置参数指针
 
virtual const QString Id () override
 Identity
 
virtual const QString Name () override
 Name
 
virtual const QString Description () override
 Description
 
virtual const qint16 Version () const override
 Version
 
virtual QWidget * GetViewer () override
 得到显示视图
 
- Public 成员函数 继承自 COperate
 COperate (CPlugin *plugin)
 
virtual int OpenDialogSettings (QWidget *parent=nullptr)
 打开设置对话框
 
virtual QMenu * GetMenu (QWidget *parent=nullptr)
 Get menu
 
virtual CStatsGetStats ()
 
virtual SecurityLevel GetSecurityLevel ()
 
virtual QString GetSecurityLevelString ()
 
virtual QColor GetSecurityLevelColor ()
 
virtual int Start ()=0
 开始
 
virtual int Stop ()=0
 关闭
 
virtual const QString Protocol () const
 Protocol
 
virtual const QIcon Icon () const
 Icon
 
virtual const QString GetTypeName () const
 Get type name
 
virtual QString GetSettingsFile ()
 
virtual int SetSettingsFile (const QString &szFile)
 

Protected 成员函数

virtual int SetGlobalParameters (CParameterPlugin *pPara) override
 应用插件全局参数
 
virtual int Initial () override
 Initial parameters and resource
 
virtual int Clean () override
 Clean parameters and resource
 
virtual int Load (QSettings &set) override
 加载参数
 
virtual 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)
 

Private 成员函数

int LoadAdaptWindows ()
 

Private 属性

CParameterBasem_pPara
 
CBackendThreadm_pThread
 
CFrmViewerm_pFrmViewer
 
CFrmScrollm_pScroll
 
QString m_szServerName
 

额外继承的成员函数

- Public 类型 继承自 COperate
enum class  SecurityLevel {
  No , Secure , NonSecureAuthentication , SecureChannel ,
  Normal = SecureChannel , SecureAuthentication , Risky
}
 
- 信号 继承自 COperate
void sigRunning ()
 开始成功信号。仅由插件触发。
 
void sigStop ()
 通知用户停止。仅由插件触发。 当从插件中需要停止时触发。例如:对端断开连接、重置连接或者连接出错。 当应用接收到此信号后,调用 Stop() 关闭连接。
 
void sigFinished ()
 断开连接成功信号。仅由插件触发
 
void sigViewerFocusIn (QWidget *pView)
 视图获得焦点
 
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 ()
 
- 静态 Public 成员函数 继承自 COperate
static QString GetSecurityLevelString (SecurityLevel level)
 
static QColor GetSecurityLevelColor (SecurityLevel level)
 
- 静态 Protected 成员函数 继承自 COperate
static QObject * createObject (const QString &className, QObject *parent=NULL)
 

详细描述

远程桌面操作接口

默认启动一个后台线程。实现一个后台线程处理一个后端操作。 可与插件接口从 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.cpp191 行定义.

◆ Description()

const QString COperateDesktop::Description ( )
overridevirtual

Description

重载 COperate .

在文件 OperateDesktop.cpp102 行定义.

◆ GetParameter()

CParameterBase * COperateDesktop::GetParameter ( )
virtual

Get parameter

在文件 OperateDesktop.cpp418 行定义.

◆ GetViewer()

QWidget * COperateDesktop::GetViewer ( )
overridevirtual

得到显示视图

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

实现了 COperate.

在文件 OperateDesktop.cpp355 行定义.

◆ Id()

const QString COperateDesktop::Id ( )
overridevirtual

Identity

重载 COperate .

COperateVnc 重载.

在文件 OperateDesktop.cpp40 行定义.

◆ Initial()

int COperateDesktop::Initial ( )
overrideprotectedvirtual

Initial parameters and resource

参见
CManager::CreateOperate

重载 COperate .

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

在文件 OperateDesktop.cpp168 行定义.

◆ InitialMenu()

int COperateDesktop::InitialMenu ( )
protectedvirtual

在文件 OperateDesktop.cpp204 行定义.

◆ InstanceBackend()

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

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

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

◆ Load()

int COperateDesktop::Load ( QSettings &  set)
overrideprotectedvirtual

加载参数

重载 COperate .

在文件 OperateDesktop.cpp488 行定义.

◆ LoadAdaptWindows()

int COperateDesktop::LoadAdaptWindows ( )
private

在文件 OperateDesktop.cpp459 行定义.

◆ Name()

const QString COperateDesktop::Name ( )
overridevirtual

Name

重载 COperate .

在文件 OperateDesktop.cpp85 行定义.

◆ Save()

int COperateDesktop::Save ( QSettings &  set)
overrideprotectedvirtual

保存参数

重载 COperate .

在文件 OperateDesktop.cpp512 行定义.

◆ ServerName()

QString COperateDesktop::ServerName ( )
protectedvirtual

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

返回
返回服务名

COperateVnc 重载.

在文件 OperateDesktop.cpp606 行定义.

◆ SetGlobalParameters()

int COperateDesktop::SetGlobalParameters ( CParameterPlugin pPara)
overrideprotectedvirtual

应用插件全局参数

注解
如果不需要插件的全局参数,请在派生类中重载它,并忽略。

实现了 COperate.

在文件 OperateDesktop.cpp388 行定义.

◆ SetParameter()

int COperateDesktop::SetParameter ( CParameterBase p)
virtual

设置参数指针

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

在文件 OperateDesktop.cpp423 行定义.

◆ slotScreenShot

void COperateDesktop::slotScreenShot ( )
virtualslot

在文件 OperateDesktop.cpp566 行定义.

◆ slotSetServerName

void COperateDesktop::slotSetServerName ( const QString &  szName)
privatevirtualslot
注解
仅由 CBackendDesktop::SetConnect() 使用

在文件 OperateDesktop.cpp627 行定义.

◆ slotShortcutCtlAltDel

void COperateDesktop::slotShortcutCtlAltDel ( )
privateslot

在文件 OperateDesktop.cpp581 行定义.

◆ slotShortcutLock

void COperateDesktop::slotShortcutLock ( )
privateslot

在文件 OperateDesktop.cpp594 行定义.

◆ slotValueChanged

void COperateDesktop::slotValueChanged ( int  v)
privateslot

emit by zoom menu in the class

在文件 OperateDesktop.cpp558 行定义.

◆ Start

int COperateDesktop::Start ( )
overridevirtualslot

在文件 OperateDesktop.cpp360 行定义.

◆ Stop

int COperateDesktop::Stop ( )
overridevirtualslot

在文件 OperateDesktop.cpp375 行定义.

◆ Version()

const qint16 COperateDesktop::Version ( ) const
overridevirtual

Version

实现了 COperate.

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

在文件 OperateDesktop.cpp163 行定义.

类成员变量说明

◆ m_pFrmViewer

CFrmViewer* COperateDesktop::m_pFrmViewer
private

在文件 OperateDesktop.h160 行定义.

◆ m_pMenuZoom

QAction* COperateDesktop::m_pMenuZoom
protected

在文件 OperateDesktop.h187 行定义.

◆ m_pPara

CParameterBase* COperateDesktop::m_pPara
private

在文件 OperateDesktop.h158 行定义.

◆ m_psbZoomFactor

QSpinBox* COperateDesktop::m_psbZoomFactor
protected

在文件 OperateDesktop.h193 行定义.

◆ m_pScreenShot

QAction* COperateDesktop::m_pScreenShot
protected

在文件 OperateDesktop.h194 行定义.

◆ m_pScroll

CFrmScroll* COperateDesktop::m_pScroll
private

在文件 OperateDesktop.h161 行定义.

◆ m_pThread

CBackendThread* COperateDesktop::m_pThread
private

在文件 OperateDesktop.h159 行定义.

◆ m_pZoomAspectRatio

QAction* COperateDesktop::m_pZoomAspectRatio
protected

在文件 OperateDesktop.h189 行定义.

◆ m_pZoomIn

QAction* COperateDesktop::m_pZoomIn
protected

在文件 OperateDesktop.h191 行定义.

◆ m_pZoomOriginal

QAction* COperateDesktop::m_pZoomOriginal
protected

在文件 OperateDesktop.h190 行定义.

◆ m_pZoomOut

QAction* COperateDesktop::m_pZoomOut
protected

在文件 OperateDesktop.h192 行定义.

◆ m_pZoomToWindow

QAction* COperateDesktop::m_pZoomToWindow
protected

在文件 OperateDesktop.h188 行定义.

◆ m_szServerName

QString COperateDesktop::m_szServerName
private

在文件 OperateDesktop.h177 行定义.


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