diff options
author | Marco Bubke <marco.bubke@nokia.com> | 2011-07-12 15:36:41 +0200 |
---|---|---|
committer | Marco Bubke <marco.bubke@nokia.com> | 2011-07-12 16:11:07 +0200 |
commit | 2ebb5137a08f502c8d677fdd0450e7f9420b8f37 (patch) | |
tree | ca79944876a5d1ee265f2df83c3bb21cb624dbc7 | |
parent | 7eb177ce8ae3fd2cbadcc7c6cc25e722027c4e1f (diff) |
QmlDesigner.NodeInstances: Wouraround invisible root items
Task-number: QTCREATORBUG-5152
Change-Id: I40be95844598a3a3728d0c7fbe88a9fe7a155c53
Reviewed-on: http://codereview.qt.nokia.com/1532
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
4 files changed, 31 insertions, 1 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.cpp index ada992f1615..2d6fda7eac0 100644 --- a/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.cpp @@ -967,6 +967,11 @@ QVariant ObjectNodeInstance::resetValue(const QString &propertyName) const return m_resetValueHash.value(propertyName); } +void ObjectNodeInstance::setResetValue(const QString &propertyName, const QVariant &value) +{ + m_resetValueHash.insert(propertyName, value); +} + void ObjectNodeInstance::paint(QPainter * /*painter*/) { } diff --git a/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.h b/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.h index 4cc3fd155f8..95e20abfd07 100644 --- a/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.h +++ b/share/qtcreator/qml/qmlpuppet/instances/objectnodeinstance.h @@ -153,6 +153,7 @@ public: void populateResetValueHash(); QVariant resetValue(const QString &propertyName) const; + void setResetValue(const QString &propertyName, const QVariant &value); QObject *object() const; diff --git a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.cpp index b97f9b7e1cd..ac26da5458b 100644 --- a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.cpp +++ b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.cpp @@ -254,6 +254,26 @@ int QmlGraphicsItemNodeInstance::penWidth() const return GraphicsObjectNodeInstance::penWidth(); } +void QmlGraphicsItemNodeInstance::initialize(const ObjectNodeInstance::Pointer &objectNodeInstance) +{ + GraphicsObjectNodeInstance::initialize(objectNodeInstance); + + if (objectNodeInstance->instanceId() == 0 && objectNodeInstance->isQmlGraphicsItem()) { // is root item + objectNodeInstance.staticCast<QmlGraphicsItemNodeInstance>()->setVisible(true); + objectNodeInstance->setResetValue("visible", true); + } +} + +void QmlGraphicsItemNodeInstance::setVisible(bool isVisible) +{ + qmlGraphicsItem()->setVisible(isVisible); +} + +bool QmlGraphicsItemNodeInstance::isVisible() const +{ + return qmlGraphicsItem()->isVisible(); +} + void QmlGraphicsItemNodeInstance::resetProperty(const QString &name) { if (name == "height") { diff --git a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.h b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.h index 9a5c7e0505e..1abf46d32bf 100644 --- a/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.h +++ b/share/qtcreator/qml/qmlpuppet/qmlpuppet/instances/qmlgraphicsitemnodeinstance.h @@ -75,8 +75,12 @@ public: bool isResizable() const; void setResizable(bool resizeable); + void setVisible(bool isVisible); + bool isVisible() const; - QList<ServerNodeInstance> stateInstances() const; + void initialize(const ObjectNodeInstance::Pointer &objectNodeInstance); + + QList<ServerNodeInstance> stateInstances() const; protected: QmlGraphicsItemNodeInstance(QDeclarativeItem *item); |