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

参数界面接口 更多...

#include <ParameterUI.h>

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

Public 槽

virtual void slotSetParameter (CParameter *pParameter)
 [override functions]
 
virtual void slotAccept ()
 接受参数。不调用 CheckValidity
 

Public 成员函数

 CParameterUI (QWidget *parent=nullptr)
 
virtual int SetParameter (CParameter *pParameter)=0
 [override functions]
 
virtual Q_INVOKABLE bool CheckValidity (bool validity=false)
 检查参数的有效性
 
virtual int Accept ()=0
 接受参数。如果需要,可先调用 CheckValidity
 

详细描述

参数界面接口

参见
CParameter

在文件 ParameterUI.h14 行定义.

构造及析构函数说明

◆ CParameterUI()

CParameterUI::CParameterUI ( QWidget *  parent = nullptr)
explicit

在文件 ParameterUI.cpp5 行定义.

成员函数说明

◆ Accept()

virtual int CParameterUI::Accept ( )
pure virtual

接受参数。如果需要,可先调用 CheckValidity

void CDlgSetFreeRDP::on_pbOk_clicked()
{
int nRet = 0;
if(!ui->wNet->CheckValidity(true)) {
ui->tabWidget->setCurrentIndex(0);
return;
}
if(!m_pProxyUI->CheckValidity(true)) {
ui->tabWidget->setCurrentWidget(m_pProxyUI);
return;
}
if(!m_pRecordUI->CheckValidity(true)) {
ui->tabWidget->setCurrentWidget(m_pRecordUI);
return;
}
m_pSettings->SetName(ui->leName->text());
// Server
m_pSettings->SetDomain(ui->leDomain->text());
nRet = ui->wNet->Accept();
if(nRet) return;
nRet = m_pProxyUI->Accept();
if(nRet) return;
nRet = m_pRecordUI->Accept();
if(nRet) return;
m_pSettings->SetOnlyView(ui->cbOnlyView->isChecked());
m_pSettings->SetClipboard(ui->cbClipboard->isChecked());
m_pSettings->SetShowServerName(ui->cbShowServerName->isChecked());
// Display
m_pSettings->SetUseMultimon(ui->cbAllMonitor->isChecked());
QString szSize = ui->cbDesktopSize->currentText();
int index = szSize.indexOf("×");
if(-1 < index)
{
UINT32 width = szSize.left(index).toInt();
UINT32 height = szSize.right(szSize.length() - index - 1).toInt();
m_pSettings->SetDesktopWidth(width);
m_pSettings->SetDesktopHeight(height);
}
m_pSettings->SetColorDepth(ui->cbColorDepth->currentData().toInt());
m_pSettings->SetReconnectInterval(ui->sbReconnect->value());
// Redirection
m_pSettings->SetRedirectionPrinter(ui->cbPrinter->isChecked());
m_pSettings->SetEnableLocalInputMethod(ui->cbEnableLocalInputMethod->isChecked());
if(HasAudioOutput()) {
CParameterFreeRDP::RedirecionSoundType tRdirectionSound
= CParameterFreeRDP::RedirecionSoundType::Disable;
if(ui->rbAudioDisable->isChecked())
tRdirectionSound = CParameterFreeRDP::RedirecionSoundType::Disable;
else if(ui->rbAudioLocal->isChecked())
tRdirectionSound = CParameterFreeRDP::RedirecionSoundType::Local;
else if(ui->rbAudioRemote->isChecked())
tRdirectionSound = CParameterFreeRDP::RedirecionSoundType::Remote;
m_pSettings->SetRedirectionSound(tRdirectionSound);
} else {
m_pSettings->SetRedirectionSound(
CParameterFreeRDP::RedirecionSoundType::Disable);
}
m_pSettings->SetRedirectionSoundParameters(ui->leRdpSnd->text());
if(HasAudioInput())
m_pSettings->SetRedirectionMicrophone(ui->cbAudin->isChecked());
else
m_pSettings->SetRedirectionMicrophone(false);
m_pSettings->SetRedirectionMicrophoneParameters(ui->leAudin->text());
QStringList lstDrives;
//获取选中的行,默认获取选中行的第一列数据(0),列的索引值和上面一样0、1、2、3......
QModelIndexList selected = ui->tvDrive->selectionModel()->selectedRows(0);
QList<QModelIndex>::iterator it;
QModelIndex modelIndex;
QString szPath;
for (it = selected.begin(); it != selected.end(); ++it)
{
modelIndex = *it;
szPath = m_pFileModel->filePath(modelIndex);
if(!szPath.isEmpty())
lstDrives.append(szPath);
}
m_pSettings->SetRedirectionDrives(lstDrives);
// Security
m_pSettings->SetNegotiateSecurityLayer(ui->cbSecurityEnable->isChecked());
uint security = 0;
if(ui->cbSecurityRDP->isChecked())
security |= CParameterFreeRDP::Security::RDP;
if(ui->cbSecurityTls->isChecked())
security |= CParameterFreeRDP::Security::TLS;
if(ui->cbSecurityNLA->isChecked())
security |= CParameterFreeRDP::Security::NLA;
if(ui->cbSecurityNlaExt->isChecked())
security |= CParameterFreeRDP::Security::NLA_Ext;
if(ui->cbSecurityRDSTLS->isChecked())
security |= CParameterFreeRDP::Security::RDSTLS;
if(ui->cbSecurityRDSAAD->isChecked())
security |= CParameterFreeRDP::Security::RDSAAD;
m_pSettings->SetSecurity((CParameterFreeRDP::Security)security);
// Tls version
if(ui->rbTls1_0->isChecked())
m_pSettings->SetTlsVersion(TLS1_VERSION);
else if(ui->rbTls1_1->isChecked())
m_pSettings->SetTlsVersion(TLS1_1_VERSION);
else if(ui->rbTls1_2->isChecked())
m_pSettings->SetTlsVersion(TLS1_2_VERSION);
else if(ui->rbTls1_3->isChecked())
m_pSettings->SetTlsVersion(TLS1_3_VERSION);
// Connect type
m_pSettings->SetConnectType(ui->cbConnectType->currentData().toUInt());
// Performance flags
UINT32 performanceFlags = 0;
if(!ui->cbDesktopBackground->isChecked())
performanceFlags |= PERF_DISABLE_WALLPAPER;
if(!ui->cbWindowDrag->isChecked())
performanceFlags |= PERF_DISABLE_FULLWINDOWDRAG;
if(!ui->cbMenuAnims->isChecked())
performanceFlags |= PERF_DISABLE_MENUANIMATIONS;
if(!ui->cbThemes->isChecked())
performanceFlags |= PERF_DISABLE_THEMING;
if(ui->cbFontSmoothing->isChecked())
performanceFlags |= PERF_ENABLE_FONT_SMOOTHING;
if(ui->cbDesktopCompositing->isChecked())
performanceFlags |= PERF_ENABLE_DESKTOP_COMPOSITION;
m_pSettings->SetPerformanceFlags(performanceFlags);
accept();
}
返回
成功返回 0 。其它值为失败。

CParameterNetUI, CParameterProxyUI, CParameterDatabaseUI, CFrmManagePlugins, CParameterPluginUI, CParameterSSHTunnelUI, CParameterUserUI , 以及 CParameterTerminalUI 内被实现.

◆ CheckValidity()

bool CParameterUI::CheckValidity ( bool  validity = false)
virtual

检查参数的有效性

参数
validity标志是否检查参数
  • true: 检查参数
  • false: 不检查参数

CParameterDatabaseUI, CParameterPluginUI, CParameterNetUI, CParameterProxyUI , 以及 CParameterSSHTunnelUI 重载.

在文件 ParameterUI.cpp9 行定义.

◆ SetParameter()

virtual int CParameterUI::SetParameter ( CParameter pParameter)
pure virtual

[override functions]

设置参数,并初始化界面

参数
pParameter相关的参数。在重载函数中转换成相应的类型。

CParameterNetUI, CParameterProxyUI, CParameterDatabaseUI, CFrmManagePlugins, CParameterPluginUI, CParameterSSHTunnelUI, CParameterUserUI , 以及 CParameterTerminalUI 内被实现.

◆ slotAccept

void CParameterUI::slotAccept ( )
virtualslot

接受参数。不调用 CheckValidity

在文件 ParameterUI.cpp20 行定义.

◆ slotSetParameter

void CParameterUI::slotSetParameter ( CParameter pParameter)
virtualslot

[override functions]

设置参数,并初始化界面

参数
pParameter相关的参数。在重载函数 SetParameter() 中转换成相应的类型。

在文件 ParameterUI.cpp15 行定义.


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