Rabbit Remote Control 0.1.0-bate10
Loading...
Searching...
No Matches
OperateTemplateQtEvent.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QLoggingCategory>
4
5#include "BackendThread.h"
6#include "BackendTemplateQtEvent.h"
7#include "ParameterTemplateQtEvent.h"
8#include "FrmViewerTemplateQtEvent.h"
9#include "DlgSettingsTemplateQtEvent.h"
10#include "OperateTemplateQtEvent.h"
11
12static Q_LOGGING_CATEGORY(log, "TemplateQtEvent.Operate")
14 : COperate(plugin)
15 , m_pPara(nullptr)
16 , m_pViewer(nullptr)
17{
18 qDebug(log) << Q_FUNC_INFO;
19}
20
21COperateTemplateQtEvent::~COperateTemplateQtEvent()
22{
23 qDebug(log) << Q_FUNC_INFO;
24 QString szClass = this->metaObject()->className();
25 QString szWhat;
26 szWhat += "Please call ";
27 szWhat += szClass;
28 szWhat += "::Stop() first, then call " + szClass + "::Clean()";
29 Q_ASSERT_X(!m_pPara && !m_pViewer,
30 szClass.toStdString().c_str(), szWhat.toStdString().c_str());
31}
32
37
38const qint16 COperateTemplateQtEvent::Version() const
39{
40 // TODO: Add version
41 return 0;
42}
43
45{
46 return m_pViewer;
47}
48
50{
51 int nRet = 0;
52 emit sigNewBackend(this);
53 return nRet;
54}
55
57{
58 int nRet = 0;
59 emit sigDeleteBackend(this);
60 return nRet;
61}
62
63CBackend* COperateTemplateQtEvent::InstanceBackend()
64{
65 return new CBackendTemplateQtEvent(this);
66}
67
69{
70 int nRet = 0;
71 // TODO: Modify apply plugin parameters
72 if(m_pPara) {
73 m_pPara->SetPluginParameters(pPara);
74 }
75 return nRet;
76}
77
79{
80 return new CDlgSettingsTemplateQtEvent(m_pPara, parent);
81}
82
84{
85 int nRet = 0;
86
87 if(m_pPara)
88 nRet = m_pPara->Load(set);
89
90 return nRet;
91}
92
94{
95 int nRet = 0;
96 if(m_pPara)
97 nRet = m_pPara->Save(set);
98 return nRet;
99}
100
102{
103 int nRet = 0;
104 nRet = COperate::Initial();
105 m_pPara = new CParameterTemplateQtEvent();
106 m_pViewer = new CFrmViewerTemplateQtEvent();
107
108 // TODO: add initial
109
110 if(m_pActionSettings)
111 m_Menu.addAction(m_pActionSettings);
112 return nRet;
113}
114
116{
117 int nRet = 0;
118 // TODO: add Clean
119
120 if(m_pPara) {
121 delete m_pPara;
122 m_pPara = nullptr;
123 }
124 if(m_pViewer) {
125 delete m_pViewer;
126 m_pViewer = nullptr;
127 }
128 nRet = COperate::Clean();
129 return nRet;
130}
Backend interface.
Definition Backend.h:42
The operate is not block.
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
virtual int SetPluginParameters(CParameterPlugin *pPara) override
Apply the parameters of the plug-in.
virtual int Stop() override
Stop.
virtual CParameterTemplateQtEvent * GetParameter() const
Get parameter.
virtual Q_INVOKABLE int Initial() override
Initial parameters and resource.
void sigDeleteBackend(COperate *pOperate)
Delete backend signal.
virtual int Save(QSettings &set) override
Save parameters.
virtual Q_INVOKABLE int Clean() override
Clean parameters and resource.
void sigNewBackend(COperate *pOperate)
New backend signal.
virtual QWidget * GetViewer() override
Get Viewer.
virtual int Load(QSettings &set) override
Load parameters.
virtual int Start() override
Start.
Operate interface.
Definition Operate.h:51
virtual Q_INVOKABLE int Initial()
Initial parameters and resource.
Definition Operate.cpp:190
virtual Q_INVOKABLE int Clean()
Clean parameters and resource.
Definition Operate.cpp:209
Global parameters of plugins.
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
Plugin interface.
Definition Plugin.h:15