玉兔远程控制 0.1.0-bate6
载入中...
搜索中...
未找到
ParameterWebBrowser.cpp
1// Author: Kang Lin <kl222@126.com>
2
3#include <QStandardPaths>
4#include <QLoggingCategory>
5#include <QWebEngineProfile>
6#include "ParameterWebBrowser.h"
7
8static Q_LOGGING_CATEGORY(log, "WebBrowser.Parameter")
9CParameterWebBrowser::CParameterWebBrowser(QObject *parent, const QString &szPrefix)
10 : CParameterOperate{parent, szPrefix}
11 , m_Record(this)
12 , m_MediaDevices(this)
13 , m_bOpenPrevious(false)
14 , m_bShowDownloadManager(true)
15 , m_bShowDownloadLocation(false)
16 , m_ClearHttpCache(false)
17 , m_ClearCookie(false)
18 , m_bPromptPrintFinished(true)
19 , m_bAutoFillUserAndPassword(false)
20 , m_nDatabaseViewLimit(100)
21 , m_nAddCompleterLines(10)
22 , m_WindowSize(600, 450)
23 , m_nBookmarkCurrentFolder(1)
24 , m_bBookmarkShowEditor(true)
25{
26 SetHomeUrl("https://github.com/KangLin");
27 SetTabUrl("https://github.com/KangLin/RabbitRemoteControl");
28 //m_szDownloadFolder = QStandardPaths::writableLocation(QStandardPaths::DownloadLocation);
29 SetDownloadFolder(QWebEngineProfile::defaultProfile()->downloadPath());
30 qDebug(log) << "Download folder:" << GetDownloadFolder();
31 if(QLocale::system().language() == QLocale::Language::Chinese)
32 SetSearchEngine("https://www.bing.com/search?q=%s");
33 else
34 SetSearchEngine("https://www.google.com/search?q=%s");
35 SetSearchRelaceString("%s");
36 QStringList searchEngines;
37 searchEngines << "https://www.bing.com/search?q=%s"
38 << "https://www.google.com/search?q=%s"
39 << "https://www.baidu.com/s?wd=%s";
40 SetSearchEngineList(searchEngines);
41}
42
43CParameterWebBrowser::~CParameterWebBrowser()
44{}
45
46int CParameterWebBrowser::OnLoad(QSettings &set)
47{
48 int nRet = 0;
49 SetHomeUrl(set.value("Url/Home", GetHomeUrl()).toString());
50 SetTabUrl(set.value("Url/Tab", GetTabUrl()).toString());
51 SetOpenPrevious(set.value("OpenPrevious/Enable", GetOpenPrevious()).toBool());
52 SetDownloadFolder(set.value("Download/Folder", GetDownloadFolder()).toString());
53 SetShowDownloadManager(set.value("Download/Show/Manager", GetShowDownloadManager()).toBool());
54 SetShowDownloadLocation(set.value("Download/Show/Location", GetShowDownloadLocation()).toBool());
55 SetClearHttpCache(set.value("Clear/HttpCache", GetClearHttpCache()).toBool());
56 SetClearCookie(set.value("Clear/Cookie", GetClearCookie()).toBool());
57 SetSearchEngine(set.value("SearchEngine", GetSearchEngine()).toString());
58 SetSearchRelaceString(set.value("SearchEngine/SearchEngine", GetSearchRelaceString()).toString());
59 SetSearchEngineList(set.value("SearchEngine/List", GetSearchEngineList()).toStringList());
60 SetAutoFillUserAndPassword(set.value("AutoFillUserPassword", GetAutoFillUserAndPassword()).toBool());
61 SetPromptPrintFinished(set.value("Print/Finished", GetPromptPrintFinished()).toBool());
62 SetDatabaseViewLimit(set.value("Database/View/Limit", GetDatabaseViewLimit()).toInt());
63 SetAddCompleterLines(set.value("AddCompleter/Lines", GetAddCompleterLines()).toInt());
64 SetWindowSize(set.value("WindowSize", GetWindowSize()).toSize());
65 SetBookmarkShowEditor(set.value("Bookmark/ShowEditor", GetBookmarkShowEditor()).toBool());
66 SetBookmarkCurrentFolder(set.value("Bookmark/CurrentFolder", GetBookmarkCurrentFolder()).toInt());
67 return nRet;
68}
69
70int CParameterWebBrowser::OnSave(QSettings &set)
71{
72 int nRet = 0;
73 set.setValue("Url/Home", GetHomeUrl());
74 set.setValue("Url/Tab", GetTabUrl());
75 set.setValue("OpenPrevious/Enable", GetOpenPrevious());
76 set.setValue("Download/Folder", GetDownloadFolder());
77 set.setValue("Download/Show/Manager", GetShowDownloadManager());
78 set.setValue("Download/Show/Location", GetShowDownloadLocation());
79 set.setValue("Clear/HttpCache", GetClearHttpCache());
80 set.setValue("Clear/Cookie", GetClearCookie());
81 set.setValue("SearchEngine", GetSearchEngine());
82 set.setValue("SearchEngine/SearchEngine", GetSearchRelaceString());
83 set.setValue("SearchEngine/List", GetSearchEngineList());
84 set.setValue("AutoFillUserPassword", GetAutoFillUserAndPassword());
85 set.setValue("Print/Finished", GetPromptPrintFinished());
86 set.setValue("Database/View/Limit", GetDatabaseViewLimit());
87 set.setValue("AddCompleter/Lines", GetAddCompleterLines());
88 set.setValue("WindowSize", GetWindowSize());
89 set.setValue("Bookmark/ShowEditor", GetBookmarkShowEditor());
90 set.setValue("Bookmark/CurrentFolder", GetBookmarkCurrentFolder());
91 return nRet;
92}
93
94void CParameterWebBrowser::slotSetGlobalParameters()
95{
97 if(!pPlugin) {
98 QString szErr = "The CParameterClient is null";
99 qCritical(log) << szErr;
100 Q_ASSERT_X(false, "CParameterWebBrowser", szErr.toStdString().c_str());
101 return;
102 }
103 m_Record = pPlugin->m_Record;
104 m_MediaDevices = pPlugin->m_MediaDevices;
105}
106
107QString CParameterWebBrowser::GetHomeUrl()
108{
109 return m_szHomeUrl;
110}
111
112int CParameterWebBrowser::SetHomeUrl(const QString& url)
113{
114 if(m_szHomeUrl == url)
115 return 0;
116 m_szHomeUrl = url;
117 SetModified(true);
118 return 0;
119}
120
121QString CParameterWebBrowser::GetTabUrl()
122{
123 return m_szTabUrl;
124}
125
126int CParameterWebBrowser::SetTabUrl(const QString& url)
127{
128 if(m_szTabUrl == url)
129 return 0;
130 m_szTabUrl = url;
131 SetModified(true);
132 return 0;
133}
134
135bool CParameterWebBrowser::GetOpenPrevious()
136{
137 return m_bOpenPrevious;
138}
139
140void CParameterWebBrowser::SetOpenPrevious(bool bOpen)
141{
142 if(m_bOpenPrevious == bOpen)
143 return;
144 m_bOpenPrevious = bOpen;
145 SetModified(true);
146}
147
148QString CParameterWebBrowser::GetDownloadFolder()
149{
150 return m_szDownloadFolder;
151}
152
153int CParameterWebBrowser::SetDownloadFolder(const QString& folder)
154{
155 if(m_szDownloadFolder == folder)
156 return 0;
157 m_szDownloadFolder = folder;
158 SetModified(true);
159 emit sigDownloadFolderChanged();
160 return 0;
161}
162
163bool CParameterWebBrowser::GetShowDownloadManager() const
164{
165 return m_bShowDownloadManager;
166}
167
168void CParameterWebBrowser::SetShowDownloadManager(bool newShowDownloadManager)
169{
170 if(m_bShowDownloadManager == newShowDownloadManager)
171 return;
172 m_bShowDownloadManager = newShowDownloadManager;
173 SetModified(true);
174}
175
176bool CParameterWebBrowser::GetShowDownloadLocation() const
177{
178 return m_bShowDownloadLocation;
179}
180
181void CParameterWebBrowser::SetShowDownloadLocation(bool newShowDownloadLocation)
182{
183 if(m_bShowDownloadLocation == newShowDownloadLocation)
184 return;
185 m_bShowDownloadLocation = newShowDownloadLocation;
186 SetModified(true);
187}
188
189bool CParameterWebBrowser::GetClearCookie() const
190{
191 return m_ClearCookie;
192}
193
194void CParameterWebBrowser::SetClearCookie(bool newClearCookie)
195{
196 if(m_ClearCookie == newClearCookie)
197 return;
198 m_ClearCookie = newClearCookie;
199 SetModified(true);
200}
201
202bool CParameterWebBrowser::GetClearHttpCache() const
203{
204 return m_ClearHttpCache;
205}
206
207void CParameterWebBrowser::SetClearHttpCache(bool newClearHttpCache)
208{
209 if(m_ClearHttpCache == newClearHttpCache)
210 return;
211 m_ClearHttpCache = newClearHttpCache;
212 SetModified(true);
213}
214
215QString CParameterWebBrowser::GetSearchEngine() const
216{
217 return m_szSearchEngine;
218}
219
220void CParameterWebBrowser::SetSearchEngine(const QString &newSearchEngine)
221{
222 if(m_szSearchEngine == newSearchEngine)
223 return;
224 m_szSearchEngine = newSearchEngine;
225 SetModified(true);
226}
227
228QString CParameterWebBrowser::GetSearchRelaceString() const
229{
230 return m_szSearchRelaceString;
231}
232
233void CParameterWebBrowser::SetSearchRelaceString(const QString &newSearchRelaceString)
234{
235 if(m_szSearchRelaceString == newSearchRelaceString)
236 return;
237 m_szSearchRelaceString = newSearchRelaceString;
238 SetModified(true);
239}
240
241QStringList CParameterWebBrowser::GetSearchEngineList() const
242{
243 return m_SearchEngineList;
244}
245
246void CParameterWebBrowser::SetSearchEngineList(const QStringList &newSearchEngineList)
247{
248 if(m_SearchEngineList == newSearchEngineList)
249 return;
250 m_SearchEngineList = newSearchEngineList;
251 SetModified(true);
252}
253
254bool CParameterWebBrowser::GetPromptPrintFinished() const
255{
256 return m_bPromptPrintFinished;
257}
258
259void CParameterWebBrowser::SetPromptPrintFinished(bool newPromptPrintFinished)
260{
261 if(m_bPromptPrintFinished == newPromptPrintFinished)
262 return;
263 m_bPromptPrintFinished = newPromptPrintFinished;
264 SetModified(true);
265}
266
267bool CParameterWebBrowser::GetAutoFillUserAndPassword() const
268{
269 return m_bAutoFillUserAndPassword;
270}
271
272void CParameterWebBrowser::SetAutoFillUserAndPassword(bool newAutoFillUserAndPassword)
273{
274 if(m_bAutoFillUserAndPassword == newAutoFillUserAndPassword)
275 return;
276 m_bAutoFillUserAndPassword = newAutoFillUserAndPassword;
277 SetModified(true);
278}
279
280int CParameterWebBrowser::GetDatabaseViewLimit() const
281{
282 return m_nDatabaseViewLimit;
283}
284
285void CParameterWebBrowser::SetDatabaseViewLimit(int newLimit)
286{
287 if(m_nDatabaseViewLimit == newLimit)
288 return;
289 m_nDatabaseViewLimit = newLimit;
290 SetModified(true);
291}
292
293int CParameterWebBrowser::GetAddCompleterLines() const
294{
295 return m_nAddCompleterLines;
296}
297
298void CParameterWebBrowser::SetAddCompleterLines(int newAddCompleterLines)
299{
300 if(m_nAddCompleterLines == newAddCompleterLines)
301 return;
302 m_nAddCompleterLines = newAddCompleterLines;
303 SetModified(true);
304}
305
306QSize CParameterWebBrowser::GetWindowSize() const
307{
308 return m_WindowSize;
309}
310
311void CParameterWebBrowser::SetWindowSize(const QSize &newWindowSize)
312{
313 if(m_WindowSize == newWindowSize)
314 return;
315 m_WindowSize = newWindowSize;
316 SetModified(true);
317}
318
319int CParameterWebBrowser::GetBookmarkCurrentFolder() const
320{
321 return m_nBookmarkCurrentFolder;
322}
323
324void CParameterWebBrowser::SetBookmarkCurrentFolder(int newCurrentBookmarkFolder)
325{
326 if(m_nBookmarkCurrentFolder == newCurrentBookmarkFolder)
327 return;
328 m_nBookmarkCurrentFolder = newCurrentBookmarkFolder;
329 SetModified(true);
330}
331
332bool CParameterWebBrowser::GetBookmarkShowEditor() const
333{
334 return m_bBookmarkShowEditor;
335}
336
337void CParameterWebBrowser::SetBookmarkShowEditor(bool newBookmarkShowEditor)
338{
339 if(m_bBookmarkShowEditor == newBookmarkShowEditor)
340 return;
341 m_bBookmarkShowEditor = newBookmarkShowEditor;
342 SetModified(true);
343}
操作参数接口。仅在插件内有效。
CParameterPlugin * GetGlobalParameters()
Get CParameterPlugin
插件的全局参数。
int SetModified(bool bModified=true)
在设置参数时,如果有修改,则调用。