summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/graphicsitems')
-rw-r--r--src/declarative/graphicsitems/graphicsitems.pri6
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanchors.cpp28
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanchors_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp3
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsborderimage.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsborderimage_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsborderimage_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicseffects.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicseffects_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsevents.cpp4
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsevents_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflickable.cpp67
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflickable_p.h22
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h17
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflipable.cpp10
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsflipable_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsgridview.cpp29
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsgridview_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimage.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimage_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimage_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimagebase.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimagebase_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitem.cpp203
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitem.h32
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitem_p.h41
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitemchangelistener_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitemsmodule.cpp7
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitemsmodule_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicslistview.cpp64
-rw-r--r--src/declarative/graphicsitems/qmlgraphicslistview_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsloader.cpp5
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsloader_p.h6
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsloader_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsmousearea.cpp (renamed from src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp)212
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsmousearea_p.h (renamed from src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h)44
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsmousearea_p_p.h (renamed from src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h)14
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspainteditem.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspainteditem_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsparticles.cpp4
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsparticles_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspath.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspath_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspath_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspathview.cpp11
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspathview_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspathview_p_p.h5
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspositioners.cpp10
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspositioners_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrectangle.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrectangle_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrectangle_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrepeater.cpp11
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrepeater_p.h9
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstext.cpp15
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstext_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstext_p_p.h4
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextedit.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextedit_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextinput.cpp2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextinput_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h2
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp41
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h6
-rw-r--r--src/declarative/graphicsitems/qmlgraphicswebview.cpp26
-rw-r--r--src/declarative/graphicsitems/qmlgraphicswebview_p.h6
-rw-r--r--src/declarative/graphicsitems/qmlgraphicswebview_p_p.h2
85 files changed, 550 insertions, 520 deletions
diff --git a/src/declarative/graphicsitems/graphicsitems.pri b/src/declarative/graphicsitems/graphicsitems.pri
index db9c29e..e5343c6 100644
--- a/src/declarative/graphicsitems/graphicsitems.pri
+++ b/src/declarative/graphicsitems/graphicsitems.pri
@@ -28,8 +28,8 @@ HEADERS += \
$$PWD/qmlgraphicspositioners_p_p.h \
$$PWD/qmlgraphicsloader_p.h \
$$PWD/qmlgraphicsloader_p_p.h \
- $$PWD/qmlgraphicsmouseregion_p.h \
- $$PWD/qmlgraphicsmouseregion_p_p.h \
+ $$PWD/qmlgraphicsmousearea_p.h \
+ $$PWD/qmlgraphicsmousearea_p_p.h \
$$PWD/qmlgraphicspath_p.h \
$$PWD/qmlgraphicspath_p_p.h \
$$PWD/qmlgraphicspathview_p.h \
@@ -70,7 +70,7 @@ SOURCES += \
$$PWD/qmlgraphicsfocusscope.cpp \
$$PWD/qmlgraphicspositioners.cpp \
$$PWD/qmlgraphicsloader.cpp \
- $$PWD/qmlgraphicsmouseregion.cpp \
+ $$PWD/qmlgraphicsmousearea.cpp \
$$PWD/qmlgraphicspath.cpp \
$$PWD/qmlgraphicspathview.cpp \
$$PWD/qmlgraphicsrectangle.cpp \
diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp
index 816e580..cde9ec7 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanchors.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsanchors.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -364,7 +364,7 @@ void QmlGraphicsAnchors::setFill(QmlGraphicsItem *f)
return;
}
if (f != d->item->parentItem() && f->parentItem() != d->item->parentItem()){
- qmlInfo(d->item) << tr("Can't anchor to an item that isn't a parent or sibling.");
+ qmlInfo(d->item) << tr("Cannot anchor to an item that isn't a parent or sibling.");
return;
}
d->remDepend(d->fill);
@@ -398,7 +398,7 @@ void QmlGraphicsAnchors::setCenterIn(QmlGraphicsItem* c)
return;
}
if (c != d->item->parentItem() && c->parentItem() != d->item->parentItem()){
- qmlInfo(d->item) << tr("Can't anchor to an item that isn't a parent or sibling.");
+ qmlInfo(d->item) << tr("Cannot anchor to an item that isn't a parent or sibling.");
return;
}
@@ -989,7 +989,7 @@ bool QmlGraphicsAnchorsPrivate::checkHValid() const
if (usedAnchors & QmlGraphicsAnchors::HasLeftAnchor &&
usedAnchors & QmlGraphicsAnchors::HasRightAnchor &&
usedAnchors & QmlGraphicsAnchors::HasHCenterAnchor) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't specify left, right, and hcenter anchors.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot specify left, right, and hcenter anchors.");
return false;
}
@@ -999,16 +999,16 @@ bool QmlGraphicsAnchorsPrivate::checkHValid() const
bool QmlGraphicsAnchorsPrivate::checkHAnchorValid(QmlGraphicsAnchorLine anchor) const
{
if (!anchor.item) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor to a null item.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor to a null item.");
return false;
} else if (anchor.anchorLine & QmlGraphicsAnchorLine::Vertical_Mask) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor a horizontal edge to a vertical edge.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor a horizontal edge to a vertical edge.");
return false;
} else if (anchor.item != item->parentItem() && anchor.item->parentItem() != item->parentItem()){
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor to an item that isn't a parent or sibling.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor to an item that isn't a parent or sibling.");
return false;
} else if (anchor.item == item) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor item to self.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor item to self.");
return false;
}
@@ -1020,13 +1020,13 @@ bool QmlGraphicsAnchorsPrivate::checkVValid() const
if (usedAnchors & QmlGraphicsAnchors::HasTopAnchor &&
usedAnchors & QmlGraphicsAnchors::HasBottomAnchor &&
usedAnchors & QmlGraphicsAnchors::HasVCenterAnchor) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't specify top, bottom, and vcenter anchors.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot specify top, bottom, and vcenter anchors.");
return false;
} else if (usedAnchors & QmlGraphicsAnchors::HasBaselineAnchor &&
(usedAnchors & QmlGraphicsAnchors::HasTopAnchor ||
usedAnchors & QmlGraphicsAnchors::HasBottomAnchor ||
usedAnchors & QmlGraphicsAnchors::HasVCenterAnchor)) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Baseline anchor can't be used in conjunction with top, bottom, or vcenter anchors.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.");
return false;
}
@@ -1036,16 +1036,16 @@ bool QmlGraphicsAnchorsPrivate::checkVValid() const
bool QmlGraphicsAnchorsPrivate::checkVAnchorValid(QmlGraphicsAnchorLine anchor) const
{
if (!anchor.item) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor to a null item.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor to a null item.");
return false;
} else if (anchor.anchorLine & QmlGraphicsAnchorLine::Horizontal_Mask) {
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor a vertical edge to a horizontal edge.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor a vertical edge to a horizontal edge.");
return false;
} else if (anchor.item != item->parentItem() && anchor.item->parentItem() != item->parentItem()){
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor to an item that isn't a parent or sibling.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor to an item that isn't a parent or sibling.");
return false;
} else if (anchor.item == item){
- qmlInfo(item) << QmlGraphicsAnchors::tr("Can't anchor item to self.");
+ qmlInfo(item) << QmlGraphicsAnchors::tr("Cannot anchor item to self.");
return false;
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h
index 5a8f8c1..41911ff 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanchors_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h
index 22eabdd..a2e41d3 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsanchors_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp b/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp
index 7d1c87a..697be15 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -295,6 +295,7 @@ void QmlGraphicsAnimatedImage::playingStatusChanged()
void QmlGraphicsAnimatedImage::componentComplete()
{
Q_D(QmlGraphicsAnimatedImage);
+ QmlGraphicsImage::componentComplete();
if (!d->reply) {
setCurrentFrame(d->preset_currentframe);
d->preset_currentframe = 0;
diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h
index a837702..a6cee0d 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h
index 0d1c749..5e04a93 100644
--- a/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsanimatedimage_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp b/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp
index 19da151..f739464 100644
--- a/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsborderimage.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h b/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h
index cf3c518..32dc388 100644
--- a/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsborderimage_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsborderimage_p_p.h b/src/declarative/graphicsitems/qmlgraphicsborderimage_p_p.h
index 51ebb02..b97ae6d 100644
--- a/src/declarative/graphicsitems/qmlgraphicsborderimage_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsborderimage_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicseffects.cpp b/src/declarative/graphicsitems/qmlgraphicseffects.cpp
index 268ba28..6a93b12 100644
--- a/src/declarative/graphicsitems/qmlgraphicseffects.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicseffects.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicseffects_p.h b/src/declarative/graphicsitems/qmlgraphicseffects_p.h
index 2e561f8..4b94a14 100644
--- a/src/declarative/graphicsitems/qmlgraphicseffects_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicseffects_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsevents.cpp b/src/declarative/graphicsitems/qmlgraphicsevents.cpp
index 0d6adf6..efd7b4a 100644
--- a/src/declarative/graphicsitems/qmlgraphicsevents.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsevents.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -183,7 +183,7 @@ Item {
For example, to react to a Shift key + Left mouse button click:
\qml
-MouseRegion {
+MouseArea {
onClicked: { if (mouse.button == Qt.LeftButton && mouse.modifiers & Qt.ShiftModifier) doSomething(); }
}
\endqml
diff --git a/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h b/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h
index b07fd88..0ed852a 100644
--- a/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsevents_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
index 5143251..e92fea4 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsflickable.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -132,8 +132,6 @@ QmlGraphicsFlickablePrivate::QmlGraphicsFlickablePrivate()
, horizontalVelocity(this), verticalVelocity(this), vTime(0), visibleArea(0)
, flickDirection(QmlGraphicsFlickable::AutoFlickDirection)
{
- fixupXEvent = QmlTimeLineEvent::timeLineEvent<QmlGraphicsFlickablePrivate, &QmlGraphicsFlickablePrivate::fixupX>(&_moveX, this);
- fixupYEvent = QmlTimeLineEvent::timeLineEvent<QmlGraphicsFlickablePrivate, &QmlGraphicsFlickablePrivate::fixupY>(&_moveY, this);
}
void QmlGraphicsFlickablePrivate::init()
@@ -176,7 +174,7 @@ void QmlGraphicsFlickablePrivate::flickX(qreal velocity)
}
timeline.reset(_moveX);
timeline.accel(_moveX, v, deceleration, maxDistance);
- timeline.execute(fixupXEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveX, fixupX_callback, this));
if (!flicked) {
flicked = true;
emit q->flickingChanged();
@@ -214,7 +212,7 @@ void QmlGraphicsFlickablePrivate::flickY(qreal velocity)
}
timeline.reset(_moveY);
timeline.accel(_moveY, v, deceleration, maxDistance);
- timeline.execute(fixupYEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveY, fixupY_callback, this));
if (!flicked) {
flicked = true;
emit q->flickingChanged();
@@ -255,6 +253,16 @@ void QmlGraphicsFlickablePrivate::fixupX()
vTime = timeline.time();
}
+void QmlGraphicsFlickablePrivate::fixupY_callback(void *data)
+{
+ ((QmlGraphicsFlickablePrivate *)data)->fixupY();
+}
+
+void QmlGraphicsFlickablePrivate::fixupX_callback(void *data)
+{
+ ((QmlGraphicsFlickablePrivate *)data)->fixupX();
+}
+
void QmlGraphicsFlickablePrivate::fixupY()
{
Q_Q(QmlGraphicsFlickable);
@@ -937,51 +945,22 @@ void QmlGraphicsFlickable::cancelFlick()
movementEnding();
}
-void QmlGraphicsFlickablePrivate::data_removeAt(int)
+void QmlGraphicsFlickablePrivate::data_append(QmlListProperty<QObject> *prop, QObject *o)
{
- // ###
-}
-
-int QmlGraphicsFlickablePrivate::data_count() const
-{
- // ###
- return 0;
-}
-
-void QmlGraphicsFlickablePrivate::data_append(QObject *o)
-{
- Q_Q(QmlGraphicsFlickable);
QmlGraphicsItem *i = qobject_cast<QmlGraphicsItem *>(o);
if (i)
- viewport->fxChildren()->append(i);
+ i->setParentItem(static_cast<QmlGraphicsFlickablePrivate*>(prop->data)->viewport);
else
- o->setParent(q);
+ o->setParent(prop->object);
}
-void QmlGraphicsFlickablePrivate::data_insert(int, QObject *)
-{
- // ###
-}
-
-QObject *QmlGraphicsFlickablePrivate::data_at(int) const
-{
- // ###
- return 0;
-}
-
-void QmlGraphicsFlickablePrivate::data_clear()
-{
- // ###
-}
-
-
-QmlList<QObject *> *QmlGraphicsFlickable::flickableData()
+QmlListProperty<QObject> QmlGraphicsFlickable::flickableData()
{
Q_D(QmlGraphicsFlickable);
- return &d->data;
+ return QmlListProperty<QObject>(this, (void *)d, QmlGraphicsFlickablePrivate::data_append);
}
-QmlList<QmlGraphicsItem *> *QmlGraphicsFlickable::flickableChildren()
+QmlListProperty<QmlGraphicsItem> QmlGraphicsFlickable::flickableChildren()
{
Q_D(QmlGraphicsFlickable);
return d->viewport->fxChildren();
@@ -1006,7 +985,10 @@ bool QmlGraphicsFlickable::overShoot() const
void QmlGraphicsFlickable::setOverShoot(bool o)
{
Q_D(QmlGraphicsFlickable);
+ if (d->overShoot == o)
+ return;
d->overShoot = o;
+ emit overShootChanged();
}
/*!
@@ -1215,6 +1197,7 @@ void QmlGraphicsFlickable::setMaximumFlickVelocity(qreal v)
if (v == d->maxVelocity)
return;
d->maxVelocity = v;
+ emit maximumFlickVelocityChanged();
}
/*!
@@ -1232,7 +1215,10 @@ qreal QmlGraphicsFlickable::flickDeceleration() const
void QmlGraphicsFlickable::setFlickDeceleration(qreal deceleration)
{
Q_D(QmlGraphicsFlickable);
+ if (deceleration == d->deceleration)
+ return;
d->deceleration = deceleration;
+ emit flickDecelerationChanged();
}
/*!
@@ -1270,6 +1256,7 @@ void QmlGraphicsFlickable::setPressDelay(int delay)
if (d->pressDelay == delay)
return;
d->pressDelay = delay;
+ emit pressDelayChanged();
}
qreal QmlGraphicsFlickable::reportedVelocitySmoothing() const
diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable_p.h b/src/declarative/graphicsitems/qmlgraphicsflickable_p.h
index ea07da4..580d01e 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflickable_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsflickable_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -65,15 +65,15 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsFlickable : public QmlGraphicsItem
Q_PROPERTY(qreal verticalVelocity READ verticalVelocity NOTIFY verticalVelocityChanged)
Q_PROPERTY(qreal reportedVelocitySmoothing READ reportedVelocitySmoothing WRITE setReportedVelocitySmoothing NOTIFY reportedVelocitySmoothingChanged)
- Q_PROPERTY(bool overShoot READ overShoot WRITE setOverShoot)
- Q_PROPERTY(qreal maximumFlickVelocity READ maximumFlickVelocity WRITE setMaximumFlickVelocity)
- Q_PROPERTY(qreal flickDeceleration READ flickDeceleration WRITE setFlickDeceleration)
+ Q_PROPERTY(bool overShoot READ overShoot WRITE setOverShoot NOTIFY overShootChanged)
+ Q_PROPERTY(qreal maximumFlickVelocity READ maximumFlickVelocity WRITE setMaximumFlickVelocity NOTIFY maximumFlickVelocityChanged)
+ Q_PROPERTY(qreal flickDeceleration READ flickDeceleration WRITE setFlickDeceleration NOTIFY flickDecelerationChanged)
Q_PROPERTY(bool moving READ isMoving NOTIFY movingChanged)
Q_PROPERTY(bool flicking READ isFlicking NOTIFY flickingChanged)
Q_PROPERTY(FlickDirection flickDirection READ flickDirection WRITE setFlickDirection NOTIFY flickDirectionChanged)
Q_PROPERTY(bool interactive READ isInteractive WRITE setInteractive NOTIFY interactiveChanged)
- Q_PROPERTY(int pressDelay READ pressDelay WRITE setPressDelay)
+ Q_PROPERTY(int pressDelay READ pressDelay WRITE setPressDelay NOTIFY pressDelayChanged)
Q_PROPERTY(bool atXEnd READ isAtXEnd NOTIFY isAtBoundaryChanged)
Q_PROPERTY(bool atYEnd READ isAtYEnd NOTIFY isAtBoundaryChanged)
@@ -82,8 +82,8 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsFlickable : public QmlGraphicsItem
Q_PROPERTY(QmlGraphicsFlickableVisibleArea *visibleArea READ visibleArea CONSTANT)
- Q_PROPERTY(QmlList<QObject *>* flickableData READ flickableData)
- Q_PROPERTY(QmlList<QmlGraphicsItem *>* flickableChildren READ flickableChildren)
+ Q_PROPERTY(QmlListProperty<QObject> flickableData READ flickableData)
+ Q_PROPERTY(QmlListProperty<QmlGraphicsItem> flickableChildren READ flickableChildren)
Q_CLASSINFO("DefaultProperty", "flickableData")
Q_ENUMS(FlickDirection)
@@ -92,8 +92,8 @@ public:
QmlGraphicsFlickable(QmlGraphicsItem *parent=0);
~QmlGraphicsFlickable();
- QmlList<QObject *> *flickableData();
- QmlList<QmlGraphicsItem *> *flickableChildren();
+ QmlListProperty<QObject> flickableData();
+ QmlListProperty<QmlGraphicsItem> flickableChildren();
bool overShoot() const;
void setOverShoot(bool);
@@ -160,6 +160,10 @@ Q_SIGNALS:
void pageChanged();
void flickDirectionChanged();
void interactiveChanged();
+ void overShootChanged();
+ void maximumFlickVelocityChanged();
+ void flickDecelerationChanged();
+ void pressDelayChanged();
protected:
virtual bool sceneEventFilter(QGraphicsItem *, QEvent *);
diff --git a/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h b/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h
index e83e81b..e58cc0c 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsflickable_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -110,8 +110,6 @@ public:
qreal velocityX;
qreal velocityY;
QTime pressTime;
- QmlTimeLineEvent fixupXEvent;
- QmlTimeLineEvent fixupYEvent;
qreal deceleration;
qreal maxVelocity;
QTime velocityTime;
@@ -125,6 +123,9 @@ public:
int pressDelay;
int fixupDuration;
+ static void fixupY_callback(void *);
+ static void fixupX_callback(void *);
+
void updateVelocity();
struct Velocity : public QmlTimeLineValue
{
@@ -148,15 +149,7 @@ public:
void handleMouseReleaseEvent(QGraphicsSceneMouseEvent *);
// flickableData property
- void data_removeAt(int);
- int data_count() const;
- void data_append(QObject *);
- void data_insert(int, QObject *);
- QObject *data_at(int) const;
- void data_clear();
-
- friend class QmlGraphicsFlickableVisibleArea;
- QML_DECLARE_LIST_PROXY(QmlGraphicsFlickablePrivate, QObject *, data)
+ static void data_append(QmlListProperty<QObject> *, QObject *);
};
class QmlGraphicsFlickableVisibleArea : public QObject
diff --git a/src/declarative/graphicsitems/qmlgraphicsflipable.cpp b/src/declarative/graphicsitems/qmlgraphicsflipable.cpp
index 4116817..5bab868 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflipable.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsflipable.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -94,10 +94,10 @@ public:
}
transitions: Transition {
- NumberAnimation { matchProperties: "angle"; duration: 2000 }
+ NumberAnimation { properties: "angle"; duration: 2000 }
}
- MouseRegion {
+ MouseArea {
// change between default and 'back' states
onClicked: flipable.state = (flipable.state == 'back' ? '' : 'back')
anchors.fill: parent
@@ -149,7 +149,7 @@ void QmlGraphicsFlipable::setFront(QmlGraphicsItem *front)
return;
}
d->front = front;
- fxChildren()->append(d->front);
+ d->front->setParentItem(this);
if (Back == d->current)
d->front->setOpacity(0.);
}
@@ -168,7 +168,7 @@ void QmlGraphicsFlipable::setBack(QmlGraphicsItem *back)
return;
}
d->back = back;
- fxChildren()->append(d->back);
+ d->back->setParentItem(this);
if (Front == d->current)
d->back->setOpacity(0.);
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsflipable_p.h b/src/declarative/graphicsitems/qmlgraphicsflipable_p.h
index c189786..2b9e44e 100644
--- a/src/declarative/graphicsitems/qmlgraphicsflipable_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsflipable_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp b/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp
index 4e1542a..d564e86 100644
--- a/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsfocuspanel.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h b/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h
index 4c5cc14..935b04e 100644
--- a/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsfocuspanel_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp b/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp
index ce0e376..9930396 100644
--- a/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsfocusscope.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h b/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h
index 0ea9da5..ca53b01 100644
--- a/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsfocusscope_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp
index f2b3c00..497d950 100644
--- a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h
index 1091145..e263aa0 100644
--- a/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsgraphicsobjectcontainer_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsgridview.cpp b/src/declarative/graphicsitems/qmlgraphicsgridview.cpp
index ee711b4..bf370ae 100644
--- a/src/declarative/graphicsitems/qmlgraphicsgridview.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsgridview.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -1656,9 +1656,32 @@ void QmlGraphicsGridView::itemsMoved(int from, int to, int count)
++endIndex;
}
+ // update visibleIndex
+ for (it = d->visibleItems.begin(); it != d->visibleItems.end(); ++it) {
+ if ((*it)->index != -1) {
+ d->visibleIndex = (*it)->index;
+ break;
+ }
+ }
+
+ // Fix current index
+ if (d->currentIndex >= 0 && d->currentItem) {
+ int oldCurrent = d->currentIndex;
+ d->currentIndex = d->model->indexOf(d->currentItem->item, this);
+ if (oldCurrent != d->currentIndex) {
+ d->currentItem->index = d->currentIndex;
+ emit currentIndexChanged();
+ }
+ }
+
// Whatever moved items remain are no longer visible items.
- while (moved.count())
- d->releaseItem(moved.take(moved.begin().key()));
+ while (moved.count()) {
+ int idx = moved.begin().key();
+ FxGridItem *item = moved.take(idx);
+ if (item->item == d->currentItem->item)
+ item->setPosition(d->colPosAt(idx), d->rowPosAt(idx));
+ d->releaseItem(item);
+ }
d->layout(removedBeforeVisible);
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsgridview_p.h b/src/declarative/graphicsitems/qmlgraphicsgridview_p.h
index 25a76a3..bd18daf 100644
--- a/src/declarative/graphicsitems/qmlgraphicsgridview_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsgridview_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimage.cpp b/src/declarative/graphicsitems/qmlgraphicsimage.cpp
index 558511d..c586452 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimage.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsimage.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimage_p.h b/src/declarative/graphicsitems/qmlgraphicsimage_p.h
index dde5d79..b8befeb 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimage_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsimage_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimage_p_p.h b/src/declarative/graphicsitems/qmlgraphicsimage_p_p.h
index 3a5acca..e404935 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimage_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsimage_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp b/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp
index 08617ac..c09b661 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsimagebase.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h b/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h
index 61ea975..e8bda4c 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsimagebase_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h b/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h
index 44b2332..d86785f 100644
--- a/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsimagebase_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsitem.cpp b/src/declarative/graphicsitems/qmlgraphicsitem.cpp
index e10c919..2e68264 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitem.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsitem.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -1223,6 +1223,10 @@ QmlGraphicsKeysAttached *QmlGraphicsKeysAttached::qmlAttachedProperties(QObject
\internal
*/
+/*! \fn void QmlGraphicsItem::transformOriginChanged(TransformOrigin)
+ \internal
+*/
+
/*!
\fn void QmlGraphicsItem::childrenChanged()
\internal
@@ -1331,12 +1335,8 @@ void QmlGraphicsItem::setParentItem(QmlGraphicsItem *parent)
QmlGraphicsItem *oldParent = parentItem();
if (parent == oldParent || !parent) return;
- Q_D(QmlGraphicsItem);
QObject::setParent(parent);
- d->setParentItemHelper(parent, /*newParentVariant=*/0, /*thisPointerVariant=*/0);
- if (oldParent)
- emit oldParent->childrenChanged();
- emit parentChanged();
+ QGraphicsObject::setParentItem(parent);
}
/*!
@@ -1419,154 +1419,95 @@ QmlGraphicsAnchors *QmlGraphicsItem::anchors()
return d->anchors();
}
-void QmlGraphicsItemPrivate::data_removeAt(int)
-{
- // ###
-}
-
-int QmlGraphicsItemPrivate::data_count() const
-{
- // ###
- return 0;
-}
-
-void QmlGraphicsItemPrivate::data_append(QObject *o)
+void QmlGraphicsItemPrivate::data_append(QmlListProperty<QObject> *prop, QObject *o)
{
- Q_Q(QmlGraphicsItem);
QmlGraphicsItem *i = qobject_cast<QmlGraphicsItem *>(o);
- if (i)
- q->fxChildren()->append(i);
+ if (i)
+ i->setParentItem(static_cast<QmlGraphicsItem *>(prop->object));
else
- resources_append(o);
-}
-
-void QmlGraphicsItemPrivate::data_insert(int, QObject *)
-{
- // ###
-}
-
-QObject *QmlGraphicsItemPrivate::data_at(int) const
-{
- // ###
- return 0;
-}
-
-void QmlGraphicsItemPrivate::data_clear()
-{
- // ###
-}
-
-void QmlGraphicsItemPrivate::resources_removeAt(int)
-{
- // ###
-}
-
-int QmlGraphicsItemPrivate::resources_count() const
-{
- Q_Q(const QmlGraphicsItem);
- return q->children().count();
-}
-
-void QmlGraphicsItemPrivate::resources_append(QObject *o)
-{
- Q_Q(QmlGraphicsItem);
- o->setParent(q);
+ o->setParent(static_cast<QmlGraphicsItem *>(prop->object));
}
-void QmlGraphicsItemPrivate::resources_insert(int, QObject *)
+QObject *QmlGraphicsItemPrivate::resources_at(QmlListProperty<QObject> *prop, int index)
{
- // ###
-}
-
-QObject *QmlGraphicsItemPrivate::resources_at(int idx) const
-{
- Q_Q(const QmlGraphicsItem);
- QObjectList children = q->children();
- if (idx < children.count())
- return children.at(idx);
+ QObjectList children = prop->object->children();
+ if (index < children.count())
+ return children.at(index);
else
return 0;
}
-void QmlGraphicsItemPrivate::resources_clear()
-{
- // ###
-}
-
-void QmlGraphicsItemPrivate::children_removeAt(int)
-{
- // ###
-}
-
-int QmlGraphicsItemPrivate::children_count() const
+void QmlGraphicsItemPrivate::resources_append(QmlListProperty<QObject> *prop, QObject *o)
{
- Q_Q(const QmlGraphicsItem);
- return q->childItems().count();
+ o->setParent(prop->object);
}
-void QmlGraphicsItemPrivate::children_append(QmlGraphicsItem *i)
+int QmlGraphicsItemPrivate::resources_count(QmlListProperty<QObject> *prop)
{
- Q_Q(QmlGraphicsItem);
- i->setParentItem(q);
+ return prop->object->children().count();
}
-void QmlGraphicsItemPrivate::children_insert(int, QmlGraphicsItem *)
+QmlGraphicsItem *QmlGraphicsItemPrivate::children_at(QmlListProperty<QmlGraphicsItem> *prop, int index)
{
- // ###
-}
+ QList<QGraphicsItem *> children = static_cast<QmlGraphicsItem*>(prop->object)->childItems();
-QmlGraphicsItem *QmlGraphicsItemPrivate::children_at(int idx) const
-{
- Q_Q(const QmlGraphicsItem);
- QList<QGraphicsItem *> children = q->childItems();
- if (idx < children.count())
- return qobject_cast<QmlGraphicsItem *>(children.at(idx));
+ if (index < children.count())
+ return qobject_cast<QmlGraphicsItem *>(children.at(index));
else
return 0;
}
-void QmlGraphicsItemPrivate::children_clear()
+void QmlGraphicsItemPrivate::children_append(QmlListProperty<QmlGraphicsItem> *prop, QmlGraphicsItem *i)
{
- // ###
-}
-
-
-void QmlGraphicsItemPrivate::transform_removeAt(int i)
-{
- if (!transformData)
- return;
- transformData->graphicsTransforms.removeAt(i);
- dirtySceneTransform = 1;
+ if (i)
+ i->setParentItem(static_cast<QmlGraphicsItem*>(prop->object));
}
-int QmlGraphicsItemPrivate::transform_count() const
+int QmlGraphicsItemPrivate::children_count(QmlListProperty<QmlGraphicsItem> *prop)
{
- return transformData ? transformData->graphicsTransforms.size() : 0;
+ return static_cast<QmlGraphicsItem*>(prop->object)->childItems().count();
}
-void QmlGraphicsItemPrivate::transform_append(QGraphicsTransform *item)
+int QmlGraphicsItemPrivate::transform_count(QmlListProperty<QGraphicsTransform> *list)
{
- appendGraphicsTransform(item);
+ QGraphicsObject *object = qobject_cast<QGraphicsObject *>(list->object);
+ if (object) {
+ QGraphicsItemPrivate *d = QGraphicsItemPrivate::get(object);
+ return d->transformData ? d->transformData->graphicsTransforms.size() : 0;
+ } else {
+ return 0;
+ }
}
-void QmlGraphicsItemPrivate::transform_insert(int, QGraphicsTransform *)
+void QmlGraphicsItemPrivate::transform_append(QmlListProperty<QGraphicsTransform> *list, QGraphicsTransform *item)
{
- // ###
+ QGraphicsObject *object = qobject_cast<QGraphicsObject *>(list->object);
+ if (object)
+ QGraphicsItemPrivate::get(object)->appendGraphicsTransform(item);
}
-QGraphicsTransform *QmlGraphicsItemPrivate::transform_at(int idx) const
+QGraphicsTransform *QmlGraphicsItemPrivate::transform_at(QmlListProperty<QGraphicsTransform> *list, int idx)
{
- if (!transformData)
+ QGraphicsObject *object = qobject_cast<QGraphicsObject *>(list->object);
+ if (object) {
+ QGraphicsItemPrivate *d = QGraphicsItemPrivate::get(object);
+ if (!d->transformData)
+ return 0;
+ return d->transformData->graphicsTransforms.at(idx);
+ } else {
return 0;
- return transformData->graphicsTransforms.at(idx);
+ }
}
-void QmlGraphicsItemPrivate::transform_clear()
+void QmlGraphicsItemPrivate::transform_clear(QmlListProperty<QGraphicsTransform> *list)
{
- if (!transformData)
- return;
- Q_Q(QmlGraphicsItem);
- q->setTransformations(QList<QGraphicsTransform *>());
+ QGraphicsObject *object = qobject_cast<QGraphicsObject *>(list->object);
+ if (object) {
+ QGraphicsItemPrivate *d = QGraphicsItemPrivate::get(object);
+ if (!d->transformData)
+ return;
+ object->setTransformations(QList<QGraphicsTransform *>());
+ }
}
/*!
@@ -1609,10 +1550,9 @@ void QmlGraphicsItemPrivate::transform_clear()
*/
/*! \internal */
-QmlList<QObject *> *QmlGraphicsItem::data()
+QmlListProperty<QObject> QmlGraphicsItem::data()
{
- Q_D(QmlGraphicsItem);
- return &d->data;
+ return QmlListProperty<QObject>(this, 0, QmlGraphicsItemPrivate::data_append);
}
/*!
@@ -1639,7 +1579,10 @@ bool QmlGraphicsItem::clip() const
void QmlGraphicsItem::setClip(bool c)
{
+ if (clip() == c)
+ return;
setFlag(ItemClipsChildrenToShape, c);
+ emit clipChanged();
}
/*!
@@ -2211,17 +2154,19 @@ void QmlGraphicsItem::focusChanged(bool flag)
}
/*! \internal */
-QmlList<QmlGraphicsItem *> *QmlGraphicsItem::fxChildren()
+QmlListProperty<QmlGraphicsItem> QmlGraphicsItem::fxChildren()
{
- Q_D(QmlGraphicsItem);
- return &(d->children);
+ return QmlListProperty<QmlGraphicsItem>(this, 0, QmlGraphicsItemPrivate::children_append,
+ QmlGraphicsItemPrivate::children_count,
+ QmlGraphicsItemPrivate::children_at);
}
/*! \internal */
-QmlList<QObject *> *QmlGraphicsItem::resources()
+QmlListProperty<QObject> QmlGraphicsItem::resources()
{
- Q_D(QmlGraphicsItem);
- return &(d->resources);
+ return QmlListProperty<QObject>(this, 0, QmlGraphicsItemPrivate::resources_append,
+ QmlGraphicsItemPrivate::resources_count,
+ QmlGraphicsItemPrivate::resources_at);
}
/*!
@@ -2246,7 +2191,7 @@ QmlList<QObject *> *QmlGraphicsItem::resources()
\internal
*/
/*! \internal */
-QmlList<QmlState *>* QmlGraphicsItem::states()
+QmlListProperty<QmlState> QmlGraphicsItem::states()
{
Q_D(QmlGraphicsItem);
return d->states()->statesProperty();
@@ -2275,7 +2220,7 @@ QmlList<QmlState *>* QmlGraphicsItem::states()
*/
/*! \internal */
-QmlList<QmlTransition *>* QmlGraphicsItem::transitions()
+QmlListProperty<QmlTransition> QmlGraphicsItem::transitions()
{
Q_D(QmlGraphicsItem);
return d->states()->transitionsProperty();
@@ -2383,10 +2328,11 @@ void QmlGraphicsItem::setState(const QString &state)
*/
/*! \internal */
-QmlList<QGraphicsTransform *>* QmlGraphicsItem::transform()
+QmlListProperty<QGraphicsTransform> QmlGraphicsItem::transform()
{
Q_D(QmlGraphicsItem);
- return &(d->transform);
+ return QmlListProperty<QGraphicsTransform>(this, 0, d->transform_append, d->transform_count,
+ d->transform_at, d->transform_clear);
}
/*!
@@ -2627,6 +2573,7 @@ void QmlGraphicsItem::setSmooth(bool smooth)
if (d->smooth == smooth)
return;
d->smooth = smooth;
+ emit smoothChanged();
update();
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsitem.h b/src/declarative/graphicsitems/qmlgraphicsitem.h
index e0f33c7..891fc88 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitem.h
+++ b/src/declarative/graphicsitems/qmlgraphicsitem.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -70,11 +70,11 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsItem : public QGraphicsObject, public QmlP
Q_INTERFACES(QmlParserStatus)
Q_PROPERTY(QmlGraphicsItem * parent READ parentItem WRITE setParentItem NOTIFY parentChanged DESIGNABLE false FINAL)
- Q_PROPERTY(QmlList<QObject *> *data READ data DESIGNABLE false)
- Q_PROPERTY(QmlList<QmlGraphicsItem *>* children READ fxChildren DESIGNABLE false NOTIFY childrenChanged)
- Q_PROPERTY(QmlList<QObject *>* resources READ resources DESIGNABLE false)
- Q_PROPERTY(QmlList<QmlState *>* states READ states DESIGNABLE false)
- Q_PROPERTY(QmlList<QmlTransition *>* transitions READ transitions DESIGNABLE false)
+ Q_PROPERTY(QmlListProperty<QObject> data READ data DESIGNABLE false)
+ Q_PROPERTY(QmlListProperty<QmlGraphicsItem> children READ fxChildren DESIGNABLE false NOTIFY childrenChanged)
+ Q_PROPERTY(QmlListProperty<QObject> resources READ resources DESIGNABLE false)
+ Q_PROPERTY(QmlListProperty<QmlState> states READ states DESIGNABLE false)
+ Q_PROPERTY(QmlListProperty<QmlTransition> transitions READ transitions DESIGNABLE false)
Q_PROPERTY(QString state READ state WRITE setState NOTIFY stateChanged)
Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged RESET resetWidth FINAL)
Q_PROPERTY(qreal height READ height WRITE setHeight NOTIFY heightChanged RESET resetHeight FINAL)
@@ -88,12 +88,12 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsItem : public QGraphicsObject, public QmlP
Q_PROPERTY(QmlGraphicsAnchorLine verticalCenter READ verticalCenter CONSTANT FINAL)
Q_PROPERTY(QmlGraphicsAnchorLine baseline READ baseline CONSTANT FINAL)
Q_PROPERTY(qreal baselineOffset READ baselineOffset WRITE setBaselineOffset NOTIFY baselineOffsetChanged)
- Q_PROPERTY(bool clip READ clip WRITE setClip) // ### move to QGI/QGO, NOTIFY
+ Q_PROPERTY(bool clip READ clip WRITE setClip NOTIFY clipChanged) // ### move to QGI/QGO, NOTIFY
Q_PROPERTY(bool focus READ hasFocus WRITE setFocus NOTIFY focusChanged FINAL)
Q_PROPERTY(bool wantsFocus READ wantsFocus NOTIFY wantsFocusChanged)
- Q_PROPERTY(QmlList<QGraphicsTransform *>* transform READ transform DESIGNABLE false FINAL)
+ Q_PROPERTY(QmlListProperty<QGraphicsTransform> transform READ transform DESIGNABLE false FINAL)
Q_PROPERTY(TransformOrigin transformOrigin READ transformOrigin WRITE setTransformOrigin NOTIFY transformOriginChanged)
- Q_PROPERTY(bool smooth READ smooth WRITE setSmooth)
+ Q_PROPERTY(bool smooth READ smooth WRITE setSmooth NOTIFY smoothChanged)
Q_PROPERTY(QGraphicsEffect *effect READ graphicsEffect WRITE setGraphicsEffect)
Q_ENUMS(TransformOrigin)
Q_CLASSINFO("DefaultProperty", "data")
@@ -112,9 +112,9 @@ public:
void setParentItem(QmlGraphicsItem *parent);
void setParent(QmlGraphicsItem *parent) { setParentItem(parent); }
- QmlList<QObject *> *data();
- QmlList<QmlGraphicsItem *> *fxChildren();
- QmlList<QObject *> *resources();
+ QmlListProperty<QObject> data();
+ QmlListProperty<QmlGraphicsItem> fxChildren();
+ QmlListProperty<QObject> resources();
QmlGraphicsAnchors *anchors();
QRectF childrenRect();
@@ -122,8 +122,8 @@ public:
bool clip() const;
void setClip(bool);
- QmlList<QmlState *>* states();
- QmlList<QmlTransition *>* transitions();
+ QmlListProperty<QmlState> states();
+ QmlListProperty<QmlTransition> transitions();
QString state() const;
void setState(const QString &);
@@ -131,7 +131,7 @@ public:
qreal baselineOffset() const;
void setBaselineOffset(qreal);
- QmlList<QGraphicsTransform *> *transform();
+ QmlListProperty<QGraphicsTransform> transform();
qreal width() const;
void setWidth(qreal);
@@ -178,6 +178,8 @@ Q_SIGNALS:
void wantsFocusChanged();
void parentChanged();
void transformOriginChanged(TransformOrigin);
+ void smoothChanged();
+ void clipChanged();
protected:
bool isComponentComplete() const;
diff --git a/src/declarative/graphicsitems/qmlgraphicsitem_p.h b/src/declarative/graphicsitems/qmlgraphicsitem_p.h
index 7ebbd85..4860b83 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitem_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsitem_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -137,40 +137,23 @@ public:
QString _id;
// data property
- void data_removeAt(int);
- int data_count() const;
- void data_append(QObject *);
- void data_insert(int, QObject *);
- QObject *data_at(int) const;
- void data_clear();
- QML_DECLARE_LIST_PROXY(QmlGraphicsItemPrivate, QObject *, data)
+ static void data_append(QmlListProperty<QObject> *, QObject *);
// resources property
- void resources_removeAt(int);
- int resources_count() const;
- void resources_append(QObject *);
- void resources_insert(int, QObject *);
- QObject *resources_at(int) const;
- void resources_clear();
- QML_DECLARE_LIST_PROXY(QmlGraphicsItemPrivate, QObject *, resources)
+ static QObject *resources_at(QmlListProperty<QObject> *, int);
+ static void resources_append(QmlListProperty<QObject> *, QObject *);
+ static int resources_count(QmlListProperty<QObject> *);
// children property
- void children_removeAt(int);
- int children_count() const;
- void children_append(QmlGraphicsItem *);
- void children_insert(int, QmlGraphicsItem *);
- QmlGraphicsItem *children_at(int) const;
- void children_clear();
- QML_DECLARE_LIST_PROXY(QmlGraphicsItemPrivate, QmlGraphicsItem *, children)
+ static QmlGraphicsItem *children_at(QmlListProperty<QmlGraphicsItem> *, int);
+ static void children_append(QmlListProperty<QmlGraphicsItem> *, QmlGraphicsItem *);
+ static int children_count(QmlListProperty<QmlGraphicsItem> *);
// transform property
- void transform_removeAt(int);
- int transform_count() const;
- void transform_append(QGraphicsTransform *);
- void transform_insert(int, QGraphicsTransform *);
- QGraphicsTransform *transform_at(int) const;
- void transform_clear();
- QML_DECLARE_LIST_PROXY(QmlGraphicsItemPrivate, QGraphicsTransform *, transform)
+ static int transform_count(QmlListProperty<QGraphicsTransform> *list);
+ static void transform_append(QmlListProperty<QGraphicsTransform> *list, QGraphicsTransform *);
+ static QGraphicsTransform *transform_at(QmlListProperty<QGraphicsTransform> *list, int);
+ static void transform_clear(QmlListProperty<QGraphicsTransform> *list);
QmlGraphicsAnchors *anchors() {
if (!_anchors) {
diff --git a/src/declarative/graphicsitems/qmlgraphicsitemchangelistener_p.h b/src/declarative/graphicsitems/qmlgraphicsitemchangelistener_p.h
index f430df0..a1c7b89 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitemchangelistener_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsitemchangelistener_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsitemsmodule.cpp b/src/declarative/graphicsitems/qmlgraphicsitemsmodule.cpp
index 66d62f0..9263f49 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitemsmodule.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsitemsmodule.cpp
@@ -51,7 +51,7 @@
#include "qmlgraphicsanimatedimage_p.h"
#include "qmlgraphicsborderimage_p.h"
#include "qmlgraphicspositioners_p.h"
-#include "qmlgraphicsmouseregion_p.h"
+#include "qmlgraphicsmousearea_p.h"
#include "qmlgraphicsflickable_p.h"
#include "qmlgraphicsflickable_p_p.h"
#include "qmlgraphicsflipable_p.h"
@@ -64,7 +64,7 @@
#include "qmlgraphicslayoutitem_p.h"
#include "qmlgraphicslistview_p.h"
#include "qmlgraphicsloader_p.h"
-#include "qmlgraphicsmouseregion_p.h"
+#include "qmlgraphicsmousearea_p.h"
#include "qmlgraphicsparticles_p.h"
#include "qmlgraphicspath_p.h"
#include "qmlgraphicspathview_p.h"
@@ -112,7 +112,8 @@ void QmlGraphicsItemModule::defineModule()
QML_REGISTER_TYPE(Qt,4,6,LayoutItem,QmlGraphicsLayoutItem);
QML_REGISTER_TYPE(Qt,4,6,ListView,QmlGraphicsListView);
QML_REGISTER_TYPE(Qt,4,6,Loader,QmlGraphicsLoader);
- QML_REGISTER_TYPE(Qt,4,6,MouseRegion,QmlGraphicsMouseRegion);
+ QML_REGISTER_TYPE(Qt,4,6,MouseRegion,QmlGraphicsMouseArea);
+ QML_REGISTER_TYPE(Qt,4,6,MouseArea,QmlGraphicsMouseArea);
QML_REGISTER_TYPE(Qt,4,6,Opacity,QGraphicsOpacityEffect);
QML_REGISTER_TYPE(Qt,4,6,ParticleMotion,QmlGraphicsParticleMotion);
QML_REGISTER_TYPE(Qt,4,6,ParticleMotionGravity,QmlGraphicsParticleMotionGravity);
diff --git a/src/declarative/graphicsitems/qmlgraphicsitemsmodule_p.h b/src/declarative/graphicsitems/qmlgraphicsitemsmodule_p.h
index bf38c24..76fea7e 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitemsmodule_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsitemsmodule_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp b/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp
index 856a37f..961065e 100644
--- a/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicslayoutitem.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h b/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h
index 3278b63..fbc891d 100644
--- a/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicslayoutitem_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicslistview.cpp b/src/declarative/graphicsitems/qmlgraphicslistview.cpp
index db0afe1..108ac75 100644
--- a/src/declarative/graphicsitems/qmlgraphicslistview.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicslistview.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -1069,9 +1069,13 @@ void QmlGraphicsListViewPrivate::fixupY()
fixupDuration = moveReason == Mouse ? fixupDuration : 0;
if (haveHighlightRange && highlightRange == QmlGraphicsListView::StrictlyEnforceRange) {
- if (currentItem && highlight && currentItem->position() != highlight->position()) {
+ if (currentItem && currentItem->position() - position() != highlightRangeStart) {
+ qreal pos = currentItem->position() - highlightRangeStart;
timeline.reset(_moveY);
- timeline.move(_moveY, -(currentItem->position() - highlightRangeStart), QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ if (fixupDuration)
+ timeline.move(_moveY, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ else
+ _moveY.setValue(-pos);
vTime = timeline.time();
}
} else if (snapMode != QmlGraphicsListView::NoSnap) {
@@ -1080,7 +1084,10 @@ void QmlGraphicsListViewPrivate::fixupY()
qreal dist = qAbs(_moveY + pos);
if (dist > 0) {
timeline.reset(_moveY);
- timeline.move(_moveY, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ if (fixupDuration)
+ timeline.move(_moveY, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ else
+ _moveY.setValue(-pos);
vTime = timeline.time();
}
}
@@ -1102,9 +1109,13 @@ void QmlGraphicsListViewPrivate::fixupX()
fixupDuration = moveReason == Mouse ? fixupDuration : 0;
if (haveHighlightRange && highlightRange == QmlGraphicsListView::StrictlyEnforceRange) {
- if (currentItem && highlight && currentItem->position() != highlight->position()) {
+ if (currentItem && currentItem->position() - position() != highlightRangeStart) {
+ qreal pos = currentItem->position() - highlightRangeStart;
timeline.reset(_moveX);
- timeline.move(_moveX, -(currentItem->position() - highlightRangeStart), QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ if (fixupDuration)
+ timeline.move(_moveX, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ else
+ _moveX.setValue(-pos);
vTime = timeline.time();
}
} else if (snapMode != QmlGraphicsListView::NoSnap) {
@@ -1113,7 +1124,10 @@ void QmlGraphicsListViewPrivate::fixupX()
qreal dist = qAbs(_moveX + pos);
if (dist > 0) {
timeline.reset(_moveX);
- timeline.move(_moveX, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ if (fixupDuration)
+ timeline.move(_moveX, -pos, QEasingCurve(QEasingCurve::InOutQuad), fixupDuration);
+ else
+ _moveX.setValue(-pos);
vTime = timeline.time();
}
}
@@ -1186,7 +1200,7 @@ void QmlGraphicsListViewPrivate::flickX(qreal velocity)
}
timeline.reset(_moveX);
timeline.accel(_moveX, v, accel, maxDistance + overshootDist);
- timeline.execute(fixupXEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveX, fixupX_callback, this));
flicked = true;
emit q->flickingChanged();
emit q->flickStarted();
@@ -1212,7 +1226,7 @@ void QmlGraphicsListViewPrivate::flickX(qreal velocity)
}
timeline.reset(_moveX);
timeline.accelDistance(_moveX, v, -dist + (v < 0 ? -overshootDist : overshootDist));
- timeline.execute(fixupXEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveX, fixupX_callback, this));
}
} else {
correctFlick = false;
@@ -1284,7 +1298,7 @@ void QmlGraphicsListViewPrivate::flickY(qreal velocity)
}
timeline.reset(_moveY);
timeline.accel(_moveY, v, accel, maxDistance + overshootDist);
- timeline.execute(fixupYEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveY, fixupY_callback, this));
flicked = true;
emit q->flickingChanged();
emit q->flickStarted();
@@ -1310,7 +1324,7 @@ void QmlGraphicsListViewPrivate::flickY(qreal velocity)
}
timeline.reset(_moveY);
timeline.accelDistance(_moveY, v, -dist + (v < 0 ? -overshootDist : overshootDist));
- timeline.execute(fixupYEvent);
+ timeline.callback(QmlTimeLineCallback(&_moveY, fixupY_callback, this));
}
} else {
correctFlick = false;
@@ -2261,6 +2275,7 @@ void QmlGraphicsListView::positionViewAtIndex(int index)
for (int i = 0; i < oldVisible.count(); ++i)
d->releaseItem(oldVisible.at(i));
}
+ d->fixupPosition();
}
@@ -2633,9 +2648,32 @@ void QmlGraphicsListView::itemsMoved(int from, int to, int count)
++endIndex;
}
+ // update visibleIndex
+ for (it = d->visibleItems.begin(); it != d->visibleItems.end(); ++it) {
+ if ((*it)->index != -1) {
+ d->visibleIndex = (*it)->index;
+ break;
+ }
+ }
+
+ // Fix current index
+ if (d->currentIndex >= 0 && d->currentItem) {
+ int oldCurrent = d->currentIndex;
+ d->currentIndex = d->model->indexOf(d->currentItem->item, this);
+ if (oldCurrent != d->currentIndex) {
+ d->currentItem->index = d->currentIndex;
+ emit currentIndexChanged();
+ }
+ }
+
// Whatever moved items remain are no longer visible items.
- while (moved.count())
- d->releaseItem(moved.take(moved.begin().key()));
+ while (moved.count()) {
+ int idx = moved.begin().key();
+ FxListItem *item = moved.take(idx);
+ if (item->item == d->currentItem->item)
+ item->setPosition(d->positionAt(idx));
+ d->releaseItem(item);
+ }
// Ensure we don't cause an ugly list scroll.
d->visibleItems.first()->setPosition(d->visibleItems.first()->position() + moveBy);
diff --git a/src/declarative/graphicsitems/qmlgraphicslistview_p.h b/src/declarative/graphicsitems/qmlgraphicslistview_p.h
index 42ace15..c5b4aab 100644
--- a/src/declarative/graphicsitems/qmlgraphicslistview_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicslistview_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsloader.cpp b/src/declarative/graphicsitems/qmlgraphicsloader.cpp
index d778c83..e4c7411 100644
--- a/src/declarative/graphicsitems/qmlgraphicsloader.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsloader.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -124,7 +124,7 @@ void QmlGraphicsLoaderPrivate::initResize()
\code
Loader { id: pageLoader }
Rectangle {
- MouseRegion { anchors.fill: parent; onClicked: pageLoader.source = "Page1.qml" }
+ MouseArea { anchors.fill: parent; onClicked: pageLoader.source = "Page1.qml" }
}
\endcode
@@ -398,6 +398,7 @@ void QmlGraphicsLoader::setResizeMode(ResizeMode mode)
}
d->resizeMode = mode;
+ emit resizeModeChanged();
d->initResize();
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsloader_p.h b/src/declarative/graphicsitems/qmlgraphicsloader_p.h
index 87b6a52..0ab67ac 100644
--- a/src/declarative/graphicsitems/qmlgraphicsloader_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsloader_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -59,7 +59,7 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsLoader : public QmlGraphicsItem
Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
Q_PROPERTY(QmlComponent *sourceComponent READ sourceComponent WRITE setSourceComponent NOTIFY sourceChanged)
- Q_PROPERTY(ResizeMode resizeMode READ resizeMode WRITE setResizeMode)
+ Q_PROPERTY(ResizeMode resizeMode READ resizeMode WRITE setResizeMode NOTIFY resizeModeChanged)
Q_PROPERTY(QGraphicsObject *item READ item NOTIFY itemChanged)
Q_PROPERTY(Status status READ status NOTIFY statusChanged)
Q_PROPERTY(qreal progress READ progress NOTIFY progressChanged)
@@ -89,6 +89,8 @@ Q_SIGNALS:
void sourceChanged();
void statusChanged();
void progressChanged();
+ void resizeModeChanged();
+
protected:
void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry);
QVariant itemChange(GraphicsItemChange change, const QVariant &value);
diff --git a/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h b/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h
index 7f10eff..61dab58 100644
--- a/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsloader_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp b/src/declarative/graphicsitems/qmlgraphicsmousearea.cpp
index fe72e84..cc07989 100644
--- a/src/declarative/graphicsitems/qmlgraphicsmouseregion.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsmousearea.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#include "qmlgraphicsmouseregion_p.h"
-#include "qmlgraphicsmouseregion_p_p.h"
+#include "qmlgraphicsmousearea_p.h"
+#include "qmlgraphicsmousearea_p_p.h"
#include "qmlgraphicsevents_p_p.h"
@@ -65,7 +65,10 @@ QmlGraphicsItem *QmlGraphicsDrag::target() const
void QmlGraphicsDrag::setTarget(QmlGraphicsItem *t)
{
+ if (_target == t)
+ return;
_target = t;
+ emit targetChanged();
}
QmlGraphicsDrag::Axis QmlGraphicsDrag::axis() const
@@ -75,7 +78,10 @@ QmlGraphicsDrag::Axis QmlGraphicsDrag::axis() const
void QmlGraphicsDrag::setAxis(QmlGraphicsDrag::Axis a)
{
+ if (_axis == a)
+ return;
_axis = a;
+ emit axisChanged();
}
qreal QmlGraphicsDrag::xmin() const
@@ -85,7 +91,10 @@ qreal QmlGraphicsDrag::xmin() const
void QmlGraphicsDrag::setXmin(qreal m)
{
+ if (_xmin == m)
+ return;
_xmin = m;
+ emit minimumXChanged();
}
qreal QmlGraphicsDrag::xmax() const
@@ -95,7 +104,10 @@ qreal QmlGraphicsDrag::xmax() const
void QmlGraphicsDrag::setXmax(qreal m)
{
+ if (_xmax == m)
+ return;
_xmax = m;
+ emit maximumXChanged();
}
qreal QmlGraphicsDrag::ymin() const
@@ -105,7 +117,10 @@ qreal QmlGraphicsDrag::ymin() const
void QmlGraphicsDrag::setYmin(qreal m)
{
+ if (_ymin == m)
+ return;
_ymin = m;
+ emit minimumYChanged();
}
qreal QmlGraphicsDrag::ymax() const
@@ -115,27 +130,30 @@ qreal QmlGraphicsDrag::ymax() const
void QmlGraphicsDrag::setYmax(qreal m)
{
+ if (_ymax == m)
+ return;
_ymax = m;
+ emit maximumYChanged();
}
-QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
+QmlGraphicsMouseAreaPrivate::~QmlGraphicsMouseAreaPrivate()
{
delete drag;
}
/*!
- \qmlclass MouseRegion QmlGraphicsMouseRegion
- \brief The MouseRegion item enables simple mouse handling.
+ \qmlclass MouseArea QmlGraphicsMouseArea
+ \brief The MouseArea item enables simple mouse handling.
\inherits Item
- A MouseRegion is typically used in conjunction with a visible item,
- where the MouseRegion effectively 'proxies' mouse handling for that
- item. For example, we can put a MouseRegion in a Rectangle that changes
+ A MouseArea is typically used in conjunction with a visible item,
+ where the MouseArea effectively 'proxies' mouse handling for that
+ item. For example, we can put a MouseArea in a Rectangle that changes
the Rectangle color to red when clicked:
\snippet doc/src/snippets/declarative/mouseregion.qml 0
- Many MouseRegion signals pass a \l {MouseEvent}{mouse} parameter that contains
+ Many MouseArea signals pass a \l {MouseEvent}{mouse} parameter that contains
additional information about the mouse event, such as the position, button,
and any key modifiers.
@@ -145,25 +163,37 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
For basic key handling, see the \l {Keys}{Keys attached property}.
- MouseRegion is an invisible item: it is never painted.
+ MouseArea is an invisible item: it is never painted.
\sa MouseEvent
*/
/*!
- \qmlsignal MouseRegion::onEntered()
+ \qmlsignal MouseArea::onEntered()
This handler is called when the mouse enters the mouse region.
+
+ By default the onEntered handler is only called while a button is
+ pressed. Setting hoverEnabled to true enables handling of
+ onExited when no mouse button is pressed.
+
+ \sa hoverEnabled
*/
/*!
- \qmlsignal MouseRegion::onExited()
+ \qmlsignal MouseArea::onExited()
This handler is called when the mouse exists the mouse region.
+
+ By default the onExited handler is only called while a button is
+ pressed. Setting hoverEnabled to true enables handling of
+ onExited when no mouse button is pressed.
+
+ \sa hoverEnabled
*/
/*!
- \qmlsignal MouseRegion::onPositionChanged(MouseEvent mouse)
+ \qmlsignal MouseArea::onPositionChanged(MouseEvent mouse)
This handler is called when the mouse position changes.
@@ -171,13 +201,17 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
position, and any buttons currently pressed.
The \e accepted property of the MouseEvent parameter is ignored in this handler.
+
+ By default the onPositionChanged handler is only called while a button is
+ pressed. Setting hoverEnabled to true enables handling of
+ onPositionChanged when no mouse button is pressed.
*/
/*!
- \qmlsignal MouseRegion::onClicked(mouse)
+ \qmlsignal MouseArea::onClicked(mouse)
This handler is called when there is a click. A click is defined as a press followed by a release,
- both inside the MouseRegion (pressing, moving outside the MouseRegion, and then moving back inside and
+ both inside the MouseArea (pressing, moving outside the MouseArea, and then moving back inside and
releasing is also considered a click).
The \l {MouseEvent}{mouse} parameter provides information about the click, including the x and y
@@ -187,21 +221,21 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
*/
/*!
- \qmlsignal MouseRegion::onPressed(mouse)
+ \qmlsignal MouseArea::onPressed(mouse)
This handler is called when there is a press.
The \l {MouseEvent}{mouse} parameter provides information about the press, including the x and y
position and which button was pressed.
- The \e accepted property of the MouseEvent parameter determines whether this MouseRegion
+ The \e accepted property of the MouseEvent parameter determines whether this MouseArea
will handle the press and all future mouse events until release. The default is to accept
- the event and not allow other MouseRegions beneath this one to handle the event. If \e accepted
- is set to false, no further events will be sent to this MouseRegion until the button is next
+ the event and not allow other MouseArea beneath this one to handle the event. If \e accepted
+ is set to false, no further events will be sent to this MouseArea until the button is next
pressed.
*/
/*!
- \qmlsignal MouseRegion::onReleased(mouse)
+ \qmlsignal MouseArea::onReleased(mouse)
This handler is called when there is a release.
The \l {MouseEvent}{mouse} parameter provides information about the click, including the x and y
@@ -211,7 +245,7 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
*/
/*!
- \qmlsignal MouseRegion::onPressAndHold(mouse)
+ \qmlsignal MouseArea::onPressAndHold(mouse)
This handler is called when there is a long press (currently 800ms).
The \l {MouseEvent}{mouse} parameter provides information about the press, including the x and y
@@ -221,7 +255,7 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
*/
/*!
- \qmlsignal MouseRegion::onDoubleClicked(mouse)
+ \qmlsignal MouseArea::onDoubleClicked(mouse)
This handler is called when there is a double-click (a press followed by a release followed by a press).
The \l {MouseEvent}{mouse} parameter provides information about the click, including the x and y
@@ -232,30 +266,30 @@ QmlGraphicsMouseRegionPrivate::~QmlGraphicsMouseRegionPrivate()
/*!
\internal
- \class QmlGraphicsMouseRegion
- \brief The QmlGraphicsMouseRegion class provides a simple mouse handling abstraction for use within Qml.
+ \class QmlGraphicsMouseArea
+ \brief The QmlGraphicsMouseArea class provides a simple mouse handling abstraction for use within Qml.
\ingroup group_coreitems
- All QmlGraphicsItem derived classes can do mouse handling but the QmlGraphicsMouseRegion class exposes mouse
+ All QmlGraphicsItem derived classes can do mouse handling but the QmlGraphicsMouseArea class exposes mouse
handling data as properties and tracks flicking and dragging of the mouse.
- A QmlGraphicsMouseRegion object can be instantiated in Qml using the tag \l MouseRegion.
+ A QmlGraphicsMouseArea object can be instantiated in Qml using the tag \l MouseArea.
*/
-QmlGraphicsMouseRegion::QmlGraphicsMouseRegion(QmlGraphicsItem *parent)
- : QmlGraphicsItem(*(new QmlGraphicsMouseRegionPrivate), parent)
+QmlGraphicsMouseArea::QmlGraphicsMouseArea(QmlGraphicsItem *parent)
+ : QmlGraphicsItem(*(new QmlGraphicsMouseAreaPrivate), parent)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
d->init();
}
-QmlGraphicsMouseRegion::~QmlGraphicsMouseRegion()
+QmlGraphicsMouseArea::~QmlGraphicsMouseArea()
{
}
/*!
- \qmlproperty real MouseRegion::mouseX
- \qmlproperty real MouseRegion::mouseY
+ \qmlproperty real MouseArea::mouseX
+ \qmlproperty real MouseArea::mouseY
These properties hold the coordinates of the mouse.
If the hoverEnabled property is false then these properties will only be valid
@@ -264,44 +298,44 @@ QmlGraphicsMouseRegion::~QmlGraphicsMouseRegion()
If hoverEnabled is true then these properties will be valid:
\list
- \i when no button is pressed, but the mouse is within the MouseRegion (containsMouse is true).
+ \i when no button is pressed, but the mouse is within the MouseArea (containsMouse is true).
\i if a button is pressed and held, even if it has since moved out of the region.
\endlist
- The coordinates are relative to the MouseRegion.
+ The coordinates are relative to the MouseArea.
*/
-qreal QmlGraphicsMouseRegion::mouseX() const
+qreal QmlGraphicsMouseArea::mouseX() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->lastPos.x();
}
-qreal QmlGraphicsMouseRegion::mouseY() const
+qreal QmlGraphicsMouseArea::mouseY() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->lastPos.y();
}
/*!
- \qmlproperty bool MouseRegion::enabled
+ \qmlproperty bool MouseArea::enabled
This property holds whether the item accepts mouse events.
*/
-bool QmlGraphicsMouseRegion::isEnabled() const
+bool QmlGraphicsMouseArea::isEnabled() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->absorb;
}
-void QmlGraphicsMouseRegion::setEnabled(bool a)
+void QmlGraphicsMouseArea::setEnabled(bool a)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (a != d->absorb) {
d->absorb = a;
emit enabledChanged();
}
}
/*!
- \qmlproperty MouseButtons MouseRegion::pressedButtons
+ \qmlproperty MouseButtons MouseArea::pressedButtons
This property holds the mouse buttons currently pressed.
It contains a bitwise combination of:
@@ -317,7 +351,7 @@ void QmlGraphicsMouseRegion::setEnabled(bool a)
text: mr.pressedButtons & Qt.RightButton ? "right" : ""
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
- MouseRegion {
+ MouseArea {
id: mr
acceptedButtons: Qt.LeftButton | Qt.RightButton
anchors.fill: parent
@@ -327,15 +361,15 @@ void QmlGraphicsMouseRegion::setEnabled(bool a)
\sa acceptedButtons
*/
-Qt::MouseButtons QmlGraphicsMouseRegion::pressedButtons() const
+Qt::MouseButtons QmlGraphicsMouseArea::pressedButtons() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->lastButtons;
}
-void QmlGraphicsMouseRegion::mousePressEvent(QGraphicsSceneMouseEvent *event)
+void QmlGraphicsMouseArea::mousePressEvent(QGraphicsSceneMouseEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
d->moved = false;
if (!d->absorb)
QmlGraphicsItem::mousePressEvent(event);
@@ -358,9 +392,9 @@ void QmlGraphicsMouseRegion::mousePressEvent(QGraphicsSceneMouseEvent *event)
}
}
-void QmlGraphicsMouseRegion::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
+void QmlGraphicsMouseArea::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb) {
QmlGraphicsItem::mouseMoveEvent(event);
return;
@@ -428,9 +462,9 @@ void QmlGraphicsMouseRegion::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
}
-void QmlGraphicsMouseRegion::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
+void QmlGraphicsMouseArea::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb) {
QmlGraphicsItem::mouseReleaseEvent(event);
} else {
@@ -443,9 +477,9 @@ void QmlGraphicsMouseRegion::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
}
}
-void QmlGraphicsMouseRegion::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
+void QmlGraphicsMouseArea::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb) {
QmlGraphicsItem::mouseDoubleClickEvent(event);
} else {
@@ -459,18 +493,18 @@ void QmlGraphicsMouseRegion::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *eve
}
}
-void QmlGraphicsMouseRegion::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
+void QmlGraphicsMouseArea::hoverEnterEvent(QGraphicsSceneHoverEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb)
QmlGraphicsItem::hoverEnterEvent(event);
else
setHovered(true);
}
-void QmlGraphicsMouseRegion::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
+void QmlGraphicsMouseArea::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb) {
QmlGraphicsItem::hoverEnterEvent(event);
} else {
@@ -480,20 +514,20 @@ void QmlGraphicsMouseRegion::hoverMoveEvent(QGraphicsSceneHoverEvent *event)
}
}
-void QmlGraphicsMouseRegion::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
+void QmlGraphicsMouseArea::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->absorb)
QmlGraphicsItem::hoverLeaveEvent(event);
else
setHovered(false);
}
-bool QmlGraphicsMouseRegion::sceneEvent(QEvent *event)
+bool QmlGraphicsMouseArea::sceneEvent(QEvent *event)
{
bool rv = QmlGraphicsItem::sceneEvent(event);
if (event->type() == QEvent::UngrabMouse) {
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (d->pressed) {
// if our mouse grab has been removed (probably by Flickable), fix our
// state
@@ -506,9 +540,9 @@ bool QmlGraphicsMouseRegion::sceneEvent(QEvent *event)
return rv;
}
-void QmlGraphicsMouseRegion::timerEvent(QTimerEvent *event)
+void QmlGraphicsMouseArea::timerEvent(QTimerEvent *event)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (event->timerId() == d->pressAndHoldTimer.timerId()) {
d->pressAndHoldTimer.stop();
if (d->pressed && d->dragged == false && d->hovered == true) {
@@ -520,7 +554,7 @@ void QmlGraphicsMouseRegion::timerEvent(QTimerEvent *event)
}
/*!
- \qmlproperty bool MouseRegion::hoverEnabled
+ \qmlproperty bool MouseArea::hoverEnabled
This property holds whether hover events are handled.
By default, mouse events are only handled in response to a button event, or when a button is
@@ -531,31 +565,31 @@ void QmlGraphicsMouseRegion::timerEvent(QTimerEvent *event)
*/
/*!
- \qmlproperty bool MouseRegion::containsMouse
+ \qmlproperty bool MouseArea::containsMouse
This property holds whether the mouse is currently inside the mouse region.
\warning This property is not updated if the region moves under the mouse: \e containsMouse will not change.
In addition, if hoverEnabled is false, containsMouse will only be valid when the mouse is pressed.
*/
-bool QmlGraphicsMouseRegion::hovered() const
+bool QmlGraphicsMouseArea::hovered() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->hovered;
}
/*!
- \qmlproperty bool MouseRegion::pressed
+ \qmlproperty bool MouseArea::pressed
This property holds whether the mouse region is currently pressed.
*/
-bool QmlGraphicsMouseRegion::pressed() const
+bool QmlGraphicsMouseArea::pressed() const
{
- Q_D(const QmlGraphicsMouseRegion);
+ Q_D(const QmlGraphicsMouseArea);
return d->pressed;
}
-void QmlGraphicsMouseRegion::setHovered(bool h)
+void QmlGraphicsMouseArea::setHovered(bool h)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (d->hovered != h) {
d->hovered = h;
emit hoveredChanged();
@@ -564,7 +598,7 @@ void QmlGraphicsMouseRegion::setHovered(bool h)
}
/*!
- \qmlproperty Qt::MouseButtons MouseRegion::acceptedButtons
+ \qmlproperty Qt::MouseButtons MouseArea::acceptedButtons
This property holds the mouse buttons that the mouse region reacts to.
The available buttons are:
@@ -578,17 +612,17 @@ void QmlGraphicsMouseRegion::setHovered(bool h)
"|" (or) operator:
\code
- MouseRegion { acceptedButtons: Qt.LeftButton | Qt.RightButton }
+ MouseArea { acceptedButtons: Qt.LeftButton | Qt.RightButton }
\endcode
The default is to accept the Left button.
*/
-Qt::MouseButtons QmlGraphicsMouseRegion::acceptedButtons() const
+Qt::MouseButtons QmlGraphicsMouseArea::acceptedButtons() const
{
return acceptedMouseButtons();
}
-void QmlGraphicsMouseRegion::setAcceptedButtons(Qt::MouseButtons buttons)
+void QmlGraphicsMouseArea::setAcceptedButtons(Qt::MouseButtons buttons)
{
if (buttons != acceptedMouseButtons()) {
setAcceptedMouseButtons(buttons);
@@ -596,9 +630,9 @@ void QmlGraphicsMouseRegion::setAcceptedButtons(Qt::MouseButtons buttons)
}
}
-bool QmlGraphicsMouseRegion::setPressed(bool p)
+bool QmlGraphicsMouseArea::setPressed(bool p)
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
bool isclick = d->pressed == true && p == false && d->dragged == false && d->hovered == true;
if (d->pressed != p) {
@@ -619,21 +653,21 @@ bool QmlGraphicsMouseRegion::setPressed(bool p)
return false;
}
-QmlGraphicsDrag *QmlGraphicsMouseRegion::drag()
+QmlGraphicsDrag *QmlGraphicsMouseArea::drag()
{
- Q_D(QmlGraphicsMouseRegion);
+ Q_D(QmlGraphicsMouseArea);
if (!d->drag)
d->drag = new QmlGraphicsDrag;
return d->drag;
}
/*!
- \qmlproperty Item MouseRegion::drag.target
- \qmlproperty Axis MouseRegion::drag.axis
- \qmlproperty real MouseRegion::drag.minimumX
- \qmlproperty real MouseRegion::drag.maximumX
- \qmlproperty real MouseRegion::drag.minimumY
- \qmlproperty real MouseRegion::drag.maximumY
+ \qmlproperty Item MouseArea::drag.target
+ \qmlproperty Axis MouseArea::drag.axis
+ \qmlproperty real MouseArea::drag.minimumX
+ \qmlproperty real MouseArea::drag.maximumX
+ \qmlproperty real MouseArea::drag.minimumY
+ \qmlproperty real MouseArea::drag.maximumY
drag provides a convenient way to make an item draggable.
diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h b/src/declarative/graphicsitems/qmlgraphicsmousearea_p.h
index 0ddad1b..2e2f8c9 100644
--- a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsmousearea_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#ifndef QMLGRAPHICSMOUSEREGION_H
-#define QMLGRAPHICSMOUSEREGION_H
+#ifndef QMLGRAPHICSMOUSEAREA_H
+#define QMLGRAPHICSMOUSEAREA_H
#include "qmlgraphicsitem.h"
@@ -55,12 +55,12 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsDrag : public QObject
Q_OBJECT
Q_ENUMS(Axis)
- Q_PROPERTY(QmlGraphicsItem *target READ target WRITE setTarget)
- Q_PROPERTY(Axis axis READ axis WRITE setAxis)
- Q_PROPERTY(qreal minimumX READ xmin WRITE setXmin)
- Q_PROPERTY(qreal maximumX READ xmax WRITE setXmax)
- Q_PROPERTY(qreal minimumY READ ymin WRITE setYmin)
- Q_PROPERTY(qreal maximumY READ ymax WRITE setYmax)
+ Q_PROPERTY(QmlGraphicsItem *target READ target WRITE setTarget NOTIFY targetChanged)
+ Q_PROPERTY(Axis axis READ axis WRITE setAxis NOTIFY axisChanged)
+ Q_PROPERTY(qreal minimumX READ xmin WRITE setXmin NOTIFY minimumXChanged)
+ Q_PROPERTY(qreal maximumX READ xmax WRITE setXmax NOTIFY maximumXChanged)
+ Q_PROPERTY(qreal minimumY READ ymin WRITE setYmin NOTIFY minimumYChanged)
+ Q_PROPERTY(qreal maximumY READ ymax WRITE setYmax NOTIFY maximumYChanged)
//### consider drag and drop
public:
@@ -83,6 +83,14 @@ public:
qreal ymax() const;
void setYmax(qreal);
+Q_SIGNALS:
+ void targetChanged();
+ void axisChanged();
+ void minimumXChanged();
+ void maximumXChanged();
+ void minimumYChanged();
+ void maximumYChanged();
+
private:
QmlGraphicsItem *_target;
Axis _axis;
@@ -94,8 +102,8 @@ private:
};
class QmlGraphicsMouseEvent;
-class QmlGraphicsMouseRegionPrivate;
-class Q_DECLARATIVE_EXPORT QmlGraphicsMouseRegion : public QmlGraphicsItem
+class QmlGraphicsMouseAreaPrivate;
+class Q_DECLARATIVE_EXPORT QmlGraphicsMouseArea : public QmlGraphicsItem
{
Q_OBJECT
@@ -107,11 +115,11 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsMouseRegion : public QmlGraphicsItem
Q_PROPERTY(Qt::MouseButtons pressedButtons READ pressedButtons NOTIFY pressedChanged)
Q_PROPERTY(Qt::MouseButtons acceptedButtons READ acceptedButtons WRITE setAcceptedButtons NOTIFY acceptedButtonsChanged)
Q_PROPERTY(bool hoverEnabled READ acceptHoverEvents WRITE setAcceptHoverEvents)
- Q_PROPERTY(QmlGraphicsDrag *drag READ drag) //### add flicking to QmlGraphicsDrag or add a QmlGraphicsFlick ???
+ Q_PROPERTY(QmlGraphicsDrag *drag READ drag CONSTANT) //### add flicking to QmlGraphicsDrag or add a QmlGraphicsFlick ???
public:
- QmlGraphicsMouseRegion(QmlGraphicsItem *parent=0);
- ~QmlGraphicsMouseRegion();
+ QmlGraphicsMouseArea(QmlGraphicsItem *parent=0);
+ ~QmlGraphicsMouseArea();
qreal mouseX() const;
qreal mouseY() const;
@@ -163,15 +171,15 @@ private:
void handleRelease();
private:
- Q_DISABLE_COPY(QmlGraphicsMouseRegion)
- Q_DECLARE_PRIVATE_D(QGraphicsItem::d_ptr.data(), QmlGraphicsMouseRegion)
+ Q_DISABLE_COPY(QmlGraphicsMouseArea)
+ Q_DECLARE_PRIVATE_D(QGraphicsItem::d_ptr.data(), QmlGraphicsMouseArea)
};
QT_END_NAMESPACE
QML_DECLARE_TYPE(QmlGraphicsDrag)
-QML_DECLARE_TYPE(QmlGraphicsMouseRegion)
+QML_DECLARE_TYPE(QmlGraphicsMouseArea)
QT_END_HEADER
-#endif // QMLGRAPHICSMOUSEREGION_H
+#endif // QMLGRAPHICSMOUSEAREA_H
diff --git a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h b/src/declarative/graphicsitems/qmlgraphicsmousearea_p_p.h
index 0f1b0d4..fadb430 100644
--- a/src/declarative/graphicsitems/qmlgraphicsmouseregion_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsmousearea_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -61,21 +61,21 @@
QT_BEGIN_NAMESPACE
-class QmlGraphicsMouseRegionPrivate : public QmlGraphicsItemPrivate
+class QmlGraphicsMouseAreaPrivate : public QmlGraphicsItemPrivate
{
- Q_DECLARE_PUBLIC(QmlGraphicsMouseRegion)
+ Q_DECLARE_PUBLIC(QmlGraphicsMouseArea)
public:
- QmlGraphicsMouseRegionPrivate()
+ QmlGraphicsMouseAreaPrivate()
: absorb(true), hovered(false), pressed(false), longPress(false), drag(0)
{
}
- ~QmlGraphicsMouseRegionPrivate();
+ ~QmlGraphicsMouseAreaPrivate();
void init()
{
- Q_Q(QmlGraphicsMouseRegion);
+ Q_Q(QmlGraphicsMouseArea);
q->setAcceptedMouseButtons(Qt::LeftButton);
}
@@ -87,7 +87,7 @@ public:
}
bool isConnected(const char *signal) {
- Q_Q(QmlGraphicsMouseRegion);
+ Q_Q(QmlGraphicsMouseArea);
int idx = QObjectPrivate::get(q)->signalIndex(signal);
return QObjectPrivate::get(q)->isSignalConnected(idx);
}
diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp b/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp
index e50e3e4..3daa0c6 100644
--- a/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicspainteditem.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h b/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h
index ab21f36..f2f9be0 100644
--- a/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspainteditem_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h b/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h
index 6bcc51a..7d49914 100644
--- a/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspainteditem_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp
index 5edd59e..08fce74 100644
--- a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -635,7 +635,7 @@ QmlGraphicsParticles::~QmlGraphicsParticles()
}
/*!
- \qmlproperty string Particles::src
+ \qmlproperty string Particles::source
This property holds the URL of the particle image.
*/
diff --git a/src/declarative/graphicsitems/qmlgraphicsparticles_p.h b/src/declarative/graphicsitems/qmlgraphicsparticles_p.h
index c34d55b..7f0f9cd 100644
--- a/src/declarative/graphicsitems/qmlgraphicsparticles_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsparticles_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspath.cpp b/src/declarative/graphicsitems/qmlgraphicspath.cpp
index eaf0d88..4e4459d 100644
--- a/src/declarative/graphicsitems/qmlgraphicspath.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicspath.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspath_p.h b/src/declarative/graphicsitems/qmlgraphicspath_p.h
index 50ea15b..7ba5bbc 100644
--- a/src/declarative/graphicsitems/qmlgraphicspath_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspath_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspath_p_p.h b/src/declarative/graphicsitems/qmlgraphicspath_p_p.h
index 04342a8..acff7c8 100644
--- a/src/declarative/graphicsitems/qmlgraphicspath_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspath_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspathview.cpp b/src/declarative/graphicsitems/qmlgraphicspathview.cpp
index a1c9229..aba184d 100644
--- a/src/declarative/graphicsitems/qmlgraphicspathview.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicspathview.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -524,7 +524,7 @@ void QmlGraphicsPathView::mouseReleaseEvent(QGraphicsSceneMouseEvent *)
qreal dist = qAbs(velocity/2 - qmlMod(velocity/2, qreal(100.0 / d->model->count()) - inc));
d->moveOffset.setValue(d->_offset);
d->tl.accel(d->moveOffset, velocity, 10, dist);
- d->tl.execute(d->fixupOffsetEvent);
+ d->tl.callback(QmlTimeLineCallback(&d->moveOffset, d->fixOffsetCallback, d));
} else {
d->fixOffset();
}
@@ -886,6 +886,11 @@ void QmlGraphicsPathViewPrivate::updateCurrent()
}
}
+void QmlGraphicsPathViewPrivate::fixOffsetCallback(void *d)
+{
+ ((QmlGraphicsPathViewPrivate *)d)->fixOffset();
+}
+
void QmlGraphicsPathViewPrivate::fixOffset()
{
Q_Q(QmlGraphicsPathView);
@@ -938,7 +943,7 @@ void QmlGraphicsPathViewPrivate::snapToCurrent()
rounds++;
tl.move(moveOffset, targetOffset + 100.0*(-rounds), QEasingCurve(QEasingCurve::InOutQuad),
int(100*items.count()*qMax((qreal)(2.0/items.count()),(qreal)qAbs(rounds))));
- tl.execute(fixupOffsetEvent);
+ tl.callback(QmlTimeLineCallback(&moveOffset, fixOffsetCallback, this));
return;
}
diff --git a/src/declarative/graphicsitems/qmlgraphicspathview_p.h b/src/declarative/graphicsitems/qmlgraphicspathview_p.h
index 17106a2..8273ccc 100644
--- a/src/declarative/graphicsitems/qmlgraphicspathview_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspathview_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h b/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h
index 18cb205..c635833 100644
--- a/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspathview_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -82,7 +82,6 @@ public:
, firstIndex(0), pathItems(-1), pathOffset(0), requestedIndex(-1)
, moveReason(Other)
{
- fixupOffsetEvent = QmlTimeLineEvent::timeLineEvent<QmlGraphicsPathViewPrivate, &QmlGraphicsPathViewPrivate::fixOffset>(&moveOffset, this);
}
void init()
@@ -104,6 +103,7 @@ public:
int calcCurrentIndex();
void updateCurrent();
+ static void fixOffsetCallback(void*);
void fixOffset();
void setOffset(qreal offset);
void regenerate();
@@ -127,7 +127,6 @@ public:
qreal dragMargin;
QmlTimeLine tl;
QmlTimeLineValueProxy<QmlGraphicsPathViewPrivate> moveOffset;
- QmlTimeLineEvent fixupOffsetEvent;
int firstIndex;
int pathItems;
int pathOffset;
diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
index 142cdce..8adf239 100644
--- a/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicspositioners.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -361,7 +361,7 @@ Column {
Column {
move: Transition {
NumberAnimation {
- matchProperties: "y"
+ properties: "y"
ease: "easeOutBounce"
}
}
@@ -470,7 +470,7 @@ Row {
id: positioner
move: Transition {
NumberAnimation {
- matchProperties: "x"
+ properties: "x"
ease: "easeOutBounce"
}
}
@@ -592,7 +592,7 @@ Grid {
Grid {
move: Transition {
NumberAnimation {
- matchProperties: "x,y"
+ properties: "x,y"
ease: "easeOutBounce"
}
}
@@ -737,7 +737,7 @@ Flow {
id: positioner
move: Transition {
NumberAnimation {
- matchProperties: "x,y"
+ properties: "x,y"
ease: "easeOutBounce"
}
}
diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners_p.h b/src/declarative/graphicsitems/qmlgraphicspositioners_p.h
index d6711f6..1fb687a 100644
--- a/src/declarative/graphicsitems/qmlgraphicspositioners_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspositioners_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h b/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h
index 55a31c7..e9b6aa8 100644
--- a/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicspositioners_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsrectangle.cpp b/src/declarative/graphicsitems/qmlgraphicsrectangle.cpp
index ec44d93..f357ed0 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrectangle.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsrectangle.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h b/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h
index b8c2179..66552f6 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsrectangle_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsrectangle_p_p.h b/src/declarative/graphicsitems/qmlgraphicsrectangle_p_p.h
index c4bbbe4..f91e7e2 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrectangle_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsrectangle_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp b/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp
index f0e5bb3..fc78ef8 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsrepeater.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -157,6 +157,9 @@ QVariant QmlGraphicsRepeater::model() const
void QmlGraphicsRepeater::setModel(const QVariant &model)
{
Q_D(QmlGraphicsRepeater);
+ if (d->dataSource == model)
+ return;
+
clear();
if (d->model) {
disconnect(d->model, SIGNAL(itemsInserted(int,int)), this, SLOT(itemsInserted(int,int)));
@@ -168,6 +171,7 @@ void QmlGraphicsRepeater::setModel(const QVariant &model)
*/
}
d->dataSource = model;
+ emit modelChanged();
QObject *object = qvariant_cast<QObject*>(model);
QmlGraphicsVisualModel *vim = 0;
if (object && (vim = qobject_cast<QmlGraphicsVisualModel *>(object))) {
@@ -219,6 +223,10 @@ QmlComponent *QmlGraphicsRepeater::delegate() const
void QmlGraphicsRepeater::setDelegate(QmlComponent *delegate)
{
Q_D(QmlGraphicsRepeater);
+ if (QmlGraphicsVisualDataModel *dataModel = qobject_cast<QmlGraphicsVisualDataModel*>(d->model))
+ if (delegate == dataModel->delegate())
+ return;
+
if (!d->ownModel) {
d->model = new QmlGraphicsVisualDataModel(qmlContext(this));
d->ownModel = true;
@@ -226,6 +234,7 @@ void QmlGraphicsRepeater::setDelegate(QmlComponent *delegate)
if (QmlGraphicsVisualDataModel *dataModel = qobject_cast<QmlGraphicsVisualDataModel*>(d->model)) {
dataModel->setDelegate(delegate);
regenerate();
+ emit delegateChanged();
}
}
diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h b/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h
index 61f82d7..2324916 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsrepeater_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -55,8 +55,8 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsRepeater : public QmlGraphicsItem
{
Q_OBJECT
- Q_PROPERTY(QVariant model READ model WRITE setModel)
- Q_PROPERTY(QmlComponent *delegate READ delegate WRITE setDelegate)
+ Q_PROPERTY(QVariant model READ model WRITE setModel NOTIFY modelChanged)
+ Q_PROPERTY(QmlComponent *delegate READ delegate WRITE setDelegate NOTIFY delegateChanged)
Q_PROPERTY(int count READ count NOTIFY countChanged)
Q_CLASSINFO("DefaultProperty", "delegate")
@@ -73,8 +73,9 @@ public:
int count() const;
Q_SIGNALS:
+ void modelChanged();
+ void delegateChanged();
void countChanged();
-
private:
void clear();
void regenerate();
diff --git a/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h b/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h
index e6d7bfd..5680288 100644
--- a/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsrepeater_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp b/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp
index 94b562b..1956939 100644
--- a/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsscalegrid.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h b/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h
index 88938a7..650be62 100644
--- a/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsscalegrid_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstext.cpp b/src/declarative/graphicsitems/qmlgraphicstext.cpp
index 89081eb..409fa3a 100644
--- a/src/declarative/graphicsitems/qmlgraphicstext.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicstext.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -554,6 +554,7 @@ void QmlGraphicsTextPrivate::updateSize()
else
doc->setTextWidth(doc->idealWidth()); // ### Text does not align if width is not set (QTextDoc bug)
dy -= (int)doc->size().height();
+ cachedLayoutSize = doc->size().toSize();
}
int yoff = 0;
@@ -769,7 +770,7 @@ void QmlGraphicsText::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidg
{
Q_D(QmlGraphicsText);
- if (d->cache || d->richText || d->style != Normal) {
+ if (d->cache || d->style != Normal) {
d->checkImgCache();
if (d->imgCache.isNull())
return;
@@ -846,7 +847,15 @@ void QmlGraphicsText::paint(QPainter *p, const QStyleOptionGraphicsItem *, QWidg
p->save();
p->setClipRect(boundingRect(), Qt::IntersectClip);
}
- d->drawWrappedText(p, QPointF(0,y), false);
+ if (d->richText) {
+ QAbstractTextDocumentLayout::PaintContext context;
+ context.palette.setColor(QPalette::Text, d->color);
+ p->translate(0, y);
+ d->doc->documentLayout()->draw(p, context);
+ p->translate(0, -y);
+ } else {
+ d->drawWrappedText(p, QPointF(0,y), false);
+ }
if (needClip)
p->restore();
}
diff --git a/src/declarative/graphicsitems/qmlgraphicstext_p.h b/src/declarative/graphicsitems/qmlgraphicstext_p.h
index 8fa2e65..ad35524 100644
--- a/src/declarative/graphicsitems/qmlgraphicstext_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstext_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstext_p_p.h b/src/declarative/graphicsitems/qmlgraphicstext_p_p.h
index 1e29e58..f67d57c 100644
--- a/src/declarative/graphicsitems/qmlgraphicstext_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstext_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -75,7 +75,7 @@ public:
dirty(true), wrap(false), richText(false), singleline(false), cache(true), doc(0),
format(QmlGraphicsText::AutoText)
{
-#ifdef QML_NO_TEXT_CACHE
+#if defined(QML_NO_TEXT_CACHE)
cache = false;
#endif
}
diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit.cpp b/src/declarative/graphicsitems/qmlgraphicstextedit.cpp
index 00f7e42..3dadbe0 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextedit.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicstextedit.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit_p.h b/src/declarative/graphicsitems/qmlgraphicstextedit_p.h
index e95b077..337cd9d 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextedit_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstextedit_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h b/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h
index 8914bfd..7d4ca88 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstextedit_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput.cpp b/src/declarative/graphicsitems/qmlgraphicstextinput.cpp
index 6d9b7b1..6b4407f 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextinput.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicstextinput.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput_p.h b/src/declarative/graphicsitems/qmlgraphicstextinput_p.h
index a91e71a..2b37b78 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextinput_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstextinput_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h b/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h
index 9eb6e07..694ec93 100644
--- a/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicstextinput_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
diff --git a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp
index d14fc84..9216793 100644
--- a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -71,16 +71,14 @@ class QmlGraphicsVisualItemModelPrivate : public QObjectPrivate
{
Q_DECLARE_PUBLIC(QmlGraphicsVisualItemModel)
public:
- QmlGraphicsVisualItemModelPrivate() : QObjectPrivate(), children(this) {}
+ QmlGraphicsVisualItemModelPrivate() : QObjectPrivate() {}
- struct ItemList : public QmlConcreteList<QmlGraphicsItem *>
- {
- ItemList(QmlGraphicsVisualItemModelPrivate *m) : QmlConcreteList<QmlGraphicsItem *>(), model(m) {}
-
- void append(QmlGraphicsItem *item);
-
- QmlGraphicsVisualItemModelPrivate *model;
- };
+ static void children_append(QmlListProperty<QmlGraphicsItem> *prop, QmlGraphicsItem *item) {
+ item->QObject::setParent(prop->object);
+ static_cast<QmlGraphicsVisualItemModelPrivate *>(prop->data)->children.append(item);
+ static_cast<QmlGraphicsVisualItemModelPrivate *>(prop->data)->itemAppended();
+ static_cast<QmlGraphicsVisualItemModelPrivate *>(prop->data)->emitChildrenChanged();
+ }
void itemAppended() {
Q_Q(QmlGraphicsVisualItemModel);
@@ -94,7 +92,8 @@ public:
Q_Q(QmlGraphicsVisualItemModel);
emit q->childrenChanged();
}
- ItemList children;
+
+ QList<QmlGraphicsItem *> children;
};
@@ -132,10 +131,10 @@ QmlGraphicsVisualItemModel::QmlGraphicsVisualItemModel()
{
}
-QmlList<QmlGraphicsItem *> *QmlGraphicsVisualItemModel::children()
+QmlListProperty<QmlGraphicsItem> QmlGraphicsVisualItemModel::children()
{
Q_D(QmlGraphicsVisualItemModel);
- return &(d->children);
+ return QmlListProperty<QmlGraphicsItem>(this, d, QmlGraphicsVisualItemModelPrivate::children_append);
}
/*!
@@ -200,15 +199,6 @@ int QmlGraphicsVisualItemModel::indexOf(QmlGraphicsItem *item, QObject *) const
return d->children.indexOf(item);
}
-void QmlGraphicsVisualItemModelPrivate::ItemList::append(QmlGraphicsItem *item)
-{
- QmlConcreteList<QmlGraphicsItem*>::append(item);
- item->QObject::setParent(model->q_ptr);
- model->itemAppended();
-
- model->emitChildrenChanged();
-}
-
QmlGraphicsVisualItemModelAttached *QmlGraphicsVisualItemModel::qmlAttachedProperties(QObject *obj)
{
return QmlGraphicsVisualItemModelAttached::properties(obj);
@@ -422,11 +412,10 @@ int QmlGraphicsVisualDataModelDataMetaObject::createProperty(const char *name, c
QmlGraphicsVisualDataModelPrivate *model = QmlGraphicsVisualDataModelPrivate::get(data->m_model);
if ((!model->m_listModelInterface || !model->m_abstractItemModel) && model->m_listAccessor) {
- if (model->m_listAccessor->type() == QmlListAccessor::QmlList
- || model->m_listAccessor->type() == QmlListAccessor::ListProperty) {
+ if (model->m_listAccessor->type() == QmlListAccessor::ListProperty) {
model->ensureRoles();
QObject *object = model->m_listAccessor->at(data->m_index).value<QObject*>();
- if (object && object->property(name).isValid())
+ if (object && (object->property(name).isValid() || qstrcmp(name,"modelData")==0))
return QmlOpenMetaObject::createProperty(name, type);
}
}
@@ -685,7 +674,7 @@ void QmlGraphicsVisualDataModel::setModel(const QVariant &model)
}
d->m_listAccessor = new QmlListAccessor;
d->m_listAccessor->setList(model, d->m_context?d->m_context->engine():qmlEngine(this));
- if (d->m_listAccessor->type() != QmlListAccessor::QmlList && d->m_listAccessor->type() != QmlListAccessor::ListProperty)
+ if (d->m_listAccessor->type() != QmlListAccessor::ListProperty)
d->m_metaDataCacheable = true;
if (d->m_delegate && d->modelCount()) {
emit itemsInserted(0, d->modelCount());
diff --git a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h
index 9ebf626..49f9b27 100644
--- a/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicsvisualitemmodel_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -109,7 +109,7 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsVisualItemModel : public QmlGraphicsVisual
Q_OBJECT
Q_DECLARE_PRIVATE(QmlGraphicsVisualItemModel)
- Q_PROPERTY(QmlList<QmlGraphicsItem *>* children READ children NOTIFY childrenChanged DESIGNABLE false)
+ Q_PROPERTY(QmlListProperty<QmlGraphicsItem> children READ children NOTIFY childrenChanged DESIGNABLE false)
Q_CLASSINFO("DefaultProperty", "children")
public:
@@ -126,7 +126,7 @@ public:
virtual int indexOf(QmlGraphicsItem *item, QObject *objectContext) const;
- QmlList<QmlGraphicsItem *> *children();
+ QmlListProperty<QmlGraphicsItem> children();
static QmlGraphicsVisualItemModelAttached *qmlAttachedProperties(QObject *obj);
diff --git a/src/declarative/graphicsitems/qmlgraphicswebview.cpp b/src/declarative/graphicsitems/qmlgraphicswebview.cpp
index 533df2a..0c21f75 100644
--- a/src/declarative/graphicsitems/qmlgraphicswebview.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicswebview.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -77,7 +77,6 @@ public:
progress(1.0), status(QmlGraphicsWebView::Null), pending(PendingNone),
newWindowComponent(0), newWindowParent(0),
pressTime(400),
- windowObjects(this),
rendering(true)
{
}
@@ -101,19 +100,14 @@ public:
QPoint pressPoint;
int pressTime; // milliseconds before it's a "hold"
+
+ static void windowObjects_append(QmlListProperty<QObject> *prop, QObject *o) {
+ static_cast<QmlGraphicsWebViewPrivate *>(prop->data)->windowObjects.append(o);
+ static_cast<QmlGraphicsWebViewPrivate *>(prop->data)->updateWindowObjects();
+ }
+
void updateWindowObjects();
- class WindowObjectList : public QmlConcreteList<QObject *>
- {
- public:
- WindowObjectList(QmlGraphicsWebViewPrivate *p)
- : priv(p) {}
- virtual void append(QObject *v) {
- QmlConcreteList<QObject *>::append(v);
- priv->updateWindowObjects();
- }
- private:
- QmlGraphicsWebViewPrivate *priv;
- } windowObjects;
+ QObjectList windowObjects;
bool rendering;
};
@@ -451,10 +445,10 @@ void QmlGraphicsWebView::paintPage(const QRect& r)
If Javascript is not enabled for this page, then this property does nothing.
*/
-QmlList<QObject *> *QmlGraphicsWebView::javaScriptWindowObjects()
+QmlListProperty<QObject> QmlGraphicsWebView::javaScriptWindowObjects()
{
Q_D(QmlGraphicsWebView);
- return &d->windowObjects;
+ return QmlListProperty<QObject>(this, d, &QmlGraphicsWebViewPrivate::windowObjects_append);
}
QmlGraphicsWebViewAttached *QmlGraphicsWebView::qmlAttachedProperties(QObject *o)
diff --git a/src/declarative/graphicsitems/qmlgraphicswebview_p.h b/src/declarative/graphicsitems/qmlgraphicswebview_p.h
index 0aaf895..30ba0e4 100644
--- a/src/declarative/graphicsitems/qmlgraphicswebview_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicswebview_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
@@ -114,7 +114,7 @@ class Q_DECLARATIVE_EXPORT QmlGraphicsWebView : public QmlGraphicsPaintedItem
Q_PROPERTY(QmlGraphicsWebSettings* settings READ settingsObject CONSTANT)
- Q_PROPERTY(QmlList<QObject *>* javaScriptWindowObjects READ javaScriptWindowObjects CONSTANT)
+ Q_PROPERTY(QmlListProperty<QObject> javaScriptWindowObjects READ javaScriptWindowObjects CONSTANT)
Q_PROPERTY(QmlComponent* newWindowComponent READ newWindowComponent WRITE setNewWindowComponent)
Q_PROPERTY(QmlGraphicsItem* newWindowParent READ newWindowParent WRITE setNewWindowParent)
@@ -174,7 +174,7 @@ public:
bool renderingEnabled() const;
void setRenderingEnabled(bool);
- QmlList<QObject *> *javaScriptWindowObjects();
+ QmlListProperty<QObject> javaScriptWindowObjects();
static QmlGraphicsWebViewAttached *qmlAttachedProperties(QObject *);
diff --git a/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h b/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h
index 5659059..e132cae 100644
--- a/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h
+++ b/src/declarative/graphicsitems/qmlgraphicswebview_p_p.h
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**