summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems
diff options
context:
space:
mode:
authorAlan Alpert <alan.alpert@nokia.com>2009-12-17 16:15:05 (GMT)
committerAlan Alpert <alan.alpert@nokia.com>2009-12-17 16:15:05 (GMT)
commit60320b4331a81873c12330264a26690d1150e99f (patch)
treeb77af0d8d7251005ed51a7aa786f95d0926846f4 /src/declarative/graphicsitems
parentff8d23d5754ca7160ec1be6e5e8d573eca018713 (diff)
downloadQt-60320b4331a81873c12330264a26690d1150e99f.zip
Qt-60320b4331a81873c12330264a26690d1150e99f.tar.gz
Qt-60320b4331a81873c12330264a26690d1150e99f.tar.bz2
Get the value out of the QVariant properly
Diffstat (limited to 'src/declarative/graphicsitems')
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspositioners.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
index f2164ab..e7fa7b8 100644
--- a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
@@ -169,11 +169,17 @@ QVariant QmlGraphicsBasePositioner::itemChange(GraphicsItemChange change,
{
Q_D(QmlGraphicsBasePositioner);
if (change == ItemChildAddedChange){
- QmlGraphicsItem* child = value.value<QmlGraphicsItem*>();
+ QGraphicsItem* item = value.value<QGraphicsItem*>();
+ QmlGraphicsItem* child = 0;
+ if(item)
+ child = qobject_cast<QmlGraphicsItem*>(item->toGraphicsObject());
if (child)
prePositioning();
} else if (change == ItemChildRemovedChange) {
- QmlGraphicsItem* child = value.value<QmlGraphicsItem*>();
+ QGraphicsItem* item = value.value<QGraphicsItem*>();
+ QmlGraphicsItem* child = 0;
+ if(item)
+ child = qobject_cast<QmlGraphicsItem*>(item->toGraphicsObject());
if (child) {
QmlGraphicsBasePositioner::PositionedItem posItem(child);
int idx = positionedItems.find(posItem);