digiKam
gpsitemdetails.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 : 2010-08-06
7  * Description : A widget to show details about item
8  *
9  * Copyright (C) 2010-2022 by Gilles Caulier <caulier dot gilles at gmail dot com>
10  * Copyright (C) 2010 by Michael G. Hansen <mike at mghansen dot de>
11  *
12  * This program is free software; you can redistribute it
13  * and/or modify it under the terms of the GNU General
14  * Public License as published by the Free Software Foundation;
15  * either version 2, or (at your option)
16  * any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * ============================================================ */
24 
25 #ifndef DIGIKAM_GPS_ITEM_DETAILS_H
26 #define DIGIKAM_GPS_ITEM_DETAILS_H
27 
28 // Qt includes
29 
30 #include <QUrl>
31 #include <QModelIndex>
32 #include <QWidget>
33 
34 // Local includes
35 
36 #include "gpsdatacontainer.h"
37 #include "gpsundocommand.h"
38 #include "gpsitemmodel.h"
39 
40 using namespace Digikam;
41 
42 class KConfigGroup;
43 
45 {
46 
47 class GPSItemDetails : public QWidget
48 {
49  Q_OBJECT
50 
51 public:
52 
53  explicit GPSItemDetails(QWidget* const parent,
54  GPSItemModel* const imageModel);
55  ~GPSItemDetails() override;
56 
57  void setUIEnabledExternal(const bool state);
58  void saveSettingsToGroup(KConfigGroup* const group);
59  void readSettingsFromGroup(const KConfigGroup* const group);
60 
61 Q_SIGNALS:
62 
63  void signalUndoCommand(GPSUndoCommand* undoCommand);
64 
65 public Q_SLOTS:
66 
67  void slotSetCurrentImage(const QModelIndex& index);
68  void slotSetActive(const bool state);
69 
70 private Q_SLOTS:
71 
72  void updateUIState();
73  void slotModelDataChanged(const QModelIndex& topLeft, const QModelIndex& bottomRight);
74  void slotApply();
75 
76 protected:
77 
78  void displayGPSDataContainer(const GPSDataContainer* const gpsData);
79 
80 private:
81 
82  class Private;
83  Private* const d;
84 };
85 
86 } // namespace DigikamGenericGeolocationEditPlugin
87 
88 #endif // DIGIKAM_GPS_ITEM_DETAILS_H
void signalUndoCommand(GPSUndoCommand *undoCommand)
Definition: gpsdatacontainer.h:36
Definition: gpsitemmodel.h:43
Definition: gpsundocommand.h:41
Definition: geolocationedit.cpp:97
Definition: datefolderview.cpp:43