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

终端操作接口 更多...

#include <OperateTerminal.h>

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

Public 槽

virtual int Start () override
virtual int Stop () override

Public 成员函数

 COperateTerminal (CPlugin *parent)
virtual Q_INVOKABLE CBackend * InstanceBackend ()=0
 新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
virtual CParameterTerminalBase * GetParameter () const
 Get parameters
virtual int SetParameter (CParameterTerminalBase *pPara)
 设置参数指针
virtual const QString Id () override
 标识
virtual const QString Name () override
 名称
virtual const QString Description () override
 描述
virtual const qint16 Version () const override
 版本
CStats * GetStats () override
 得到统计信息。如果有,其派生类则需要重载此函数提供统计信息。
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 CSecurityLevel::Levels GetSecurityLevel () const
 Get Security Level
virtual int Start ()=0
 开始
virtual int Stop ()=0
 关闭

静态 Public 成员函数

static const QString Details ()

Protected 槽

void slotUpdateParameter (COperate *pOperate)
Protected 槽 继承自 COperate
void slotUpdateName ()
void slotSetSecurityLevel (CSecurityLevel::Levels level)

Protected 成员函数

virtual int Initial () override
 Initial parameters and resource
virtual int Clean () override
 Clean parameters and resource
virtual int SetPluginParameters (CParameterPlugin *pPara) override
 Set Global Parameters
int WriteTerminal (const char *buf, int len)
virtual int Load (QSettings &set) override
 加载参数
virtual int Save (QSettings &set) override
 保存参数
virtual void SetShotcuts (bool bEnable=true)
Protected 成员函数 继承自 COperate
Q_INVOKABLE CPlugin * GetPlugin () const
 Get plugin
virtual Q_INVOKABLE int Load (QString szFile=QString())
 从文件中加载参数
virtual Q_INVOKABLE int Save (QString szFile=QString())
 保存参数到文件中

Protected 属性

QTermWidget * m_pTerminal
CBackendThread * m_pThread
QAction * m_pActionOpenWithSystem
QAction * m_pActionFind
Protected 属性 继承自 COperate
QMenu m_Menu
QAction * m_pActionSettings

Private 槽

void slotZoomReset ()
void slotCustomContextMenu (const QPoint &pos)
void slotActivateUrl (const QUrl &url, bool fromContextMenu)
void slotTermKeyPressed (QKeyEvent *e)
void slotFocusIn ()
void slotFocusOut ()

Private 属性

CParameterTerminalBase * m_pParameters
QAction * m_pEditCopy
QAction * m_pEditPaste
QAction * m_pZoomIn
QAction * m_pZoomOut
QAction * m_pZoomOriginal
QAction * m_pClear
CStats m_Stats

额外继承的成员函数

信号 继承自 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
static QObject * createObject (const QString &className, QObject *parent=NULL)
 Create Object

详细描述

终端操作接口

在文件 OperateTerminal.h 第 25 行定义.

构造及析构函数说明

◆ ~COperateTerminal()

COperateTerminal::~COperateTerminal ( )
overridevirtual

在文件 OperateTerminal.cpp 第 82 行定义.

成员函数说明

◆ Clean()

int COperateTerminal::Clean ( )
overrideprotectedvirtual

Clean parameters and resource

参见
CManager::DeleteOperate

重载 COperate .

被 COperateSSH 重载.

在文件 OperateTerminal.cpp 第 245 行定义.

◆ Description()

const QString COperateTerminal::Description ( )
nodiscardoverridevirtual

描述

{
QString szDescription;
if(!Name().isEmpty())
szDescription = tr("Name: ") + Name() + "\n";
if(!GetTypeName().isEmpty())
szDescription += tr("Type: ") + GetTypeName() + "\n";
if(!Protocol().isEmpty()) {
szDescription += tr("Protocol: ") + Protocol();
#ifdef DEBUG
if(!GetPlugin()->DisplayName().isEmpty())
szDescription += " - " + GetPlugin()->DisplayName();
#endif
szDescription += "\n";
}
if(!ServerName().isEmpty())
szDescription += tr("Server name: ") + ServerName() + "\n";
if(GetParameter()) {
if(!GetParameter()->m_Net.GetHost().isEmpty())
szDescription += tr("Server address: ") + GetParameter()->m_Net.GetHost() + ":"
+ QString::number(GetParameter()->m_Net.GetPort()) + "\n";
QString szProxy(tr("Proxy") + " ");
auto &proxy = GetParameter()->m_Proxy;
switch(proxy.GetUsedType()) {
case CParameterProxy::TYPE::SSHTunnel:
{
auto &sshNet = proxy.m_SSH.m_Net;
szProxy += "(" + tr("SSH tunnel") + "): " + sshNet.GetHost() + ":"
+ QString::number(sshNet.GetPort());
break;
}
case CParameterProxy::TYPE::SockesV5:
{
auto &sockesV5 = proxy.m_SockesV5;
szProxy += "(" + tr("Sockes v5") + "): " + sockesV5.GetHost() + ":"
+ QString::number(sockesV5.GetPort());
break;
}
default:
szProxy.clear();
break;
}
if(!szProxy.isEmpty())
szDescription += szProxy + "\n";
}
CSecurityLevel sl(GetSecurityLevel());
if(!(GetSecurityLevel() & CSecurityLevel::Level::No)) {
szDescription += tr("Security level: ");
if(!sl.GetUnicodeIcon().isEmpty())
szDescription += sl.GetUnicodeIcon() + " ";
szDescription += sl.GetString() + "\n";
}
if(!GetPlugin()->Description().isEmpty())
szDescription += tr("Description: ") + GetPlugin()->Description();
return szDescription;
}
参见
COperateDesktop::Description()

重载 COperate .

被 COperateRawStream, COperateSerialPort, COperateSSH, COperateTelnet , 以及 CTerminal 重载.

在文件 OperateTerminal.cpp 第 116 行定义.

◆ Details()

const QString COperateTerminal::Details ( )
staticnodiscard

在文件 OperateTerminal.cpp 第 153 行定义.

◆ GetParameter()

CParameterTerminalBase * COperateTerminal::GetParameter ( ) const
nodiscardvirtual

Get parameters

在文件 OperateTerminal.cpp 第 279 行定义.

◆ GetStats()

CStats * COperateTerminal::GetStats ( )
nodiscardoverridevirtual

得到统计信息。如果有,其派生类则需要重载此函数提供统计信息。

重载 COperate .

被 CTerminal 重载.

在文件 OperateTerminal.cpp 第 169 行定义.

◆ GetViewer()

QWidget * COperateTerminal::GetViewer ( )
nodiscardoverridevirtual

得到显示视图

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

实现了 COperate.

在文件 OperateTerminal.cpp 第 164 行定义.

◆ Id()

const QString COperateTerminal::Id ( )
nodiscardoverridevirtual

标识

重载 COperate .

被 COperateRawStream, COperateSSH , 以及 COperateTelnet 重载.

在文件 OperateTerminal.cpp 第 92 行定义.

◆ Initial()

int COperateTerminal::Initial ( )
overrideprotectedvirtual

Initial parameters and resource

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

重载 COperate .

被 COperateSSH , 以及 CTerminal 重载.

在文件 OperateTerminal.cpp 第 194 行定义.

◆ InstanceBackend()

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

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

在 COperateRawStream, COperateSerialPort, COperateSSH, COperateTelnet , 以及 CTerminal 内被实现.

◆ Load()

int COperateTerminal::Load ( QSettings & set)
overrideprotectedvirtual

加载参数

实现了 COperate.

在文件 OperateTerminal.cpp 第 174 行定义.

◆ Name()

const QString COperateTerminal::Name ( )
nodiscardoverridevirtual

名称

const QString COperateDesktop::Name()
{
QString szName;
// Show the name of parameter
if(GetParameter() && !(GetParameter()->GetName().isEmpty()))
szName += GetParameter()->GetName();
else {
// Show the prefix of protocol
if(GetParameter() && GetParameter()->GetPluginParameters()
&& (GetParameter()->GetPluginParameters()->GetNameStyles()
& CParameterPlugin::NameStyle::Protocol)
&& !Protocol().isEmpty())
szName = Protocol() + ": ";
// Show the server name
szName += ServerName();
}
if(szName.isEmpty())
szName = GetPlugin()->Name();
// Show the prefix of security level
QString szSecurityLevel;
CSecurityLevel sl(GetSecurityLevel());
if((GetParameter()->GetPluginParameters()->GetNameStyles()
& CParameterPlugin::NameStyle::SecurityLevel)
&& !(GetSecurityLevel() & CSecurityLevel::Level::No)
&& !sl.GetUnicodeIcon().isEmpty())
szSecurityLevel = sl.GetUnicodeIcon().left(2);
return szSecurityLevel + szName;
}
参见
COperateDesktop::Name()

重载 COperate .

被 COperateRawStream, COperateSerialPort, COperateSSH, COperateTelnet , 以及 CTerminal 重载.

在文件 OperateTerminal.cpp 第 106 行定义.

◆ Save()

int COperateTerminal::Save ( QSettings & set)
overrideprotectedvirtual

保存参数

实现了 COperate.

在文件 OperateTerminal.cpp 第 184 行定义.

◆ SetParameter()

int COperateTerminal::SetParameter ( CParameterTerminalBase * pPara)
virtual

设置参数指针

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

被 CTerminal 重载.

在文件 OperateTerminal.cpp 第 284 行定义.

◆ SetPluginParameters()

int COperateTerminal::SetPluginParameters ( CParameterPlugin * pPara)
overrideprotectedvirtual

Set Global Parameters

参数
pPara
返回

实现了 COperate.

在文件 OperateTerminal.cpp 第 380 行定义.

◆ SetShotcuts()

void COperateTerminal::SetShotcuts ( bool bEnable = true)
protectedvirtual

在文件 OperateTerminal.cpp 第 426 行定义.

◆ slotActivateUrl

void COperateTerminal::slotActivateUrl ( const QUrl & url,
bool fromContextMenu )
privateslot

在文件 OperateTerminal.cpp 第 357 行定义.

◆ slotCustomContextMenu

void COperateTerminal::slotCustomContextMenu ( const QPoint & pos)
privateslot

在文件 OperateTerminal.cpp 第 346 行定义.

◆ slotFocusIn

void COperateTerminal::slotFocusIn ( )
privateslot

在文件 OperateTerminal.cpp 第 369 行定义.

◆ slotFocusOut

void COperateTerminal::slotFocusOut ( )
privateslot

在文件 OperateTerminal.cpp 第 375 行定义.

◆ slotTermKeyPressed

void COperateTerminal::slotTermKeyPressed ( QKeyEvent * e)
privateslot

在文件 OperateTerminal.cpp 第 364 行定义.

◆ slotUpdateParameter

void COperateTerminal::slotUpdateParameter ( COperate * pOperate)
protectedslot

在文件 OperateTerminal.cpp 第 307 行定义.

◆ slotZoomReset

void COperateTerminal::slotZoomReset ( )
privateslot

在文件 OperateTerminal.cpp 第 338 行定义.

◆ Start

int COperateTerminal::Start ( )
overridevirtualslot

在文件 OperateTerminal.cpp 第 252 行定义.

◆ Stop

int COperateTerminal::Stop ( )
overridevirtualslot

在文件 OperateTerminal.cpp 第 266 行定义.

◆ Version()

const qint16 COperateTerminal::Version ( ) const
nodiscardoverridevirtual

版本

实现了 COperate.

在文件 OperateTerminal.cpp 第 148 行定义.

◆ WriteTerminal()

int COperateTerminal::WriteTerminal ( const char * buf,
int len )
protected

在文件 OperateTerminal.cpp 第 413 行定义.

类成员变量说明

◆ m_pActionFind

QAction* COperateTerminal::m_pActionFind
protected

在文件 OperateTerminal.h 第 95 行定义.

◆ m_pActionOpenWithSystem

QAction* COperateTerminal::m_pActionOpenWithSystem
protected

在文件 OperateTerminal.h 第 94 行定义.

◆ m_pClear

QAction* COperateTerminal::m_pClear
private

在文件 OperateTerminal.h 第 105 行定义.

◆ m_pEditCopy

QAction* COperateTerminal::m_pEditCopy
private

在文件 OperateTerminal.h 第 100 行定义.

◆ m_pEditPaste

QAction* COperateTerminal::m_pEditPaste
private

在文件 OperateTerminal.h 第 101 行定义.

◆ m_pParameters

CParameterTerminalBase* COperateTerminal::m_pParameters
private

在文件 OperateTerminal.h 第 98 行定义.

◆ m_pTerminal

QTermWidget* COperateTerminal::m_pTerminal
protected

在文件 OperateTerminal.h 第 92 行定义.

◆ m_pThread

CBackendThread* COperateTerminal::m_pThread
protected

在文件 OperateTerminal.h 第 93 行定义.

◆ m_pZoomIn

QAction* COperateTerminal::m_pZoomIn
private

在文件 OperateTerminal.h 第 102 行定义.

◆ m_pZoomOriginal

QAction* COperateTerminal::m_pZoomOriginal
private

在文件 OperateTerminal.h 第 104 行定义.

◆ m_pZoomOut

QAction* COperateTerminal::m_pZoomOut
private

在文件 OperateTerminal.h 第 103 行定义.

◆ m_Stats

CStats COperateTerminal::m_Stats
private

在文件 OperateTerminal.h 第 107 行定义.


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