2#include "ParameterProxy.h"
4CParameterProxy::CParameterProxy(
CParameterOperate *parent,
const QString &szPrefix)
6 , m_SockesV5(this,
"Proxy/SockesV5")
7 , m_Http(this,
"Proxy/Http")
8 , m_SSH(this,
"Proxy/SSH/Tunnel")
9 , m_UsedType(TYPE::None)
11 m_Type << TYPE::None << TYPE::System << TYPE::SockesV5 << TYPE::Http;
13 m_Type << TYPE::SSHTunnel;
15 m_TypeName = {{TYPE::None, tr(
"None")},
16 {TYPE::System, tr(
"System settings")},
17 {TYPE::SockesV5, tr(
"Sockes V5")},
18 {TYPE::Http, tr(
"Http")},
19 {TYPE::SSHTunnel, tr(
"SSH tunnel")}};
21 QList<CParameterUser::TYPE> lstType;
24 lstType << CParameterUser::TYPE::None
25 << CParameterUser::TYPE::UserPassword;
26 m_Http.m_User.SetType(lstType);
27 m_Http.SetPrompt(tr(
"The host is empty in \"Proxy->Http\". please set it"));
29 m_SockesV5.SetPort(1080);
31 lstType << CParameterUser::TYPE::None
32 << CParameterUser::TYPE::UserPassword;
33 m_SockesV5.m_User.SetType(lstType);
34 m_SockesV5.SetPrompt(tr(
"The host is empty in \"Proxy->SockesV5\". please set it"));
36 m_SSH.m_Net.SetPort(22);
38 lstType << CParameterUser::TYPE::UserPassword
39 << CParameterUser::TYPE::PublicKey;
40 m_SSH.m_Net.m_User.SetType(lstType);
41 m_SSH.m_Net.SetPrompt(tr(
"The host is empty in \"Proxy->SSH tunnel\". please set it"));
44int CParameterProxy::OnLoad(QSettings &set)
46 set.beginGroup(
"Proxy");
48 foreach(
auto t, GetType()) {
49 type.push_back(QString::number((
int)t));
52 vType = set.value(
"Type", type).toStringList();
54 foreach(
auto s, vType)
56 lstType.push_back((TYPE)s.toInt());
59 SetUsedType((TYPE)set.value(
"Type/Used", (
int)GetUsedType()).toInt());
64int CParameterProxy::OnSave(QSettings &set)
66 set.beginGroup(
"Proxy");
68 foreach(
auto t, GetType()) {
69 type.push_back(QString::number((
int)t));
71 set.setValue(
"Type", type);
72 set.setValue(
"Type/Used", (
int)GetUsedType());
77QList<CParameterProxy::TYPE> CParameterProxy::GetType()
const
82int CParameterProxy::SetType(QList<TYPE> type)
91CParameterProxy::TYPE CParameterProxy::GetUsedType()
const
96int CParameterProxy::SetUsedType(TYPE type)
98 if(m_UsedType == type)
105QString CParameterProxy::ConvertTypeToName(TYPE t)
107 return m_TypeName[t];
110int CParameterProxy::SetTypeName(TYPE t,
const QString& szName)
112 m_TypeName[t] = szName;
Operational parameter interface.
int SetModified(bool bModified=true)
When setting parameters, if there is a modification, it is called.