Rabbit Remote Control 0.1.0-bate5
Loading...
Searching...
No Matches
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
Apply the global parameters of the plug-in.
virtual int Clean() override
Clean parameters and resource.
virtual int Start() override
Start.
virtual const QString Name() override
Name.
virtual QWidget * GetViewer() override
Get Viewer.
virtual int Save(QSettings &set) override
Save parameters.
virtual int Load(QSettings &set) override
Load parameters.
virtual QDialog * OnOpenDialogSettings(QWidget *parent) override
Open settgins dialog.
virtual QMenu * GetMenu(QWidget *parent=nullptr) override
Get menu.
virtual int Stop() override
Stop.
virtual const QIcon Icon() const override
Icon.
Operate interface.
Definition Operate.h:51
void sigInformation(const QString &szInfo)
Show information in main windows.
void sigFinished()
Successful disconnection signal.
virtual const QIcon Icon() const
Icon.
Definition Operate.cpp:82
void sigRunning()
Start success signal.
void sigFullScreen(bool bFullScreen)
Full screen.
void sigError(const int nError, const QString &szError)
Triggered when an error is generated.
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
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