玉兔远程控制 0.1.0-bate5
载入中...
搜索中...
未找到
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::sigError,
92 Q_ASSERT(check);
93 check = connect(m_pWeb, &CFrmWebBrowser::sigUpdateTitle,
94 this, &COperateWebBrowser::slotUpdateName);
95 Q_ASSERT(check);
96 check = connect(m_pWeb, &CFrmWebBrowser::sigFullScreen,
98 Q_ASSERT(check);
99 }
100 if(pMenu) {
101 pMenu->addSeparator();
102 if(m_pActionSettings)
103 pMenu->addAction(m_pActionSettings);
104 }
105 return nRet;
106}
107
109{
110 qDebug(log) << Q_FUNC_INFO;
111 int nRet = 0;
112 if(m_pWeb) {
113 m_pWeb->deleteLater();
114 m_pWeb = nullptr;
115 }
116 return nRet;
117}
118
120{
121 qDebug(log) << Q_FUNC_INFO;
122 int nRet = 0;
123 if(m_pWeb)
124 nRet = m_pWeb->Start();
125 if(!nRet)
126 emit sigRunning();
127 return nRet;
128}
129
131{
132 qDebug(log) << Q_FUNC_INFO;
133 int nRet = 0;
134 if(m_pWeb)
135 nRet = m_pWeb->Stop();
136 emit sigFinished();
137 return nRet;
138}
139
140int COperateWebBrowser::Load(QSettings &set)
141{
142 int nRet = 0;
143 nRet = m_Parameter.Load(set);
144 if(m_pWeb)
145 nRet = m_pWeb->Load(set);
146 return nRet;
147}
148
149int COperateWebBrowser::Save(QSettings &set)
150{
151 int nRet = 0;
152 nRet = m_Parameter.Save(set);
153 if(m_pWeb)
154 nRet = m_pWeb->Save(set);
155 return nRet;
156}
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()
开始成功信号。仅由插件触发。
void sigFullScreen(bool bFullScreen)
全屏。由操作触发
void sigError(const int nError, const QString &szError)
当有错误产生时触发。
virtual Q_INVOKABLE int Initial()
Initial parameters and resource
Definition Operate.cpp:218
Q_INVOKABLE CPlugin * GetPlugin() const
Get plugin
Definition Operate.cpp:247
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:47
virtual int Load(QString szFile=QString())
Load from file
Definition Parameter.cpp:35
插件接口
Definition Plugin.h:15