diff options
Diffstat (limited to 'src/qtquick1/graphicsitems')
19 files changed, 99 insertions, 77 deletions
diff --git a/src/qtquick1/graphicsitems/qdeclarativeanimatedimage.cpp b/src/qtquick1/graphicsitems/qdeclarativeanimatedimage.cpp index b1866e419b..a133bd4e68 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeanimatedimage.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeanimatedimage.cpp @@ -86,7 +86,7 @@ QT_BEGIN_NAMESPACE \bold Note: Unlike images, animated images are not cached or shared internally. \clearfloat - \snippet doc/src/snippets/declarative/animatedimage.qml document + \snippet doc/src/snippets/qtquick1/animatedimage.qml document \sa BorderImage, Image */ diff --git a/src/qtquick1/graphicsitems/qdeclarativeborderimage.cpp b/src/qtquick1/graphicsitems/qdeclarativeborderimage.cpp index 8db733ba2e..1beef966f0 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeborderimage.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeborderimage.cpp @@ -102,7 +102,7 @@ QT_BEGIN_NAMESPACE used to determine the parts of the image that will lie inside the unscaled corner areas and the parts that will be stretched horizontally and vertically. - \snippet doc/src/snippets/declarative/borderimage/normal-image.qml normal image + \snippet doc/src/snippets/qtquick1/borderimage/normal-image.qml normal image \clearfloat \beginfloatleft @@ -116,7 +116,7 @@ QT_BEGIN_NAMESPACE is set to \l{BorderImage::verticalTileMode}{BorderImage.Stretch}, the parts of image in regions 4 and 6 are stretched vertically. - \snippet doc/src/snippets/declarative/borderimage/borderimage-scaled.qml scaled border image + \snippet doc/src/snippets/qtquick1/borderimage/borderimage-scaled.qml scaled border image \clearfloat \beginfloatleft @@ -130,7 +130,7 @@ QT_BEGIN_NAMESPACE \l{BorderImage::verticalTileMode}{BorderImage.Repeat}, the parts of image in regions 4 and 6 are tiled so that they fill the space at the left and right of the element. - \snippet doc/src/snippets/declarative/borderimage/borderimage-tiled.qml tiled border image + \snippet doc/src/snippets/qtquick1/borderimage/borderimage-tiled.qml tiled border image \clearfloat In some situations, the width of regions 2 and 8 may not be an exact multiple of the width diff --git a/src/qtquick1/graphicsitems/qdeclarativeflickable.cpp b/src/qtquick1/graphicsitems/qdeclarativeflickable.cpp index 04e926ac46..f145312334 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeflickable.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeflickable.cpp @@ -462,7 +462,7 @@ void QDeclarative1FlickablePrivate::updateBeginningEnd() The following example shows a small view onto a large image in which the user can drag or flick the image in order to view different parts of it. - \snippet doc/src/snippets/declarative/flickable.qml document + \snippet doc/src/snippets/qtquick1/flickable.qml document \clearfloat @@ -524,9 +524,9 @@ void QDeclarative1FlickablePrivate::updateBeginningEnd() These properties are typically used to draw a scrollbar. For example: - \snippet doc/src/snippets/declarative/flickableScrollbar.qml 0 + \snippet doc/src/snippets/qtquick1/flickableScrollbar.qml 0 \dots 8 - \snippet doc/src/snippets/declarative/flickableScrollbar.qml 1 + \snippet doc/src/snippets/qtquick1/flickableScrollbar.qml 1 \sa {declarative/ui-components/scrollbar}{scrollbar example} */ @@ -1331,7 +1331,7 @@ void QDeclarative1Flickable::setBoundsBehavior(BoundsBehavior b) The following snippet shows how these properties are used to display an image that is larger than the Flickable item itself: - \snippet doc/src/snippets/declarative/flickable.qml document + \snippet doc/src/snippets/qtquick1/flickable.qml document In some cases, the the content dimensions can be automatically set using the \l {Item::childrenRect.width}{childrenRect.width} @@ -1566,6 +1566,7 @@ bool QDeclarative1Flickable::sendMouseEvent(QGraphicsSceneMouseEvent *event) return stealThisEvent || d->delayedPressEvent || disabledItem; } else if (d->lastPosTime.isValid()) { d->lastPosTime.invalidate(); + returnToBounds(); } if (mouseEvent.type() == QEvent::GraphicsSceneMouseRelease) { d->clearDelayedPress(); diff --git a/src/qtquick1/graphicsitems/qdeclarativeflipable.cpp b/src/qtquick1/graphicsitems/qdeclarativeflipable.cpp index 789cadafb4..e9c23b4dfd 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeflipable.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeflipable.cpp @@ -96,7 +96,7 @@ public: degrees to produce the flipping effect. When \c flipped is false, the item reverts to the default state, in which the \c angle value is 0. - \snippet doc/src/snippets/declarative/flipable/flipable.qml 0 + \snippet doc/src/snippets/qtquick1/flipable/flipable.qml 0 \image flipable.gif diff --git a/src/qtquick1/graphicsitems/qdeclarativegridview.cpp b/src/qtquick1/graphicsitems/qdeclarativegridview.cpp index 63b907b022..f2511a15c9 100644 --- a/src/qtquick1/graphicsitems/qdeclarativegridview.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativegridview.cpp @@ -1269,7 +1269,7 @@ void QDeclarative1GridViewPrivate::flick(AxisData &data, qreal minExtent, qreal The following example shows the definition of a simple list model defined in a file called \c ContactModel.qml: - \snippet doc/src/snippets/declarative/gridview/ContactModel.qml 0 + \snippet doc/src/snippets/qtquick1/gridview/ContactModel.qml 0 \div {class="float-right"} \inlineimage gridview-simple.png @@ -1283,9 +1283,9 @@ void QDeclarative1GridViewPrivate::flick(AxisData &data, qreal minExtent, qreal (containing \l Image and \l Text elements) for its delegate. \clearfloat - \snippet doc/src/snippets/declarative/gridview/gridview.qml import + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml import \codeline - \snippet doc/src/snippets/declarative/gridview/gridview.qml classdocs simple + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml classdocs simple \div {class="float-right"} \inlineimage gridview-highlight.png @@ -1298,7 +1298,7 @@ void QDeclarative1GridViewPrivate::flick(AxisData &data, qreal minExtent, qreal into a separate \c contactDelegate component. \clearfloat - \snippet doc/src/snippets/declarative/gridview/gridview.qml classdocs advanced + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml classdocs advanced The currently selected item is highlighted with a blue \l Rectangle using the \l highlight property, and \c focus is set to \c true to enable keyboard navigation for the grid view. @@ -1312,7 +1312,7 @@ void QDeclarative1GridViewPrivate::flick(AxisData &data, qreal minExtent, qreal this attached property directly as \c GridView.isCurrentItem, while the child \c contactInfo object must refer to this property as \c wrapper.GridView.isCurrentItem. - \snippet doc/src/snippets/declarative/gridview/gridview.qml isCurrentItem + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml isCurrentItem \note Views do not set the \l{Item::}{clip} property automatically. If the view is not clipped by another item or the screen, it will be necessary @@ -1351,7 +1351,7 @@ QDeclarative1GridView::~QDeclarative1GridView() It is attached to each instance of the delegate. - \snippet doc/src/snippets/declarative/gridview/gridview.qml isCurrentItem + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml isCurrentItem */ /*! @@ -1366,7 +1366,7 @@ QDeclarative1GridView::~QDeclarative1GridView() The example below ensures that the animation completes before the item is removed from the grid. - \snippet doc/src/snippets/declarative/gridview/gridview.qml delayRemove + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml delayRemove */ /*! @@ -1640,7 +1640,7 @@ void QDeclarative1GridView::setHighlight(QDeclarativeComponent *highlight) Here is a highlight with its motion defined by a \l {SpringAnimation} item: - \snippet doc/src/snippets/declarative/gridview/gridview.qml highlightFollowsCurrentItem + \snippet doc/src/snippets/qtquick1/gridview/gridview.qml highlightFollowsCurrentItem */ bool QDeclarative1GridView::highlightFollowsCurrentItem() const { @@ -2748,7 +2748,7 @@ void QDeclarative1GridView::trackedPositionChanged() void QDeclarative1GridView::itemsInserted(int modelIndex, int count) { Q_D(QDeclarative1GridView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->model || !d->model->isValid()) return; int index = d->visibleItems.count() ? d->mapFromModel(modelIndex) : 0; @@ -2879,7 +2879,7 @@ void QDeclarative1GridView::itemsInserted(int modelIndex, int count) void QDeclarative1GridView::itemsRemoved(int modelIndex, int count) { Q_D(QDeclarative1GridView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->model || !d->model->isValid()) return; d->itemCount -= count; @@ -2979,7 +2979,7 @@ void QDeclarative1GridView::destroyRemoved() void QDeclarative1GridView::itemsMoved(int from, int to, int count) { Q_D(QDeclarative1GridView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->isValid()) return; QHash<int,FxGridItem1*> moved; diff --git a/src/qtquick1/graphicsitems/qdeclarativeimage.cpp b/src/qtquick1/graphicsitems/qdeclarativeimage.cpp index 4e2cd10218..bc301ddf6c 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeimage.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeimage.cpp @@ -76,7 +76,7 @@ QT_BEGIN_NAMESPACE The following example shows the simplest usage of the Image element. - \snippet doc/src/snippets/declarative/image.qml document + \snippet doc/src/snippets/qtquick1/image.qml document \beginfloatleft \image declarative-qtlogo.png diff --git a/src/qtquick1/graphicsitems/qdeclarativeitem.cpp b/src/qtquick1/graphicsitems/qdeclarativeitem.cpp index 20b4c11f5b..b32898fe38 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeitem.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeitem.cpp @@ -201,7 +201,7 @@ QT_BEGIN_NAMESPACE rotations you must specify the axis to rotate around in addition to the origin point. The following example shows various 3D-like rotations applied to an \l Image. - \snippet doc/src/snippets/declarative/rotation.qml 0 + \snippet doc/src/snippets/qtquick1/rotation.qml 0 \image axisrotation.png @@ -434,7 +434,7 @@ void QDeclarativeItemKeyFilter::componentComplete() The following example provides key navigation for a 2x2 grid of items: - \snippet doc/src/snippets/declarative/keynavigation.qml 0 + \snippet doc/src/snippets/qtquick1/keynavigation.qml 0 The top-left item initially receives focus by setting \l {Item::}{focus} to \c true. When an arrow key is pressed, the focus will move to the @@ -821,7 +821,7 @@ void QDeclarative1KeyNavigationAttached::setFocusNavigation(QDeclarativeItem *cu from left to right by default, they are now positioned from right to left instead, as demonstrated by the numbering and opacity of the items: - \snippet doc/src/snippets/declarative/layoutmirroring.qml 0 + \snippet doc/src/snippets/qtquick1/layoutmirroring.qml 0 \image layoutmirroring.png @@ -985,13 +985,13 @@ void QDeclarativeItemPrivate::setLayoutMirror(bool mirror) be used to test for a certain key; in this case, the left cursor key: - \snippet doc/src/snippets/declarative/keys/keys-pressed.qml key item + \snippet doc/src/snippets/qtquick1/keys/keys-pressed.qml key item Some keys may alternatively be handled via specific signal properties, for example \e onSelectPressed. These handlers automatically set \e event.accepted to true. - \snippet doc/src/snippets/declarative/keys/keys-handler.qml key item + \snippet doc/src/snippets/qtquick1/keys/keys-handler.qml key item See \l{Qt::Key}{Qt.Key} for the list of keyboard codes. diff --git a/src/qtquick1/graphicsitems/qdeclarativelistview.cpp b/src/qtquick1/graphicsitems/qdeclarativelistview.cpp index c58543c735..5119c0e1fb 100644 --- a/src/qtquick1/graphicsitems/qdeclarativelistview.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativelistview.cpp @@ -446,6 +446,7 @@ public: FxListItem1 *snapItemAt(qreal pos) { FxListItem1 *snapItem = 0; + qreal prevItemSize = 0; for (int i = 0; i < visibleItems.count(); ++i) { FxListItem1 *item = visibleItems[i]; if (item->index == -1) @@ -453,8 +454,9 @@ public: qreal itemTop = item->position(); if (highlight && itemTop >= pos && item->endPosition() <= pos + highlight->size() - 1) return item; - if (itemTop+item->size()/2 >= pos && itemTop-item->size()/2 < pos) + if (itemTop+item->size()/2 >= pos && itemTop-prevItemSize/2 < pos) snapItem = item; + prevItemSize = item->size(); } return snapItem; } @@ -1564,13 +1566,13 @@ void QDeclarative1ListViewPrivate::flick(AxisData &data, qreal minExtent, qreal The following example shows the definition of a simple list model defined in a file called \c ContactModel.qml: - \snippet doc/src/snippets/declarative/listview/ContactModel.qml 0 + \snippet doc/src/snippets/qtquick1/listview/ContactModel.qml 0 Another component can display this model data in a ListView, like this: - \snippet doc/src/snippets/declarative/listview/listview.qml import + \snippet doc/src/snippets/qtquick1/listview/listview.qml import \codeline - \snippet doc/src/snippets/declarative/listview/listview.qml classdocs simple + \snippet doc/src/snippets/qtquick1/listview/listview.qml classdocs simple \image listview-simple.png @@ -1581,7 +1583,7 @@ void QDeclarative1ListViewPrivate::flick(AxisData &data, qreal minExtent, qreal An improved list view is shown below. The delegate is visually improved and is moved into a separate \c contactDelegate component. - \snippet doc/src/snippets/declarative/listview/listview.qml classdocs advanced + \snippet doc/src/snippets/qtquick1/listview/listview.qml classdocs advanced \image listview-highlight.png The currently selected item is highlighted with a blue \l Rectangle using the \l highlight property, @@ -1596,7 +1598,7 @@ void QDeclarative1ListViewPrivate::flick(AxisData &data, qreal minExtent, qreal this attached property directly as \c ListView.isCurrentItem, while the child \c contactInfo object must refer to this property as \c wrapper.ListView.isCurrentItem. - \snippet doc/src/snippets/declarative/listview/listview.qml isCurrentItem + \snippet doc/src/snippets/qtquick1/listview/listview.qml isCurrentItem \note Views do not enable \e clip automatically. If the view is not clipped by another item or the screen, it will be necessary @@ -1631,7 +1633,7 @@ QDeclarative1ListView::~QDeclarative1ListView() This property may be used to adjust the appearance of the current item, for example: - \snippet doc/src/snippets/declarative/listview/listview.qml isCurrentItem + \snippet doc/src/snippets/qtquick1/listview/listview.qml isCurrentItem */ /*! @@ -1680,7 +1682,7 @@ QDeclarative1ListView::~QDeclarative1ListView() The example delegate below ensures that the animation completes before the item is removed from the list. - \snippet doc/src/snippets/declarative/listview/listview.qml delayRemove + \snippet doc/src/snippets/qtquick1/listview/listview.qml delayRemove */ /*! @@ -1960,7 +1962,7 @@ void QDeclarative1ListView::setHighlight(QDeclarativeComponent *highlight) Here is a highlight with its motion defined by a \l {SpringAnimation} item: - \snippet doc/src/snippets/declarative/listview/listview.qml highlightFollowsCurrentItem + \snippet doc/src/snippets/qtquick1/listview/listview.qml highlightFollowsCurrentItem Note that the highlight animation also affects the way that the view is scrolled. This is because the view moves to maintain the @@ -3131,7 +3133,6 @@ void QDeclarative1ListView::trackedPositionChanged() qreal trackedPos = qCeil(d->trackedItem->position()); qreal trackedSize = d->trackedItem->size(); if (d->trackedItem != d->currentItem) { - trackedPos -= d->currentItem->sectionSize(); trackedSize += d->currentItem->sectionSize(); } qreal viewPos; @@ -3195,7 +3196,7 @@ void QDeclarative1ListView::trackedPositionChanged() void QDeclarative1ListView::itemsInserted(int modelIndex, int count) { Q_D(QDeclarative1ListView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->model || !d->model->isValid()) return; d->updateUnrequestedIndexes(); d->moveReason = QDeclarative1ListViewPrivate::Other; @@ -3338,7 +3339,7 @@ void QDeclarative1ListView::itemsInserted(int modelIndex, int count) void QDeclarative1ListView::itemsRemoved(int modelIndex, int count) { Q_D(QDeclarative1ListView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->model || !d->model->isValid()) return; d->moveReason = QDeclarative1ListViewPrivate::Other; d->updateUnrequestedIndexes(); @@ -3453,7 +3454,7 @@ void QDeclarative1ListView::destroyRemoved() void QDeclarative1ListView::itemsMoved(int from, int to, int count) { Q_D(QDeclarative1ListView); - if (!isComponentComplete()) + if (!isComponentComplete() || !d->isValid()) return; d->updateUnrequestedIndexes(); diff --git a/src/qtquick1/graphicsitems/qdeclarativeloader.cpp b/src/qtquick1/graphicsitems/qdeclarativeloader.cpp index 7162c31662..3b68ed4a9e 100644 --- a/src/qtquick1/graphicsitems/qdeclarativeloader.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativeloader.cpp @@ -138,7 +138,7 @@ void QDeclarative1LoaderPrivate::initResize() Here is a Loader that loads "Page1.qml" as a component when the \l MouseArea is clicked: - \snippet doc/src/snippets/declarative/loader/simple.qml 0 + \snippet doc/src/snippets/qtquick1/loader/simple.qml 0 The loaded item can be accessed using the \l item property. @@ -170,8 +170,8 @@ void QDeclarative1LoaderPrivate::initResize() \o sizeloader.qml \o sizeitem.qml \row - \o \snippet doc/src/snippets/declarative/loader/sizeloader.qml 0 - \o \snippet doc/src/snippets/declarative/loader/sizeitem.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/sizeloader.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/sizeitem.qml 0 \row \o The red rectangle will be sized to the size of the root item. \o The red rectangle will be 50x50, centered in the root item. @@ -190,8 +190,8 @@ void QDeclarative1LoaderPrivate::initResize() \o application.qml \o MyItem.qml \row - \o \snippet doc/src/snippets/declarative/loader/connections.qml 0 - \o \snippet doc/src/snippets/declarative/loader/MyItem.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/connections.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/MyItem.qml 0 \endtable Alternatively, since \c MyItem.qml is loaded within the scope of the @@ -217,8 +217,8 @@ void QDeclarative1LoaderPrivate::initResize() \o application.qml \o KeyReader.qml \row - \o \snippet doc/src/snippets/declarative/loader/focus.qml 0 - \o \snippet doc/src/snippets/declarative/loader/KeyReader.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/focus.qml 0 + \o \snippet doc/src/snippets/qtquick1/loader/KeyReader.qml 0 \endtable Once \c KeyReader.qml is loaded, it accepts key events and sets diff --git a/src/qtquick1/graphicsitems/qdeclarativemousearea.cpp b/src/qtquick1/graphicsitems/qdeclarativemousearea.cpp index 7f43eb1070..94f6b2a798 100644 --- a/src/qtquick1/graphicsitems/qdeclarativemousearea.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativemousearea.cpp @@ -226,9 +226,9 @@ QDeclarative1MouseAreaPrivate::~QDeclarative1MouseAreaPrivate() The following example uses a MouseArea in a \l Rectangle that changes the \l Rectangle color to red when clicked: - \snippet doc/src/snippets/declarative/mousearea/mousearea.qml import + \snippet doc/src/snippets/qtquick1/mousearea/mousearea.qml import \codeline - \snippet doc/src/snippets/declarative/mousearea/mousearea.qml intro + \snippet doc/src/snippets/qtquick1/mousearea/mousearea.qml intro \clearfloat Many MouseArea signals pass a \l{MouseEvent}{mouse} parameter that contains @@ -238,7 +238,7 @@ QDeclarative1MouseAreaPrivate::~QDeclarative1MouseAreaPrivate() Here is an extension of the previous example that produces a different color when the area is right clicked: - \snippet doc/src/snippets/declarative/mousearea/mousearea.qml intro-extended + \snippet doc/src/snippets/qtquick1/mousearea/mousearea.qml intro-extended \sa MouseEvent, {declarative/touchinteraction/mousearea}{MouseArea example} */ @@ -492,7 +492,7 @@ void QDeclarative1MouseArea::setPreventStealing(bool prevent) The code below displays "right" when the right mouse buttons is pressed: - \snippet doc/src/snippets/declarative/mousearea/mousearea.qml mousebuttons + \snippet doc/src/snippets/qtquick1/mousearea/mousearea.qml mousebuttons \sa acceptedButtons */ @@ -999,7 +999,7 @@ QDeclarative1Drag *QDeclarative1MouseArea::drag() The following example displays a \l Rectangle that can be dragged along the X-axis. The opacity of the rectangle is reduced when it is dragged to the right. - \snippet doc/src/snippets/declarative/mousearea/mousearea.qml drag + \snippet doc/src/snippets/qtquick1/mousearea/mousearea.qml drag \note Items cannot be dragged if they are anchored for the requested \c drag.axis. For example, if \c anchors.left or \c anchors.right was set @@ -1010,7 +1010,7 @@ QDeclarative1Drag *QDeclarative1MouseArea::drag() If \c drag.filterChildren is set to true, a drag can override descendant MouseAreas. This enables a parent MouseArea to handle drags, for example, while descendants handle clicks: - \snippet doc/src/snippets/declarative/mousearea/mouseareadragfilter.qml dragfilter + \snippet doc/src/snippets/qtquick1/mousearea/mouseareadragfilter.qml dragfilter */ diff --git a/src/qtquick1/graphicsitems/qdeclarativepath.cpp b/src/qtquick1/graphicsitems/qdeclarativepath.cpp index ecf9e24e2f..5b52af8469 100644 --- a/src/qtquick1/graphicsitems/qdeclarativepath.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativepath.cpp @@ -155,7 +155,7 @@ bool QDeclarative1Path::isClosed() const \i \l PathPercent - a way to spread out items along various segments of the path. \endlist - \snippet doc/src/snippets/declarative/pathview/pathattributes.qml 2 + \snippet doc/src/snippets/qtquick1/pathview/pathattributes.qml 2 */ QDeclarativeListProperty<QDeclarative1PathElement> QDeclarative1Path::pathElements() @@ -519,7 +519,7 @@ void QDeclarative1Curve::setY(qreal y) \row \o \image declarative-pathattribute.png \o - \snippet doc/src/snippets/declarative/pathview/pathattributes.qml 0 + \snippet doc/src/snippets/qtquick1/pathview/pathattributes.qml 0 (see the PathView documentation for the specification of ContactModel.qml used for ContactModel above.) \endtable diff --git a/src/qtquick1/graphicsitems/qdeclarativepathview.cpp b/src/qtquick1/graphicsitems/qdeclarativepathview.cpp index 2c0875b4c4..e01cf05f22 100644 --- a/src/qtquick1/graphicsitems/qdeclarativepathview.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativepathview.cpp @@ -365,11 +365,11 @@ void QDeclarative1PathViewPrivate::regenerate() For example, if there is a simple list model defined in a file \c ContactModel.qml like this: - \snippet doc/src/snippets/declarative/pathview/ContactModel.qml 0 + \snippet doc/src/snippets/qtquick1/pathview/ContactModel.qml 0 This data can be represented as a PathView, like this: - \snippet doc/src/snippets/declarative/pathview/pathview.qml 0 + \snippet doc/src/snippets/qtquick1/pathview/pathview.qml 0 \image pathview.gif @@ -402,7 +402,7 @@ void QDeclarative1PathViewPrivate::regenerate() this attached property directly as \c PathView.isCurrentItem, while the child \c nameText object must refer to this property as \c wrapper.PathView.isCurrentItem. - \snippet doc/src/snippets/declarative/pathview/pathview.qml 1 + \snippet doc/src/snippets/qtquick1/pathview/pathview.qml 1 \bold Note that views do not enable \e clip automatically. If the view is not clipped by another item or the screen, it will be necessary @@ -464,7 +464,7 @@ QDeclarative1PathView::~QDeclarative1PathView() This property may be used to adjust the appearance of the current item. - \snippet doc/src/snippets/declarative/pathview/pathview.qml 1 + \snippet doc/src/snippets/qtquick1/pathview/pathview.qml 1 */ /*! @@ -1002,7 +1002,7 @@ bool QDeclarative1PathView::isFlicking() const item in the delegate. Here is an example delegate: - \snippet doc/src/snippets/declarative/pathview/pathview.qml 1 + \snippet doc/src/snippets/qtquick1/pathview/pathview.qml 1 */ QDeclarativeComponent *QDeclarative1PathView::delegate() const { @@ -1285,6 +1285,7 @@ bool QDeclarative1PathView::sendMouseEvent(QGraphicsSceneMouseEvent *event) return d->stealMouse; } else if (d->lastPosTime.isValid()) { d->lastPosTime.invalidate(); + d->fixOffset(); } if (mouseEvent.type() == QEvent::GraphicsSceneMouseRelease) d->stealMouse = false; @@ -1309,6 +1310,22 @@ bool QDeclarative1PathView::sceneEventFilter(QGraphicsItem *i, QEvent *e) return QDeclarativeItem::sceneEventFilter(i, e); } +bool QDeclarative1PathView::sceneEvent(QEvent *event) +{ + bool rv = QDeclarativeItem::sceneEvent(event); + if (event->type() == QEvent::UngrabMouse) { + Q_D(QDeclarative1PathView); + if (d->stealMouse) { + // if our mouse grab has been removed (probably by another Flickable), + // fix our state + d->stealMouse = false; + setKeepMouseGrab(false); + d->lastPosTime.invalidate(); + } + } + return rv; +} + bool QDeclarative1PathView::event(QEvent *event) { if (event->type() == QEvent::User) { diff --git a/src/qtquick1/graphicsitems/qdeclarativepathview_p.h b/src/qtquick1/graphicsitems/qdeclarativepathview_p.h index b4897f9e1d..955951ffd1 100644 --- a/src/qtquick1/graphicsitems/qdeclarativepathview_p.h +++ b/src/qtquick1/graphicsitems/qdeclarativepathview_p.h @@ -173,6 +173,7 @@ protected: void mouseReleaseEvent(QGraphicsSceneMouseEvent *); bool sendMouseEvent(QGraphicsSceneMouseEvent *event); bool sceneEventFilter(QGraphicsItem *, QEvent *); + bool sceneEvent(QEvent *event); bool event(QEvent *event); void componentComplete(); diff --git a/src/qtquick1/graphicsitems/qdeclarativepositioners.cpp b/src/qtquick1/graphicsitems/qdeclarativepositioners.cpp index 7046945d27..353fbcc418 100644 --- a/src/qtquick1/graphicsitems/qdeclarativepositioners.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativepositioners.cpp @@ -349,7 +349,7 @@ void QDeclarative1BasePositioner::finishApplyTransitions() \image verticalpositioner_example.png - \snippet doc/src/snippets/declarative/column/vertical-positioner.qml document + \snippet doc/src/snippets/qtquick1/column/vertical-positioner.qml document \section1 Using Transitions @@ -512,7 +512,7 @@ void QDeclarative1Column::reportConflictingAnchors() \image horizontalpositioner_example.png - \snippet doc/src/snippets/declarative/row/row.qml document + \snippet doc/src/snippets/qtquick1/row/row.qml document \section1 Using Transitions @@ -743,7 +743,7 @@ void QDeclarative1Row::reportConflictingAnchors() \image gridLayout_example.png - \snippet doc/src/snippets/declarative/grid/grid.qml document + \snippet doc/src/snippets/qtquick1/grid/grid.qml document \section1 Using Transitions @@ -1129,7 +1129,7 @@ void QDeclarative1Grid::reportConflictingAnchors() \image qml-flow-snippet.png - \snippet doc/src/snippets/declarative/flow.qml flow item + \snippet doc/src/snippets/qtquick1/flow.qml flow item \section1 Using Transitions diff --git a/src/qtquick1/graphicsitems/qdeclarativerectangle.cpp b/src/qtquick1/graphicsitems/qdeclarativerectangle.cpp index b67536cc86..088c296a26 100644 --- a/src/qtquick1/graphicsitems/qdeclarativerectangle.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativerectangle.cpp @@ -147,7 +147,7 @@ void QDeclarative1GradientStop::updateGradient() with red, blending to yellow at one third of the height of the rectangle, and ending with green: - \snippet doc/src/snippets/declarative/gradient.qml code + \snippet doc/src/snippets/qtquick1/gradient.qml code \clearfloat \section1 Performance and Limitations @@ -235,7 +235,7 @@ void QDeclarative1Gradient::doUpdate() The following example shows the effects of some of the common properties on a Rectangle item, which in this case is used to create a square: - \snippet doc/src/snippets/declarative/rectangle/rectangle.qml document + \snippet doc/src/snippets/qtquick1/rectangle/rectangle.qml document \clearfloat \section1 Performance @@ -284,7 +284,7 @@ void QDeclarative1Rectangle::doUpdate() \inlineimage rect-border-width.png \enddiv - \snippet doc/src/snippets/declarative/rectangle/rect-border-width.qml 0 + \snippet doc/src/snippets/qtquick1/rectangle/rect-border-width.qml 0 \clearfloat Here, the innermost rectangle's border is clipped on the bottom and right edges by its @@ -308,7 +308,7 @@ QDeclarative1Pen *QDeclarative1Rectangle::border() \inlineimage declarative-rect_gradient.png \enddiv - \snippet doc/src/snippets/declarative/rectangle/rectangle-gradient.qml rectangles + \snippet doc/src/snippets/qtquick1/rectangle/rectangle-gradient.qml rectangles \clearfloat If both a gradient and a color are specified, the gradient will be used. @@ -379,7 +379,7 @@ void QDeclarative1Rectangle::setRadius(qreal radius) The following example shows rectangles with colors specified using hexadecimal and named color notation: - \snippet doc/src/snippets/declarative/rectangle/rectangle-colors.qml rectangles + \snippet doc/src/snippets/qtquick1/rectangle/rectangle-colors.qml rectangles \clearfloat If both a gradient and a color are specified, the gradient will be used. diff --git a/src/qtquick1/graphicsitems/qdeclarativerepeater.cpp b/src/qtquick1/graphicsitems/qdeclarativerepeater.cpp index cc080d10d3..ab9beb4d4d 100644 --- a/src/qtquick1/graphicsitems/qdeclarativerepeater.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativerepeater.cpp @@ -79,9 +79,9 @@ QDeclarative1RepeaterPrivate::~QDeclarative1RepeaterPrivate() The following Repeater creates three instances of a \l Rectangle item within a \l Row: - \snippet doc/src/snippets/declarative/repeaters/repeater.qml import + \snippet doc/src/snippets/qtquick1/repeaters/repeater.qml import \codeline - \snippet doc/src/snippets/declarative/repeaters/repeater.qml simple + \snippet doc/src/snippets/qtquick1/repeaters/repeater.qml simple \image repeater-simple.png @@ -96,7 +96,7 @@ QDeclarative1RepeaterPrivate::~QDeclarative1RepeaterPrivate() a Repeater to be used inside a layout. For example, the following Repeater's items are stacked between a red rectangle and a blue rectangle: - \snippet doc/src/snippets/declarative/repeaters/repeater.qml layout + \snippet doc/src/snippets/qtquick1/repeaters/repeater.qml layout \image repeater.png @@ -242,7 +242,7 @@ void QDeclarative1Repeater::setModel(const QVariant &model) \table \row - \o \snippet doc/src/snippets/declarative/repeaters/repeater.qml index + \o \snippet doc/src/snippets/qtquick1/repeaters/repeater.qml index \o \image repeater-index.png \endtable @@ -253,7 +253,7 @@ void QDeclarative1Repeater::setModel(const QVariant &model) \table \row - \o \snippet doc/src/snippets/declarative/repeaters/repeater.qml modeldata + \o \snippet doc/src/snippets/qtquick1/repeaters/repeater.qml modeldata \o \image repeater-modeldata.png \endtable diff --git a/src/qtquick1/graphicsitems/qdeclarativescalegrid.cpp b/src/qtquick1/graphicsitems/qdeclarativescalegrid.cpp index 83a94ec9de..bcdf92c675 100644 --- a/src/qtquick1/graphicsitems/qdeclarativescalegrid.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativescalegrid.cpp @@ -167,6 +167,8 @@ QDeclarative1GridScaledImage::QDeclarative1GridScaledImage(QIODevice *data) _l = l; _r = r; _t = t; _b = b; _pix = imgFile; + if (_pix.startsWith(QLatin1Char('"')) && _pix.endsWith(QLatin1Char('"'))) + _pix = _pix.mid(1, _pix.size() - 2); // remove leading/trailing quotes. } QDeclarative1BorderImage::TileMode QDeclarative1GridScaledImage::stringToRule(const QString &s) diff --git a/src/qtquick1/graphicsitems/qdeclarativetext.cpp b/src/qtquick1/graphicsitems/qdeclarativetext.cpp index 6974f73739..aad4b1e952 100644 --- a/src/qtquick1/graphicsitems/qdeclarativetext.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativetext.cpp @@ -749,7 +749,7 @@ QDeclarative1Text::~QDeclarative1Text() The link must be in rich text or HTML format and the \a link string provides access to the particular link. - \snippet doc/src/snippets/declarative/text/onLinkActivated.qml 0 + \snippet doc/src/snippets/qtquick1/text/onLinkActivated.qml 0 The example code will display the text "The main website is at \l{http://qt.nokia.com}{Nokia Qt DF}." diff --git a/src/qtquick1/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/qtquick1/graphicsitems/qdeclarativevisualitemmodel.cpp index c8627b9d26..5d8a3d4b37 100644 --- a/src/qtquick1/graphicsitems/qdeclarativevisualitemmodel.cpp +++ b/src/qtquick1/graphicsitems/qdeclarativevisualitemmodel.cpp @@ -659,7 +659,7 @@ QDeclarative1VisualDataModelData *QDeclarative1VisualDataModelPrivate::data(QObj The example below illustrates using a VisualDataModel with a ListView. - \snippet doc/src/snippets/declarative/visualdatamodel.qml 0 + \snippet doc/src/snippets/qtquick1/visualdatamodel.qml 0 */ QDeclarative1VisualDataModel::QDeclarative1VisualDataModel() @@ -852,10 +852,10 @@ void QDeclarative1VisualDataModel::setDelegate(QDeclarativeComponent *delegate) the new directory's contents. \c main.cpp: - \snippet doc/src/snippets/declarative/visualdatamodel_rootindex/main.cpp 0 + \snippet doc/src/snippets/qtquick1/visualdatamodel_rootindex/main.cpp 0 \c view.qml: - \snippet doc/src/snippets/declarative/visualdatamodel_rootindex/view.qml 0 + \snippet doc/src/snippets/qtquick1/visualdatamodel_rootindex/view.qml 0 If the \l model is a QAbstractItemModel subclass, the delegate can also reference a \c hasModelChildren property (optionally qualified by a |