1 /* ============================================================
2  *
3  * This file is a part of digiKam project
4  * https://www.digikam.org
5  *
6  * Date        : 2003-16-10
7  * Description : application settings interface
8  *
9  * Copyright (C) 2003-2021 by Gilles Caulier <caulier dot gilles at gmail dot com>
10  * Copyright (C) 2015      by Mohamed_Anwer <m_dot_anwer at gmx dot com>
11  * Copyright (C) 2017      by Simon Frei <freisim93 at gmail dot com>
12  *
13  * This program is free software; you can redistribute it
14  * and/or modify it under the terms of the GNU General
15  * Public License as published by the Free Software Foundation;
16  * either version 2, or (at your option)
17  * any later version.
18  *
19  * This program is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22  * GNU General Public License for more details.
23  *
24  * ============================================================ */
25 
26 #include "applicationsettings_p.h"
27 
28 namespace Digikam
29 {
30 
31 const QString ApplicationSettings::Private::configGroupDefault(QLatin1String("Album Settings"));
32 const QString ApplicationSettings::Private::configGroupExif(QLatin1String("EXIF Settings"));
33 const QString ApplicationSettings::Private::configGroupMetadata(QLatin1String("Metadata Settings"));
34 const QString ApplicationSettings::Private::configGroupBaloo(QLatin1String("Baloo Settings"));
35 const QString ApplicationSettings::Private::configGroupGeneral(QLatin1String("General Settings"));
36 const QString ApplicationSettings::Private::configGroupVersioning(QLatin1String("Versioning Settings"));
37 const QString ApplicationSettings::Private::configGroupFaceDetection(QLatin1String("Face Detection Settings"));
38 const QString ApplicationSettings::Private::configGroupDuplicatesSearch(QLatin1String("Find Duplicates View"));
39 const QString ApplicationSettings::Private::configGroupGrouping(QLatin1String("Grouping Behaviour"));
40 const QString ApplicationSettings::Private::configAlbumCollectionsEntry(QLatin1String("Album Collections"));
41 const QString ApplicationSettings::Private::configAlbumMonitoringEntry(QLatin1String("Album Monitoring"));
42 const QString ApplicationSettings::Private::configAlbumSortRoleEntry(QLatin1String("Album Sort Role"));
43 const QString ApplicationSettings::Private::configImageSortOrderEntry(QLatin1String("Image Sort Order"));
44 const QString ApplicationSettings::Private::configImageSortingEntry(QLatin1String("Image Sorting"));
45 const QString ApplicationSettings::Private::configImageSeparationModeEntry(QLatin1String("Image Group Mode"));
46 const QString ApplicationSettings::Private::configImageSeparationSortOrderEntry(QLatin1String("Image Group Sort Order"));
47 const QString ApplicationSettings::Private::configItemLeftClickActionEntry(QLatin1String("Item Left Click Action"));
48 const QString ApplicationSettings::Private::configDefaultIconSizeEntry(QLatin1String("Default Icon Size"));
49 const QString ApplicationSettings::Private::configDefaultTreeIconSizeEntry(QLatin1String("Default Tree Icon Size"));
50 const QString ApplicationSettings::Private::configDefaultTreeFaceSizeEntry(QLatin1String("Default Tree Face Size"));
51 const QString ApplicationSettings::Private::configTreeViewFontEntry(QLatin1String("TreeView Font"));
52 const QString ApplicationSettings::Private::configThemeEntry(QLatin1String("Theme"));
53 const QString ApplicationSettings::Private::configUpdateType(QLatin1String("Update Type"));
54 const QString ApplicationSettings::Private::configUpdateWithDebug(QLatin1String("Update With Debug"));
55 const QString ApplicationSettings::Private::configSidebarTitleStyleEntry(QLatin1String("Sidebar Title Style"));
56 const QString ApplicationSettings::Private::configRatingFilterConditionEntry(QLatin1String("Rating Filter Condition"));
57 const QString ApplicationSettings::Private::configRecursiveAlbumsEntry(QLatin1String("Recursive Albums"));
58 const QString ApplicationSettings::Private::configRecursiveTagsEntry(QLatin1String("Recursive Tags"));
59 const QString ApplicationSettings::Private::configAllGroupsOpenEntry(QLatin1String("All Groups Open"));
60 const QString ApplicationSettings::Private::configIconShowNameEntry(QLatin1String("Icon Show Name"));
61 const QString ApplicationSettings::Private::configIconShowResolutionEntry(QLatin1String("Icon Show Resolution"));
62 const QString ApplicationSettings::Private::configIconShowSizeEntry(QLatin1String("Icon Show Size"));
63 const QString ApplicationSettings::Private::configIconShowDateEntry(QLatin1String("Icon Show Date"));
64 const QString ApplicationSettings::Private::configIconShowModificationDateEntry(QLatin1String("Icon Show Modification Date"));
65 const QString ApplicationSettings::Private::configIconShowTitleEntry(QLatin1String("Icon Show Title"));
66 const QString ApplicationSettings::Private::configIconShowCommentsEntry(QLatin1String("Icon Show Comments"));
67 const QString ApplicationSettings::Private::configIconShowTagsEntry(QLatin1String("Icon Show Tags"));
68 const QString ApplicationSettings::Private::configIconShowRatingEntry(QLatin1String("Icon Show Rating"));
69 const QString ApplicationSettings::Private::configIconShowImageFormatEntry(QLatin1String("Icon Show Image Format"));
70 const QString ApplicationSettings::Private::configIconShowCoordinatesEntry(QLatin1String("Icon Show Coordinates"));
71 const QString ApplicationSettings::Private::configIconShowAspectRatioEntry(QLatin1String("Icon Show Aspect Ratio"));
72 const QString ApplicationSettings::Private::configIconShowOverlaysEntry(QLatin1String("Icon Show Overlays"));
73 const QString ApplicationSettings::Private::configIconShowFullscreenEntry(QLatin1String("Icon Show Fullscreen"));
74 const QString ApplicationSettings::Private::configIconViewFontEntry(QLatin1String("IconView Font"));
75 const QString ApplicationSettings::Private::configToolTipsFontEntry(QLatin1String("ToolTips Font"));
76 const QString ApplicationSettings::Private::configShowToolTipsEntry(QLatin1String("Show ToolTips"));
77 const QString ApplicationSettings::Private::configToolTipsShowFileNameEntry(QLatin1String("ToolTips Show File Name"));
78 const QString ApplicationSettings::Private::configToolTipsShowFileDateEntry(QLatin1String("ToolTips Show File Date"));
79 const QString ApplicationSettings::Private::configToolTipsShowFileSizeEntry(QLatin1String("ToolTips Show File Size"));
80 const QString ApplicationSettings::Private::configToolTipsShowImageTypeEntry(QLatin1String("ToolTips Show Image Type"));
81 const QString ApplicationSettings::Private::configToolTipsShowImageDimEntry(QLatin1String("ToolTips Show Image Dim"));
82 const QString ApplicationSettings::Private::configToolTipsShowImageAREntry(QLatin1String("ToolTips Show Image AR"));
83 const QString ApplicationSettings::Private::configToolTipsShowPhotoMakeEntry(QLatin1String("ToolTips Show Photo Make"));
84 const QString ApplicationSettings::Private::configToolTipsShowPhotoLensEntry(QLatin1String("ToolTips Show Photo Lens"));
85 const QString ApplicationSettings::Private::configToolTipsShowPhotoDateEntry(QLatin1String("ToolTips Show Photo Date"));
86 const QString ApplicationSettings::Private::configToolTipsShowPhotoFocalEntry(QLatin1String("ToolTips Show Photo Focal"));
87 const QString ApplicationSettings::Private::configToolTipsShowPhotoExpoEntry(QLatin1String("ToolTips Show Photo Expo"));
88 const QString ApplicationSettings::Private::configToolTipsShowPhotoModeEntry(QLatin1String("ToolTips Show Photo Mode"));
89 const QString ApplicationSettings::Private::configToolTipsShowPhotoFlashEntry(QLatin1String("ToolTips Show Photo Flash"));
90 const QString ApplicationSettings::Private::configToolTipsShowPhotoWBEntry(QLatin1String("ToolTips Show Photo WB"));
91 const QString ApplicationSettings::Private::configToolTipsShowAlbumNameEntry(QLatin1String("ToolTips Show Album Name"));
92 const QString ApplicationSettings::Private::configToolTipsShowTitlesEntry(QLatin1String("ToolTips Show Titles"));
93 const QString ApplicationSettings::Private::configToolTipsShowCommentsEntry(QLatin1String("ToolTips Show Comments"));
94 const QString ApplicationSettings::Private::configToolTipsShowTagsEntry(QLatin1String("ToolTips Show Tags"));
95 const QString ApplicationSettings::Private::configToolTipsShowLabelRatingEntry(QLatin1String("ToolTips Show Label Rating"));
96 const QString ApplicationSettings::Private::configToolTipsShowVideoAspectRatioEntry(QLatin1String("ToolTips Show Video Aspect Ratio"));
97 const QString ApplicationSettings::Private::configToolTipsShowVideoAudioBitRateEntry(QLatin1String("ToolTips Show Audio Bit Rate"));
98 const QString ApplicationSettings::Private::configToolTipsShowVideoAudioChannelTypeEntry(QLatin1String("ToolTips Show Audio Channel Type"));
99 const QString ApplicationSettings::Private::configToolTipsShowVideoAudioCodecEntry(QLatin1String("ToolTips Show Audio Codec"));
100 const QString ApplicationSettings::Private::configToolTipsShowVideoDurationEntry(QLatin1String("ToolTips Show Video Duration"));
101 const QString ApplicationSettings::Private::configToolTipsShowVideoFrameRateEntry(QLatin1String("ToolTips Show Video Frame Rate"));
102 const QString ApplicationSettings::Private::configToolTipsShowVideoVideoCodecEntry(QLatin1String("ToolTips Show Video Codec"));
103 const QString ApplicationSettings::Private::configShowAlbumToolTipsEntry(QLatin1String("Show Album ToolTips"));
104 const QString ApplicationSettings::Private::configToolTipsShowAlbumTitleEntry(QLatin1String("ToolTips Show Album Title"));
105 const QString ApplicationSettings::Private::configToolTipsShowAlbumDateEntry(QLatin1String("ToolTips Show Album Date"));
106 const QString ApplicationSettings::Private::configToolTipsShowAlbumCollectionEntry(QLatin1String("ToolTips Show Album Collection"));
107 const QString ApplicationSettings::Private::configToolTipsShowAlbumCategoryEntry(QLatin1String("ToolTips Show Album Category"));
108 const QString ApplicationSettings::Private::configToolTipsShowAlbumCaptionEntry(QLatin1String("ToolTips Show Album Caption"));
109 const QString ApplicationSettings::Private::configToolTipsShowAlbumPreviewEntry(QLatin1String("ToolTips Show Album Preview"));
110 const QString ApplicationSettings::Private::configPreviewLoadFullItemSizeEntry(QLatin1String("Preview Load Full Image Size"));
111 const QString ApplicationSettings::Private::configPreviewRawUseEmbeddedPreview(QLatin1String("Preview Raw Use Embedded Preview"));
112 const QString ApplicationSettings::Private::configPreviewRawUseHalfSizeData(QLatin1String("Preview Raw Use Half Size Data"));
113 const QString ApplicationSettings::Private::configPreviewConvertToEightBitEntry(QLatin1String("Preview Convert To Eight Bit"));
114 const QString ApplicationSettings::Private::configPreviewShowIconsEntry(QLatin1String("Preview Show Icons"));
115 const QString ApplicationSettings::Private::configShowThumbbarEntry(QLatin1String("Show Thumbbar"));
116 const QString ApplicationSettings::Private::configShowFolderTreeViewItemsCountEntry(QLatin1String("Show Folder Tree View Items Count"));
117 const QString ApplicationSettings::Private::configShowSplashEntry(QLatin1String("Show Splash"));
118 const QString ApplicationSettings::Private::configUseTrashEntry(QLatin1String("Use Trash"));
119 const QString ApplicationSettings::Private::configShowTrashDeleteDialogEntry(QLatin1String("Show Trash Delete Dialog"));
120 const QString ApplicationSettings::Private::configShowPermanentDeleteDialogEntry(QLatin1String("Show Permanent Delete Dialog"));
121 const QString ApplicationSettings::Private::configApplySidebarChangesDirectlyEntry(QLatin1String("Apply Sidebar Changes Directly"));
122 const QString ApplicationSettings::Private::configUseNativeFileDialogEntry(QLatin1String("Use Native File Dialog"));
123 const QString ApplicationSettings::Private::configDrawFramesToGroupedEntry(QLatin1String("Draw Frames To Grouped Items"));
124 const QString ApplicationSettings::Private::configExpandNewCurrentItemEntry(QLatin1String("Expand New Current Item On Click"));
125 const QString ApplicationSettings::Private::configScrollItemToCenterEntry(QLatin1String("Scroll Current Item To Center"));
126 const QString ApplicationSettings::Private::configShowOnlyPersonTagsInPeopleSidebarEntry(QLatin1String("Show Only Face Tags For Assigning Name"));
127 const QString ApplicationSettings::Private::configSyncBalootoDigikamEntry(QLatin1String("Sync Baloo to Digikam"));
128 const QString ApplicationSettings::Private::configSyncDigikamtoBalooEntry(QLatin1String("Sync Digikam to Baloo"));
129 const QString ApplicationSettings::Private::configStringComparisonTypeEntry(QLatin1String("String Comparison Type"));
130 const QString ApplicationSettings::Private::configFaceDetectionAccuracyEntry(QLatin1String("Detection Accuracy"));
131 const QString ApplicationSettings::Private::configFaceDetectionYoloV3Entry(QLatin1String("Use Yolo V3"));
132 const QString ApplicationSettings::Private::configApplicationStyleEntry(QLatin1String("Application Style"));
133 const QString ApplicationSettings::Private::configIconThemeEntry(QLatin1String("Icon Theme"));
134 const QString ApplicationSettings::Private::configApplicationFontEntry(QLatin1String("Application Font"));
135 const QString ApplicationSettings::Private::configScanAtStartEntry(QLatin1String("Scan At Start"));
136 const QString ApplicationSettings::Private::configCleanAtStartEntry(QLatin1String("Clean core DB At Start"));
137 const QString ApplicationSettings::Private::configMinimumSimilarityBound(QLatin1String("Lower bound for minimum similarity"));
138 const QString ApplicationSettings::Private::configDuplicatesSearchLastMinSimilarity(QLatin1String("Last minimum similarity"));
139 const QString ApplicationSettings::Private::configDuplicatesSearchLastMaxSimilarity(QLatin1String("Last maximum similarity"));
140 const QString ApplicationSettings::Private::configDuplicatesSearchLastAlbumTagRelation(QLatin1String("Last search album tag relation"));
141 const QString ApplicationSettings::Private::configDuplicatesSearchLastRestrictions(QLatin1String("Last search results restriction"));
142 const ApplicationSettings::OperationStrings ApplicationSettings::Private::configGroupingOperateOnAll =
143         ApplicationSettings::Private::createConfigGroupingOperateOnAll();
144 
createConfigGroupingOperateOnAll()145 ApplicationSettings::OperationStrings ApplicationSettings::Private::createConfigGroupingOperateOnAll()
146 {
147     ApplicationSettings::OperationStrings out;
148     out.insert(ApplicationSettings::Metadata,     QLatin1String("Do metadata operations on all"));
149     out.insert(ApplicationSettings::ImportExport, QLatin1String("Do Import Export operations on all"));
150     out.insert(ApplicationSettings::BQM,          QLatin1String("Do BQM operations on all"));
151     out.insert(ApplicationSettings::LightTable,   QLatin1String("Do light table operations on all"));
152     out.insert(ApplicationSettings::Slideshow,    QLatin1String("Do slideshow operations on all"));
153     out.insert(ApplicationSettings::Rename,       QLatin1String("Rename all"));
154     out.insert(ApplicationSettings::Tools,        QLatin1String("Operate tools on all"));
155 
156     return out;
157 }
158 
Private(ApplicationSettings * const qq)159 ApplicationSettings::Private::Private(ApplicationSettings* const qq)
160     : showSplash                            (false),
161       useTrash                              (false),
162       showTrashDeleteDialog                 (false),
163       showPermanentDeleteDialog             (false),
164       sidebarApplyDirectly                  (false),
165       useNativeFileDialog                   (false),
166       drawFramesToGrouped                   (true),
167       expandNewCurrentItem                  (false),
168       scrollItemToCenter                    (false),
169       showOnlyPersonTagsInPeopleSidebar     (false),
170       iconShowName                          (false),
171       iconShowSize                          (false),
172       iconShowDate                          (false),
173       iconShowModDate                       (false),
174       iconShowTitle                         (false),
175       iconShowComments                      (false),
176       iconShowResolution                    (false),
177       iconShowTags                          (false),
178       iconShowOverlays                      (false),
179       iconShowFullscreen                    (false),
180       iconShowRating                        (false),
181       iconShowImageFormat                   (false),
182       iconShowCoordinates                   (false),
183       iconShowAspectRatio                   (false),
184       showToolTips                          (false),
185       tooltipShowFileName                   (false),
186       tooltipShowFileDate                   (false),
187       tooltipShowFileSize                   (false),
188       tooltipShowImageType                  (false),
189       tooltipShowImageDim                   (false),
190       tooltipShowImageAR                    (false),
191       tooltipShowPhotoMake                  (false),
192       tooltipShowPhotoLens                  (false),
193       tooltipShowPhotoDate                  (false),
194       tooltipShowPhotoFocal                 (false),
195       tooltipShowPhotoExpo                  (false),
196       tooltipShowPhotoMode                  (false),
197       tooltipShowPhotoFlash                 (false),
198       tooltipShowPhotoWb                    (false),
199       tooltipShowAlbumName                  (false),
200       tooltipShowTitles                     (false),
201       tooltipShowComments                   (false),
202       tooltipShowTags                       (false),
203       tooltipShowLabelRating                (false),
204       tooltipShowVideoAspectRatio           (false),
205       tooltipShowVideoAudioBitRate          (false),
206       tooltipShowVideoAudioChannelType      (false),
207       tooltipShowVideoAudioCodec            (false),
208       tooltipShowVideoDuration              (false),
209       tooltipShowVideoFrameRate             (false),
210       tooltipShowVideoVideoCodec            (false),
211       showAlbumToolTips                     (false),
212       tooltipShowAlbumTitle                 (false),
213       tooltipShowAlbumDate                  (false),
214       tooltipShowAlbumCollection            (false),
215       tooltipShowAlbumCategory              (false),
216       tooltipShowAlbumCaption               (false),
217       tooltipShowAlbumPreview               (false),
218       previewShowIcons                      (true),
219       showThumbbar                          (false),
220       showFolderTreeViewItemsCount          (false),
221       treeThumbnailSize                     (0),
222       treeThumbFaceSize                     (0),
223       thumbnailSize                         (0),
224       ratingFilterCond                      (0),
225       recursiveAlbums                       (false),
226       recursiveTags                         (false),
227       allGroupsOpen                         (false),
228       scanAtStart                           (true),
229       cleanAtStart                          (true),
230       databaseDirSetAtCmd                   (false),
231       albumMonitoring                       (false),
232       updateType                            (0),
233       updateWithDebug                       (false),
234       sidebarTitleStyle                     (DMultiTabBar::AllIconsText),
235       albumSortRole                         (ApplicationSettings::ByFolder),
236       albumSortChanged                      (false),
237       imageSortOrder                        (0),
238       imageSorting                          (0),
239       imageSeparationMode                   (0),
240       imageSeparationSortOrder              (0),
241       itemLeftClickAction                   (ApplicationSettings::ShowPreview),
242       syncToDigikam                         (false),
243       syncToBaloo                           (false),
244       faceDetectionAccuracy                 (0.7),
245       faceDetectionYoloV3                   (false),
246       stringComparisonType                  (ApplicationSettings::Natural),
247       minimumSimilarityBound                (40),
248       duplicatesSearchLastMinSimilarity     (90),
249       duplicatesSearchLastMaxSimilarity     (100),
250       duplicatesSearchLastAlbumTagRelation  (0),
251       duplicatesSearchLastRestrictions      (0),
252       groupingOperateOnAll                  (ApplicationSettings::OperationModes()),
253       q                                     (qq)
254 {
255     for (int i = 0 ; i != ApplicationSettings::Unspecified ; ++i)
256     {
257         groupingOperateOnAll.insert((ApplicationSettings::OperationType)i,
258                 ApplicationSettings::Ask);
259     }
260 }
261 
~Private()262 ApplicationSettings::Private::~Private()
263 {
264 }
265 
init()266 void ApplicationSettings::Private::init()
267 {
268     albumCategoryNames.clear();
269     albumCategoryNames.append(i18nc("@item: album categories", "Category"));
270     albumCategoryNames.append(i18nc("@item: album categories", "Travel"));
271     albumCategoryNames.append(i18nc("@item: album categories", "Holidays"));
272     albumCategoryNames.append(i18nc("@item: album categories", "Friends"));
273     albumCategoryNames.append(i18nc("@item: album categories", "Nature"));
274     albumCategoryNames.append(i18nc("@item: album categories", "Party"));
275     albumCategoryNames.append(i18nc("@item: album categories", "Todo"));
276     albumCategoryNames.append(i18nc("@item: album categories", "Miscellaneous"));
277     albumCategoryNames.sort();
278 
279     albumSortRole                        = ApplicationSettings::ByFolder;
280     imageSortOrder                       = ItemSortSettings::SortByFileName;
281     imageSorting                         = ItemSortSettings::AscendingOrder;
282     imageSeparationMode                  = ItemSortSettings::CategoryByAlbum;
283     imageSeparationSortOrder             = ItemSortSettings::AscendingOrder;
284 
285     itemLeftClickAction                  = ApplicationSettings::ShowPreview;
286 
287     thumbnailSize                        = ThumbnailSize::Medium;
288     treeThumbnailSize                    = 22;
289     treeThumbFaceSize                    = 48;
290     treeviewFont                         = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
291 
292     updateType                           = 0;
293     updateWithDebug                      = false;
294     sidebarTitleStyle                    = DMultiTabBar::AllIconsText;
295 
296     ratingFilterCond                     = ItemFilterSettings::GreaterEqualCondition;
297 
298     showSplash                           = true;
299     useTrash                             = true;
300     showTrashDeleteDialog                = true;
301     showPermanentDeleteDialog            = true;
302     sidebarApplyDirectly                 = false;
303     useNativeFileDialog                  = false;
304     drawFramesToGrouped                  = true;
305     expandNewCurrentItem                 = true;
306     scrollItemToCenter                   = false;
307     showOnlyPersonTagsInPeopleSidebar    = false;
308 
309     iconShowName                         = true;
310     iconShowSize                         = false;
311     iconShowDate                         = true;
312     iconShowModDate                      = false;
313     iconShowTitle                        = true;
314     iconShowComments                     = true;
315     iconShowResolution                   = false;
316     iconShowAspectRatio                  = false;
317     iconShowTags                         = true;
318     iconShowOverlays                     = true;
319     iconShowFullscreen                   = true;
320     iconShowRating                       = true;
321     iconShowImageFormat                  = true;
322     iconShowCoordinates                  = true;
323     iconviewFont                         = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
324     toolTipsFont                         = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
325     showToolTips                         = false;
326     tooltipShowFileName                  = true;
327     tooltipShowFileDate                  = false;
328     tooltipShowFileSize                  = false;
329     tooltipShowImageType                 = false;
330     tooltipShowImageDim                  = true;
331     tooltipShowImageAR                   = true;
332     tooltipShowPhotoMake                 = true;
333     tooltipShowPhotoLens                 = true;
334     tooltipShowPhotoDate                 = true;
335     tooltipShowPhotoFocal                = true;
336     tooltipShowPhotoExpo                 = true;
337     tooltipShowPhotoMode                 = true;
338     tooltipShowPhotoFlash                = false;
339     tooltipShowPhotoWb                   = false;
340     tooltipShowAlbumName                 = false;
341     tooltipShowTitles                    = false;
342     tooltipShowComments                  = true;
343     tooltipShowTags                      = true;
344     tooltipShowLabelRating               = true;
345 
346     tooltipShowVideoAspectRatio          = true;
347     tooltipShowVideoAudioBitRate         = true;
348     tooltipShowVideoAudioChannelType     = true;
349     tooltipShowVideoAudioCodec           = true;
350     tooltipShowVideoDuration             = true;
351     tooltipShowVideoFrameRate            = true;
352     tooltipShowVideoVideoCodec           = true;
353 
354     showAlbumToolTips                    = false;
355     tooltipShowAlbumTitle                = true;
356     tooltipShowAlbumDate                 = true;
357     tooltipShowAlbumCollection           = true;
358     tooltipShowAlbumCategory             = true;
359     tooltipShowAlbumCaption              = true;
360     tooltipShowAlbumPreview              = false;
361 
362     previewShowIcons                     = true;
363     showThumbbar                         = true;
364 
365     recursiveAlbums                      = false;
366     recursiveTags                        = true;
367     allGroupsOpen                        = false;
368 
369     showFolderTreeViewItemsCount         = false;
370 
371     syncToDigikam                        = false;
372     syncToBaloo                          = false;
373     albumSortChanged                     = false;
374 
375     faceDetectionAccuracy                = 0.7;
376     faceDetectionYoloV3                  = false;
377 
378     minimumSimilarityBound               = 40;
379     duplicatesSearchLastMinSimilarity    = 90;
380     duplicatesSearchLastMaxSimilarity    = 100;
381     duplicatesSearchLastAlbumTagRelation = 0;
382     duplicatesSearchLastRestrictions     = 0;
383 
384     scanAtStart                          = true;
385     cleanAtStart                         = true;
386     databaseDirSetAtCmd                  = false;
387     albumMonitoring                      = false;
388     stringComparisonType                 = ApplicationSettings::Natural;
389 
390     applicationStyle                     = qApp->style()->objectName();
391     applicationIcon                      = QString();
392     applicationFont                      = QFontDatabase::systemFont(QFontDatabase::GeneralFont);
393 
394     for (int i = 0 ; i != ApplicationSettings::Unspecified ; ++i)
395     {
396         groupingOperateOnAll.insert((ApplicationSettings::OperationType)i,
397                                     ApplicationSettings::Ask);
398     }
399 
400     q->connect(q, SIGNAL(balooSettingsChanged()),
401                q, SLOT(applyBalooSettings()));
402 }
403 
404 } // namespace Digikam
405