diff options
Diffstat (limited to 'src/plugins/qmldesigner/designercore/imagecache/midsizeimagecacheprovider.h')
-rw-r--r-- | src/plugins/qmldesigner/designercore/imagecache/midsizeimagecacheprovider.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/plugins/qmldesigner/designercore/imagecache/midsizeimagecacheprovider.h b/src/plugins/qmldesigner/designercore/imagecache/midsizeimagecacheprovider.h new file mode 100644 index 0000000000..b3a84f0abd --- /dev/null +++ b/src/plugins/qmldesigner/designercore/imagecache/midsizeimagecacheprovider.h @@ -0,0 +1,28 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0 + +#pragma once + +#include <QQuickAsyncImageProvider> + +namespace QmlDesigner { + +class AsynchronousImageCache; + +class MidSizeImageCacheProvider : public QQuickAsyncImageProvider +{ +public: + MidSizeImageCacheProvider(AsynchronousImageCache &imageCache, const QImage &defaultImage = {}) + : m_cache{imageCache} + , m_defaultImage(defaultImage) + {} + + QQuickImageResponse *requestImageResponse(const QString &id, const QSize &requestedSize) override; + QImage defaultImage() const { return m_defaultImage; } + +private: + AsynchronousImageCache &m_cache; + QImage m_defaultImage; +}; + +} // namespace QmlDesigner |