Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
collectionconfiguration.cpp
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
6
7#include <QtHelp/QHelpEngineCore>
8
10
11using namespace Qt::StringLiterals;
12
13namespace {
14 const QString AboutIconKey("AboutIcon"_L1);
15 const QString AboutImagesKey("AboutImages"_L1);
16 const QString AboutMenuTextsKey("AboutMenuTexts"_L1);
17 const QString AboutTextsKey("AboutTexts"_L1);
18 const QString ApplicationIconKey("ApplicationIcon"_L1);
19 const QString CacheDirKey("CacheDirectory"_L1);
20 const QString CacheDirRelativeToCollectionKey("CacheDirRelativeToCollection"_L1);
21 const QString CreationTimeKey("CreationTime"_L1);
22 const QString DefaultHomePageKey("defaultHomepage"_L1);
23 const QString EnableAddressBarKey("EnableAddressBar"_L1);
24 const QString EnableDocManagerKey("EnableDocumentationManager"_L1);
25 const QString EnableFilterKey("EnableFilterFunctionality"_L1);
26 const QString HideAddressBarKey("HideAddressBar"_L1);
27 const QString FilterToolbarHiddenKey("HideFilterFunctionality"_L1);
28 const QString LastPageKey("LastTabPage"_L1);
29 const QString LastRegisterTime("LastRegisterTime"_L1);
30 const QString LastShownPagesKey("LastShownPages"_L1);
31 const QString LastZoomFactorsKey(
32#if defined(BROWSER_QTWEBKIT)
33 "LastPagesZoomWebView"_L1
34#else
35 "LastPagesZoomTextBrowser"_L1
36#endif
37 );
38 const QString WindowTitleKey("WindowTitle"_L1);
39 const QString FullTextSearchFallbackKey("FullTextSearchFallback"_L1);
40} // anonymous namespace
41
44
45uint CollectionConfiguration::creationTime(const QHelpEngineCore &helpEngine)
46{
47 return helpEngine.customValue(CreationTimeKey, 0).toUInt();
48}
49
50void CollectionConfiguration::setCreationTime(QHelpEngineCore &helpEngine, uint time)
51{
52 helpEngine.setCustomValue(CreationTimeKey, time);
53}
54
55const QString CollectionConfiguration::windowTitle(const QHelpEngineCore &helpEngine)
56{
57 return helpEngine.customValue(WindowTitleKey).toString();
58}
59
60void CollectionConfiguration::setWindowTitle(QHelpEngineCore &helpEngine,
61 const QString &windowTitle)
62{
63 helpEngine.setCustomValue(WindowTitleKey, windowTitle);
64}
65
66bool CollectionConfiguration::filterFunctionalityEnabled(const QHelpEngineCore &helpEngine)
67{
68 return helpEngine.customValue(EnableFilterKey, true).toBool();
69}
70
72 bool enabled)
73{
74 helpEngine.setCustomValue(EnableFilterKey, enabled);
75}
76
77bool CollectionConfiguration::filterToolbarVisible(const QHelpEngineCore &helpEngine)
78{
79 return !helpEngine.customValue(FilterToolbarHiddenKey, true).toBool();
80}
81
82void CollectionConfiguration::setFilterToolbarVisible(QHelpEngineCore &helpEngine,
83 bool visible)
84{
85 helpEngine.setCustomValue(FilterToolbarHiddenKey, !visible);
86}
87
88bool CollectionConfiguration::addressBarEnabled(const QHelpEngineCore &helpEngine)
89{
90 return helpEngine.customValue(EnableAddressBarKey, true).toBool();
91}
92
93void CollectionConfiguration::setAddressBarEnabled(QHelpEngineCore &helpEngine,
94 bool enabled)
95{
96 helpEngine.setCustomValue(EnableAddressBarKey, enabled);
97}
98
99bool CollectionConfiguration::addressBarVisible(const QHelpEngineCore &helpEngine)
100{
101 return !helpEngine.customValue(HideAddressBarKey, true).toBool();
102}
103
104void CollectionConfiguration::setAddressBarVisible(QHelpEngineCore &helpEngine,
105 bool visible)
106{
107 helpEngine.setCustomValue(HideAddressBarKey, !visible);
108}
109
110const QString CollectionConfiguration::cacheDir(const QHelpEngineCore &helpEngine)
111{
112 return helpEngine.customValue(CacheDirKey).toString();
113}
114
115bool CollectionConfiguration::cacheDirIsRelativeToCollection(const QHelpEngineCore &helpEngine)
116{
117 return helpEngine.customValue(CacheDirRelativeToCollectionKey).toBool();
118}
119
120void CollectionConfiguration::setCacheDir(QHelpEngineCore &helpEngine,
121 const QString &cacheDir, bool relativeToCollection)
122{
123 helpEngine.setCustomValue(CacheDirKey, cacheDir);
124 helpEngine.setCustomValue(CacheDirRelativeToCollectionKey,
125 relativeToCollection);
126}
127
128bool CollectionConfiguration::documentationManagerEnabled(const QHelpEngineCore &helpEngine)
129{
130 return helpEngine.customValue(EnableDocManagerKey, true).toBool();
131}
132
134 bool enabled)
135{
136 helpEngine.setCustomValue(EnableDocManagerKey, enabled);
137}
138
139const QByteArray CollectionConfiguration::applicationIcon(const QHelpEngineCore &helpEngine)
140{
141 return helpEngine.customValue(ApplicationIconKey).toByteArray();
142}
143
144void CollectionConfiguration::setApplicationIcon(QHelpEngineCore &helpEngine,
145 const QByteArray &icon)
146{
147 helpEngine.setCustomValue(ApplicationIconKey, icon);
148}
149
150const QByteArray CollectionConfiguration::aboutMenuTexts(const QHelpEngineCore &helpEngine)
151{
152 return helpEngine.customValue(AboutMenuTextsKey).toByteArray();
153}
154
155void CollectionConfiguration::setAboutMenuTexts(QHelpEngineCore &helpEngine,
156 const QByteArray &texts)
157{
158 helpEngine.setCustomValue(AboutMenuTextsKey, texts);
159}
160
161const QByteArray CollectionConfiguration::aboutIcon(const QHelpEngineCore &helpEngine)
162{
163 return helpEngine.customValue(AboutIconKey).toByteArray();
164}
165
166void CollectionConfiguration::setAboutIcon(QHelpEngineCore &helpEngine,
167 const QByteArray &icon)
168{
169 helpEngine.setCustomValue(AboutIconKey, icon);
170}
171
172const QByteArray CollectionConfiguration::aboutTexts(const QHelpEngineCore &helpEngine)
173{
174 return helpEngine.customValue(AboutTextsKey).toByteArray();
175}
176
177void CollectionConfiguration::setAboutTexts(QHelpEngineCore &helpEngine,
178 const QByteArray &texts)
179{
180 helpEngine.setCustomValue(AboutTextsKey, texts);
181}
182
183const QByteArray CollectionConfiguration::aboutImages(const QHelpEngineCore &helpEngine)
184{
185 return helpEngine.customValue(AboutImagesKey).toByteArray();
186}
187
188void CollectionConfiguration::setAboutImages(QHelpEngineCore &helpEngine,
189 const QByteArray &images)
190{
191 helpEngine.setCustomValue(AboutImagesKey, images);
192}
193
194const QString CollectionConfiguration::defaultHomePage(const QHelpEngineCore &helpEngine)
195{
196 return helpEngine.customValue(DefaultHomePageKey, "help"_L1).toString();
197}
198
199void CollectionConfiguration::setDefaultHomePage(QHelpEngineCore &helpEngine,
200 const QString &page)
201{
202 helpEngine.setCustomValue(DefaultHomePageKey, page);
203}
204
205const QStringList CollectionConfiguration::lastShownPages(const QHelpEngineCore &helpEngine)
206{
207 return helpEngine.customValue(LastShownPagesKey).toString().
208 split(ListSeparator, Qt::SkipEmptyParts);
209}
210
211void CollectionConfiguration::setLastShownPages(QHelpEngineCore &helpEngine,
212 const QStringList &lastShownPages)
213{
214 helpEngine.setCustomValue(LastShownPagesKey,
215 lastShownPages.join(ListSeparator));
216}
217
218const QStringList CollectionConfiguration::lastZoomFactors(const QHelpEngineCore &helpEngine)
219{
220 return helpEngine.customValue(LastZoomFactorsKey).toString().
221 split(ListSeparator, Qt::SkipEmptyParts);
222}
223
224void CollectionConfiguration::setLastZoomFactors(QHelpEngineCore &helpEngine,
225 const QStringList &lastZoomFactors)
226{
227 helpEngine.setCustomValue(LastZoomFactorsKey,
228 lastZoomFactors.join(ListSeparator));
229}
230
231int CollectionConfiguration::lastTabPage(const QHelpEngineCore &helpEngine)
232{
233 return helpEngine.customValue(LastPageKey, 1).toInt();
234}
235
236void CollectionConfiguration::setLastTabPage(QHelpEngineCore &helpEngine,
237 int lastPage)
238{
239 helpEngine.setCustomValue(LastPageKey, lastPage);
240}
241
242const QDateTime CollectionConfiguration::lastRegisterTime(const QHelpEngineCore &helpEngine)
243{
244 return helpEngine.customValue(LastRegisterTime, QDateTime()).toDateTime();
245}
246
247void CollectionConfiguration::updateLastRegisterTime(QHelpEngineCore &helpEngine, QDateTime dt)
248{
249 helpEngine.setCustomValue(LastRegisterTime, dt);
250}
251
252void CollectionConfiguration::updateLastRegisterTime(QHelpEngineCore &helpEngine)
253{
254 updateLastRegisterTime(helpEngine, QDateTime::currentDateTime());
255}
256
257bool CollectionConfiguration::isNewer(const QHelpEngineCore &newer,
258 const QHelpEngineCore &older)
259{
260 return creationTime(newer) > creationTime(older);
261}
262
263void CollectionConfiguration::copyConfiguration(const QHelpEngineCore &source,
264 QHelpEngineCore &target)
265{
266 setCreationTime(target, creationTime(source));
267 setWindowTitle(target, windowTitle(source));
268 target.setCurrentFilter(source.currentFilter());
269 setCacheDir(target, cacheDir(source), cacheDirIsRelativeToCollection(source));
275 setApplicationIcon(target, applicationIcon(source));
276 setAboutMenuTexts(target, aboutMenuTexts(source));
277 setAboutIcon(target, aboutIcon(source));
278 setAboutTexts(target, aboutTexts(source));
279 setAboutImages(target, aboutImages(source));
280 setDefaultHomePage(target, defaultHomePage(source));
282}
283
285 const QHelpEngineCore &helpEngine)
286{
287 return helpEngine.customValue(FullTextSearchFallbackKey, false).toBool();
288}
289
291 QHelpEngineCore &helpEngine, bool on)
292{
293 helpEngine.setCustomValue(FullTextSearchFallbackKey, on);
294}
295
296QT_END_NAMESPACE
static void setFullTextSearchFallbackEnabled(QHelpEngineCore &helpEngine, bool on)
static bool filterFunctionalityEnabled(const QHelpEngineCore &helpEngine)
static bool isNewer(const QHelpEngineCore &newer, const QHelpEngineCore &older)
static void setLastTabPage(QHelpEngineCore &helpEngine, int lastPage)
static bool addressBarVisible(const QHelpEngineCore &helpEngine)
static bool addressBarEnabled(const QHelpEngineCore &helpEngine)
static void setAddressBarVisible(QHelpEngineCore &helpEngine, bool visible)
static void setDocumentationManagerEnabled(QHelpEngineCore &helpEngine, bool enabled)
static bool documentationManagerEnabled(const QHelpEngineCore &helpEngine)
static void copyConfiguration(const QHelpEngineCore &source, QHelpEngineCore &target)
static void setAddressBarEnabled(QHelpEngineCore &helpEngine, bool enabled)
static const QString ListSeparator
static const QString DefaultZoomFactor
static void updateLastRegisterTime(QHelpEngineCore &helpEngine)
static int lastTabPage(const QHelpEngineCore &helpEngine)
static bool cacheDirIsRelativeToCollection(const QHelpEngineCore &helpEngine)
static void setFilterToolbarVisible(QHelpEngineCore &helpEngine, bool visible)
static void setFilterFunctionalityEnabled(QHelpEngineCore &helpEngine, bool enabled)
static bool filterToolbarVisible(const QHelpEngineCore &helpEngine)
static bool fullTextSearchFallbackEnabled(const QHelpEngineCore &helpEngine)
Combined button and popup list for selecting options.