OpenCoverage

qqmladaptormodel.cpp

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/qml/util/qqmladaptormodel.cpp
Source codeSwitch to Preprocessed file
LineSourceCount
1/****************************************************************************-
2**-
3** Copyright (C) 2016 The Qt Company Ltd.-
4** Contact: https://www.qt.io/licensing/-
5**-
6** This file is part of the QtQml module of the Qt Toolkit.-
7**-
8** $QT_BEGIN_LICENSE:LGPL$-
9** Commercial License Usage-
10** Licensees holding valid commercial Qt licenses may use this file in-
11** accordance with the commercial license agreement provided with the-
12** Software or, alternatively, in accordance with the terms contained in-
13** a written agreement between you and The Qt Company. For licensing terms-
14** and conditions see https://www.qt.io/terms-conditions. For further-
15** information use the contact form at https://www.qt.io/contact-us.-
16**-
17** GNU Lesser General Public License Usage-
18** Alternatively, this file may be used under the terms of the GNU Lesser-
19** General Public License version 3 as published by the Free Software-
20** Foundation and appearing in the file LICENSE.LGPL3 included in the-
21** packaging of this file. Please review the following information to-
22** ensure the GNU Lesser General Public License version 3 requirements-
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.-
24**-
25** GNU General Public License Usage-
26** Alternatively, this file may be used under the terms of the GNU-
27** General Public License version 2.0 or (at your option) the GNU General-
28** Public license version 3 or any later version approved by the KDE Free-
29** Qt Foundation. The licenses are as published by the Free Software-
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3-
31** included in the packaging of this file. Please review the following-
32** information to ensure the GNU General Public License requirements will-
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and-
34** https://www.gnu.org/licenses/gpl-3.0.html.-
35**-
36** $QT_END_LICENSE$-
37**-
38****************************************************************************/-
39-
40#include "qqmladaptormodel_p.h"-
41-
42#include <private/qqmldelegatemodel_p_p.h>-
43#include <private/qmetaobjectbuilder_p.h>-
44#include <private/qqmlproperty_p.h>-
45#include <private/qv8engine_p.h>-
46-
47#include <private/qv4value_p.h>-
48#include <private/qv4functionobject_p.h>-
49-
50QT_BEGIN_NAMESPACE-
51-
52class QQmlAdaptorModelEngineData : public QV8Engine::Deletable-
53{-
54public:-
55 QQmlAdaptorModelEngineData(QV4::ExecutionEngine *v4);-
56 ~QQmlAdaptorModelEngineData();-
57-
58 QV4::ExecutionEngine *v4;-
59 QV4::PersistentValue listItemProto;-
60};-
61-
62V4_DEFINE_EXTENSION(QQmlAdaptorModelEngineData, engineData)
executed 4 times by 2 tests: extensionId = QV8Engine::registerExtension();
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
executed 4 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
executed 8 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
executed 786 times by 2 tests: return rv;
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
extensionId == -1Description
TRUEevaluated 4 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEevaluated 782 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
extensionId == -1Description
TRUEevaluated 4 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEnever evaluated
!rvDescription
TRUEevaluated 8 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEevaluated 778 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-786
63-
64static QV4::ReturnedValue get_index(const QV4::FunctionObject *f, const QV4::Value *thisObject, const QV4::Value *, int)-
65{-
66 QV4::Scope scope(f);-
67 QV4::Scoped<QQmlDelegateModelItemObject> o(scope, thisObject->as<QQmlDelegateModelItemObject>());-
68 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 2332 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-2332
69 RETURN_RESULT(scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object")));
never executed: return QV4::Encode(scope.engine->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }())));
never executed: return qstring_literal_temp;
0
70-
71 RETURN_RESULT(QV4::Encode(o->d()->item->index));
executed 2332 times by 1 test: return QV4::Encode(QV4::Encode(o->d()->item->index));
Executed by:
  • tst_qquickvisualdatamodel
2332
72}-
73-
74template <typename T, typename M> static void setModelDataType(QMetaObjectBuilder *builder, M *metaType)-
75{-
76 builder->setFlags(QMetaObjectBuilder::DynamicMetaObject);-
77 builder->setClassName(T::staticMetaObject.className());-
78 builder->setSuperClass(&T::staticMetaObject);-
79 metaType->propertyOffset = T::staticMetaObject.propertyCount();-
80 metaType->signalOffset = T::staticMetaObject.methodCount();-
81}
executed 3970 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3970
82-
83static void addProperty(QMetaObjectBuilder *builder, int propertyId, const QByteArray &propertyName, const QByteArray &propertyType)-
84{-
85 builder->addSignal("__" + QByteArray::number(propertyId) + "()");-
86 QMetaPropertyBuilder property = builder->addProperty(-
87 propertyName, propertyType, propertyId);-
88 property.setWritable(true);-
89}
executed 26940 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
26940
90-
91class VDMModelDelegateDataType;-
92-
93class QQmlDMCachedModelData : public QQmlDelegateModelItem-
94{-
95public:-
96 QQmlDMCachedModelData(-
97 QQmlDelegateModelItemMetaType *metaType,-
98 VDMModelDelegateDataType *dataType,-
99 int index);-
100-
101 int metaCall(QMetaObject::Call call, int id, void **arguments);-
102-
103 virtual QVariant value(int role) const = 0;-
104 virtual void setValue(int role, const QVariant &value) = 0;-
105-
106 void setValue(const QString &role, const QVariant &value) override;-
107 bool resolveIndex(const QQmlAdaptorModel &model, int idx) override;-
108-
109 static QV4::ReturnedValue get_property(const QV4::FunctionObject *, const QV4::Value *thisObject, const QV4::Value *argv, int argc);-
110 static QV4::ReturnedValue set_property(const QV4::FunctionObject *, const QV4::Value *thisObject, const QV4::Value *argv, int argc);-
111-
112 VDMModelDelegateDataType *type;-
113 QVector<QVariant> cachedData;-
114};-
115-
116class VDMModelDelegateDataType-
117 : public QQmlRefCount-
118 , public QQmlAdaptorModel::Accessors-
119 , public QAbstractDynamicMetaObject-
120{-
121public:-
122 VDMModelDelegateDataType(QQmlAdaptorModel *model)-
123 : model(model)-
124 , metaObject(nullptr)-
125 , propertyCache(nullptr)-
126 , propertyOffset(0)-
127 , signalOffset(0)-
128 , hasModelData(false)-
129 {-
130 }
executed 4156 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
4156
131-
132 ~VDMModelDelegateDataType()-
133 {-
134 if (propertyCache)
propertyCacheDescription
TRUEevaluated 3930 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 210 times by 6 tests
Evaluated by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
210-3930
135 propertyCache->release();
executed 3930 times by 11 tests: propertyCache->release();
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3930
136 free(metaObject);-
137 }
executed 4140 times by 11 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
4140
138-
139 bool notify(-
140 const QQmlAdaptorModel &,-
141 const QList<QQmlDelegateModelItem *> &items,-
142 int index,-
143 int count,-
144 const QVector<int> &roles) const override-
145 {-
146 bool changed = roles.isEmpty() && !watchedRoles.isEmpty();
roles.isEmpty()Description
TRUEevaluated 450 times by 4 tests
Evaluated by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
!watchedRoles.isEmpty()Description
TRUEevaluated 418 times by 2 tests
Evaluated by:
  • tst_qquicklistview
  • tst_qquickvisualdatamodel
FALSEevaluated 32 times by 4 tests
Evaluated by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
32-450
147 if (!changed && !watchedRoles.isEmpty() && watchedRoleIds.isEmpty()) {
!changedDescription
TRUEevaluated 76 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 418 times by 2 tests
Evaluated by:
  • tst_qquicklistview
  • tst_qquickvisualdatamodel
!watchedRoles.isEmpty()Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 64 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
watchedRoleIds.isEmpty()Description
TRUEevaluated 6 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 6 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
6-418
148 QList<int> roleIds;-
149 for (const QByteArray &r : watchedRoles) {-
150 QHash<QByteArray, int>::const_iterator it = roleNames.find(r);-
151 if (it != roleNames.end())
it != roleNames.end()Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
4-8
152 roleIds << it.value();
executed 8 times by 1 test: roleIds << it.value();
Executed by:
  • tst_qquickvisualdatamodel
8
153 }
executed 12 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
12
154 const_cast<VDMModelDelegateDataType *>(this)->watchedRoleIds = roleIds;-
155 }
executed 6 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
6
156-
157 QVector<int> signalIndexes;-
158 for (int i = 0; i < roles.count(); ++i) {
i < roles.count()Description
TRUEevaluated 52 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 494 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
52-494
159 const int role = roles.at(i);-
160 if (!changed && watchedRoleIds.contains(role))
!changedDescription
TRUEevaluated 52 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEnever evaluated
watchedRoleIds.contains(role)Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
0-52
161 changed = true;
executed 8 times by 1 test: changed = true;
Executed by:
  • tst_qquickvisualdatamodel
8
162-
163 int propertyId = propertyRoles.indexOf(role);-
164 if (propertyId != -1)
propertyId != -1Description
TRUEevaluated 52 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-52
165 signalIndexes.append(propertyId + signalOffset);
executed 52 times by 4 tests: signalIndexes.append(propertyId + signalOffset);
Executed by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
52
166 }
executed 52 times by 4 tests: end of block
Executed by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
52
167 if (roles.isEmpty()) {
roles.isEmpty()Description
TRUEevaluated 450 times by 4 tests
Evaluated by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 44 times by 4 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
44-450
168 const int propertyRolesCount = propertyRoles.count();-
169 signalIndexes.reserve(propertyRolesCount);-
170 for (int propertyId = 0; propertyId < propertyRolesCount; ++propertyId)
propertyId < p...ertyRolesCountDescription
TRUEevaluated 3134 times by 4 tests
Evaluated by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 450 times by 4 tests
Evaluated by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
450-3134
171 signalIndexes.append(propertyId + signalOffset);
executed 3134 times by 4 tests: signalIndexes.append(propertyId + signalOffset);
Executed by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
3134
172 }
executed 450 times by 4 tests: end of block
Executed by:
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
450
173-
174 for (int i = 0, c = items.count(); i < c; ++i) {
i < cDescription
TRUEevaluated 4646 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 494 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
494-4646
175 QQmlDelegateModelItem *item = items.at(i);-
176 const int idx = item->modelIndex();-
177 if (idx >= index && idx < index + count) {
idx >= indexDescription
TRUEevaluated 3393 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 1253 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
idx < index + countDescription
TRUEevaluated 1952 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 1441 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
1253-3393
178 for (int i = 0; i < signalIndexes.count(); ++i)
i < signalIndexes.count()Description
TRUEevaluated 13502 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 1952 times by 5 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
1952-13502
179 QMetaObject::activate(item, signalIndexes.at(i), nullptr);
executed 13502 times by 5 tests: QMetaObject::activate(item, signalIndexes.at(i), nullptr);
Executed by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
13502
180 }
executed 1952 times by 5 tests: end of block
Executed by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
1952
181 }
executed 4646 times by 5 tests: end of block
Executed by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
4646
182 return changed;
executed 494 times by 5 tests: return changed;
Executed by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
494
183 }-
184-
185 void replaceWatchedRoles(-
186 QQmlAdaptorModel &,-
187 const QList<QByteArray> &oldRoles,-
188 const QList<QByteArray> &newRoles) const override-
189 {-
190 VDMModelDelegateDataType *dataType = const_cast<VDMModelDelegateDataType *>(this);-
191-
192 dataType->watchedRoleIds.clear();-
193 for (const QByteArray &oldRole : oldRoles)-
194 dataType->watchedRoles.removeOne(oldRole);
executed 24 times by 2 tests: dataType->watchedRoles.removeOne(oldRole);
Executed by:
  • tst_qquicklistview
  • tst_qquickvisualdatamodel
24
195 dataType->watchedRoles += newRoles;-
196 }
executed 6002 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
6002
197-
198 static QV4::ReturnedValue get_hasModelChildren(const QV4::FunctionObject *b, const QV4::Value *thisObject, const QV4::Value *, int)-
199 {-
200 QV4::Scope scope(b);-
201 QV4::Scoped<QQmlDelegateModelItemObject> o(scope, thisObject->as<QQmlDelegateModelItemObject>());-
202 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-8
203 RETURN_RESULT(scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object")));
never executed: return QV4::Encode(scope.engine->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }())));
never executed: return qstring_literal_temp;
0
204-
205 const QQmlAdaptorModel *const model = static_cast<QQmlDMCachedModelData *>(o->d()->item)->type->model;-
206 if (o->d()->item->index >= 0 && *model) {
o->d()->item->index >= 0Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-8
207 const QAbstractItemModel * const aim = model->aim();-
208 RETURN_RESULT(QV4::Encode(aim->hasChildren(aim->index(o->d()->item->index, 0, model->rootIndex))));
executed 8 times by 1 test: return QV4::Encode(QV4::Encode(aim->hasChildren(aim->index(o->d()->item->index, 0, model->rootIndex))));
Executed by:
  • tst_qquickvisualdatamodel
8
209 } else {-
210 RETURN_RESULT(QV4::Encode(false));
never executed: return QV4::Encode(QV4::Encode(false));
0
211 }-
212 }-
213-
214-
215 void initializeConstructor(QQmlAdaptorModelEngineData *const data)-
216 {-
217 QV4::ExecutionEngine *v4 = data->v4;-
218 QV4::Scope scope(v4);-
219 QV4::ScopedObject proto(scope, v4->newObject());-
220 proto->defineAccessorProperty(QStringLiteral("index"), get_index, nullptr);
executed 362 times by 2 tests: return qstring_literal_temp;
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
362
221 proto->defineAccessorProperty(QStringLiteral("hasModelChildren"), get_hasModelChildren, nullptr);
executed 362 times by 2 tests: return qstring_literal_temp;
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
362
222 QV4::ScopedProperty p(scope);-
223-
224 typedef QHash<QByteArray, int>::const_iterator iterator;-
225 for (iterator it = roleNames.constBegin(), end = roleNames.constEnd(); it != end; ++it) {
it != endDescription
TRUEevaluated 936 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEevaluated 362 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
362-936
226 const int propertyId = propertyRoles.indexOf(it.value());-
227 const QByteArray &propertyName = it.key();-
228-
229 QV4::ScopedString name(scope, v4->newString(QString::fromUtf8(propertyName)));-
230 QV4::ExecutionContext *global = v4->rootContext();-
231 QV4::ScopedFunctionObject g(scope, v4->memoryManager->allocate<QV4::IndexedBuiltinFunction>(global, propertyId, QQmlDMCachedModelData::get_property));-
232 QV4::ScopedFunctionObject s(scope, v4->memoryManager->allocate<QV4::IndexedBuiltinFunction>(global, propertyId, QQmlDMCachedModelData::set_property));-
233 p->setGetter(g);-
234 p->setSetter(s);-
235 proto->insertMember(name, p, QV4::Attr_Accessor|QV4::Attr_NotEnumerable|QV4::Attr_NotConfigurable);-
236 }
executed 936 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
936
237 prototype.set(v4, proto);-
238 }
executed 362 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
362
239-
240 // QAbstractDynamicMetaObject-
241-
242 void objectDestroyed(QObject *) override-
243 {-
244 release();-
245 }
executed 77952 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
77952
246-
247 int metaCall(QObject *object, QMetaObject::Call call, int id, void **arguments) override-
248 {-
249 return static_cast<QQmlDMCachedModelData *>(object)->metaCall(call, id, arguments);
executed 234595 times by 11 tests: return static_cast<QQmlDMCachedModelData *>(object)->metaCall(call, id, arguments);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
234595
250 }-
251-
252 QV4::PersistentValue prototype;-
253 QList<int> propertyRoles;-
254 QList<int> watchedRoleIds;-
255 QList<QByteArray> watchedRoles;-
256 QHash<QByteArray, int> roleNames;-
257 QQmlAdaptorModel *model;-
258 QMetaObject *metaObject;-
259 QQmlPropertyCache *propertyCache;-
260 int propertyOffset;-
261 int signalOffset;-
262 bool hasModelData;-
263};-
264-
265QQmlDMCachedModelData::QQmlDMCachedModelData(-
266 QQmlDelegateModelItemMetaType *metaType, VDMModelDelegateDataType *dataType, int index)-
267 : QQmlDelegateModelItem(metaType, index)-
268 , type(dataType)-
269{-
270 if (index == -1)
index == -1Description
TRUEevaluated 360 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 77626 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
360-77626
271 cachedData.resize(type->hasModelData ? 1 : type->propertyRoles.count());
executed 360 times by 1 test: cachedData.resize(type->hasModelData ? 1 : type->propertyRoles.count());
Executed by:
  • tst_qquickvisualdatamodel
360
272-
273 QObjectPrivate::get(this)->metaObject = type;-
274-
275 type->addref();-
276-
277 QQmlData *qmldata = QQmlData::get(this, true);-
278 qmldata->propertyCache = dataType->propertyCache;-
279 qmldata->propertyCache->addref();-
280}
executed 77986 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
77986
281-
282int QQmlDMCachedModelData::metaCall(QMetaObject::Call call, int id, void **arguments)-
283{-
284 if (call == QMetaObject::ReadProperty && id >= type->propertyOffset) {
call == QMetaO...::ReadPropertyDescription
TRUEevaluated 234549 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 46 times by 2 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
id >= type->propertyOffsetDescription
TRUEevaluated 234549 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-234549
285 const int propertyIndex = id - type->propertyOffset;-
286 if (index == -1) {
index == -1Description
TRUEevaluated 1400 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 233149 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
1400-233149
287 if (!cachedData.isEmpty()) {
!cachedData.isEmpty()Description
TRUEevaluated 1400 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-1400
288 *static_cast<QVariant *>(arguments[0]) = cachedData.at(-
289 type->hasModelData ? 0 : propertyIndex);-
290 }
executed 1400 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
1400
291 } else if (*type->model) {
executed 1400 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
*type->modelDescription
TRUEevaluated 233149 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-233149
292 *static_cast<QVariant *>(arguments[0]) = value(type->propertyRoles.at(propertyIndex));-
293 }
executed 233149 times by 11 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
233149
294 return -1;
executed 234549 times by 11 tests: return -1;
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
234549
295 } else if (call == QMetaObject::WriteProperty && id >= type->propertyOffset) {
call == QMetaO...:WritePropertyDescription
TRUEevaluated 46 times by 2 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
FALSEnever evaluated
id >= type->propertyOffsetDescription
TRUEevaluated 46 times by 2 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-46
296 const int propertyIndex = id - type->propertyOffset;-
297 if (index == -1) {
index == -1Description
TRUEevaluated 40 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 6 times by 2 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
6-40
298 const QMetaObject *meta = metaObject();-
299 if (cachedData.count() > 1) {
cachedData.count() > 1Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 32 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
8-32
300 cachedData[propertyIndex] = *static_cast<QVariant *>(arguments[0]);-
301 QMetaObject::activate(this, meta, propertyIndex, nullptr);-
302 } else if (cachedData.count() == 1) {
executed 8 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
cachedData.count() == 1Description
TRUEevaluated 32 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-32
303 cachedData[0] = *static_cast<QVariant *>(arguments[0]);-
304 QMetaObject::activate(this, meta, 0, nullptr);-
305 QMetaObject::activate(this, meta, 1, nullptr);-
306 }
executed 32 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
32
307 } else if (*type->model) {
executed 40 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
*type->modelDescription
TRUEevaluated 6 times by 2 tests
Evaluated by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-40
308 setValue(type->propertyRoles.at(propertyIndex), *static_cast<QVariant *>(arguments[0]));-
309 }
executed 6 times by 2 tests: end of block
Executed by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
6
310 return -1;
executed 46 times by 2 tests: return -1;
Executed by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
46
311 } else {-
312 return qt_metacall(call, id, arguments);
never executed: return qt_metacall(call, id, arguments);
0
313 }-
314}-
315-
316void QQmlDMCachedModelData::setValue(const QString &role, const QVariant &value)-
317{-
318 QHash<QByteArray, int>::iterator it = type->roleNames.find(role.toUtf8());-
319 if (it != type->roleNames.end()) {
it != type->roleNames.end()Description
TRUEevaluated 352 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
8-352
320 for (int i = 0; i < type->propertyRoles.count(); ++i) {
i < type->prop...yRoles.count()Description
TRUEevaluated 440 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-440
321 if (type->propertyRoles.at(i) == *it) {
type->property...s.at(i) == *itDescription
TRUEevaluated 352 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 88 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
88-352
322 cachedData[i] = value;-
323 return;
executed 352 times by 1 test: return;
Executed by:
  • tst_qquickvisualdatamodel
352
324 }-
325 }
executed 88 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
88
326 }
never executed: end of block
0
327}
executed 8 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
8
328-
329bool QQmlDMCachedModelData::resolveIndex(const QQmlAdaptorModel &, int idx)-
330{-
331 if (index == -1) {
index == -1Description
TRUEevaluated 120 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-120
332 Q_ASSERT(idx >= 0);-
333 cachedData.clear();-
334 setModelIndex(idx);-
335 const QMetaObject *meta = metaObject();-
336 const int propertyCount = type->propertyRoles.count();-
337 for (int i = 0; i < propertyCount; ++i)
i < propertyCountDescription
TRUEevaluated 288 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 120 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
120-288
338 QMetaObject::activate(this, meta, i, nullptr);
executed 288 times by 1 test: QMetaObject::activate(this, meta, i, nullptr);
Executed by:
  • tst_qquickvisualdatamodel
288
339 return true;
executed 120 times by 1 test: return true;
Executed by:
  • tst_qquickvisualdatamodel
120
340 } else {-
341 return false;
never executed: return false;
0
342 }-
343}-
344-
345QV4::ReturnedValue QQmlDMCachedModelData::get_property(const QV4::FunctionObject *b, const QV4::Value *thisObject, const QV4::Value *, int)-
346{-
347 QV4::Scope scope(b);-
348 QV4::Scoped<QQmlDelegateModelItemObject> o(scope, thisObject->as<QQmlDelegateModelItemObject>());-
349 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 2588 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
0-2588
350 return scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object"));
never executed: return scope.engine->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }()));
never executed: return qstring_literal_temp;
0
351-
352 uint propertyId = static_cast<const QV4::IndexedBuiltinFunction *>(b)->d()->index;-
353-
354 QQmlDMCachedModelData *modelData = static_cast<QQmlDMCachedModelData *>(o->d()->item);-
355 if (o->d()->item->index == -1) {
o->d()->item->index == -1Description
TRUEevaluated 236 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 2352 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
236-2352
356 if (!modelData->cachedData.isEmpty()) {
!modelData->ca...Data.isEmpty()Description
TRUEevaluated 236 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-236
357 return scope.engine->fromVariant(
executed 236 times by 1 test: return scope.engine->fromVariant( modelData->cachedData.at(modelData->type->hasModelData ? 0 : propertyId));
Executed by:
  • tst_qquickvisualdatamodel
236
358 modelData->cachedData.at(modelData->type->hasModelData ? 0 : propertyId));
executed 236 times by 1 test: return scope.engine->fromVariant( modelData->cachedData.at(modelData->type->hasModelData ? 0 : propertyId));
Executed by:
  • tst_qquickvisualdatamodel
236
359 }-
360 } else if (*modelData->type->model) {
never executed: end of block
*modelData->type->modelDescription
TRUEevaluated 2352 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-2352
361 return scope.engine->fromVariant(
executed 2352 times by 2 tests: return scope.engine->fromVariant( modelData->value(modelData->type->propertyRoles.at(propertyId)));
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
2352
362 modelData->value(modelData->type->propertyRoles.at(propertyId)));
executed 2352 times by 2 tests: return scope.engine->fromVariant( modelData->value(modelData->type->propertyRoles.at(propertyId)));
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
2352
363 }-
364 return QV4::Encode::undefined();
never executed: return QV4::Encode::undefined();
0
365}-
366-
367QV4::ReturnedValue QQmlDMCachedModelData::set_property(const QV4::FunctionObject *b, const QV4::Value *thisObject, const QV4::Value *argv, int argc)-
368{-
369 QV4::Scope scope(b);-
370 QV4::Scoped<QQmlDelegateModelItemObject> o(scope, thisObject->as<QQmlDelegateModelItemObject>());-
371 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 32 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-32
372 return scope.engine->throwTypeError(QStringLiteral("Not a valid VisualData object"));
never executed: return scope.engine->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }()));
never executed: return qstring_literal_temp;
0
373 if (!argc)
!argcDescription
TRUEnever evaluated
FALSEevaluated 32 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-32
374 return scope.engine->throwTypeError();
never executed: return scope.engine->throwTypeError();
0
375-
376 uint propertyId = static_cast<const QV4::IndexedBuiltinFunction *>(b)->d()->index;-
377-
378 if (o->d()->item->index == -1) {
o->d()->item->index == -1Description
TRUEevaluated 20 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
12-20
379 QQmlDMCachedModelData *modelData = static_cast<QQmlDMCachedModelData *>(o->d()->item);-
380 if (!modelData->cachedData.isEmpty()) {
!modelData->ca...Data.isEmpty()Description
TRUEevaluated 20 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-20
381 if (modelData->cachedData.count() > 1) {
modelData->cac...ta.count() > 1Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 16 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
4-16
382 modelData->cachedData[propertyId] = scope.engine->toVariant(argv[0], QVariant::Invalid);-
383 QMetaObject::activate(o->d()->item, o->d()->item->metaObject(), propertyId, nullptr);-
384 } else if (modelData->cachedData.count() == 1) {
executed 4 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
modelData->cac...a.count() == 1Description
TRUEevaluated 16 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-16
385 modelData->cachedData[0] = scope.engine->toVariant(argv[0], QVariant::Invalid);-
386 QMetaObject::activate(o->d()->item, o->d()->item->metaObject(), 0, nullptr);-
387 QMetaObject::activate(o->d()->item, o->d()->item->metaObject(), 1, nullptr);-
388 }
executed 16 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
16
389 }
executed 20 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
20
390 }
executed 20 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
20
391 return QV4::Encode::undefined();
executed 32 times by 1 test: return QV4::Encode::undefined();
Executed by:
  • tst_qquickvisualdatamodel
32
392}-
393-
394//------------------------------------------------------------------
395// QAbstractItemModel-
396//------------------------------------------------------------------
397-
398class QQmlDMAbstractItemModelData : public QQmlDMCachedModelData-
399{-
400 Q_OBJECT-
401 Q_PROPERTY(bool hasModelChildren READ hasModelChildren CONSTANT)-
402-
403public:-
404 QQmlDMAbstractItemModelData(-
405 QQmlDelegateModelItemMetaType *metaType,-
406 VDMModelDelegateDataType *dataType,-
407 int index)-
408 : QQmlDMCachedModelData(metaType, dataType, index)-
409 {-
410 }
executed 77986 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
77986
411-
412 bool hasModelChildren() const-
413 {-
414 if (index >= 0 && *type->model) {
index >= 0Description
TRUEevaluated 34 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-34
415 const QAbstractItemModel * const model = type->model->aim();-
416 return model->hasChildren(model->index(row, column, type->model->rootIndex));
executed 34 times by 1 test: return model->hasChildren(model->index(row, column, type->model->rootIndex));
Executed by:
  • tst_qquickvisualdatamodel
34
417 } else {-
418 return false;
never executed: return false;
0
419 }-
420 }-
421-
422 QVariant value(int role) const override-
423 {-
424 return type->model->aim()->index(row, column, type->model->rootIndex).data(role);
executed 235501 times by 11 tests: return type->model->aim()->index(row, column, type->model->rootIndex).data(role);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
235501
425 }-
426-
427 void setValue(int role, const QVariant &value) override-
428 {-
429 type->model->aim()->setData(-
430 type->model->aim()->index(row, column, type->model->rootIndex), value, role);-
431 }
executed 6 times by 2 tests: end of block
Executed by:
  • tst_qqmllistmodel
  • tst_qquickvisualdatamodel
6
432-
433 QV4::ReturnedValue get() override-
434 {-
435 if (type->prototype.isUndefined()) {
type->prototype.isUndefined()Description
TRUEevaluated 362 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
FALSEevaluated 4394 times by 2 tests
Evaluated by:
  • tst_examples
  • tst_qquickvisualdatamodel
362-4394
436 QQmlAdaptorModelEngineData * const data = engineData(v4);-
437 type->initializeConstructor(data);-
438 }
executed 362 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
362
439 QV4::Scope scope(v4);-
440 QV4::ScopedObject proto(scope, type->prototype.value());-
441 QV4::ScopedObject o(scope, proto->engine()->memoryManager->allocate<QQmlDelegateModelItemObject>(this));-
442 o->setPrototypeOf(proto);-
443 ++scriptRef;-
444 return o.asReturnedValue();
executed 4756 times by 2 tests: return o.asReturnedValue();
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
4756
445 }-
446};-
447-
448class VDMAbstractItemModelDataType : public VDMModelDelegateDataType-
449{-
450public:-
451 VDMAbstractItemModelDataType(QQmlAdaptorModel *model)-
452 : VDMModelDelegateDataType(model)-
453 {-
454 }
executed 4156 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
4156
455-
456 int rowCount(const QQmlAdaptorModel &model) const override-
457 {-
458 return model.aim()->rowCount(model.rootIndex);
executed 259434 times by 12 tests: return model.aim()->rowCount(model.rootIndex);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
259434
459 }-
460-
461 int columnCount(const QQmlAdaptorModel &model) const override-
462 {-
463 return model.aim()->columnCount(model.rootIndex);
never executed: return model.aim()->columnCount(model.rootIndex);
0
464 }-
465-
466 void cleanup(QQmlAdaptorModel &model, QQmlDelegateModel *vdm) const override-
467 {-
468 QAbstractItemModel * const aim = model.aim();-
469 if (aim && vdm) {
aimDescription
TRUEevaluated 70 times by 6 tests
Evaluated by:
  • tst_qqmlecmascript
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 4080 times by 10 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
vdmDescription
TRUEevaluated 70 times by 6 tests
Evaluated by:
  • tst_qqmlecmascript
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4080
470 QObject::disconnect(aim, SIGNAL(rowsInserted(QModelIndex,int,int)),-
471 vdm, SLOT(_q_rowsInserted(QModelIndex,int,int)));-
472 QObject::disconnect(aim, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),-
473 vdm, SLOT(_q_rowsAboutToBeRemoved(QModelIndex,int,int)));-
474 QObject::disconnect(aim, SIGNAL(rowsRemoved(QModelIndex,int,int)),-
475 vdm, SLOT(_q_rowsRemoved(QModelIndex,int,int)));-
476 QObject::disconnect(aim, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)),-
477 vdm, SLOT(_q_dataChanged(QModelIndex,QModelIndex,QVector<int>)));-
478 QObject::disconnect(aim, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)),-
479 vdm, SLOT(_q_rowsMoved(QModelIndex,int,int,QModelIndex,int)));-
480 QObject::disconnect(aim, SIGNAL(modelReset()),-
481 vdm, SLOT(_q_modelReset()));-
482 QObject::disconnect(aim, SIGNAL(layoutChanged(QList<QPersistentModelIndex>,QAbstractItemModel::LayoutChangeHint)),-
483 vdm, SLOT(_q_layoutChanged(QList<QPersistentModelIndex>,QAbstractItemModel::LayoutChangeHint)));-
484 }
executed 70 times by 6 tests: end of block
Executed by:
  • tst_qqmlecmascript
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
70
485-
486 const_cast<VDMAbstractItemModelDataType *>(this)->release();-
487 }
executed 4150 times by 11 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
4150
488-
489 QVariant value(const QQmlAdaptorModel &model, int index, const QString &role) const override-
490 {-
491 QHash<QByteArray, int>::const_iterator it = roleNames.find(role.toUtf8());-
492 if (it != roleNames.end()) {
it != roleNames.end()Description
TRUEevaluated 7278 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
FALSEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
8-7278
493 return model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex).data(*it);
executed 7278 times by 3 tests: return model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex).data(*it);
Executed by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
7278
494 } else if (role == QLatin1String("hasModelChildren")) {
role == QLatin...odelChildren")Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-8
495 return QVariant(model.aim()->hasChildren(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex)));
executed 8 times by 1 test: return QVariant(model.aim()->hasChildren(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex)));
Executed by:
  • tst_qquickvisualdatamodel
8
496 } else {-
497 return QVariant();
never executed: return QVariant();
0
498 }-
499 }-
500-
501 QVariant parentModelIndex(const QQmlAdaptorModel &model) const override-
502 {-
503 return model
executed 2 times by 1 test: return model ? QVariant::fromValue(model.aim()->parent(model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickvisualdatamodel
2
504 ? QVariant::fromValue(model.aim()->parent(model.rootIndex))
executed 2 times by 1 test: return model ? QVariant::fromValue(model.aim()->parent(model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickvisualdatamodel
2
505 : QVariant();
executed 2 times by 1 test: return model ? QVariant::fromValue(model.aim()->parent(model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickvisualdatamodel
2
506 }-
507-
508 QVariant modelIndex(const QQmlAdaptorModel &model, int index) const override-
509 {-
510 return model
executed 6 times by 2 tests: return model ? QVariant::fromValue(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickpathview
  • tst_qquickvisualdatamodel
6
511 ? QVariant::fromValue(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex))
executed 6 times by 2 tests: return model ? QVariant::fromValue(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickpathview
  • tst_qquickvisualdatamodel
6
512 : QVariant();
executed 6 times by 2 tests: return model ? QVariant::fromValue(model.aim()->index(model.rowAt(index), model.columnAt(index), model.rootIndex)) : QVariant();
Executed by:
  • tst_qquickpathview
  • tst_qquickvisualdatamodel
6
513 }-
514-
515 bool canFetchMore(const QQmlAdaptorModel &model) const override-
516 {-
517 return model && model.aim()->canFetchMore(model.rootIndex);
executed 11513 times by 12 tests: return model && model.aim()->canFetchMore(model.rootIndex);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
11513
518 }-
519-
520 void fetchMore(QQmlAdaptorModel &model) const override-
521 {-
522 if (model)
modelDescription
TRUEevaluated 18 times by 1 test
Evaluated by:
  • tst_qquicklistview
FALSEnever evaluated
0-18
523 model.aim()->fetchMore(model.rootIndex);
executed 18 times by 1 test: model.aim()->fetchMore(model.rootIndex);
Executed by:
  • tst_qquicklistview
18
524 }
executed 18 times by 1 test: end of block
Executed by:
  • tst_qquicklistview
18
525-
526 QQmlDelegateModelItem *createItem(-
527 QQmlAdaptorModel &model,-
528 QQmlDelegateModelItemMetaType *metaType,-
529 int index) const override-
530 {-
531 VDMAbstractItemModelDataType *dataType = const_cast<VDMAbstractItemModelDataType *>(this);-
532 if (!metaObject)
!metaObjectDescription
TRUEevaluated 3946 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 74040 times by 11 tests
Evaluated by:
  • tst_examples
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3946-74040
533 dataType->initializeMetaType(model);
executed 3946 times by 12 tests: dataType->initializeMetaType(model);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3946
534 return new QQmlDMAbstractItemModelData(metaType, dataType, index);
executed 77986 times by 12 tests: return new QQmlDMAbstractItemModelData(metaType, dataType, index);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
77986
535 }-
536-
537 void initializeMetaType(QQmlAdaptorModel &model)-
538 {-
539 QMetaObjectBuilder builder;-
540 setModelDataType<QQmlDMAbstractItemModelData>(&builder, this);-
541-
542 const QByteArray propertyType = QByteArrayLiteral("QVariant");
executed 3946 times by 12 tests: return ba;
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3946
543 const QHash<int, QByteArray> names = model.aim()->roleNames();-
544 for (QHash<int, QByteArray>::const_iterator it = names.begin(), cend = names.end(); it != cend; ++it) {
it != cendDescription
TRUEevaluated 26316 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 3946 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3946-26316
545 const int propertyId = propertyRoles.count();-
546 propertyRoles.append(it.key());-
547 roleNames.insert(it.value(), it.key());-
548 addProperty(&builder, propertyId, it.value(), propertyType);-
549 }
executed 26316 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
26316
550 if (propertyRoles.count() == 1) {
propertyRoles.count() == 1Description
TRUEevaluated 624 times by 10 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 3322 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
624-3322
551 hasModelData = true;-
552 const int role = names.begin().key();-
553 const QByteArray propertyName = QByteArrayLiteral("modelData");
executed 624 times by 10 tests: return ba;
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
624
554-
555 propertyRoles.append(role);-
556 roleNames.insert(propertyName, role);-
557 addProperty(&builder, 1, propertyName, propertyType);-
558 }
executed 624 times by 10 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
624
559-
560 metaObject = builder.toMetaObject();-
561 *static_cast<QMetaObject *>(this) = *metaObject;-
562 propertyCache = new QQmlPropertyCache(metaObject);-
563 }
executed 3946 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
3946
564};-
565-
566//------------------------------------------------------------------
567// QQmlListAccessor-
568//------------------------------------------------------------------
569-
570class QQmlDMListAccessorData : public QQmlDelegateModelItem-
571{-
572 Q_OBJECT-
573 Q_PROPERTY(QVariant modelData READ modelData WRITE setModelData NOTIFY modelDataChanged)-
574public:-
575 QQmlDMListAccessorData(QQmlDelegateModelItemMetaType *metaType, int index, const QVariant &value)-
576 : QQmlDelegateModelItem(metaType, index)-
577 , cachedData(value)-
578 {-
579 }
executed 9985 times by 22 tests: end of block
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
9985
580-
581 QVariant modelData() const-
582 {-
583 return cachedData;
executed 5750 times by 7 tests: return cachedData;
Executed by:
  • tst_examples
  • tst_qqmlinstantiator
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
5750
584 }-
585-
586 void setModelData(const QVariant &data)-
587 {-
588 if (index == -1 && data != cachedData) {
index == -1Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 4 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
data != cachedDataDescription
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-12
589 cachedData = data;-
590 emit modelDataChanged();-
591 }
executed 12 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
12
592 }
executed 16 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
16
593-
594 static QV4::ReturnedValue get_modelData(const QV4::FunctionObject *b, const QV4::Value *thisObject, const QV4::Value *, int)-
595 {-
596 QV4::ExecutionEngine *v4 = b->engine();-
597 const QQmlDelegateModelItemObject *o = thisObject->as<QQmlDelegateModelItemObject>();-
598 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 208 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-208
599 return v4->throwTypeError(QStringLiteral("Not a valid VisualData object"));
never executed: return v4->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }()));
never executed: return qstring_literal_temp;
0
600-
601 return v4->fromVariant(static_cast<QQmlDMListAccessorData *>(o->d()->item)->cachedData);
executed 208 times by 1 test: return v4->fromVariant(static_cast<QQmlDMListAccessorData *>(o->d()->item)->cachedData);
Executed by:
  • tst_qquickvisualdatamodel
208
602 }-
603-
604 static QV4::ReturnedValue set_modelData(const QV4::FunctionObject *b, const QV4::Value *thisObject, const QV4::Value *argv, int argc)-
605 {-
606 QV4::ExecutionEngine *v4 = b->engine();-
607 const QQmlDelegateModelItemObject *o = thisObject->as<QQmlDelegateModelItemObject>();-
608 if (!o)
!oDescription
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-8
609 return v4->throwTypeError(QStringLiteral("Not a valid VisualData object"));
never executed: return v4->throwTypeError(([]() noexcept -> QString { enum { Size = sizeof(u"" "Not a valid VisualData object")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "Not a valid VisualData object" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }()));
never executed: return qstring_literal_temp;
0
610 if (!argc)
!argcDescription
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-8
611 return v4->throwTypeError();
never executed: return v4->throwTypeError();
0
612-
613 static_cast<QQmlDMListAccessorData *>(o->d()->item)->setModelData(v4->toVariant(argv[0], QVariant::Invalid));-
614 return QV4::Encode::undefined();
executed 8 times by 1 test: return QV4::Encode::undefined();
Executed by:
  • tst_qquickvisualdatamodel
8
615 }-
616-
617 QV4::ReturnedValue get() override-
618 {-
619 QQmlAdaptorModelEngineData *data = engineData(v4);-
620 QV4::Scope scope(v4);-
621 QV4::ScopedObject o(scope, v4->memoryManager->allocate<QQmlDelegateModelItemObject>(this));-
622 QV4::ScopedObject p(scope, data->listItemProto.value());-
623 o->setPrototypeOf(p);-
624 ++scriptRef;-
625 return o.asReturnedValue();
executed 424 times by 1 test: return o.asReturnedValue();
Executed by:
  • tst_qquickvisualdatamodel
424
626 }-
627-
628 void setValue(const QString &role, const QVariant &value) override-
629 {-
630 if (role == QLatin1String("modelData"))
role == QLatin...g("modelData")Description
TRUEevaluated 44 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-44
631 cachedData = value;
executed 44 times by 1 test: cachedData = value;
Executed by:
  • tst_qquickvisualdatamodel
44
632 }
executed 44 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
44
633-
634 bool resolveIndex(const QQmlAdaptorModel &model, int idx) override-
635 {-
636 if (index == -1) {
index == -1Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-12
637 index = idx;-
638 cachedData = model.list.at(idx);-
639 emit modelIndexChanged();-
640 emit modelDataChanged();-
641 return true;
executed 12 times by 1 test: return true;
Executed by:
  • tst_qquickvisualdatamodel
12
642 } else {-
643 return false;
never executed: return false;
0
644 }-
645 }-
646-
647-
648Q_SIGNALS:-
649 void modelDataChanged();-
650-
651private:-
652 QVariant cachedData;-
653};-
654-
655-
656class VDMListDelegateDataType : public QQmlAdaptorModel::Accessors-
657{-
658public:-
659 inline VDMListDelegateDataType() {}-
660-
661 int rowCount(const QQmlAdaptorModel &model) const override-
662 {-
663 return model.list.count();
executed 20760 times by 22 tests: return model.list.count();
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
20760
664 }-
665-
666 int columnCount(const QQmlAdaptorModel &) const override-
667 {-
668 return 1;
never executed: return 1;
0
669 }-
670-
671 QVariant value(const QQmlAdaptorModel &model, int index, const QString &role) const override-
672 {-
673 return role == QLatin1String("modelData")
executed 102 times by 1 test: return role == QLatin1String("modelData") ? model.list.at(index) : QVariant();
Executed by:
  • tst_qquicklistview
102
674 ? model.list.at(index)
executed 102 times by 1 test: return role == QLatin1String("modelData") ? model.list.at(index) : QVariant();
Executed by:
  • tst_qquicklistview
102
675 : QVariant();
executed 102 times by 1 test: return role == QLatin1String("modelData") ? model.list.at(index) : QVariant();
Executed by:
  • tst_qquicklistview
102
676 }-
677-
678 QQmlDelegateModelItem *createItem(-
679 QQmlAdaptorModel &model,-
680 QQmlDelegateModelItemMetaType *metaType,-
681 int index) const override-
682 {-
683 return new QQmlDMListAccessorData(
executed 9985 times by 22 tests: return new QQmlDMListAccessorData( metaType, index, index >= 0 && index < model.list.count() ? model.list.at(index) : QVariant());
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
9985
684 metaType,
executed 9985 times by 22 tests: return new QQmlDMListAccessorData( metaType, index, index >= 0 && index < model.list.count() ? model.list.at(index) : QVariant());
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
9985
685 index,
executed 9985 times by 22 tests: return new QQmlDMListAccessorData( metaType, index, index >= 0 && index < model.list.count() ? model.list.at(index) : QVariant());
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
9985
686 index >= 0 && index < model.list.count() ? model.list.at(index) : QVariant());
executed 9985 times by 22 tests: return new QQmlDMListAccessorData( metaType, index, index >= 0 && index < model.list.count() ? model.list.at(index) : QVariant());
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
9985
687 }-
688};-
689-
690//------------------------------------------------------------------
691// QObject-
692//------------------------------------------------------------------
693-
694class VDMObjectDelegateDataType;-
695class QQmlDMObjectData : public QQmlDelegateModelItem, public QQmlAdaptorModelProxyInterface-
696{-
697 Q_OBJECT-
698 Q_PROPERTY(QObject *modelData READ modelData CONSTANT)-
699 Q_INTERFACES(QQmlAdaptorModelProxyInterface)-
700public:-
701 QQmlDMObjectData(-
702 QQmlDelegateModelItemMetaType *metaType,-
703 VDMObjectDelegateDataType *dataType,-
704 int index,-
705 QObject *object);-
706-
707 QObject *modelData() const { return object; }
executed 454 times by 3 tests: return object;
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
454
708 QObject *proxiedObject() override { return object; }
executed 472 times by 3 tests: return object;
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
472
709-
710 QPointer<QObject> object;-
711};-
712-
713class VDMObjectDelegateDataType : public QQmlRefCount, public QQmlAdaptorModel::Accessors-
714{-
715public:-
716 QMetaObject *metaObject;-
717 int propertyOffset;-
718 int signalOffset;-
719 bool shared;-
720 QMetaObjectBuilder builder;-
721-
722 VDMObjectDelegateDataType()-
723 : metaObject(nullptr)-
724 , propertyOffset(0)-
725 , signalOffset(0)-
726 , shared(true)-
727 {-
728 }
executed 24 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
24
729-
730 VDMObjectDelegateDataType(const VDMObjectDelegateDataType &type)-
731 : QQmlRefCount()-
732 , QQmlAdaptorModel::Accessors()-
733 , metaObject(nullptr)-
734 , propertyOffset(type.propertyOffset)-
735 , signalOffset(type.signalOffset)-
736 , shared(false)-
737 , builder(type.metaObject, QMetaObjectBuilder::Properties-
738 | QMetaObjectBuilder::Signals-
739 | QMetaObjectBuilder::SuperClass-
740 | QMetaObjectBuilder::ClassName)-
741 {-
742 builder.setFlags(QMetaObjectBuilder::DynamicMetaObject);-
743 }
executed 66 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
66
744-
745 ~VDMObjectDelegateDataType()-
746 {-
747 free(metaObject);-
748 }
executed 90 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
90
749-
750 int rowCount(const QQmlAdaptorModel &model) const override-
751 {-
752 return model.list.count();
executed 968 times by 3 tests: return model.list.count();
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
968
753 }-
754-
755 int columnCount(const QQmlAdaptorModel &) const override-
756 {-
757 return 1;
never executed: return 1;
0
758 }-
759-
760 QVariant value(const QQmlAdaptorModel &model, int index, const QString &role) const override-
761 {-
762 if (QObject *object = model.list.at(index).value<QObject *>())
QObject *objec...e<QObject *>()Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-24
763 return object->property(role.toUtf8());
executed 24 times by 1 test: return object->property(role.toUtf8());
Executed by:
  • tst_qquickvisualdatamodel
24
764 return QVariant();
never executed: return QVariant();
0
765 }-
766-
767 QQmlDelegateModelItem *createItem(-
768 QQmlAdaptorModel &model,-
769 QQmlDelegateModelItemMetaType *metaType,-
770 int index) const override-
771 {-
772 VDMObjectDelegateDataType *dataType = const_cast<VDMObjectDelegateDataType *>(this);-
773 if (!metaObject)
!metaObjectDescription
TRUEevaluated 24 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 460 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
24-460
774 dataType->initializeMetaType(model);
executed 24 times by 3 tests: dataType->initializeMetaType(model);
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
24
775 return index >= 0 && index < model.list.count()
executed 484 times by 3 tests: return index >= 0 && index < model.list.count() ? new QQmlDMObjectData(metaType, dataType, index, qvariant_cast<QObject *>(model.list.at(index))) : nullptr;
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
484
776 ? new QQmlDMObjectData(metaType, dataType, index, qvariant_cast<QObject *>(model.list.at(index)))
executed 484 times by 3 tests: return index >= 0 && index < model.list.count() ? new QQmlDMObjectData(metaType, dataType, index, qvariant_cast<QObject *>(model.list.at(index))) : nullptr;
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
484
777 : nullptr;
executed 484 times by 3 tests: return index >= 0 && index < model.list.count() ? new QQmlDMObjectData(metaType, dataType, index, qvariant_cast<QObject *>(model.list.at(index))) : nullptr;
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
484
778 }-
779-
780 void initializeMetaType(QQmlAdaptorModel &)-
781 {-
782 setModelDataType<QQmlDMObjectData>(&builder, this);-
783-
784 metaObject = builder.toMetaObject();-
785 }
executed 24 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
24
786-
787 void cleanup(QQmlAdaptorModel &, QQmlDelegateModel *) const override-
788 {-
789 const_cast<VDMObjectDelegateDataType *>(this)->release();-
790 }
executed 24 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
24
791};-
792-
793class QQmlDMObjectDataMetaObject : public QAbstractDynamicMetaObject-
794{-
795public:-
796 QQmlDMObjectDataMetaObject(QQmlDMObjectData *data, VDMObjectDelegateDataType *type)-
797 : m_data(data)-
798 , m_type(type)-
799 {-
800 QObjectPrivate *op = QObjectPrivate::get(m_data);-
801 *static_cast<QMetaObject *>(this) = *type->metaObject;-
802 op->metaObject = this;-
803 m_type->addref();-
804 }
executed 472 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
472
805-
806 ~QQmlDMObjectDataMetaObject()-
807 {-
808 m_type->release();-
809 }
executed 472 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
472
810-
811 int metaCall(QObject *o, QMetaObject::Call call, int id, void **arguments) override-
812 {-
813 Q_ASSERT(o == m_data);-
814 Q_UNUSED(o);-
815-
816 static const int objectPropertyOffset = QObject::staticMetaObject.propertyCount();-
817 if (id >= m_type->propertyOffset
id >= m_type->propertyOffsetDescription
TRUEevaluated 118 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 1314 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
118-1314
818 && (call == QMetaObject::ReadProperty
call == QMetaO...::ReadPropertyDescription
TRUEevaluated 116 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
2-116
819 || call == QMetaObject::WriteProperty
call == QMetaO...:WritePropertyDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-2
820 || call == QMetaObject::ResetProperty)) {
call == QMetaO...:ResetPropertyDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-2
821 if (m_data->object)
m_data->objectDescription
TRUEevaluated 116 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-116
822 QMetaObject::metacall(m_data->object, call, id - m_type->propertyOffset + objectPropertyOffset, arguments);
executed 116 times by 1 test: QMetaObject::metacall(m_data->object, call, id - m_type->propertyOffset + objectPropertyOffset, arguments);
Executed by:
  • tst_qquickvisualdatamodel
116
823 return -1;
executed 116 times by 1 test: return -1;
Executed by:
  • tst_qquickvisualdatamodel
116
824 } else if (id >= m_type->signalOffset && call == QMetaObject::InvokeMetaMethod) {
id >= m_type->signalOffsetDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 1314 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
call == QMetaO...vokeMetaMethodDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-1314
825 QMetaObject::activate(m_data, this, id - m_type->signalOffset, nullptr);-
826 return -1;
executed 2 times by 1 test: return -1;
Executed by:
  • tst_qquickvisualdatamodel
2
827 } else {-
828 return m_data->qt_metacall(call, id, arguments);
executed 1314 times by 3 tests: return m_data->qt_metacall(call, id, arguments);
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
1314
829 }-
830 }-
831-
832 int createProperty(const char *name, const char *) override-
833 {-
834 if (!m_data->object)
!m_data->objectDescription
TRUEnever evaluated
FALSEevaluated 466 times by 2 tests
Evaluated by:
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
0-466
835 return -1;
never executed: return -1;
0
836 const QMetaObject *metaObject = m_data->object->metaObject();-
837 static const int objectPropertyOffset = QObject::staticMetaObject.propertyCount();-
838-
839 const int previousPropertyCount = propertyCount() - propertyOffset();-
840 int propertyIndex = metaObject->indexOfProperty(name);-
841 if (propertyIndex == -1)
propertyIndex == -1Description
TRUEevaluated 400 times by 1 test
Evaluated by:
  • tst_qquickrepeater
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
66-400
842 return -1;
executed 400 times by 1 test: return -1;
Executed by:
  • tst_qquickrepeater
400
843 if (previousPropertyCount + objectPropertyOffset == metaObject->propertyCount())
previousProper...ropertyCount()Description
TRUEnever evaluated
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-66
844 return propertyIndex + m_type->propertyOffset - objectPropertyOffset;
never executed: return propertyIndex + m_type->propertyOffset - objectPropertyOffset;
0
845-
846 if (m_type->shared) {
m_type->sharedDescription
TRUEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-66
847 VDMObjectDelegateDataType *type = m_type;-
848 m_type = new VDMObjectDelegateDataType(*m_type);-
849 type->release();-
850 }
executed 66 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
66
851-
852 const int previousMethodCount = methodCount();-
853 int notifierId = previousMethodCount - methodOffset();-
854 for (int propertyId = previousPropertyCount; propertyId < metaObject->propertyCount() - objectPropertyOffset; ++propertyId) {
propertyId < m...PropertyOffsetDescription
TRUEevaluated 198 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
66-198
855 QMetaProperty property = metaObject->property(propertyId + objectPropertyOffset);-
856 QMetaPropertyBuilder propertyBuilder;-
857 if (property.hasNotifySignal()) {
property.hasNotifySignal()Description
TRUEevaluated 132 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
66-132
858 m_type->builder.addSignal("__" + QByteArray::number(propertyId) + "()");-
859 propertyBuilder = m_type->builder.addProperty(property.name(), property.typeName(), notifierId);-
860 ++notifierId;-
861 } else {
executed 132 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
132
862 propertyBuilder = m_type->builder.addProperty(property.name(), property.typeName());-
863 }
executed 66 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
66
864 propertyBuilder.setWritable(property.isWritable());-
865 propertyBuilder.setResettable(property.isResettable());-
866 propertyBuilder.setConstant(property.isConstant());-
867 }
executed 198 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
198
868-
869 if (m_type->metaObject)
m_type->metaObjectDescription
TRUEnever evaluated
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
0-66
870 free(m_type->metaObject);
never executed: free(m_type->metaObject);
0
871 m_type->metaObject = m_type->builder.toMetaObject();-
872 *static_cast<QMetaObject *>(this) = *m_type->metaObject;-
873-
874 notifierId = previousMethodCount;-
875 for (int i = previousPropertyCount; i < metaObject->propertyCount() - objectPropertyOffset; ++i) {
i < metaObject...PropertyOffsetDescription
TRUEevaluated 198 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
66-198
876 QMetaProperty property = metaObject->property(i + objectPropertyOffset);-
877 if (property.hasNotifySignal()) {
property.hasNotifySignal()Description
TRUEevaluated 132 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
FALSEevaluated 66 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
66-132
878 QQmlPropertyPrivate::connect(-
879 m_data->object, property.notifySignalIndex(), m_data, notifierId);-
880 ++notifierId;-
881 }
executed 132 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
132
882 }
executed 198 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
198
883 return propertyIndex + m_type->propertyOffset - objectPropertyOffset;
executed 66 times by 1 test: return propertyIndex + m_type->propertyOffset - objectPropertyOffset;
Executed by:
  • tst_qquickvisualdatamodel
66
884 }-
885-
886 QQmlDMObjectData *m_data;-
887 VDMObjectDelegateDataType *m_type;-
888};-
889-
890QQmlDMObjectData::QQmlDMObjectData(-
891 QQmlDelegateModelItemMetaType *metaType,-
892 VDMObjectDelegateDataType *dataType,-
893 int index,-
894 QObject *object)-
895 : QQmlDelegateModelItem(metaType, index)-
896 , object(object)-
897{-
898 new QQmlDMObjectDataMetaObject(this, dataType);-
899}
executed 472 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
472
900-
901//------------------------------------------------------------------
902// QQmlAdaptorModel-
903//------------------------------------------------------------------
904-
905static const QQmlAdaptorModel::Accessors qt_vdm_null_accessors;-
906static const VDMListDelegateDataType qt_vdm_list_accessors;-
907-
908QQmlAdaptorModel::Accessors::~Accessors()-
909{-
910}-
911-
912QQmlAdaptorModel::QQmlAdaptorModel()-
913 : accessors(&qt_vdm_null_accessors)-
914{-
915}
executed 5622 times by 27 tests: end of block
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickspringanimation
  • tst_qquicktableview
  • tst_qquickvisualdatamodel
  • ...
5622
916-
917QQmlAdaptorModel::~QQmlAdaptorModel()-
918{-
919 accessors->cleanup(*this);-
920}
executed 5556 times by 25 tests: end of block
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickspringanimation
  • tst_qquicktableview
  • tst_qquickvisualdatamodel
  • tst_qtqmlmodules
  • tst_scenegraph
5556
921-
922void QQmlAdaptorModel::setModel(const QVariant &variant, QQmlDelegateModel *vdm, QQmlEngine *engine)-
923{-
924 accessors->cleanup(*this, vdm);-
925-
926 list.setList(variant, engine);-
927-
928 if (QObject *object = qvariant_cast<QObject *>(list.list())) {
QObject *objec...>(list.list())Description
TRUEevaluated 4158 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 1324 times by 22 tests
Evaluated by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
1324-4158
929 setObject(object, vdm);-
930 if (QAbstractItemModel *model = qobject_cast<QAbstractItemModel *>(object)) {
QAbstractItemM...del *>(object)Description
TRUEevaluated 4156 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 2 times by 1 test
Evaluated by:
  • tst_qquickvisualdatamodel
2-4156
931 accessors = new VDMAbstractItemModelDataType(this);-
932-
933 qmlobject_connect(model, QAbstractItemModel, SIGNAL(rowsInserted(QModelIndex,int,int)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
934 vdm, QQmlDelegateModel, SLOT(_q_rowsInserted(QModelIndex,int,int)));-
935 qmlobject_connect(model, QAbstractItemModel, SIGNAL(rowsRemoved(QModelIndex,int,int)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
936 vdm, QQmlDelegateModel, SLOT(_q_rowsRemoved(QModelIndex,int,int)));-
937 qmlobject_connect(model, QAbstractItemModel, SIGNAL(rowsAboutToBeRemoved(QModelIndex,int,int)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
938 vdm, QQmlDelegateModel, SLOT(_q_rowsAboutToBeRemoved(QModelIndex,int,int)));-
939 qmlobject_connect(model, QAbstractItemModel, SIGNAL(dataChanged(QModelIndex,QModelIndex,QVector<int>)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
940 vdm, QQmlDelegateModel, SLOT(_q_dataChanged(QModelIndex,QModelIndex,QVector<int>)));-
941 qmlobject_connect(model, QAbstractItemModel, SIGNAL(rowsMoved(QModelIndex,int,int,QModelIndex,int)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
942 vdm, QQmlDelegateModel, SLOT(_q_rowsMoved(QModelIndex,int,int,QModelIndex,int)));-
943 qmlobject_connect(model, QAbstractItemModel, SIGNAL(modelReset()),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
944 vdm, QQmlDelegateModel, SLOT(_q_modelReset()));-
945 qmlobject_connect(model, QAbstractItemModel, SIGNAL(layoutChanged(QList<QPersistentModelIndex>,QAbstractItemModel::LayoutChangeHint)),
executed 24 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
executed 24 times by 12 tests: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSlot(method+1);
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
never executed: methodIdx = QQmlDelegateModel::staticMetaObject.indexOfSignal(method+1);
signalIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
methodIdx < 0Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEevaluated 4132 times by 8 tests
Evaluated by:
  • tst_examples
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
code == 1Description
TRUEevaluated 24 times by 12 tests
Evaluated by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
FALSEnever evaluated
0-4132
946 vdm, QQmlDelegateModel, SLOT(_q_layoutChanged(QList<QPersistentModelIndex>,QAbstractItemModel::LayoutChangeHint)));-
947 } else {
executed 4156 times by 12 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
4156
948 accessors = new VDMObjectDelegateDataType;-
949 }
executed 2 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
2
950 } else if (list.type() == QQmlListAccessor::ListProperty) {
list.type() ==...::ListPropertyDescription
TRUEevaluated 22 times by 3 tests
Evaluated by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
FALSEevaluated 1302 times by 22 tests
Evaluated by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
22-1302
951 setObject(static_cast<const QQmlListReference *>(variant.constData())->object(), vdm);-
952 accessors = new VDMObjectDelegateDataType;-
953 } else if (list.type() != QQmlListAccessor::Invalid
executed 22 times by 3 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
list.type() !=...essor::InvalidDescription
TRUEevaluated 754 times by 22 tests
Evaluated by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
FALSEevaluated 548 times by 6 tests
Evaluated by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
22-754
954 && list.type() != QQmlListAccessor::Instance) { // Null QObject
list.type() !=...ssor::InstanceDescription
TRUEevaluated 750 times by 22 tests
Evaluated by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
FALSEevaluated 4 times by 2 tests
Evaluated by:
  • tst_qqmlecmascript
  • tst_qquicklistview
4-750
955 setObject(nullptr, vdm);-
956 accessors = &qt_vdm_list_accessors;-
957 } else {
executed 750 times by 22 tests: end of block
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickvisualdatamodel
  • tst_scenegraph
750
958 setObject(nullptr, vdm);-
959 accessors = &qt_vdm_null_accessors;-
960 }
executed 552 times by 7 tests: end of block
Executed by:
  • tst_examples
  • tst_qqmlecmascript
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
552
961}-
962-
963void QQmlAdaptorModel::invalidateModel(QQmlDelegateModel *vdm)-
964{-
965 accessors->cleanup(*this, vdm);-
966 accessors = &qt_vdm_null_accessors;-
967 // Don't clear the model object as we still need the guard to clear the list variant if the-
968 // object is destroyed.-
969}
executed 2 times by 1 test: end of block
Executed by:
  • tst_qquickvisualdatamodel
2
970-
971bool QQmlAdaptorModel::isValid() const-
972{-
973 return accessors != &qt_vdm_null_accessors;
executed 132 times by 4 tests: return accessors != &qt_vdm_null_accessors;
Executed by:
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquicktableview
  • tst_qquickvisualdatamodel
132
974}-
975-
976int QQmlAdaptorModel::count() const-
977{-
978 return rowCount() * columnCount();
never executed: return rowCount() * columnCount();
0
979}-
980-
981int QQmlAdaptorModel::rowCount() const-
982{-
983 return qMax(0, accessors->rowCount(*this));
executed 282606 times by 27 tests: return qMax(0, accessors->rowCount(*this));
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickspringanimation
  • tst_qquicktableview
  • tst_qquickvisualdatamodel
  • ...
282606
984}-
985-
986int QQmlAdaptorModel::columnCount() const-
987{-
988 return qMax(isValid() ? 1 : 0, accessors->columnCount(*this));
executed 102 times by 1 test: return qMax(isValid() ? 1 : 0, accessors->columnCount(*this));
Executed by:
  • tst_qquicktableview
102
989}-
990-
991int QQmlAdaptorModel::rowAt(int index) const-
992{-
993 int count = rowCount();-
994 return count <= 0 ? -1 : index % count;
executed 137920 times by 25 tests: return count <= 0 ? -1 : index % count;
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
  • tst_scenegraph
137920
995}-
996-
997int QQmlAdaptorModel::columnAt(int index) const-
998{-
999 int count = rowCount();-
1000 return count <= 0 ? -1 : index / count;
executed 137920 times by 25 tests: return count <= 0 ? -1 : index / count;
Executed by:
  • tst_examples
  • tst_multipointtoucharea_interop
  • tst_qqmlecmascript
  • tst_qqmlinstantiator
  • tst_qqmllistmodel
  • tst_qqmlqt
  • tst_qqmltypeloader
  • tst_qqmlvaluetypes
  • tst_qquickanimations
  • tst_qquickdraghandler
  • tst_qquickflickable
  • tst_qquickgridview
  • tst_qquickimage
  • tst_qquickitem2
  • tst_qquickitemparticle
  • tst_qquicklayouts
  • tst_qquicklistview
  • tst_qquickmousearea
  • tst_qquickpathview
  • tst_qquickpositioners
  • tst_qquickrepeater
  • tst_qquickshortcut
  • tst_qquickspringanimation
  • tst_qquickvisualdatamodel
  • tst_scenegraph
137920
1001}-
1002-
1003int QQmlAdaptorModel::indexAt(int row, int column) const-
1004{-
1005 return row + (column * rowCount());
executed 316 times by 5 tests: return row + (column * rowCount());
Executed by:
  • tst_qqmllistmodel
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
316
1006}-
1007-
1008void QQmlAdaptorModel::objectDestroyed(QObject *)-
1009{-
1010 setModel(QVariant(), nullptr, nullptr);-
1011}
executed 516 times by 6 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickgridview
  • tst_qquicklistview
  • tst_qquickpathview
  • tst_qquickrepeater
  • tst_qquickvisualdatamodel
516
1012-
1013QQmlAdaptorModelEngineData::QQmlAdaptorModelEngineData(QV4::ExecutionEngine *v4)-
1014 : v4(v4)-
1015{-
1016 QV4::Scope scope(v4);-
1017 QV4::ScopedObject proto(scope, v4->newObject());-
1018 proto->defineAccessorProperty(QStringLiteral("index"), get_index, nullptr);
executed 8 times by 2 tests: return qstring_literal_temp;
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
8
1019 proto->defineAccessorProperty(QStringLiteral("modelData"),
executed 8 times by 2 tests: return qstring_literal_temp;
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
8
1020 QQmlDMListAccessorData::get_modelData, QQmlDMListAccessorData::set_modelData);-
1021 listItemProto.set(v4, proto);-
1022}
executed 8 times by 2 tests: end of block
Executed by:
  • tst_examples
  • tst_qquickvisualdatamodel
8
1023-
1024QQmlAdaptorModelEngineData::~QQmlAdaptorModelEngineData()-
1025{-
1026}-
1027-
1028QT_END_NAMESPACE-
1029-
1030#include <qqmladaptormodel.moc>-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.0