digiKam
Loading...
Searching...
No Matches
versionmanagersettings.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2010-12-20
7 * Description : settings container for versioning
8 *
9 * SPDX-FileCopyrightText: 2010-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 * SPDX-FileCopyrightText: 2010 by Martin Klapetek <martin dot klapetek at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Qt includes
19
20#include <QFlags>
21#include <QString>
22
23// Local includes
24
25#include "digikam_export.h"
26
27class KConfigGroup;
28
29namespace Digikam
30{
31
32class DIGIKAM_EXPORT VersionManagerSettings
33{
34public:
35
37 {
38 NoIntermediates = 0,
39 AfterEachSession = 1 << 0,
40 AfterRawConversion = 1 << 1,
41 WhenNotReproducible = 1 << 2
42 };
43 Q_DECLARE_FLAGS(IntermediateBehavior, IntermediateSavepoint)
44
46 {
47 OnlyShowCurrent = 0,
48 ShowOriginal = 1 << 0,
49 ShowIntermediates = 1 << 1
50 };
51 Q_DECLARE_FLAGS(ShowInViewFlags, ShowInViewFlag)
52
54 {
56 AutoSave
57 };
58
59public:
60
62
63 void readFromConfig(const KConfigGroup& group);
64 void writeToConfig(KConfigGroup& group) const;
65
66public:
67
68 bool enabled = true;
69
70 IntermediateBehavior saveIntermediateVersions = NoIntermediates;
71 ShowInViewFlags showInViewFlags = ShowOriginal;
72 EditorClosingMode editorClosingMode = AlwaysAsk;
73
75 QString format = QLatin1String("JPG");
76};
77
78} // namespace Digikam
79
80Q_DECLARE_OPERATORS_FOR_FLAGS(Digikam::VersionManagerSettings::IntermediateBehavior)
81Q_DECLARE_OPERATORS_FOR_FLAGS(Digikam::VersionManagerSettings::ShowInViewFlags)
Definition versionmanagersettings.h:33
IntermediateSavepoint
Definition versionmanagersettings.h:37
ShowInViewFlag
Definition versionmanagersettings.h:46
EditorClosingMode
Definition versionmanagersettings.h:54
@ AlwaysAsk
Definition versionmanagersettings.h:55
Definition datefolderview.cpp:34