File indexing completed on 2025-04-27 03:58:33
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2009-07-17 0007 * Description : Metadata tags selector config panel. 0008 * 0009 * SPDX-FileCopyrightText: 2009-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * 0011 * SPDX-License-Identifier: GPL-2.0-or-later 0012 * 0013 * ============================================================ */ 0014 0015 #ifndef DIGIKAM_META_DATA_PANEL_H 0016 #define DIGIKAM_META_DATA_PANEL_H 0017 0018 // Qt includes 0019 0020 #include <QObject> 0021 #include <QString> 0022 0023 // Local includes 0024 0025 #include "digikam_export.h" 0026 #include "exiftoolparser.h" 0027 0028 class QTabWidget; 0029 0030 namespace Digikam 0031 { 0032 0033 class MetadataSelectorView; 0034 0035 class DIGIKAM_EXPORT MetadataPanel : public QObject 0036 { 0037 Q_OBJECT 0038 0039 public: 0040 0041 explicit MetadataPanel(QTabWidget* const tab); 0042 ~MetadataPanel() override; 0043 0044 void applySettings(); 0045 0046 QStringList getAllCheckedTags() const; 0047 QList<MetadataSelectorView*> viewers() const; 0048 0049 public: 0050 0051 static QStringList defaultExifFilter(); 0052 static QStringList defaultMknoteFilter(); 0053 static QStringList defaultIptcFilter(); 0054 static QStringList defaultXmpFilter(); 0055 static QStringList defaultExifToolFilter(); 0056 0057 private Q_SLOTS: 0058 0059 void slotTabChanged(int); 0060 void slotExifToolAsyncData(const ExifToolParser::ExifToolData& data); 0061 0062 private: 0063 0064 class Private; 0065 Private* const d; 0066 }; 0067 0068 } // namespace Digikam 0069 0070 #endif // DIGIKAM_META_DATA_PANEL_H