![]() |
Qt 6.x
The Qt SDK
|
#include <qqmldelegatemodel_p.h>
Signals | |
void | filterGroupChanged () |
void | defaultGroupsChanged () |
void | rootIndexChanged () |
void | delegateChanged () |
![]() | |
void | countChanged () |
void | modelUpdated (const QQmlChangeSet &changeSet, bool reset) |
void | createdItem (int index, QObject *object) |
void | initItem (int index, QObject *object) |
void | destroyingItem (QObject *object) |
Q_REVISION (2, 15) void itemPooled(int index | |
![]() | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
Public Member Functions | |
QQmlDelegateModel () | |
QQmlDelegateModel (QQmlContext *, QObject *parent=nullptr) | |
~QQmlDelegateModel () | |
void | classBegin () override |
Invoked after class creation, but before any properties have been set. | |
void | componentComplete () override |
Invoked after the root component that caused this instantiation has completed construction. | |
QVariant | model () const |
\qmlproperty model QtQml.Models::DelegateModel::model This property holds the model providing data for the DelegateModel. | |
void | setModel (const QVariant &) |
QQmlComponent * | delegate () const |
\qmlproperty Component QtQml.Models::DelegateModel::delegate | |
void | setDelegate (QQmlComponent *) |
QVariant | rootIndex () const |
\qmlproperty QModelIndex QtQml.Models::DelegateModel::rootIndex | |
void | setRootIndex (const QVariant &root) |
Q_INVOKABLE QVariant | modelIndex (int idx) const |
\qmlmethod QModelIndex QtQml.Models::DelegateModel::modelIndex(int index) | |
Q_INVOKABLE QVariant | parentModelIndex () const |
\qmlmethod QModelIndex QtQml.Models::DelegateModel::parentModelIndex() | |
int | count () const override |
\qmlproperty int QtQml.Models::DelegateModel::count | |
bool | isValid () const override |
QObject * | object (int index, QQmlIncubator::IncubationMode incubationMode=QQmlIncubator::AsynchronousIfNested) override |
ReleaseFlags | release (QObject *object, ReusableFlag reusableFlag=NotReusable) override |
void | cancel (int index) override |
QVariant | variantValue (int index, const QString &role) override |
void | setWatchedRoles (const QList< QByteArray > &roles) override |
QQmlIncubator::Status | incubationStatus (int index) override |
void | drainReusableItemsPool (int maxPoolTime) override |
int | poolSize () override |
int | indexOf (QObject *object, QObject *objectContext) const override |
QString | filterGroup () const |
\qmlproperty string QtQml.Models::DelegateModel::filterOnGroup | |
void | setFilterGroup (const QString &group) |
void | resetFilterGroup () |
QQmlDelegateModelGroup * | items () |
QQmlDelegateModelGroup * | persistedItems () |
QQmlListProperty< QQmlDelegateModelGroup > | groups () |
QObject * | parts () |
const QAbstractItemModel * | abstractItemModel () const override |
bool | event (QEvent *) override |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
![]() | |
virtual int | count () const =0 |
virtual bool | isValid () const =0 |
virtual QObject * | object (int index, QQmlIncubator::IncubationMode incubationMode=QQmlIncubator::AsynchronousIfNested)=0 |
virtual ReleaseFlags | release (QObject *object, ReusableFlag reusableFlag=NotReusable)=0 |
virtual void | cancel (int) |
QString | stringValue (int index, const QString &role) |
virtual QVariant | variantValue (int, const QString &)=0 |
virtual void | setWatchedRoles (const QList< QByteArray > &roles)=0 |
virtual QQmlIncubator::Status | incubationStatus (int index)=0 |
virtual void | drainReusableItemsPool (int maxPoolTime) |
virtual int | poolSize () |
virtual int | indexOf (QObject *object, QObject *objectContext) const =0 |
virtual const QAbstractItemModel * | abstractItemModel () const |
virtual bool | setRequiredProperty (int index, const QString &name, const QVariant &value) |
Q_REVISION (2, 15) void itemReused(int index | |
![]() | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
![]() | |
QQmlParserStatus () | |
virtual | ~QQmlParserStatus () |
virtual void | classBegin ()=0 |
Invoked after class creation, but before any properties have been set. | |
virtual void | componentComplete ()=0 |
Invoked after the root component that caused this instantiation has completed construction. | |
Static Public Member Functions | |
static QQmlDelegateModelAttached * | qmlAttachedProperties (QObject *obj) |
![]() | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
Properties | |
QVariant | model |
QQmlComponent * | delegate |
QString | filterOnGroup |
QQmlDelegateModelGroup * | items |
\qmlproperty DelegateModelGroup QtQml.Models::DelegateModel::items | |
QQmlDelegateModelGroup * | persistedItems |
\qmlproperty DelegateModelGroup QtQml.Models::DelegateModel::persistedItems | |
QQmlListProperty< QQmlDelegateModelGroup > | groups |
\qmlproperty list<DelegateModelGroup> QtQml.Models::DelegateModel::groups | |
QObject * | parts |
\qmlproperty object QtQml.Models::DelegateModel::parts | |
QVariant | rootIndex |
![]() | |
int | count |
![]() | |
QString | objectName |
the name of this object | |
Additional Inherited Members | |
![]() | |
enum | ReusableFlag { NotReusable , Reusable } |
enum | ReleaseFlag { Referenced = 0x01 , Destroyed = 0x02 , Pooled = 0x04 } |
![]() | |
void | deleteLater () |
\threadsafe | |
![]() | |
QObject * | object |
![]() | |
QQmlInstanceModel (QObjectPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
Definition at line 38 of file qqmldelegatemodel_p.h.
QQmlDelegateModel::QQmlDelegateModel | ( | ) |
Definition at line 215 of file qqmldelegatemodel.cpp.
QQmlDelegateModel::QQmlDelegateModel | ( | QQmlContext * | ctxt, |
QObject * | parent = nullptr |
||
) |
Definition at line 220 of file qqmldelegatemodel.cpp.
References d.
QQmlDelegateModel::~QQmlDelegateModel | ( | ) |
Definition at line 227 of file qqmldelegatemodel.cpp.
References d.
|
overridevirtual |
Reimplemented from QQmlInstanceModel.
Definition at line 880 of file qqmldelegatemodel.cpp.
References d.
|
overridevirtual |
Reimplemented from QQmlInstanceModel.
Definition at line 630 of file qqmldelegatemodel.cpp.
References d, QQmlDelegateModelItem::destroyObject(), QQmlDelegateModelItem::incubationTask, QQmlDelegateModelItem::isObjectReferenced(), QQmlDelegateModelItem::isReferenced(), it, QQmlDelegateModelItem::object, Q_ASSERT, qWarning, and QQmlDelegateModelItem::scriptRef.
|
overridevirtual |
Invoked after class creation, but before any properties have been set.
Implements QQmlParserStatus.
Definition at line 261 of file qqmldelegatemodel.cpp.
References d, and qmlContext().
Referenced by QDeclarativeGeoMapItemView::classBegin().
|
overridevirtual |
Invoked after the root component that caused this instantiation has completed construction.
At this point all static values and binding values have been assigned to the class.
Implements QQmlParserStatus.
Definition at line 268 of file qqmldelegatemodel.cpp.
References d, QQmlDelegateModelGroupPrivate::defaultInclude, QQmlDelegateModelGroupPrivate::get(), i, qmlWarning(), and QStringLiteral.
Referenced by QDeclarativeGeoMapItemView::componentComplete(), and QQuickComboBoxPrivate::createDelegateModel().
|
overridevirtual |
\qmlproperty int QtQml.Models::DelegateModel::count
Implements QQmlInstanceModel.
Definition at line 577 of file qqmldelegatemodel.cpp.
References d.
Referenced by QDeclarativeGeoMapItemView::instantiateAllItems().
|
signal |
QQmlComponent * QQmlDelegateModel::delegate | ( | ) | const |
\qmlproperty Component QtQml.Models::DelegateModel::delegate
The delegate provides a template defining each item instantiated by a view. The index is exposed as an accessible index
property. Properties of the model are also available depending upon the type of \l {qml-data-models}{Data Model}.
Definition at line 435 of file qqmldelegatemodel.cpp.
References d.
|
signal |
Referenced by setDelegate(), and QQuickItemView::setModel().
|
overridevirtual |
Reimplemented from QQmlInstanceModel.
Definition at line 1069 of file qqmldelegatemodel.cpp.
|
overridevirtual |
This virtual function receives events to an object and should return true if the event e was recognized and processed.
The event() function can be reimplemented to customize the behavior of an object.
Make sure you call the parent event class implementation for all the events you did not handle.
Example:
Reimplemented from QObject.
Definition at line 1420 of file qqmldelegatemodel.cpp.
References d, e, QObject::event(), qDeleteAll(), QEvent::UpdateRequest, and QEvent::User.
QString QQmlDelegateModel::filterGroup | ( | ) | const |
\qmlproperty string QtQml.Models::DelegateModel::filterOnGroup
This property holds name of the group that is used to filter the delegate model.
Only items that belong to this group are visible to a view.
By default this is the \l items group.
Definition at line 781 of file qqmldelegatemodel.cpp.
References d.
Referenced by QQmlPartsModel::filterGroup().
|
signal |
QQmlListProperty< QQmlDelegateModelGroup > QQmlDelegateModel::groups | ( | ) |
|
overridevirtual |
Implements QQmlInstanceModel.
Definition at line 1328 of file qqmldelegatemodel.cpp.
References d, it, QQmlIncubator::Null, and QQmlIncubator::Ready.
Implements QQmlInstanceModel.
Definition at line 1371 of file qqmldelegatemodel.cpp.
References d, QQmlDelegateModelItem::dataForObject(), and item.
Referenced by QQmlDelegateModelGroupPrivate::parseIndex(), QQmlDelegateModelAttached::resetCurrentIndex(), and QQmlDelegateModelAttached::setGroups().
|
inlineoverridevirtual |
Implements QQmlInstanceModel.
Definition at line 78 of file qqmldelegatemodel_p.h.
Referenced by QQmlPartsModel::isValid().
QQmlDelegateModelGroup * QQmlDelegateModel::items | ( | ) |
QVariant QQmlDelegateModel::model | ( | ) | const |
\qmlproperty model QtQml.Models::DelegateModel::model This property holds the model providing data for the DelegateModel.
The model provides a set of data that is used to create the items for a view. For large or dynamic datasets the model is usually provided by a C++ model object. The C++ model object must be a \l {QAbstractItemModel} subclass or a simple list.
Models can also be created directly in QML, for example using ListModel.
Definition at line 340 of file qqmldelegatemodel.cpp.
References d.
QVariant QQmlDelegateModel::modelIndex | ( | int | idx | ) | const |
\qmlmethod QModelIndex QtQml.Models::DelegateModel::modelIndex(int index)
QAbstractItemModel provides a hierarchical tree of data, whereas QML only operates on list data. This function assists in using tree models in QML.
Returns a QModelIndex for the specified index. This value can be assigned to rootIndex.
Definition at line 549 of file qqmldelegatemodel.cpp.
References d.
Referenced by setRootIndex().
|
overridevirtual |
Implements QQmlInstanceModel.
Definition at line 1317 of file qqmldelegatemodel.cpp.
Referenced by QDeclarativeGeoMapItemView::instantiateAllItems().
QVariant QQmlDelegateModel::parentModelIndex | ( | ) | const |
\qmlmethod QModelIndex QtQml.Models::DelegateModel::parentModelIndex()
QAbstractItemModel provides a hierarchical tree of data, whereas QML only operates on list data. This function assists in using tree models in QML.
Returns a QModelIndex for the parent of the current rootIndex. This value can be assigned to rootIndex.
Definition at line 567 of file qqmldelegatemodel.cpp.
References d.
QObject * QQmlDelegateModel::parts | ( | ) |
QQmlDelegateModelGroup * QQmlDelegateModel::persistedItems | ( | ) |
|
overridevirtual |
Reimplemented from QQmlInstanceModel.
Definition at line 1074 of file qqmldelegatemodel.cpp.
|
static |
Definition at line 2051 of file qqmldelegatemodel.cpp.
References QQmlDelegateModelItem::dataForObject().
|
overridevirtual |
Implements QQmlInstanceModel.
Definition at line 622 of file qqmldelegatemodel.cpp.
void QQmlDelegateModel::resetFilterGroup | ( | ) |
Definition at line 803 of file qqmldelegatemodel.cpp.
References QStringLiteral, and setFilterGroup().
QVariant QQmlDelegateModel::rootIndex | ( | ) | const |
\qmlproperty QModelIndex QtQml.Models::DelegateModel::rootIndex
QAbstractItemModel provides a hierarchical tree of data, whereas QML only operates on list data. rootIndex
allows the children of any node in a QAbstractItemModel to be provided by this model.
This property only affects models of type QAbstractItemModel that are hierarchical (e.g, a tree model).
For example, here is a simple interactive file system browser. When a directory name is clicked, the view's rootIndex
is set to the QModelIndex node of the clicked directory, thus updating the view to show the new directory's contents.
main.cpp:
view.qml:
If the \l {dm-model-property}{model} is a QAbstractItemModel subclass, the delegate can also reference a hasModelChildren
property (optionally qualified by a model. prefix) that indicates whether the delegate's model item has any child nodes.
Definition at line 502 of file qqmldelegatemodel.cpp.
References d, and QVariant::fromValue().
|
signal |
void QQmlDelegateModel::setDelegate | ( | QQmlComponent * | delegate | ) |
Definition at line 441 of file qqmldelegatemodel.cpp.
References QObject::connect(), d, delegate, QQmlAbstractDelegateComponent::delegateChanged(), delegateChanged(), QObject::disconnect(), emit, qmlWarning(), and tr.
Referenced by QDeclarativeGeoMapItemView::componentComplete(), QQuickComboBoxPrivate::createDelegateModel(), and QDeclarativeGeoMapItemView::setDelegate().
Definition at line 787 of file qqmldelegatemodel.cpp.
References d, emit, filterGroupChanged(), qmlWarning(), and tr.
Referenced by resetFilterGroup().
Definition at line 405 of file qqmldelegatemodel.cpp.
Referenced by QDeclarativeGeoMapItemView::componentComplete(), QQuickComboBoxPrivate::createDelegateModel(), and QDeclarativeGeoMapItemView::setModel().
Definition at line 508 of file qqmldelegatemodel.cpp.
References d, emit, modelIndex(), and rootIndexChanged().
|
overridevirtual |
Implements QQmlInstanceModel.
Reimplemented in QQuickComboBoxDelegateModel.
Definition at line 1365 of file qqmldelegatemodel.cpp.
References d.
Referenced by QQuickComboBoxDelegateModel::variantValue().
|
readwrite |
Definition at line 234 of file qqmldelegatemodel_p.h.
Referenced by setDelegate().
|
readwrite |
Definition at line 234 of file qqmldelegatemodel_p.h.
|
read |
\qmlproperty list<DelegateModelGroup> QtQml.Models::DelegateModel::groups
This property holds a delegate model's group definitions.
Groups define a sub-set of the items in a delegate model and can be used to filter a model.
For every group defined in a DelegateModel two attached pseudo-properties are added to each delegate item. The first of the form DelegateModel.in{GroupName} holds whether the item belongs to the group and the second DelegateModel.{groupName}Index holds the index of the item in that group.
The following example illustrates using groups to select items in a model.
\keyword dm-groups-property
Definition at line 234 of file qqmldelegatemodel_p.h.
|
read |
\qmlproperty DelegateModelGroup QtQml.Models::DelegateModel::items
This property holds default group to which all new items are added.
Definition at line 234 of file qqmldelegatemodel_p.h.
|
readwrite |
Definition at line 234 of file qqmldelegatemodel_p.h.
Referenced by setModel(), and QQuickComboBoxDelegateModel::variantValue().
|
read |
\qmlproperty object QtQml.Models::DelegateModel::parts
The parts property selects a DelegateModel which creates delegates from the part named. This is used in conjunction with the \l Package type.
For example, the code below selects a model which creates delegates named list from a \l Package:
Definition at line 234 of file qqmldelegatemodel_p.h.
|
read |
\qmlproperty DelegateModelGroup QtQml.Models::DelegateModel::persistedItems
This property holds delegate model's persisted items group.
Items in this group are not destroyed when released by a view, instead they are persisted until removed from the group.
An item can be removed from the persistedItems group by setting the DelegateModel.inPersistedItems property to false. If the item is not referenced by a view at that time it will be destroyed. Adding an item to this group will not create a new instance.
Items returned by the \l QtQml.Models::DelegateModelGroup::create() function are automatically added to this group.
Definition at line 234 of file qqmldelegatemodel_p.h.
|
readwrite |
Definition at line 234 of file qqmldelegatemodel_p.h.