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::sigUpdateTitle,
91 this, &COperateWebBrowser::slotUpdateName);
92 Q_ASSERT(check);
93 check = connect(m_pWeb, &CFrmWebBrowser::sigFullScreen,
95 Q_ASSERT(check);
96 }
97 if(pMenu) {
98 pMenu->addSeparator();
99 if(m_pActionSettings)
100 pMenu->addAction(m_pActionSettings);
101 }
102 return nRet;
103}
104
106{
107 qDebug(log) << Q_FUNC_INFO;
108 int nRet = 0;
109 if(m_pWeb) {
110 m_pWeb->deleteLater();
111 m_pWeb = nullptr;
112 }
113 return nRet;
114}
115
117{
118 qDebug(log) << Q_FUNC_INFO;
119 int nRet = 0;
120 if(m_pWeb)
121 nRet = m_pWeb->Start();
122 if(!nRet)
123 emit sigRunning();
124 return nRet;
125}
126
128{
129 qDebug(log) << Q_FUNC_INFO;
130 int nRet = 0;
131 if(m_pWeb)
132 nRet = m_pWeb->Stop();
133 emit sigFinished();
134 return nRet;
135}
136
137int COperateWebBrowser::Load(QSettings &set)
138{
139 int nRet = 0;
140 nRet = m_Parameter.Load(set);
141 if(m_pWeb)
142 nRet = m_pWeb->Load(set);
143 return nRet;
144}
145
146int COperateWebBrowser::Save(QSettings &set)
147{
148 int nRet = 0;
149 nRet = m_Parameter.Save(set);
150 if(m_pWeb)
151 nRet = m_pWeb->Save(set);
152 return nRet;
153}
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.
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