From 5c5197d19d31a7c81f5bfb64a666b589bbd5638c Mon Sep 17 00:00:00 2001 From: Thomas Hartmann Date: Fri, 29 Jul 2016 14:07:30 +0200 Subject: QmlDesigner: Adding debugging operator to BindingProperty This is required to output the expression in the DebugView. Change-Id: I3ce0bf4a916e30e8c86c224e305fa1c4af337489 Reviewed-by: Tim Jenssen --- .../qmldesigner/designercore/include/bindingproperty.h | 3 +++ .../qmldesigner/designercore/model/bindingproperty.cpp | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) (limited to 'src') diff --git a/src/plugins/qmldesigner/designercore/include/bindingproperty.h b/src/plugins/qmldesigner/designercore/include/bindingproperty.h index 345dbf4514..a530cb203f 100644 --- a/src/plugins/qmldesigner/designercore/include/bindingproperty.h +++ b/src/plugins/qmldesigner/designercore/include/bindingproperty.h @@ -58,4 +58,7 @@ protected: bool compareBindingProperties(const QmlDesigner::BindingProperty &bindingProperty01, const QmlDesigner::BindingProperty &bindingProperty02); +QMLDESIGNERCORE_EXPORT QTextStream& operator<<(QTextStream &stream, const BindingProperty &property); +QMLDESIGNERCORE_EXPORT QDebug operator<<(QDebug debug, const BindingProperty &AbstractProperty); + } // namespace QmlDesigner diff --git a/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp b/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp index 68b71da381..018075da66 100644 --- a/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp +++ b/src/plugins/qmldesigner/designercore/model/bindingproperty.cpp @@ -244,4 +244,22 @@ void BindingProperty::setDynamicTypeNameAndExpression(const TypeName &typeName, model()->d->setDynamicBindingProperty(internalNode(), name(), typeName, expression); } +QDebug operator<<(QDebug debug, const BindingProperty &property) +{ + if (!property.isValid()) + return debug.nospace() << "BindingProperty(" << PropertyName("invalid") << ')'; + else + return debug.nospace() << "BindingProperty(" << property.name() << " " << property.expression() << ')'; +} + +QTextStream& operator<<(QTextStream &stream, const BindingProperty &property) +{ + if (!property.isValid()) + stream << "BindingProperty(" << PropertyName("invalid") << ')'; + else + stream << "BindingProperty(" << property.name() << " " << property.expression() << ')'; + + return stream; +} + } // namespace QmlDesigner -- cgit v1.2.1