summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems/qdeclarativepath.cpp
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-05-08 03:24:44 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-05-08 03:24:44 (GMT)
commite7cf5fc921c00286846ac552b51a37fe2f51ff3e (patch)
treeaf7c5cade70dfd740b11434a1a5cd7f3ff53ed35 /src/declarative/graphicsitems/qdeclarativepath.cpp
parent03f8f1df0d88f5ffe0b3120cffce614cbeefdb70 (diff)
parent3ad6f3b1f4d2252e2a004acc8156a1fd308265cf (diff)
downloadQt-e7cf5fc921c00286846ac552b51a37fe2f51ff3e.zip
Qt-e7cf5fc921c00286846ac552b51a37fe2f51ff3e.tar.gz
Qt-e7cf5fc921c00286846ac552b51a37fe2f51ff3e.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (131 commits) Avoid many unnecessary allocations, so so that paint engines attached to pixmaps Doc Fix autotests Fix autotests (remove import Qt.widgets) Add missing qml file to qdeclarativemousearea Doc fix Clean up example code, add white background behind text Update mouse area qmlvisual test to follow change QTBUG-10162 Fix autotest bug in MouseArea Avoid emitting release when the mouse is ungrabbed Resize qmlruntime window to new dimensions when orientation changes Compile with opengl enabled. Avoid repeated create/destroy at top list boundary with sub-pixel movement. Call QDeclarativeItem::geometryChanged() base implementation qdoc fixes. Avoid warnings as delegates with bindings to parent are created and destroyed. qdoc fixes TextInput echoMode doc. Make sure to call base class implementation. More cleanup ...
Diffstat (limited to 'src/declarative/graphicsitems/qdeclarativepath.cpp')
-rw-r--r--src/declarative/graphicsitems/qdeclarativepath.cpp20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/declarative/graphicsitems/qdeclarativepath.cpp b/src/declarative/graphicsitems/qdeclarativepath.cpp
index e2042fc..4d8b619 100644
--- a/src/declarative/graphicsitems/qdeclarativepath.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepath.cpp
@@ -63,7 +63,6 @@ QT_BEGIN_NAMESPACE
/*!
\internal
\class QDeclarativePathElement
- \ingroup group_utility
*/
/*!
@@ -86,7 +85,6 @@ QT_BEGIN_NAMESPACE
/*!
\internal
\class QDeclarativePath
- \ingroup group_utility
\brief The QDeclarativePath class defines a path.
\sa QDeclarativePathView
*/
@@ -117,6 +115,7 @@ void QDeclarativePath::setStartX(qreal x)
return;
d->startX = x;
emit startXChanged();
+ processPath();
}
qreal QDeclarativePath::startY() const
@@ -132,6 +131,7 @@ void QDeclarativePath::setStartY(qreal y)
return;
d->startY = y;
emit startYChanged();
+ processPath();
}
/*!
@@ -220,6 +220,9 @@ void QDeclarativePath::processPath()
{
Q_D(QDeclarativePath);
+ if (!d->componentComplete)
+ return;
+
d->_pointCache.clear();
d->_attributePoints.clear();
d->_path = QPainterPath();
@@ -284,10 +287,18 @@ void QDeclarativePath::processPath()
emit changed();
}
+void QDeclarativePath::classBegin()
+{
+ Q_D(QDeclarativePath);
+ d->componentComplete = false;
+}
+
void QDeclarativePath::componentComplete()
{
Q_D(QDeclarativePath);
QSet<QString> attrs;
+ d->componentComplete = true;
+
// First gather up all the attributes
foreach (QDeclarativePathElement *pathElement, d->_pathElements) {
if (QDeclarativePathAttribute *attribute =
@@ -500,7 +511,6 @@ void QDeclarativeCurve::setY(qreal y)
/*!
\internal
\class QDeclarativePathAttribute
- \ingroup group_utility
\brief The QDeclarativePathAttribute class allows to set the value of an attribute at a given position in the path.
\sa QDeclarativePath
@@ -573,7 +583,6 @@ void QDeclarativePathAttribute::setValue(qreal value)
/*!
\internal
\class QDeclarativePathLine
- \ingroup group_utility
\brief The QDeclarativePathLine class defines a straight line.
\sa QDeclarativePath
@@ -617,7 +626,6 @@ void QDeclarativePathLine::addToPath(QPainterPath &path)
/*!
\internal
\class QDeclarativePathQuad
- \ingroup group_utility
\brief The QDeclarativePathQuad class defines a quadratic Bezier curve with a control point.
\sa QDeclarativePath
@@ -705,7 +713,6 @@ void QDeclarativePathQuad::addToPath(QPainterPath &path)
/*!
\internal
\class QDeclarativePathCubic
- \ingroup group_utility
\brief The QDeclarativePathCubic class defines a cubic Bezier curve with two control points.
\sa QDeclarativePath
@@ -831,7 +838,6 @@ void QDeclarativePathCubic::addToPath(QPainterPath &path)
/*!
\internal
\class QDeclarativePathPercent
- \ingroup group_utility
\brief The QDeclarativePathPercent class manipulates the way a path is interpreted.
QDeclarativePathPercent allows you to bunch up items (or spread out items) along various