Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/qtdeclarative/src/qtdeclarative/src/quick/designer/qquickdesignersupportproperties.cpp |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||||||||
2 | - | |||||||||||||||||||
3 | - | |||||||||||||||||||
4 | - | |||||||||||||||||||
5 | static void addToPropertyNameListIfNotBlackListed(QQuickDesignerSupport::PropertyNameList *propertyNameList, | - | ||||||||||||||||||
6 | const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
7 | { | - | ||||||||||||||||||
8 | if (!QQuickDesignerSupportProperties::isPropertyBlackListed(propertyName)
| 8-240 | ||||||||||||||||||
9 | propertyNameList->append(propertyName); executed 240 times by 1 test: propertyNameList->append(propertyName); Executed by:
| 240 | ||||||||||||||||||
10 | } executed 248 times by 1 test: end of block Executed by:
| 248 | ||||||||||||||||||
11 | - | |||||||||||||||||||
12 | void QQuickDesignerSupportProperties::createNewDynamicProperty(QObject *object, QQmlEngine *engine, const QString &name) | - | ||||||||||||||||||
13 | { | - | ||||||||||||||||||
14 | QQmlDesignerMetaObject::getNodeInstanceMetaObject(object, engine)->createNewDynamicProperty(name); | - | ||||||||||||||||||
15 | } executed 2 times by 1 test: end of block Executed by:
| 2 | ||||||||||||||||||
16 | - | |||||||||||||||||||
17 | void QQuickDesignerSupportProperties::registerNodeInstanceMetaObject(QObject *object, QQmlEngine *engine) | - | ||||||||||||||||||
18 | { | - | ||||||||||||||||||
19 | - | |||||||||||||||||||
20 | QQmlDesignerMetaObject::getNodeInstanceMetaObject(object, engine); | - | ||||||||||||||||||
21 | } executed 4 times by 1 test: end of block Executed by:
| 4 | ||||||||||||||||||
22 | - | |||||||||||||||||||
23 | bool QQuickDesignerSupportProperties::hasFullImplementedListInterface(const QQmlListReference &list) | - | ||||||||||||||||||
24 | { | - | ||||||||||||||||||
25 | return never executed: list.isValid() && list.canCount() && list.canAt() && list.canAppend() && list.canClear();return list.isValid() && list.canCount() && list.canAt() && list.canAppend() && list.canClear(); never executed: return list.isValid() && list.canCount() && list.canAt() && list.canAppend() && list.canClear(); | 0 | ||||||||||||||||||
26 | } | - | ||||||||||||||||||
27 | - | |||||||||||||||||||
28 | void QQuickDesignerSupportProperties::registerCustomData(QObject *object) | - | ||||||||||||||||||
29 | { | - | ||||||||||||||||||
30 | QQuickDesignerCustomObjectData::registerData(object); | - | ||||||||||||||||||
31 | } executed 4 times by 1 test: end of block Executed by:
| 4 | ||||||||||||||||||
32 | - | |||||||||||||||||||
33 | QVariant QQuickDesignerSupportProperties::getResetValue(QObject *object, const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
34 | { | - | ||||||||||||||||||
35 | return executed 8 times by 1 test: QQuickDesignerCustomObjectData::getResetValue(object, propertyName);return QQuickDesignerCustomObjectData::getResetValue(object, propertyName); Executed by:
executed 8 times by 1 test: return QQuickDesignerCustomObjectData::getResetValue(object, propertyName); Executed by:
| 8 | ||||||||||||||||||
36 | } | - | ||||||||||||||||||
37 | - | |||||||||||||||||||
38 | void QQuickDesignerSupportProperties::doResetProperty(QObject *object, QQmlContext *context, const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
39 | { | - | ||||||||||||||||||
40 | QQuickDesignerCustomObjectData::doResetProperty(object, context, propertyName); | - | ||||||||||||||||||
41 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||||||||
42 | - | |||||||||||||||||||
43 | bool QQuickDesignerSupportProperties::hasValidResetBinding(QObject *object, const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
44 | { | - | ||||||||||||||||||
45 | return executed 2 times by 1 test: QQuickDesignerCustomObjectData::hasValidResetBinding(object, propertyName);return QQuickDesignerCustomObjectData::hasValidResetBinding(object, propertyName); Executed by:
executed 2 times by 1 test: return QQuickDesignerCustomObjectData::hasValidResetBinding(object, propertyName); Executed by:
| 2 | ||||||||||||||||||
46 | } | - | ||||||||||||||||||
47 | - | |||||||||||||||||||
48 | bool QQuickDesignerSupportProperties::hasBindingForProperty(QObject *object, | - | ||||||||||||||||||
49 | QQmlContext *context, | - | ||||||||||||||||||
50 | const QQuickDesignerSupport::PropertyName &propertyName, | - | ||||||||||||||||||
51 | bool *hasChanged) | - | ||||||||||||||||||
52 | { | - | ||||||||||||||||||
53 | return executed 12 times by 1 test: QQuickDesignerCustomObjectData::hasBindingForProperty(object, context, propertyName, hasChanged);return QQuickDesignerCustomObjectData::hasBindingForProperty(object, context, propertyName, hasChanged); Executed by:
executed 12 times by 1 test: return QQuickDesignerCustomObjectData::hasBindingForProperty(object, context, propertyName, hasChanged); Executed by:
| 12 | ||||||||||||||||||
54 | } | - | ||||||||||||||||||
55 | - | |||||||||||||||||||
56 | void QQuickDesignerSupportProperties::setPropertyBinding(QObject *object, | - | ||||||||||||||||||
57 | QQmlContext *context, | - | ||||||||||||||||||
58 | const QQuickDesignerSupport::PropertyName &propertyName, | - | ||||||||||||||||||
59 | const QString &expression) | - | ||||||||||||||||||
60 | { | - | ||||||||||||||||||
61 | QQuickDesignerCustomObjectData::setPropertyBinding(object, context, propertyName, expression); | - | ||||||||||||||||||
62 | } executed 4 times by 1 test: end of block Executed by:
| 4 | ||||||||||||||||||
63 | - | |||||||||||||||||||
64 | void QQuickDesignerSupportProperties::keepBindingFromGettingDeleted(QObject *object, | - | ||||||||||||||||||
65 | QQmlContext *context, | - | ||||||||||||||||||
66 | const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
67 | { | - | ||||||||||||||||||
68 | QQuickDesignerCustomObjectData::keepBindingFromGettingDeleted(object, context, propertyName); | - | ||||||||||||||||||
69 | } never executed: end of block | 0 | ||||||||||||||||||
70 | - | |||||||||||||||||||
71 | bool QQuickDesignerSupportProperties::isPropertyQObject(const QMetaProperty &metaProperty) | - | ||||||||||||||||||
72 | { | - | ||||||||||||||||||
73 | return executed 4 times by 1 test: QQmlMetaType::isQObject(metaProperty.userType());return QQmlMetaType::isQObject(metaProperty.userType()); Executed by:
executed 4 times by 1 test: return QQmlMetaType::isQObject(metaProperty.userType()); Executed by:
| 4 | ||||||||||||||||||
74 | } | - | ||||||||||||||||||
75 | - | |||||||||||||||||||
76 | - | |||||||||||||||||||
77 | QObject *QQuickDesignerSupportProperties::readQObjectProperty(const QMetaProperty &metaProperty, QObject *object) | - | ||||||||||||||||||
78 | { | - | ||||||||||||||||||
79 | return executed 2 times by 1 test: QQmlMetaType::toQObject(metaProperty.read(object));return QQmlMetaType::toQObject(metaProperty.read(object)); Executed by:
executed 2 times by 1 test: return QQmlMetaType::toQObject(metaProperty.read(object)); Executed by:
| 2 | ||||||||||||||||||
80 | } | - | ||||||||||||||||||
81 | - | |||||||||||||||||||
82 | void QQuickDesignerSupportProperties::getPropertyCache(QObject *object, QQmlEngine *engine) | - | ||||||||||||||||||
83 | { | - | ||||||||||||||||||
84 | QQmlEnginePrivate::get(engine)->cache(object->metaObject()); | - | ||||||||||||||||||
85 | } executed 2 times by 1 test: end of block Executed by:
| 2 | ||||||||||||||||||
86 | - | |||||||||||||||||||
87 | QQuickDesignerSupport::PropertyNameList QQuickDesignerSupportProperties::propertyNameListForWritableProperties(QObject *object, | - | ||||||||||||||||||
88 | const QQuickDesignerSupport::PropertyName &baseName, | - | ||||||||||||||||||
89 | QObjectList *inspectedObjects) | - | ||||||||||||||||||
90 | { | - | ||||||||||||||||||
91 | QQuickDesignerSupport::PropertyNameList propertyNameList; | - | ||||||||||||||||||
92 | - | |||||||||||||||||||
93 | QObjectList localObjectList; | - | ||||||||||||||||||
94 | - | |||||||||||||||||||
95 | if (inspectedObjects == nullptr
| 4-24 | ||||||||||||||||||
96 | inspectedObjects = &localObjectList; executed 4 times by 1 test: inspectedObjects = &localObjectList; Executed by:
| 4 | ||||||||||||||||||
97 | - | |||||||||||||||||||
98 | - | |||||||||||||||||||
99 | if (inspectedObjects->contains(object)
| 4-24 | ||||||||||||||||||
100 | return executed 4 times by 1 test: propertyNameList;return propertyNameList; Executed by:
executed 4 times by 1 test: return propertyNameList; Executed by:
| 4 | ||||||||||||||||||
101 | - | |||||||||||||||||||
102 | inspectedObjects->append(object); | - | ||||||||||||||||||
103 | - | |||||||||||||||||||
104 | const QMetaObject *metaObject = object->metaObject(); | - | ||||||||||||||||||
105 | for (int index = 0; index < metaObject->propertyCount()
| 24-340 | ||||||||||||||||||
106 | QMetaProperty metaProperty = metaObject->property(index); | - | ||||||||||||||||||
107 | QQmlProperty declarativeProperty(object, QString::fromUtf8(metaProperty.name())); | - | ||||||||||||||||||
108 | if (declarativeProperty.isValid()
| 0-340 | ||||||||||||||||||
109 | if (declarativeProperty.name() != QLatin1String("parent")
| 0-8 | ||||||||||||||||||
110 | QObject *childObject = QQmlMetaType::toQObject(declarativeProperty.read()); | - | ||||||||||||||||||
111 | if (childObject
| 0-8 | ||||||||||||||||||
112 | propertyNameList.append(propertyNameListForWritableProperties(childObject, executed 8 times by 1 test: propertyNameList.append(propertyNameListForWritableProperties(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); Executed by:
| 8 | ||||||||||||||||||
113 | baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) executed 8 times by 1 test: propertyNameList.append(propertyNameListForWritableProperties(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); Executed by:
| 8 | ||||||||||||||||||
114 | + '.', inspectedObjects)); executed 8 times by 1 test: propertyNameList.append(propertyNameListForWritableProperties(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); Executed by:
| 8 | ||||||||||||||||||
115 | } executed 8 times by 1 test: end of block Executed by:
| 8 | ||||||||||||||||||
116 | } executed 8 times by 1 test: else if (QQmlValueTypeFactory::valueType(metaProperty.userType())end of block Executed by:
| 8-316 | ||||||||||||||||||
117 | QQmlValueType *valueType = QQmlValueTypeFactory::valueType(metaProperty.userType()); | - | ||||||||||||||||||
118 | valueType->setValue(metaProperty.read(object)); | - | ||||||||||||||||||
119 | propertyNameList.append(propertyNameListForWritableProperties(valueType, | - | ||||||||||||||||||
120 | baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) | - | ||||||||||||||||||
121 | + '.', inspectedObjects)); | - | ||||||||||||||||||
122 | } executed 16 times by 1 test: end of block Executed by:
| 16 | ||||||||||||||||||
123 | - | |||||||||||||||||||
124 | if (metaProperty.isReadable()
| 0-340 | ||||||||||||||||||
125 | addToPropertyNameListIfNotBlackListed(&propertyNameList, | - | ||||||||||||||||||
126 | baseName + QQuickDesignerSupport::PropertyName(metaProperty.name())); | - | ||||||||||||||||||
127 | } executed 248 times by 1 test: end of block Executed by:
| 248 | ||||||||||||||||||
128 | } executed 340 times by 1 test: end of block Executed by:
| 340 | ||||||||||||||||||
129 | - | |||||||||||||||||||
130 | return executed 24 times by 1 test: propertyNameList;return propertyNameList; Executed by:
executed 24 times by 1 test: return propertyNameList; Executed by:
| 24 | ||||||||||||||||||
131 | } | - | ||||||||||||||||||
132 | - | |||||||||||||||||||
133 | bool QQuickDesignerSupportProperties::isPropertyBlackListed(const QQuickDesignerSupport::PropertyName &propertyName) | - | ||||||||||||||||||
134 | { | - | ||||||||||||||||||
135 | if (propertyName.contains(".")
| 0-156 | ||||||||||||||||||
136 | return never executed: true;return true; never executed: return true; | 0 | ||||||||||||||||||
137 | - | |||||||||||||||||||
138 | if (propertyName.count(".") > 1
| 8-252 | ||||||||||||||||||
139 | return executed 8 times by 1 test: true;return true; Executed by:
executed 8 times by 1 test: return true; Executed by:
| 8 | ||||||||||||||||||
140 | - | |||||||||||||||||||
141 | return executed 252 times by 1 test: false;return false; Executed by:
executed 252 times by 1 test: return false; Executed by:
| 252 | ||||||||||||||||||
142 | } | - | ||||||||||||||||||
143 | - | |||||||||||||||||||
144 | QQuickDesignerSupport::PropertyNameList QQuickDesignerSupportProperties::allPropertyNames(QObject *object, | - | ||||||||||||||||||
145 | const QQuickDesignerSupport::PropertyName &baseName, | - | ||||||||||||||||||
146 | QObjectList *inspectedObjects) | - | ||||||||||||||||||
147 | { | - | ||||||||||||||||||
148 | QQuickDesignerSupport::PropertyNameList propertyNameList; | - | ||||||||||||||||||
149 | - | |||||||||||||||||||
150 | QObjectList localObjectList; | - | ||||||||||||||||||
151 | - | |||||||||||||||||||
152 | if (inspectedObjects == nullptr
| 0 | ||||||||||||||||||
153 | inspectedObjects = &localObjectList; never executed: inspectedObjects = &localObjectList; | 0 | ||||||||||||||||||
154 | - | |||||||||||||||||||
155 | - | |||||||||||||||||||
156 | if (inspectedObjects->contains(object)
| 0 | ||||||||||||||||||
157 | return never executed: propertyNameList;return propertyNameList; never executed: return propertyNameList; | 0 | ||||||||||||||||||
158 | - | |||||||||||||||||||
159 | inspectedObjects->append(object); | - | ||||||||||||||||||
160 | - | |||||||||||||||||||
161 | - | |||||||||||||||||||
162 | const QMetaObject *metaObject = object->metaObject(); | - | ||||||||||||||||||
163 | - | |||||||||||||||||||
164 | QStringList deferredPropertyNames; | - | ||||||||||||||||||
165 | const int namesIndex = metaObject->indexOfClassInfo("DeferredPropertyNames"); | - | ||||||||||||||||||
166 | if (namesIndex != -1
| 0 | ||||||||||||||||||
167 | QMetaClassInfo classInfo = metaObject->classInfo(namesIndex); | - | ||||||||||||||||||
168 | deferredPropertyNames = QString::fromUtf8(classInfo.value()).split(QLatin1Char(',')); | - | ||||||||||||||||||
169 | } never executed: end of block | 0 | ||||||||||||||||||
170 | - | |||||||||||||||||||
171 | for (int index = 0; index < metaObject->propertyCount()
| 0 | ||||||||||||||||||
172 | QMetaProperty metaProperty = metaObject->property(index); | - | ||||||||||||||||||
173 | QQmlProperty declarativeProperty(object, QString::fromUtf8(metaProperty.name())); | - | ||||||||||||||||||
174 | if (declarativeProperty.isValid()
| 0 | ||||||||||||||||||
175 | if (declarativeProperty.name() != QLatin1String("parent")
| 0 | ||||||||||||||||||
176 | && !deferredPropertyNames.contains(declarativeProperty.name())
| 0 | ||||||||||||||||||
177 | QObject *childObject = QQmlMetaType::toQObject(declarativeProperty.read()); | - | ||||||||||||||||||
178 | if (childObject
| 0 | ||||||||||||||||||
179 | propertyNameList.append(allPropertyNames(childObject, never executed: propertyNameList.append(allPropertyNames(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); | 0 | ||||||||||||||||||
180 | baseName never executed: propertyNameList.append(allPropertyNames(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); | 0 | ||||||||||||||||||
181 | + QQuickDesignerSupport::PropertyName(metaProperty.name()) never executed: propertyNameList.append(allPropertyNames(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); | 0 | ||||||||||||||||||
182 | + '.', inspectedObjects)); never executed: propertyNameList.append(allPropertyNames(childObject, baseName + QQuickDesignerSupport::PropertyName(metaProperty.name()) + '.', inspectedObjects)); | 0 | ||||||||||||||||||
183 | } never executed: end of block | 0 | ||||||||||||||||||
184 | } never executed: else if (QQmlValueTypeFactory::valueType(metaProperty.userType())end of block
| 0 | ||||||||||||||||||
185 | QQmlValueType *valueType = QQmlValueTypeFactory::valueType(metaProperty.userType()); | - | ||||||||||||||||||
186 | valueType->setValue(metaProperty.read(object)); | - | ||||||||||||||||||
187 | propertyNameList.append(baseName + QQuickDesignerSupport::PropertyName(metaProperty.name())); | - | ||||||||||||||||||
188 | propertyNameList.append(allPropertyNames(valueType, | - | ||||||||||||||||||
189 | baseName | - | ||||||||||||||||||
190 | + QQuickDesignerSupport::PropertyName(metaProperty.name()) | - | ||||||||||||||||||
191 | + '.', inspectedObjects)); | - | ||||||||||||||||||
192 | } never executed: else {end of block | 0 | ||||||||||||||||||
193 | addToPropertyNameListIfNotBlackListed(&propertyNameList, | - | ||||||||||||||||||
194 | baseName + QQuickDesignerSupport::PropertyName(metaProperty.name())); | - | ||||||||||||||||||
195 | } never executed: end of block | 0 | ||||||||||||||||||
196 | } | - | ||||||||||||||||||
197 | - | |||||||||||||||||||
198 | return never executed: propertyNameList;return propertyNameList; never executed: return propertyNameList; | 0 | ||||||||||||||||||
199 | } | - | ||||||||||||||||||
200 | - | |||||||||||||||||||
201 | - | |||||||||||||||||||
202 | - | |||||||||||||||||||
Switch to Source code | Preprocessed file |