玉兔远程控制 0.1.0-bate4
载入中...
搜索中...
未找到
OperateWebBrowser.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QLoggingCategory>
4#include <DlgSettings.h>
5#include "Plugin.h"
6#include "OperateWebBrowser.h"
7
8static Q_LOGGING_CATEGORY(log, "WebBrowser.Operate")
10 , m_pWeb(nullptr)
11{
12 qDebug(log) << Q_FUNC_INFO;
13}
14
15COperateWebBrowser::~COperateWebBrowser()
16{
17 qDebug(log) << Q_FUNC_INFO;
18}
19
21{
22 QString szName;
23 szName = m_Parameter.GetName();
24 if(szName.isEmpty()) {
25 if(m_pWeb)
26 szName = m_pWeb->windowTitle();
27 }
28 if(szName.isEmpty())
29 szName = COperate::Name();
30 return szName;
31}
32
33const QIcon COperateWebBrowser::Icon() const
34{
35 QIcon icon;
36 if(m_pWeb)
37 icon = m_pWeb->windowIcon();
38 if(icon.isNull())
39 icon = COperate::Icon();
40 return icon;
41}
42
43const qint16 COperateWebBrowser::Version() const
44{
45 return 0;
46}
47
49{
50 return m_pWeb;
51}
52
53QMenu* COperateWebBrowser::GetMenu(QWidget *parent)
54{
55 if(m_pWeb)
56 return m_pWeb->GetMenu(parent);
57 return COperate::GetMenu(parent);
58}
59
61{
62 int nRet = 0;
63 m_Parameter.SetGlobalParameters(pPara);
64 return nRet;
65}
66
68{
69 qDebug(log) << Q_FUNC_INFO;
70 return new CDlgSettings(&m_Parameter, parent);
71}
72
74{
75 qDebug(log) << Q_FUNC_INFO;
76 int nRet = COperate::Initial();
77 if(nRet) return nRet;
78 QMenu* pMenu = &m_Menu;
79 m_pWeb = new CFrmWebBrowser(&m_Parameter);
80 if(m_pWeb) {
81 pMenu = m_pWeb->GetMenu();
82 pMenu->setIcon(GetPlugin()->Icon());
83 pMenu->setTitle(GetPlugin()->DisplayName());
84 pMenu->setToolTip(GetPlugin()->DisplayName());
85 pMenu->setStatusTip(GetPlugin()->DisplayName());
86 m_pWeb->setWindowIcon(COperate::Icon());
87 bool check = connect(m_pWeb, &CFrmWebBrowser::sigInformation,
89 Q_ASSERT(check);
90 check = connect(m_pWeb, &CFrmWebBrowser::sigUpdateTitle,
91 this, &COperateWebBrowser::slotUpdateName);
92 Q_ASSERT(check);
93 }
94 if(pMenu) {
95 pMenu->addSeparator();
96 if(m_pActionSettings)
97 pMenu->addAction(m_pActionSettings);
98 }
99 return nRet;
100}
101
103{
104 qDebug(log) << Q_FUNC_INFO;
105 int nRet = 0;
106 if(m_pWeb) {
107 m_pWeb->deleteLater();
108 m_pWeb = nullptr;
109 }
110 return nRet;
111}
112
114{
115 qDebug(log) << Q_FUNC_INFO;
116 int nRet = 0;
117 if(m_pWeb)
118 nRet = m_pWeb->Start();
119 if(!nRet)
120 emit sigRunning();
121 return nRet;
122}
123
125{
126 qDebug(log) << Q_FUNC_INFO;
127 int nRet = 0;
128 if(m_pWeb)
129 nRet = m_pWeb->Stop();
130 emit sigFinished();
131 return nRet;
132}
133
134int COperateWebBrowser::Load(QSettings &set)
135{
136 int nRet = 0;
137 nRet = m_Parameter.Load(set);
138 if(m_pWeb)
139 nRet = m_pWeb->Load(set);
140 return nRet;
141}
142
143int COperateWebBrowser::Save(QSettings &set)
144{
145 int nRet = 0;
146 nRet = m_Parameter.Save(set);
147 if(m_pWeb)
148 nRet = m_pWeb->Save(set);
149 return nRet;
150}
void sigUpdateTitle()
Title or icon changed
virtual const qint16 Version() const override
Version
virtual int Initial() override
Initial parameters and resource
virtual int SetGlobalParameters(CParameterPlugin *pPara) override
应用插件全局参数
virtual int Clean() override
Clean parameters and resource
virtual int Start() override
开始
virtual const QString Name() override
Name
virtual QWidget * GetViewer() override
得到显示视图
virtual int Save(QSettings &set) override
保存参数
virtual int Load(QSettings &set) override
加载参数
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
得到设置对话框
virtual QMenu * GetMenu(QWidget *parent=nullptr) override
Get menu
virtual int Stop() override
关闭
virtual const QIcon Icon() const override
Icon
操作接口。
Definition Operate.h:51
void sigInformation(const QString &szInfo)
中主窗口中显示信息
void sigFinished()
断开连接成功信号。仅由插件触发
virtual const QIcon Icon() const
Icon
Definition Operate.cpp:82
void sigRunning()
开始成功信号。仅由插件触发。
virtual Q_INVOKABLE int Initial()
Initial parameters and resource
Definition Operate.cpp:230
Q_INVOKABLE CPlugin * GetPlugin() const
Get plugin
Definition Operate.cpp:259
virtual const QString Name()
Name
Definition Operate.cpp:41
virtual QMenu * GetMenu(QWidget *parent=nullptr)
Get menu
Definition Operate.cpp:107
插件的全局参数。
virtual int Save(QString szFile=QString(), bool bForce=true)
Save to file
Definition Parameter.cpp:46
virtual int Load(QString szFile=QString())
Load from file
Definition Parameter.cpp:35
插件接口
Definition Plugin.h:15