File indexing completed on 2025-03-09 03:52:10
0001 /* ============================================================ 0002 * 0003 * This file is a part of digiKam project 0004 * https://www.digikam.org 0005 * 0006 * Date : 2014-09-18 0007 * Description : slideshow image widget 0008 * 0009 * SPDX-FileCopyrightText: 2014-2024 by Gilles Caulier <caulier dot gilles at gmail dot com> 0010 * SPDX-FileCopyrightText: 2019-2020 by Minh Nghia Duong <minhnghiaduong997 at gmail dot com> 0011 * 0012 * SPDX-License-Identifier: GPL-2.0-or-later 0013 * 0014 * ============================================================ */ 0015 0016 #ifndef DIGIKAM_SLIDE_IMAGE_PLUGIN_H 0017 #define DIGIKAM_SLIDE_IMAGE_PLUGIN_H 0018 0019 // Qt includes 0020 0021 #include <QWidget> 0022 #include <QUrl> 0023 0024 // Local includes 0025 0026 #include "digikam_export.h" 0027 #include "loadingdescription.h" 0028 #include "previewsettings.h" 0029 #include "dimg.h" 0030 0031 using namespace Digikam; 0032 0033 namespace DigikamGenericSlideShowPlugin 0034 { 0035 0036 class SlideImage : public QWidget 0037 { 0038 Q_OBJECT 0039 0040 public: 0041 0042 explicit SlideImage(QWidget* const parent); 0043 ~SlideImage() override; 0044 0045 void setPreviewSettings(const PreviewSettings& settings); 0046 void setLoadUrl(const QUrl& url); 0047 void setPreloadUrl(const QUrl& url); 0048 0049 Q_SIGNALS: 0050 0051 void signalImageLoaded(bool); 0052 0053 private Q_SLOTS: 0054 0055 void slotGotImagePreview(const LoadingDescription&, const DImg&); 0056 0057 private: 0058 0059 void paintEvent(QPaintEvent*) override; 0060 void updatePixmap(); 0061 0062 private: 0063 0064 class Private; 0065 Private* const d; 0066 }; 0067 0068 } // namespace DigikamGenericSlideShowPlugin 0069 0070 #endif // DIGIKAM_SLIDE_IMAGE_PLUGIN_H