QQmlImageProviderBase Class

The QQmlImageProviderBase class is used to register image providers in the QML engine. More...

Header: #include <QQmlImageProviderBase>
CMake: find_package(Qt6 COMPONENTS Qml REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml
Inherits: QObject
Inherited By:

QQuickImageProvider

Public Types

enum Flag { ForceAsynchronousImageLoading }
flags Flags
enum ImageType { Image, Pixmap, Texture, ImageResponse }

Public Functions

virtual QQmlImageProviderBase::Flags flags() const = 0
virtual QQmlImageProviderBase::ImageType imageType() const = 0

Detailed Description

Image providers must be registered with the QML engine. The only information the QML engine knows about image providers is the type of image data they provide. To use an image provider to acquire image data, you must cast the QQmlImageProviderBase pointer to a QQuickImageProvider pointer.

See also QQuickImageProvider and QQuickTextureFactory.

Member Type Documentation

enum QQmlImageProviderBase::Flag
flags QQmlImageProviderBase::Flags

Defines specific requirements or features of this image provider.

ConstantValueDescription
QQmlImageProviderBase::ForceAsynchronousImageLoading0x01Ensures that image requests to the provider are run in a separate thread, which allows the provider to spend as much time as needed on producing the image without blocking the main thread.

The Flags type is a typedef for QFlags<Flag>. It stores an OR combination of Flag values.

enum QQmlImageProviderBase::ImageType

Defines the type of image supported by this image provider.

ConstantValueDescription
QQmlImageProviderBase::Image1The Image Provider provides QImage images. The QQuickImageProvider::requestImage() method will be called for all image requests.
QQmlImageProviderBase::Pixmap2The Image Provider provides QPixmap images. The QQuickImageProvider::requestPixmap() method will be called for all image requests.
QQmlImageProviderBase::Texture3The Image Provider provides QSGTextureProvider based images. The QQuickImageProvider::requestTexture() method will be called for all image requests.
QQmlImageProviderBase::ImageResponse4The Image provider provides QQuickTextureFactory based images. Should only be used in QQuickAsyncImageProvider or its subclasses. The QQuickAsyncImageProvider::requestImageResponse() method will be called for all image requests. Since Qt 5.6

Member Function Documentation

[pure virtual] QQmlImageProviderBase::Flags QQmlImageProviderBase::flags() const

Implement this to return the properties of this image provider.

[pure virtual] QQmlImageProviderBase::ImageType QQmlImageProviderBase::imageType() const

Implement this method to return the image type supported by this image provider.