digiKam
Loading...
Searching...
No Matches
iccsettings.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 : 2009-08-09
7 * Description : central place for ICC settings
8 *
9 * SPDX-FileCopyrightText: 2005-2006 by F.J. Cruz <fj dot cruz at supercable dot es>
10 * SPDX-FileCopyrightText: 2005-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 * SPDX-FileCopyrightText: 2009-2011 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
12 *
13 * SPDX-License-Identifier: GPL-2.0-or-later
14 *
15 * ============================================================ */
16
17#pragma once
18
19// Qt includes
20
21#include <QObject>
22
23// Local includes
24
25#include "digikam_export.h"
27
28namespace Digikam
29{
30
31class IccProfile;
32
33class DIGIKAM_EXPORT IccSettings : public QObject
34{
35 Q_OBJECT
36
37public:
38
42 static IccSettings* instance();
43
47 ICCSettingsContainer settings();
48
52 bool isEnabled() const;
53
57 bool useManagedPreviews() const;
58
65 IccProfile monitorProfile(QWidget* const widget = nullptr);
66
72 bool monitorProfileFromSystem() const;
73
77 void setSettings(const ICCSettingsContainer& settings);
78
82 void setUseManagedView(bool useManagedView);
83 void setUseManagedPreviews(bool useManagedPreviews);
84 void setIccPath(const QString& path);
85
86 QList<IccProfile> allProfiles();
87
91 QList<IccProfile> workspaceProfiles();
92
96 QList<IccProfile> displayProfiles();
97
101 QList<IccProfile> inputProfiles();
102
106 QList<IccProfile> outputProfiles();
107
111 QList<IccProfile> profilesForDescription(const QString& description);
112
119 void loadAllProfilesProperties();
120
121Q_SIGNALS:
122
125
126private:
127
128 IccSettings();
129 explicit IccSettings(QObject*);
130 ~IccSettings() override;
131
132 void readFromConfig();
133
134private:
135
136 class Private;
137 Private* const d = nullptr;
138
139 friend class Private;
140 friend class IccSettingsCreator;
141};
142
143} // namespace Digikam
Definition iccsettingscontainer.h:35
Definition iccprofile.h:33
Definition iccsettings_p.h:49
Definition iccsettings.h:34
void signalICCSettingsChanged(const ICCSettingsContainer &current, const ICCSettingsContainer &previous)
Definition datefolderview.cpp:34