File indexing completed on 2025-01-05 03:56:42
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2006-02-08 0007 * Description : item properties side bar used by import tool. 0008 * 0009 * SPDX-FileCopyrightText: 2006-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * SPDX-FileCopyrightText: 2013 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_IMPORT_ITEM_PROPERTIES_SIDEBAR_H 0017 #define DIGIKAM_IMPORT_ITEM_PROPERTIES_SIDEBAR_H 0018 0019 // Qt includes 0020 0021 #include <QUrl> 0022 #include <QWidget> 0023 0024 // Local includes 0025 0026 #include "sidebar.h" 0027 #include "digikam_export.h" 0028 0029 namespace Digikam 0030 { 0031 0032 class SidebarSplitter; 0033 class CamItemInfo; 0034 class DMetadata; 0035 0036 class DIGIKAM_GUI_EXPORT ImportItemPropertiesSideBarImport : public Sidebar 0037 { 0038 Q_OBJECT 0039 0040 public: 0041 0042 explicit ImportItemPropertiesSideBarImport(QWidget* const parent, 0043 SidebarSplitter* const splitter, 0044 Qt::Edge side = Qt::LeftEdge, 0045 bool mimimizedDefault = false); 0046 ~ImportItemPropertiesSideBarImport() override; 0047 0048 void applySettings(); 0049 0050 void itemChanged(const CamItemInfo& itemInfo, const DMetadata& meta); 0051 0052 QUrl url() const; 0053 0054 public Q_SLOTS: 0055 0056 virtual void slotNoCurrentItem(); 0057 0058 Q_SIGNALS: 0059 0060 void signalFirstItem(); 0061 void signalPrevItem(); 0062 void signalNextItem(); 0063 void signalLastItem(); 0064 0065 protected: 0066 0067 /** 0068 * load the last view state from disk - called by StateSavingObject#loadState() 0069 */ 0070 void doLoadState() override; 0071 0072 /** 0073 * save the view state to disk - called by StateSavingObject#saveState() 0074 */ 0075 void doSaveState() override; 0076 0077 private Q_SLOTS: 0078 0079 virtual void slotChangedTab(QWidget* tab); 0080 0081 private: 0082 0083 class Private; 0084 Private* const d; 0085 }; 0086 0087 } // namespace Digikam 0088 0089 #endif // DIGIKAM_IMPORT_ITEM_PROPERTIES_SIDEBAR_H