File indexing completed on 2025-01-05 04:00:13
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2003-08-03 0007 * Description : setup Metadata tab. 0008 * 0009 * SPDX-FileCopyrightText: 2003-2004 by Ralf Holzer <ralf at well.com> 0010 * SPDX-FileCopyrightText: 2003-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0011 * 0012 * SPDX-License-Identifier: GPL-2.0-or-later 0013 * 0014 * ============================================================ */ 0015 0016 #ifndef DIGIKAM_SETUP_METADATA_H 0017 #define DIGIKAM_SETUP_METADATA_H 0018 0019 // Qt includes 0020 0021 #include <QScrollArea> 0022 0023 namespace Digikam 0024 { 0025 0026 class SetupMetadata : public QScrollArea 0027 { 0028 Q_OBJECT 0029 0030 public: 0031 0032 enum MetadataTab 0033 { 0034 Behavior = 0, 0035 Sidecars, 0036 Rotation, 0037 Display, 0038 ExifTool, 0039 Baloo, 0040 AdvancedConfig 0041 }; 0042 0043 enum MetadataSubTab 0044 { 0045 ExifViewer = 0, 0046 MakernotesViewer, 0047 IPTCViewer, 0048 XMPViewer, 0049 ExifToolViewer 0050 }; 0051 0052 public: 0053 0054 explicit SetupMetadata(QWidget* const parent = nullptr); 0055 ~SetupMetadata() override; 0056 0057 void applySettings(); 0058 0059 bool exifAutoRotateHasChanged() const; 0060 0061 void setActiveTab(MetadataTab tab); 0062 void setActiveSubTab(MetadataSubTab tab); 0063 0064 MetadataTab activeTab() const; 0065 MetadataSubTab activeSubTab() const; 0066 0067 private: 0068 0069 void appendBehaviorTab(); 0070 void appendSidecarsTab(); 0071 void appendDisplayTab(); 0072 void appendRotationTab(); 0073 void appendBalooTab(); 0074 0075 private Q_SLOTS: 0076 0077 void slotSidecarReadWriteToggled(); 0078 void slotSidecarFileNameToggled(bool); 0079 void slotExifAutoRotateToggled(bool); 0080 void slotWriteWithExifToolToggled(bool); 0081 void slotExifToolSettingsChanged(bool); 0082 void slotWriteRawFilesToggled(bool); 0083 0084 private: 0085 0086 class Private; 0087 Private* const d; 0088 }; 0089 0090 } // namespace Digikam 0091 0092 #endif // DIGIKAM_SETUP_METADATA_H