File indexing completed on 2024-04-21 04:49:07

0001 /*
0002  * SPDX-FileCopyrightText: 2021 George Florea Bănuș <georgefb899@gmail.com>
0003  *
0004  * SPDX-License-Identifier: GPL-3.0-or-later
0005  */
0006 
0007 #ifndef THUMBNAILIMAGEPROVIDER_H
0008 #define THUMBNAILIMAGEPROVIDER_H
0009 
0010 #include <QQuickAsyncImageProvider>
0011 
0012 class ThumbnailImageProvider : public QQuickAsyncImageProvider
0013 {
0014 public:
0015     explicit ThumbnailImageProvider();
0016     QQuickImageResponse *requestImageResponse(const QString &id, const QSize &requestedSize) override;
0017 };
0018 
0019 class ThumbnailResponse : public QQuickImageResponse
0020 {
0021 public:
0022     ThumbnailResponse(const QString &id, const QSize &requestedSize);
0023 
0024     QQuickTextureFactory *textureFactory() const override;
0025     void getPreview(const QString &id, const QSize &requestedSize);
0026 
0027     QQuickTextureFactory *m_texture{nullptr};
0028 };
0029 
0030 #endif // THUMBNAILIMAGEPROVIDER_H