Rabbit Remote Control
0.1.0-bate14
Toggle main menu visibility
Loading...
Searching...
No Matches
Plugins
WebBrowser
PluginWebBrowser.cpp
1
// Author: Kang Lin <kl222@126.com>
2
#include <QWebEngineProfile>
3
#include <QLoggingCategory>
4
5
#include "ProtocolManager.h"
6
#include "PluginWebBrowser.h"
7
#include "OperateWebBrowser.h"
8
9
static
Q_LOGGING_CATEGORY(log,
"WebBrowser.Plugin"
)
10
11
CPluginWebBrowser
::
CPluginWebBrowser
(QObject *parent)
12
:
CPlugin
(parent)
13
{
14
qDebug(log) << Q_FUNC_INFO;
15
16
/*
17
CProtocolManager manager;
18
// 获取所有注册的协议
19
QStringList protocols = manager.getAllRegisteredProtocols();
20
qDebug(log) << "All registered protocols:" << protocols;
21
22
// 检查特定协议
23
if (manager.isProtocolRegistered("rrc")) {
24
QString handler = manager.getDefaultHandlerForProtocol("rrc");
25
qDebug(log) << "rrc protocol handler:" << handler;
26
}
27
28
// 获取协议关联的应用
29
QStringList apps = manager.getApplicationsForProtocol("mailto");
30
qDebug(log) << "Apps handling mailto:" << apps;
31
32
// 获取所有协议及其应用
33
QMap<QString, QStringList> allProtocols = manager.getAllProtocolsWithApps();
34
for (auto it = allProtocols.begin(); it != allProtocols.end(); ++it) {
35
qDebug(log) << "Protocol:" << it.key() << "Apps:" << it.value();
36
}
37
//*/
38
}
39
40
CPluginWebBrowser::~CPluginWebBrowser()
41
{
42
qDebug(log) << Q_FUNC_INFO;
43
}
44
45
const
CPluginWebBrowser::TYPE CPluginWebBrowser::Type()
const
46
{
47
return
TYPE::Tools;
48
}
49
50
const
QString
CPluginWebBrowser::Protocol
()
const
51
{
52
return
QString();
53
}
54
55
const
QString
CPluginWebBrowser::Name
()
const
56
{
57
return
"WebBrowser"
;
58
}
59
60
const
QString
CPluginWebBrowser::DisplayName
()
const
61
{
62
return
tr(
"Web browser"
) + tr(
"(Experimental)"
);
63
}
64
65
const
QString
CPluginWebBrowser::Description
()
const
66
{
67
return
tr(
"Web browser: Browsing the web"
) + tr(
"(Experimental)"
);
68
}
69
70
const
QString
CPluginWebBrowser::Version
()
const
71
{
72
return
PluginWebBrowser_VERSION;
73
}
74
75
const
QIcon CPluginWebBrowser::Icon()
const
76
{
77
return
QIcon::fromTheme(
"web-browser"
);
78
}
79
80
COperate
*CPluginWebBrowser::OnCreateOperate(
const
QString &szId)
81
{
82
if
(
Id
() == szId)
83
return
new
COperateWebBrowser(
this
);
84
return
nullptr
;
85
}
86
87
const
QString
CPluginWebBrowser::Details
()
const
88
{
89
QString szDetails;
90
szDetails +=
"- "
+ tr(
"Dependency libraries"
) +
"\n"
;
91
#if QT_VERSION >= QT_VERSION_CHECK(6, 2, 0)
92
szDetails +=
" - QWebEngine"
+ QString(
"\n"
);
93
szDetails +=
" - "
+ tr(
"version:"
) +
" "
+ qWebEngineVersion() +
"\n"
;
94
#if QT_VERSION >= QT_VERSION_CHECK(6, 8, 0)
95
szDetails +=
" - "
+ tr(
"Process name:"
) +
" "
+ qWebEngineProcessName() +
"\n"
;
96
#endif
97
szDetails +=
" - "
+ tr(
"Chromium:"
) +
"\n"
;
98
szDetails +=
" - "
+ tr(
"version:"
) +
" "
+ qWebEngineChromiumVersion() +
"\n"
;
99
#endif
100
#if QT_VERSION >= QT_VERSION_CHECK(6, 3, 0)
101
szDetails +=
" - "
+ tr(
"Security patch version:"
) +
" "
+ qWebEngineChromiumSecurityPatchVersion() +
"\n"
;
102
#endif
103
return
szDetails;
104
}
105
106
QWidget*
CPluginWebBrowser::GetSettingsWidget
(QWidget* parent)
107
{
108
//TODO: Add set global parameters
109
return
nullptr
;
110
QWidget* pSetting =
new
QWidget(parent);
111
if
(pSetting)
112
pSetting->setWindowTitle(tr(
"Set Web Wrowser"
));
113
return
pSetting;
114
}
115
116
COperate
*
CPluginWebBrowser::CreateOperate
(
const
QString &szId,
CParameterPlugin
*para)
117
{
118
return
CPlugin::CreateOperate
(szId, para);
119
}
COperate
Operate interface.
Definition
Operate.h:51
CParameterPlugin
Global parameters of plugins.
Definition
ParameterPlugin.h:36
CPluginWebBrowser
Definition
PluginWebBrowser.h:6
CPluginWebBrowser::Name
virtual const QString Name() const override
This name must be the same as the project name (${PROJECT_NAME}). The translation file (${PROJECT_NAM...
Definition
PluginWebBrowser.cpp:55
CPluginWebBrowser::GetSettingsWidget
virtual Q_INVOKABLE QWidget * GetSettingsWidget(QWidget *parent) override
Get the widget to set global parameters for the plugin.
Definition
PluginWebBrowser.cpp:106
CPluginWebBrowser::CreateOperate
virtual Q_INVOKABLE COperate * CreateOperate(const QString &szId, CParameterPlugin *para)
New COperate instance.
Definition
PluginWebBrowser.cpp:116
CPluginWebBrowser::Protocol
virtual const QString Protocol() const override
Plugin Protocol.
Definition
PluginWebBrowser.cpp:50
CPluginWebBrowser::Description
virtual const QString Description() const override
Plugin description.
Definition
PluginWebBrowser.cpp:65
CPluginWebBrowser::DisplayName
virtual const QString DisplayName() const override
The plugin display name.
Definition
PluginWebBrowser.cpp:60
CPluginWebBrowser::Version
virtual const QString Version() const override
Version.
Definition
PluginWebBrowser.cpp:70
CPluginWebBrowser::Details
virtual const QString Details() const override
Display more information in About dialog or log.
Definition
PluginWebBrowser.cpp:87
CPlugin
Plugin interface.
Definition
Plugin.h:15
CPlugin::Id
virtual const QString Id() const
ID. Default: Type() + ":" + Protocol() + ":" + Name().
Definition
Plugin.cpp:71
CPlugin::CreateOperate
virtual Q_INVOKABLE COperate * CreateOperate(const QString &szId, CParameterPlugin *para)
New COperate instance.
Definition
Plugin.cpp:82
Author: Kang Lin (kl222@126.com)
Copyright (c) Kang Lin Studios All Rights Reserved