Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QQmlTableInstanceModelIncubationTask Class Reference

#include <qqmltableinstancemodel_p.h>

+ Inheritance diagram for QQmlTableInstanceModelIncubationTask:
+ Collaboration diagram for QQmlTableInstanceModelIncubationTask:

Public Member Functions

 QQmlTableInstanceModelIncubationTask (QQmlTableInstanceModel *tableInstanceModel, QQmlDelegateModelItem *modelItemToIncubate, IncubationMode mode)
 
void statusChanged (Status status) override
 Called when the status of the incubator changes.
 
void setInitialState (QObject *object) override
 Called after the object is first created, but before complex property bindings are evaluated and, if applicable, QQmlParserStatus::componentComplete() is called.
 
- Public Member Functions inherited from QQDMIncubationTask
 QQDMIncubationTask (QQmlDelegateModelPrivate *l, IncubationMode mode)
 
void initializeRequiredProperties (QQmlDelegateModelItem *modelItemToIncubate, QObject *object)
 
- Public Member Functions inherited from QQmlIncubator
 QQmlIncubator (IncubationMode=Asynchronous)
 Create a new incubator with the specified mode.
 
virtual ~QQmlIncubator ()
 
void clear ()
 Clears the incubator.
 
void forceCompletion ()
 Force any in-progress incubation to finish synchronously.
 
bool isNull () const
 Returns true if the incubator's status() is Null.
 
bool isReady () const
 Returns true if the incubator's status() is Ready.
 
bool isError () const
 Returns true if the incubator's status() is Error.
 
bool isLoading () const
 Returns true if the incubator's status() is Loading.
 
QList< QQmlErrorerrors () const
 Return the list of errors encountered while incubating the object.
 
IncubationMode incubationMode () const
 Return the incubation mode passed to the QQmlIncubator constructor.
 
Status status () const
 Return the current status of the incubator.
 
QObjectobject () const
 Return the incubated object if the status is Ready, otherwise 0.
 
void setInitialProperties (const QVariantMap &initialProperties)
 Stores a mapping from property names to initial values, contained in initialProperties, with which the incubated component will be initialized.
 

Public Attributes

QQmlDelegateModelItemmodelItemToIncubate = nullptr
 
QQmlTableInstanceModeltableInstanceModel = nullptr
 
- Public Attributes inherited from QQDMIncubationTask
QQmlDelegateModelItemincubating = nullptr
 
QQmlDelegateModelPrivatevdm = nullptr
 
QQmlRefPointer< QQmlContextDataproxyContext
 
QPointer< QObjectproxiedObject = nullptr
 
int index [QQmlListCompositor::MaximumGroupCount]
 

Additional Inherited Members

- Public Types inherited from QQmlIncubator
enum  IncubationMode { Asynchronous , AsynchronousIfNested , Synchronous }
 Specifies the mode the incubator operates in. More...
 
enum  Status { Null , Ready , Loading , Error }
 Specifies the status of the QQmlIncubator. More...
 

Detailed Description

Definition at line 30 of file qqmltableinstancemodel_p.h.

Constructor & Destructor Documentation

◆ QQmlTableInstanceModelIncubationTask()

QQmlTableInstanceModelIncubationTask::QQmlTableInstanceModelIncubationTask ( QQmlTableInstanceModel * tableInstanceModel,
QQmlDelegateModelItem * modelItemToIncubate,
IncubationMode mode )
inline

Definition at line 33 of file qqmltableinstancemodel_p.h.

References QQmlIncubator::clear().

+ Here is the call graph for this function:

Member Function Documentation

◆ setInitialState()

void QQmlTableInstanceModelIncubationTask::setInitialState ( QObject * object)
overridevirtual

Called after the object is first created, but before complex property bindings are evaluated and, if applicable, QQmlParserStatus::componentComplete() is called.

This is equivalent to the point between QQmlComponent::beginCreate() and QQmlComponent::completeCreate(), and can be used to assign initial values to the object's properties.

The default implementation does nothing.

Note
Simple bindings such as numeric literals are evaluated before setInitialState() is called. The categorization of bindings into simple and complex ones is intentionally unspecified and may change between versions of Qt and depending on whether and how you are using \l{qmlcachegen}. You should not rely on any particular binding to be evaluated either before or after setInitialState() is called. For example, a constant expression like {MyType.EnumValue} may be recognized as such at compile time or deferred to be executed as binding. The same holds for constant expressions like {-(5)} or {"a" + " constant string"}.

Reimplemented from QQDMIncubationTask.

Definition at line 508 of file qqmltableinstancemodel.cpp.

References QObject::deleteLater(), emit, QQmlIncubatorPrivate::get(), QQmlDelegateModelItem::index, QQDMIncubationTask::initializeRequiredProperties(), QQmlInstanceModel::initItem(), modelItemToIncubate, QQmlIncubator::object(), QQmlDelegateModelItem::object, and tableInstanceModel.

+ Here is the call graph for this function:

◆ statusChanged()

void QQmlTableInstanceModelIncubationTask::statusChanged ( QQmlIncubator::Status status)
overridevirtual

Called when the status of the incubator changes.

status is the new status.

The default implementation does nothing.

Reimplemented from QQDMIncubationTask.

Definition at line 520 of file qqmltableinstancemodel.cpp.

References modelItemToIncubate, Q_ASSERT, QQmlIncubator::status(), and tableInstanceModel.

+ Here is the call graph for this function:

Member Data Documentation

◆ modelItemToIncubate

QQmlDelegateModelItem* QQmlTableInstanceModelIncubationTask::modelItemToIncubate = nullptr

Definition at line 46 of file qqmltableinstancemodel_p.h.

Referenced by setInitialState(), and statusChanged().

◆ tableInstanceModel

QQmlTableInstanceModel* QQmlTableInstanceModelIncubationTask::tableInstanceModel = nullptr

Definition at line 47 of file qqmltableinstancemodel_p.h.

Referenced by setInitialState(), and statusChanged().


The documentation for this class was generated from the following files: