File indexing completed on 2025-01-19 03:51:18
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2010-08-06 0007 * Description : A widget to show details about item 0008 * 0009 * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * SPDX-FileCopyrightText: 2010 by Michael G. Hansen <mike at mghansen dot de> 0011 * 0012 * SPDX-License-Identifier: GPL-2.0-or-later 0013 * 0014 * ============================================================ */ 0015 0016 #ifndef DIGIKAM_GPS_ITEM_DETAILS_H 0017 #define DIGIKAM_GPS_ITEM_DETAILS_H 0018 0019 // Qt includes 0020 0021 #include <QUrl> 0022 #include <QModelIndex> 0023 #include <QWidget> 0024 0025 // Local includes 0026 0027 #include "gpsdatacontainer.h" 0028 #include "gpsundocommand.h" 0029 #include "gpsitemmodel.h" 0030 0031 using namespace Digikam; 0032 0033 class KConfigGroup; 0034 0035 namespace DigikamGenericGeolocationEditPlugin 0036 { 0037 0038 class GPSItemDetails : public QWidget 0039 { 0040 Q_OBJECT 0041 0042 public: 0043 0044 explicit GPSItemDetails(QWidget* const parent, 0045 GPSItemModel* const imageModel); 0046 ~GPSItemDetails() override; 0047 0048 void setUIEnabledExternal(const bool state); 0049 void saveSettingsToGroup(KConfigGroup* const group); 0050 void readSettingsFromGroup(const KConfigGroup* const group); 0051 0052 Q_SIGNALS: 0053 0054 void signalUndoCommand(GPSUndoCommand* undoCommand); 0055 0056 public Q_SLOTS: 0057 0058 void slotSetCurrentImage(const QModelIndex& index); 0059 void slotSetActive(const bool state); 0060 0061 private Q_SLOTS: 0062 0063 void updateUIState(); 0064 void slotModelDataChanged(const QModelIndex& topLeft, const QModelIndex& bottomRight); 0065 void slotApply(); 0066 0067 protected: 0068 0069 void displayGPSDataContainer(const GPSDataContainer* const gpsData); 0070 0071 private: 0072 0073 class Private; 0074 Private* const d; 0075 }; 0076 0077 } // namespace DigikamGenericGeolocationEditPlugin 0078 0079 #endif // DIGIKAM_GPS_ITEM_DETAILS_H