summaryrefslogtreecommitdiffstats
path: root/src/declarative/debugger
diff options
context:
space:
mode:
authorBea Lam <bea.lam@nokia.com>2009-11-02 01:16:02 (GMT)
committerBea Lam <bea.lam@nokia.com>2009-11-02 01:16:02 (GMT)
commit55e2858f2146d72bc43bde850dbec0cf7aa055e6 (patch)
treead72f4c53cc62bb285d56b0037c048b635115fce /src/declarative/debugger
parent37b5b477a044929bf69fe5f7251f2b5cbd892d93 (diff)
downloadQt-55e2858f2146d72bc43bde850dbec0cf7aa055e6.zip
Qt-55e2858f2146d72bc43bde850dbec0cf7aa055e6.tar.gz
Qt-55e2858f2146d72bc43bde850dbec0cf7aa055e6.tar.bz2
Make QmlBoundSignal children look like properties (instead of children)
in the debugger to reflect how signal properties are written in QML. This also changes the FETCH_OBJECT reply stream to send children data before property data.
Diffstat (limited to 'src/declarative/debugger')
-rw-r--r--src/declarative/debugger/qmldebug.cpp42
1 files changed, 26 insertions, 16 deletions
diff --git a/src/declarative/debugger/qmldebug.cpp b/src/declarative/debugger/qmldebug.cpp
index 5a8cda0..08d3d75 100644
--- a/src/declarative/debugger/qmldebug.cpp
+++ b/src/declarative/debugger/qmldebug.cpp
@@ -110,6 +110,15 @@ void QmlEngineDebugPrivate::decode(QDataStream &ds, QmlDebugObjectReference &o,
if (simple)
return;
+ int childCount;
+ bool recur;
+ ds >> childCount >> recur;
+
+ for (int ii = 0; ii < childCount; ++ii) {
+ o.m_children.append(QmlDebugObjectReference());
+ decode(ds, o.m_children.last(), !recur);
+ }
+
int propCount;
ds >> propCount;
@@ -122,25 +131,26 @@ void QmlEngineDebugPrivate::decode(QDataStream &ds, QmlDebugObjectReference &o,
prop.m_binding = data.binding;
prop.m_hasNotifySignal = data.hasNotifySignal;
prop.m_valueTypeName = data.valueTypeName;
- if (data.type == QmlEngineDebugServer::QmlObjectProperty::Basic
- || data.type == QmlEngineDebugServer::QmlObjectProperty::List) {
- prop.m_value = data.value;
- } else if (data.type == QmlEngineDebugServer::QmlObjectProperty::Object) {
- QmlDebugObjectReference obj;
- obj.m_debugId = prop.m_value.toInt();
- prop.m_value = qVariantFromValue(obj);
+ switch (data.type) {
+ case QmlEngineDebugServer::QmlObjectProperty::Basic:
+ case QmlEngineDebugServer::QmlObjectProperty::List:
+ case QmlEngineDebugServer::QmlObjectProperty::SignalProperty:
+ {
+ prop.m_value = data.value;
+ break;
+ }
+ case QmlEngineDebugServer::QmlObjectProperty::Object:
+ {
+ QmlDebugObjectReference obj;
+ obj.m_debugId = prop.m_value.toInt();
+ prop.m_value = qVariantFromValue(obj);
+ break;
+ }
+ case QmlEngineDebugServer::QmlObjectProperty::Unknown:
+ break;
}
o.m_properties << prop;
}
-
- int childCount;
- bool recur;
- ds >> childCount >> recur;
-
- for (int ii = 0; ii < childCount; ++ii) {
- o.m_children.append(QmlDebugObjectReference());
- decode(ds, o.m_children.last(), !recur);
- }
}
void QmlEngineDebugPrivate::decode(QDataStream &ds, QmlDebugContextReference &c)