玉兔远程控制 0.1.0-bate10
载入中...
搜索中...
未找到
OperateFreeRDPServer.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QLoggingCategory>
4
5#include "BackendFreeRDPServer.h"
6#include "ParameterFreeRDPServer.h"
7#include "DlgSettingsFreeRDPServer.h"
8#include "OperateFreeRDPServer.h"
9
10static Q_LOGGING_CATEGORY(log, "FreeRDPServer.Operate")
12 : COperateServer(plugin)
13 , m_pPara(nullptr)
14{
15 qDebug(log) << Q_FUNC_INFO;
16}
17
18COperateFreeRDPServer::~COperateFreeRDPServer()
19{
20 qDebug(log) << Q_FUNC_INFO;
21 QString szClass = this->metaObject()->className();
22 QString szWhat;
23 szWhat += "Please call ";
24 szWhat += szClass;
25 szWhat += "::Stop() first";
26 Q_ASSERT_X(!m_pPara, szClass.toStdString().c_str(), szWhat.toStdString().c_str());
27}
28
33
35{
36 return 0;
37}
38
43
45{
46 int nRet = 0;
47 if(m_pPara) {
48 m_pPara->SetPluginParameters(pPara);
49 m_pPara->m_Net.m_User.SetSavePassword(true);
50 m_pPara->m_Net.m_User.SetSavePassphrase(true);
51 }
52 return nRet;
53}
54
56{
57 return new CDlgSettingsFreeRDPServer(m_pPara, parent);
58}
59
60int COperateFreeRDPServer::Load(QSettings &set)
61{
62 int nRet = 0;
63
64 if(m_pPara)
65 nRet = m_pPara->Load(set);
66
67 return nRet;
68}
69
70int COperateFreeRDPServer::Save(QSettings &set)
71{
72 int nRet = 0;
73 if(m_pPara)
74 nRet = m_pPara->Save(set);
75 return nRet;
76}
77
79{
80 int nRet = 0;
82 if(nRet) return nRet;
83 m_pPara = new CParameterFreeRDPServer();
84 return nRet;
85}
86
88{
89 int nRet = 0;
90 if(m_pPara) {
91 delete m_pPara;
92 m_pPara = nullptr;
93 }
94 nRet = COperateServer::Clean();
95 return nRet;
96}
后端接口。它由协议插件实现。 它默认启动一个定时器来开启一个非 Qt 事件循环(就是普通的循环处理)。 详见: Start()、 slotTimeOut()、 OnProcess() 。 当然,它仍然支...
Definition Backend.h:42
virtual const qint16 Version() const override
版本
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
得到设置对话框
virtual int Save(QSettings &set) override
保存参数
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource
virtual int Load(QSettings &set) override
加载参数
virtual Q_INVOKABLE CBackend * InstanceBackend() override
新建后端实例。它的所有者是调用者, 如果调用者不再使用它,调用者必须负责释放它。
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource
virtual int SetPluginParameters(CParameterPlugin *pPara) override
应用插件全局参数
virtual CParameterFreeRDPServer * GetParameter() const
Get parameter
服务操作接口
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource
CParameterUser m_User
[Instance user]
插件的全局参数。
void SetSavePassword(bool save)
Set save password
virtual int Save(QString szFile=QString(), bool bForce=true)
Save to file
Definition Parameter.cpp:47
virtual int Load(QString szFile=QString())
Load from file
Definition Parameter.cpp:35
插件接口
Definition Plugin.h:15