2#include "ParameterProxyUI.h"
6CParameterProxyUI::CParameterProxyUI(QWidget *parent)
9 , m_uiSockesV5(nullptr)
13 setLayout(
new QBoxLayout(QBoxLayout::TopToBottom,
this));
16 QHBoxLayout* pType =
new QHBoxLayout(
this);
17 layout()->addItem(pType);
20 layout()->addWidget(m_uiHttp);
23 layout()->addWidget(m_uiSockesV5);
26 layout()->addWidget(m_uiSSH);
28 m_lbType =
new QLabel(
this);
29 m_lbType->setText(tr(
"Type:"));
30 pType->addWidget(m_lbType);
32 m_cbType =
new QComboBox(
this);
33 m_cbType->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
34 pType->addWidget(m_cbType);
35 bCheck = connect(m_cbType, SIGNAL(currentIndexChanged(
int)),
36 this, SLOT(slotTypeChanged(
int)));
39 layout()->addItem(
new QSpacerItem(0, 0,
40 QSizePolicy::Preferred,
41 QSizePolicy::Expanding));
44void CParameterProxyUI::slotTypeChanged(
int nIndex)
47 int type = m_cbType->currentData().toInt();
49 m_uiHttp->setVisible((
int)CParameterProxy::TYPE::Http == type);
51 m_uiSockesV5->setVisible((
int)CParameterProxy::TYPE::SockesV5 == type);
53 m_uiSSH->setVisible((
int)CParameterProxy::TYPE::SSHTunnel == type);
58 m_Proxy = qobject_cast<CParameterProxy*>(pParameter);
66 foreach(
auto t, m_Proxy->GetType())
68 m_cbType->addItem(m_Proxy->ConvertTypeToName(t), (
int)t);
71 int index = m_cbType->findData((
int)m_Proxy->GetUsedType());
72 m_cbType->setCurrentIndex(index);
79 int type = m_cbType->currentData().toInt();
82 case (
int)CParameterProxy::TYPE::SockesV5: {
84 if(!bRet)
return bRet;
87 case (
int)CParameterProxy::TYPE::Http: {
89 if(!bRet)
return bRet;
92 case (
int)CParameterProxy::TYPE::SSHTunnel: {
94 if(!bRet)
return bRet;
107 int type = m_cbType->currentData().toInt();
110 case (
int)CParameterProxy::TYPE::SockesV5: {
111 nRet = m_uiSockesV5->
Accept();
112 if(nRet)
return nRet;
115 case (
int)CParameterProxy::TYPE::Http: {
116 nRet = m_uiHttp->
Accept();
117 if(nRet)
return nRet;
120 case (
int)CParameterProxy::TYPE::SSHTunnel: {
122 if(nRet)
return nRet;
129 m_Proxy->SetUsedType((CParameterProxy::TYPE)type);
bool CheckValidity(bool validity=false)
[Set Parameter]
int SetParameter(CParameter *pParameter)
[Parameter commone functions]
int SetParameter(CParameter *pParameter)
设置参数,并初始化界面
bool CheckValidity(bool validity=false)
检查参数的有效性