1 /* ============================================================ 2 * 3 * This file is a part of digiKam project 4 * https://www.digikam.org 5 * 6 * Date : 2004-11-17 7 * Description : a tab to display item metadata information 8 * 9 * Copyright (C) 2004-2021 by Gilles Caulier <caulier dot gilles at gmail dot com> 10 * 11 * This program is free software; you can redistribute it 12 * and/or modify it under the terms of the GNU General 13 * Public License as published by the Free Software Foundation; 14 * either version 2, or (at your option) 15 * any later version. 16 * 17 * This program is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * ============================================================ */ 23 24 #ifndef DIGIKAM_ITEM_PROPERTIES_METADATA_TAB_H 25 #define DIGIKAM_ITEM_PROPERTIES_METADATA_TAB_H 26 27 // Qt includes 28 29 #include <QWidget> 30 #include <QTabWidget> 31 #include <QUrl> 32 33 // Local includes 34 35 #include "digikam_export.h" 36 #include "dmetadata.h" 37 38 namespace Digikam 39 { 40 41 class DIGIKAM_EXPORT ItemPropertiesMetadataTab : public QTabWidget 42 { 43 Q_OBJECT 44 45 public: 46 47 explicit ItemPropertiesMetadataTab(QWidget* const parent); 48 ~ItemPropertiesMetadataTab() override; 49 50 void setCurrentURL(const QUrl& url = QUrl()); 51 void setCurrentData(DMetadata* const metadata = nullptr, 52 const QUrl& url = QUrl()); 53 54 void loadFilters(); 55 56 void readSettings(const KConfigGroup& group); 57 void writeSettings(KConfigGroup& group); 58 59 Q_SIGNALS: 60 61 void signalSetupMetadataFilters(int); 62 void signalSetupExifTool(); 63 64 private Q_SLOTS: 65 66 void slotSetupMetadataFilters(); 67 68 private: 69 70 class Private; 71 Private* const d; 72 }; 73 74 } // namespace Digikam 75 76 #endif // DIGIKAM_ITEM_PROPERTIES_METADATA_TAB_H 77