1 /* ============================================================ 2 * 3 * This file is a part of digiKam project 4 * https://www.digikam.org 5 * 6 * Date : 2010-07-12 7 * Description : tab for displaying item versions 8 * 9 * Copyright (C) 2010-2012 by Martin Klapetek <martin dot klapetek 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_VERSIONS_TAB_H 25 #define DIGIKAM_ITEM_PROPERTIES_VERSIONS_TAB_H 26 27 // Qt includes 28 29 #include <QWidget> 30 #include <QModelIndex> 31 #include <QPoint> 32 #include <QTabWidget> 33 #include <QUrl> 34 35 // Local includes 36 37 #include "digikam_export.h" 38 #include "dimagehistory.h" 39 40 class KConfigGroup; 41 42 namespace Digikam 43 { 44 45 class FiltersHistoryWidget; 46 class ItemInfo; 47 class ItemModel; 48 class VersionsWidget; 49 50 class ItemPropertiesVersionsTab : public QTabWidget 51 { 52 Q_OBJECT 53 54 public: 55 56 explicit ItemPropertiesVersionsTab(QWidget* const parent); 57 ~ItemPropertiesVersionsTab() override; 58 59 void readSettings(KConfigGroup& group); 60 void writeSettings(KConfigGroup& group); 61 62 void clear(); 63 void setItem(const ItemInfo& info, const DImageHistory& history); 64 65 VersionsWidget* versionsWidget() const; 66 FiltersHistoryWidget* filtersHistoryWidget() const; 67 68 void addShowHideOverlay(); 69 void addOpenImageAction(); 70 void addOpenAlbumAction(const ItemModel* referenceModel); 71 72 public Q_SLOTS: 73 74 void setEnabledHistorySteps(int count); 75 76 Q_SIGNALS: 77 78 void imageSelected(const ItemInfo& info); 79 void actionTriggered(const ItemInfo& info); 80 81 private: 82 83 class Private; 84 Private* const d; 85 }; 86 87 } // namespace Digikam 88 89 #endif // DIGIKAM_ITEM_PROPERTIES_VERSIONS_TAB_H 90