QQuickImageResponse Class
The QQuickImageResponse class provides an interface for asynchronous image loading in QQuickAsyncImageProvider. More...
Header: | #include <QQuickImageResponse> |
qmake: | QT += quick |
Since: | Qt 5.6 |
Inherits: | QObject |
This class was introduced in Qt 5.6.
Public Functions
QQuickImageResponse() | |
virtual | ~QQuickImageResponse() override |
virtual QString | errorString() const |
virtual QQuickTextureFactory * | textureFactory() const = 0 |
Public Slots
virtual void | cancel() |
Signals
void | finished() |
Detailed Description
The purpose of an image response is to provide a way for image provider jobs to be executed in an asynchronous way.
Responses are deleted via deleteLater once the finished() signal has been emitted. If you are using QRunnable as base for your QQuickImageResponse ensure automatic deletion is disabled.
See the Image Response Provider Example for a complete implementation.
See also QQuickImageProvider.
Member Function Documentation
QQuickImageResponse::QQuickImageResponse()
Constructs the image response
[virtual slot]
void QQuickImageResponse::cancel()
This method is used to communicate that the response is no longer required by the engine.
It may be reimplemented to cancel a request in the provider side, however, it is not mandatory.
A cancelled QQuickImageResponse still needs to emit finished() so that the engine may clean up the QQuickImageResponse.
Note: finished() should not be emitted until the response is complete, regardless of whether or not cancel() was called. If it is called prematurely, the engine may destroy the response while it is still active, leading to a crash.
[signal]
void QQuickImageResponse::finished()
Signals that the job execution has finished (be it successfully, because an error happened or because it was cancelled).
Note: Emission of this signal must be the final action the response performs: once the signal is received, the response will subsequently be destroyed by the engine.
[override virtual]
QQuickImageResponse::~QQuickImageResponse()
Destructs the image response
[virtual]
QString QQuickImageResponse::errorString() const
Returns the error string for the job execution. An empty string means no error.
[pure virtual]
QQuickTextureFactory *QQuickImageResponse::textureFactory() const
Returns the texture factory for the job. You can use QQuickTextureFactory::textureFactoryForImage if your provider works with QImage. The engine takes ownership of the returned QQuickTextureFactory.
Note: This method will be called only when needed. For example, it may not be called if there is an error or the job is cancelled. Therefore, allocate the QQuickTextureFactory instance only in this method or otherwise ensure its deletion.