digiKam
setupicc.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 : 2005-11-24
7  * Description : Color management setup tab.
8  *
9  * Copyright (C) 2005-2007 by F.J. Cruz <fj dot cruz at supercable dot es>
10  * Copyright (C) 2005-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
11  * Copyright (C) 2009-2012 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
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 #ifndef DIGIKAM_SETUP_ICC_H
27 #define DIGIKAM_SETUP_ICC_H
28 
29 // Qt includes
30 
31 #include <QScrollArea>
32 #include <QMap>
33 #include <QDir>
34 #include <QUrl>
35 
36 // Local includes
37 
38 #include "digikam_export.h"
39 
40 class QDialogButtonBox;
41 
42 namespace Digikam
43 {
44 
45 class IccProfile;
46 
47 class DIGIKAM_EXPORT SetupICC : public QScrollArea
48 {
49  Q_OBJECT
50 
51 public:
52 
53  explicit SetupICC(QDialogButtonBox* const dlgBtnBox, QWidget* const parent = nullptr);
54  ~SetupICC() override;
55 
56  void applySettings();
57 
58  static bool iccRepositoryIsValid();
59 
60 private:
61 
62  void readSettings(bool restore = false);
63  void fillCombos(bool report);
64  void setWidgetsEnabled(bool enabled);
65  void profileInfo(const IccProfile&);
66 
67 private Q_SLOTS:
68 
69  void slotToggledEnabled();
70  void slotUrlChanged();
71  void slotUrlTextChanged();
72  void slotClickedIn();
73  void slotClickedWork();
74  void slotClickedMonitor();
75  void slotClickedProof();
76  void slotShowDefaultSearchPaths();
77  void slotMissingToggled(bool);
78 
79 private:
80 
81  class Private;
82  Private* const d;
83 };
84 
85 } // namespace Digikam
86 
87 #endif // DIGIKAM_SETUP_ICC_H
Definition: iccprofile.h:43
Definition: setupicc.h:48
Definition: datefolderview.cpp:43