玉兔远程控制 0.1.0-bate11
载入中...
搜索中...
未找到
CBackendDesktop类 参考abstract

远程桌面接口。它由协议插件实现。 更多...

#include <BackendDesktop.h>

类 CBackendDesktop 继承关系图:
CBackendDesktop 的协作图:

Public 槽

virtual void slotClipBoardChanged ()=0
 当剪切板发生改变时调用
virtual void slotMousePressEvent (QMouseEvent *event, QPoint pos)
virtual void slotMouseReleaseEvent (QMouseEvent *event, QPoint pos)
virtual void slotMouseMoveEvent (QMouseEvent *event, QPoint pos)
virtual void slotWheelEvent (QWheelEvent *event, QPoint pos)
virtual void slotKeyPressEvent (QKeyEvent *event)
virtual void slotKeyReleaseEvent (QKeyEvent *event)
virtual void slotInputMethodEvent (QInputMethodEvent *event)

信号

void sigSetDesktopSize (int width, int height)
void sigServerName (const QString &szName)
void sigUpdateRect (const QRect &r, const QImage &image)
 通知视图,图像更新
void sigUpdateRect (const QImage &image)
 Notify the CFrmView update image
void sigUpdateCursor (const QCursor &cursor)
void sigUpdateCursorPosition (const QPoint &pos)
void sigUpdateLedState (unsigned int state)
void sigSetClipboard (QMimeData *data)
信号 继承自 CBackend
void sigRunning ()
 当插件开始成功后触发。仅由插件触发
void sigStop ()
 需要通知用户停止时触发。仅由插件触发。 当从插件中需要停止时触发。例如:对端断开连接、重置连接或者连接出错。
void sigFinished ()
 停止成功信号。仅由插件触发
void sigError (const int nError, const QString &szError=QString())
 当有错误产生时触发
void sigInformation (const QString &szInfo)
 从后台线程中触发在主线程中显示信息,不阻塞后台线程
void sigShowMessageBox (const QString &szTitle, const QString &szMessage, const QMessageBox::Icon &icon=QMessageBox::Information)
 从后台线程中触发在主线程中显示消息对话框(QMessageBox),不阻塞后台线程
void sigBlockShowMessageBox (const QString &szTitle, const QString &szMessage, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton &nRet, bool &checkBox, QString checkBoxContext=QString())
 阻塞后台线程,并在前台线程中显示消息对话框(QMessageBox)
void sigBlockInputDialog (const QString &szTitle, const QString &szLable, const QString &szMessage, QString &szText)
 阻塞后台线程,并在前台线程中显示输入对话框 (QInputDialog)
void sigBlockShowWidget (const QString &className, int &nRet, void *pContext)
 阻塞后台线程,并在前台线程中显示窗口。
void sigSecurityLevel (CSecurityLevel::Levels level)
 当安全级别改变时触发

Public 成员函数

 CBackendDesktop (COperateDesktop *pOperate=nullptr)
virtual bool event (QEvent *event) override
Public 成员函数 继承自 CBackend
 CBackend (COperate *pOperate=nullptr, bool bStopSignal=true)
 CBackend
virtual int Start ()
 开始。根据 OnInit() 返回值来决定是否开始定时器来支持非 qt 事件
virtual int Stop ()
 停止
virtual int WakeUp ()=0
 唤醒后台线程。

Protected 成员函数

virtual void mousePressEvent (QMouseEvent *event)=0
virtual void mouseReleaseEvent (QMouseEvent *event)=0
virtual void mouseMoveEvent (QMouseEvent *event)=0
virtual void wheelEvent (QWheelEvent *event)=0
virtual void keyPressEvent (QKeyEvent *event)=0
virtual void keyReleaseEvent (QKeyEvent *event)=0
virtual void InputMethodEvent (QInputMethodEvent *event)=0
Protected 成员函数 继承自 CBackend
virtual OnInitReturnValue OnInit ()=0
 初始化
virtual int OnClean ()=0
 清理
virtual int OnProcess ()
 具体操作处理

Private 成员函数

int SetConnect (COperateDesktop *pOperate)
int SetViewer (CFrmViewer *pView)

额外继承的成员函数

Protected 类型 继承自 CBackend
enum class  OnInitReturnValue { Fail = -1 , Success = 0 , UseOnProcess = Success , NotUseOnProcess = 1 }
Protected 槽 继承自 CBackend
virtual void slotTimeOut ()
 一个非 Qt 事件处理,它调用 OnProcess(),并根据其返回值开始新的定时器。 如果是不是一个非 Qt 事件循环(就是普通的循环处理), 可以重载它,或者 OnInit() 返回值 OnInitReturnValue::NotUseOnProcess

详细描述

远程桌面接口。它由协议插件实现。

参见
COperateDesktop CFrmViewer

在文件 BackendDesktop.h37 行定义.

构造及析构函数说明

◆ CBackendDesktop()

CBackendDesktop::CBackendDesktop ( COperateDesktop * pOperate = nullptr)
explicit

在文件 BackendDesktop.cpp45 行定义.

◆ ~CBackendDesktop()

CBackendDesktop::~CBackendDesktop ( )
virtual

在文件 BackendDesktop.cpp120 行定义.

成员函数说明

◆ event()

bool CBackendDesktop::event ( QEvent * event)
overridevirtual

在文件 BackendDesktop.cpp321 行定义.

◆ SetConnect()

int CBackendDesktop::SetConnect ( COperateDesktop * pOperate)
private

在文件 BackendDesktop.cpp125 行定义.

◆ SetViewer()

int CBackendDesktop::SetViewer ( CFrmViewer * pView)
private

因为连接可能是在另一个线程中的非Qt事件处理, 它可能会阻塞线程,那会导致键盘、鼠标事件延迟, 所以这里用 Qt::DirectConnection

在文件 BackendDesktop.cpp161 行定义.

◆ sigUpdateRect [1/2]

void CBackendDesktop::sigUpdateRect ( const QImage & image)
signal

Notify the CFrmView update image

参数
image

◆ sigUpdateRect [2/2]

void CBackendDesktop::sigUpdateRect ( const QRect & r,
const QImage & image )
signal

通知视图,图像更新

参数
r更新图像的矩形
image包含更新矩形的图像

◆ slotClipBoardChanged

virtual void CBackendDesktop::slotClipBoardChanged ( )
pure virtualslot

当剪切板发生改变时调用

CBackendLibVNCServer 内被实现.

◆ slotInputMethodEvent

void CBackendDesktop::slotInputMethodEvent ( QInputMethodEvent * event)
virtualslot

在文件 BackendDesktop.cpp311 行定义.

◆ slotKeyPressEvent

void CBackendDesktop::slotKeyPressEvent ( QKeyEvent * event)
virtualslot

在文件 BackendDesktop.cpp295 行定义.

◆ slotKeyReleaseEvent

void CBackendDesktop::slotKeyReleaseEvent ( QKeyEvent * event)
virtualslot

在文件 BackendDesktop.cpp303 行定义.

◆ slotMouseMoveEvent

void CBackendDesktop::slotMouseMoveEvent ( QMouseEvent * event,
QPoint pos )
virtualslot

在文件 BackendDesktop.cpp256 行定义.

◆ slotMousePressEvent

void CBackendDesktop::slotMousePressEvent ( QMouseEvent * event,
QPoint pos )
virtualslot

在文件 BackendDesktop.cpp269 行定义.

◆ slotMouseReleaseEvent

void CBackendDesktop::slotMouseReleaseEvent ( QMouseEvent * event,
QPoint pos )
virtualslot

在文件 BackendDesktop.cpp282 行定义.

◆ slotWheelEvent

void CBackendDesktop::slotWheelEvent ( QWheelEvent * event,
QPoint pos )
virtualslot

在文件 BackendDesktop.cpp241 行定义.


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