Rabbit Remote Control 0.1.0-bate16
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 "ParameterGlobal.h"
7#include "OperateWebBrowser.h"
8
9static Q_LOGGING_CATEGORY(log, "WebBrowser.Operate")
11 , m_pWeb(nullptr)
12{
13 qDebug(log) << Q_FUNC_INFO;
14}
15
16COperateWebBrowser::~COperateWebBrowser()
17{
18 qDebug(log) << Q_FUNC_INFO;
19}
20
22{
23 QString szName;
24 szName = m_Parameter.GetName();
25 if(szName.isEmpty()) {
26 if(m_pWeb)
27 szName = m_pWeb->windowTitle();
28 }
29 if(szName.isEmpty())
30 szName = COperate::Name();
31 return szName;
32}
33
34const QIcon COperateWebBrowser::Icon() const
35{
36 QIcon icon;
37 if(m_pWeb)
38 icon = m_pWeb->windowIcon();
39 if(icon.isNull())
40 icon = COperate::Icon();
41 return icon;
42}
43
44const qint16 COperateWebBrowser::Version() const
45{
46 return 0;
47}
48
50{
51 return m_pWeb;
52}
53
54QMenu* COperateWebBrowser::GetMenu(QWidget *parent)
55{
56 if(m_pWeb)
57 return m_pWeb->GetMenu(parent);
58 return COperate::GetMenu(parent);
59}
60
62{
63 int nRet = 0;
64 m_Parameter.SetPluginParameters(pPara);
65 return nRet;
66}
67
69{
70 qDebug(log) << Q_FUNC_INFO;
71 return new CDlgSettings(m_pWeb->GetProfile(), &m_Parameter, parent);
72}
73
75{
76 qDebug(log) << Q_FUNC_INFO;
77 int nRet = COperate::Initial();
78 if(nRet) return nRet;
79 QMenu* pMenu = &m_Menu;
80
81 m_pWeb = new CFrmWebBrowser(&m_Parameter);
82 if(m_pWeb) {
83 pMenu = m_pWeb->GetMenu();
84 pMenu->setIcon(GetPlugin()->Icon());
85 pMenu->setTitle(tr("\"%1\" operations").arg(GetPlugin()->DisplayName()));
86 pMenu->setToolTip(pMenu->title());
87 pMenu->setStatusTip(pMenu->title());
88 m_pWeb->setWindowIcon(COperate::Icon());
89 bool check = connect(m_pWeb, &CFrmWebBrowser::sigInformation,
91 Q_ASSERT(check);
92 check = connect(m_pWeb, &CFrmWebBrowser::sigError,
94 Q_ASSERT(check);
95 check = connect(m_pWeb, &CFrmWebBrowser::sigUpdateTitle,
96 this, &COperateWebBrowser::slotUpdateName);
97 Q_ASSERT(check);
98 check = connect(m_pWeb, &CFrmWebBrowser::sigFullScreen,
100 Q_ASSERT(check);
101 }
102 if(pMenu) {
103 pMenu->addSeparator();
104 if(m_pActionSettings)
105 pMenu->addAction(m_pActionSettings);
106 }
107 return nRet;
108}
109
111{
112 qDebug(log) << Q_FUNC_INFO;
113 int nRet = 0;
114 if(m_pWeb) {
115 m_pWeb->deleteLater();
116 m_pWeb = nullptr;
117 }
118 return nRet;
119}
120
122{
123 qDebug(log) << Q_FUNC_INFO;
124 int nRet = 0;
125 if(m_pWeb)
126 nRet = m_pWeb->Start();
127 emit sigRunning();
128 return nRet;
129}
130
132{
133 qDebug(log) << Q_FUNC_INFO;
134 int nRet = 0;
135 if(m_pWeb)
136 nRet = m_pWeb->Stop();
137 emit sigFinished();
138 return nRet;
139}
140
141int COperateWebBrowser::Load(QSettings &set)
142{
143 int nRet = 0;
144 nRet = m_Parameter.Load(set);
145 if(m_pWeb)
146 nRet = m_pWeb->Load(set);
147 return nRet;
148}
149
150int COperateWebBrowser::Save(QSettings &set)
151{
152 int nRet = 0;
153 nRet = m_Parameter.Save(set);
154 if(m_pWeb)
155 nRet = m_pWeb->Save(set);
156 return nRet;
157}
void sigUpdateTitle()
Title or icon changed.
virtual int Initial() override
Initial parameters and resource.
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 int SetPluginParameters(CParameterPlugin *pPara) override
Apply the parameters of the plug-in.
Operate interface.
Definition Operate.h:51
void sigInformation(const QString &szInfo)
Show information in main windows.
void sigFinished()
Successful disconnection signal.
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:190
Q_INVOKABLE CPlugin * GetPlugin() const
Get plugin.
Definition Operate.cpp:221
virtual const QString Name()
Name.
Definition Operate.cpp:46
virtual QMenu * GetMenu(QWidget *parent=nullptr)
Get menu.
Definition Operate.cpp:117
Global parameters of plugins.
Plugin interface.
Definition Plugin.h:15