summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demos/declarative/minehunt/minehunt.pro2
-rw-r--r--doc/src/declarative/elements.qdoc4
-rw-r--r--examples/declarative/declarative.pro2
-rw-r--r--examples/declarative/imageprovider/imageprovider.pro4
-rw-r--r--examples/declarative/plugins/plugin.cpp18
-rw-r--r--examples/declarative/plugins/plugins.pro7
-rw-r--r--examples/declarative/proxywidgets/ProxyWidgets/qmldir1
-rw-r--r--examples/declarative/proxywidgets/README (renamed from examples/declarative/widgets/README)2
-rw-r--r--examples/declarative/proxywidgets/proxywidgets.cpp (renamed from examples/declarative/widgets/mywidgets.cpp)6
-rw-r--r--examples/declarative/proxywidgets/proxywidgets.pro (renamed from examples/declarative/widgets/mywidgets.pro)11
-rw-r--r--examples/declarative/proxywidgets/proxywidgets.qml (renamed from examples/declarative/widgets/mywidgets.qml)2
-rw-r--r--examples/declarative/widgets/MyWidgets/qmldir1
-rw-r--r--src/declarative/graphicsitems/qdeclarativeanchors.cpp4
-rw-r--r--src/declarative/graphicsitems/qdeclarativepositioners.cpp39
-rw-r--r--src/declarative/graphicsitems/qdeclarativepositioners_p.h18
-rw-r--r--src/declarative/graphicsitems/qdeclarativepositioners_p_p.h5
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/flowtest.qml3
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/grid-animated.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/grid-spacing.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/gridtest.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/horizontal-animated.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/horizontal-spacing.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/horizontal.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/vertical-animated.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/vertical-spacing.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/data/vertical.qml1
-rw-r--r--tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp54
27 files changed, 133 insertions, 59 deletions
diff --git a/demos/declarative/minehunt/minehunt.pro b/demos/declarative/minehunt/minehunt.pro
index 03059c7..da46dfc 100644
--- a/demos/declarative/minehunt/minehunt.pro
+++ b/demos/declarative/minehunt/minehunt.pro
@@ -9,7 +9,6 @@ DESTDIR = MinehuntCore
# Input
SOURCES += minehunt.cpp
-
sources.files = minehunt.qml minehunt.pro
sources.path = $$[QT_INSTALL_DEMOS]/declarative/minehunt
@@ -26,7 +25,6 @@ INSTALLS = sources MinehuntCore_sources target
symbian:{
load(data_caging_paths)
TARGET.EPOCALLOWDLLDATA = 1
- TARGET.CAPABILITY = CAP_GENERAL_DLL
include($$QT_SOURCE_TREE/demos/symbianpkgrules.pri)
importFiles.sources = minehunt.dll \
diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc
index fcfc7d6..9cbf58b 100644
--- a/doc/src/declarative/elements.qdoc
+++ b/doc/src/declarative/elements.qdoc
@@ -190,10 +190,6 @@ The following table lists the QML elements provided by the Qt Declarative module
\o
\list
-\o \l Blur
-\o \l Colorize
-\o \l DropShadow
-\o \l Opacity
\o \l Particles
\list
\o \l ParticleMotionLinear
diff --git a/examples/declarative/declarative.pro b/examples/declarative/declarative.pro
index 5fc1cf0..00d3c05 100644
--- a/examples/declarative/declarative.pro
+++ b/examples/declarative/declarative.pro
@@ -6,7 +6,7 @@ SUBDIRS = \
imageprovider \
objectlistmodel \
plugins \
- widgets
+ proxywidgets
# These examples contain no C++ and can simply be copied
sources.files = \
diff --git a/examples/declarative/imageprovider/imageprovider.pro b/examples/declarative/imageprovider/imageprovider.pro
index 86dbcca..945a301 100644
--- a/examples/declarative/imageprovider/imageprovider.pro
+++ b/examples/declarative/imageprovider/imageprovider.pro
@@ -18,4 +18,8 @@ ImageProviderCore_sources.files = \
ImageProviderCore/qmldir
ImageProviderCore_sources.path = $$[QT_INSTALL_EXAMPLES]/declarative/imageprovider/ImageProviderCore
+symbian:{
+ TARGET.EPOCALLOWDLLDATA=1
+}
+
INSTALLS = sources ImageProviderCore_sources target
diff --git a/examples/declarative/plugins/plugin.cpp b/examples/declarative/plugins/plugin.cpp
index 741f68a..fb51b0c 100644
--- a/examples/declarative/plugins/plugin.cpp
+++ b/examples/declarative/plugins/plugin.cpp
@@ -46,7 +46,7 @@
#include <qbasictimer.h>
#include <qapplication.h>
-// Implements a "Time" class with hour and minute properties
+// Implements a "TimeModel" class with hour and minute properties
// that change on-the-minute yet efficiently sleep the rest
// of the time.
@@ -97,14 +97,14 @@ private:
QBasicTimer timer;
};
-class Time : public QObject
+class TimeModel : public QObject
{
Q_OBJECT
Q_PROPERTY(int hour READ hour NOTIFY timeChanged)
Q_PROPERTY(int minute READ minute NOTIFY timeChanged)
public:
- Time(QObject *parent=0) : QObject(parent)
+ TimeModel(QObject *parent=0) : QObject(parent)
{
if (++instances == 1) {
if (!timer)
@@ -114,7 +114,7 @@ public:
}
}
- ~Time()
+ ~TimeModel()
{
if (--instances == 0) {
timer->stop();
@@ -133,12 +133,8 @@ private:
static int instances;
};
-int Time::instances=0;
-MinuteTimer *Time::timer=0;
-
-
-QML_DECLARE_TYPE(Time);
-
+int TimeModel::instances=0;
+MinuteTimer *TimeModel::timer=0;
class QExampleQmlPlugin : public QDeclarativeExtensionPlugin
{
@@ -147,7 +143,7 @@ public:
void registerTypes(const char *uri)
{
Q_ASSERT(uri == QLatin1String("com.nokia.TimeExample"));
- qmlRegisterType<Time>(uri, 1, 0, "Time");
+ qmlRegisterType<TimeModel>(uri, 1, 0, "Time");
}
};
diff --git a/examples/declarative/plugins/plugins.pro b/examples/declarative/plugins/plugins.pro
index 877a5ce..c409d39 100644
--- a/examples/declarative/plugins/plugins.pro
+++ b/examples/declarative/plugins/plugins.pro
@@ -8,7 +8,7 @@ VERSION = 1.0.0
SOURCES += plugin.cpp
qdeclarativesources.files += \
- com/nokia/TimeExample/qdeclarativedir \
+ com/nokia/TimeExample/qmldir \
com/nokia/TimeExample/center.png \
com/nokia/TimeExample/clock.png \
com/nokia/TimeExample/Clock.qml \
@@ -22,6 +22,11 @@ sources.path += $$[QT_INSTALL_EXAMPLES]/declarative/plugins
target.path += $$[QT_INSTALL_EXAMPLES]/declarative/plugins/com/nokia/TimeExample
+symbian:{
+ TARGET.EPOCALLOWDLLDATA=1
+}
+
+
INSTALLS += qdeclarativesources sources target
symbian: include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri)
diff --git a/examples/declarative/proxywidgets/ProxyWidgets/qmldir b/examples/declarative/proxywidgets/ProxyWidgets/qmldir
new file mode 100644
index 0000000..e55267c
--- /dev/null
+++ b/examples/declarative/proxywidgets/ProxyWidgets/qmldir
@@ -0,0 +1 @@
+plugin proxywidgetsplugin
diff --git a/examples/declarative/widgets/README b/examples/declarative/proxywidgets/README
index f85a1e8..f50fa22 100644
--- a/examples/declarative/widgets/README
+++ b/examples/declarative/proxywidgets/README
@@ -1,4 +1,4 @@
To run:
make install
- qml mywidgets.qml
+ qml proxywidgets.qml
diff --git a/examples/declarative/widgets/mywidgets.cpp b/examples/declarative/proxywidgets/proxywidgets.cpp
index e17240d..47d0cb9 100644
--- a/examples/declarative/widgets/mywidgets.cpp
+++ b/examples/declarative/proxywidgets/proxywidgets.cpp
@@ -82,7 +82,7 @@ private:
QPushButton *widget;
};
-class MyWidgetsPlugin : public QDeclarativeExtensionPlugin
+class ProxyWidgetsPlugin : public QDeclarativeExtensionPlugin
{
Q_OBJECT
public:
@@ -92,8 +92,8 @@ public:
}
};
-#include "mywidgets.moc"
+#include "proxywidgets.moc"
QML_DECLARE_TYPE(MyPushButton)
-Q_EXPORT_PLUGIN2(mywidgetsplugin, MyWidgetsPlugin);
+Q_EXPORT_PLUGIN2(proxywidgetsplugin, ProxyWidgetsPlugin);
diff --git a/examples/declarative/widgets/mywidgets.pro b/examples/declarative/proxywidgets/proxywidgets.pro
index 258edb1..eb85191 100644
--- a/examples/declarative/widgets/mywidgets.pro
+++ b/examples/declarative/proxywidgets/proxywidgets.pro
@@ -1,13 +1,13 @@
TEMPLATE = lib
-DESTDIR = MyWidgets
-TARGET = mywidgetsplugin
+DESTDIR = ProxyWidgets
+TARGET = proxywidgetsplugin
CONFIG += qt plugin
QT += declarative
VERSION = 1.0.0
-SOURCES += mywidgets.cpp
+SOURCES += proxywidgets.cpp
-sources.files += mywidgets.pro mywidgets.cpp mywidgets.qml
+sources.files += proxywidgets.pro proxywidgets.cpp proxywidgets.qml
sources.path += $$[QT_INSTALL_EXAMPLES]/declarative/plugins
@@ -17,3 +17,6 @@ INSTALLS += sources target
symbian: include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri)
+symbian:{
+ TARGET.EPOCALLOWDLLDATA = 1
+} \ No newline at end of file
diff --git a/examples/declarative/widgets/mywidgets.qml b/examples/declarative/proxywidgets/proxywidgets.qml
index b1efed4..023de71 100644
--- a/examples/declarative/widgets/mywidgets.qml
+++ b/examples/declarative/proxywidgets/proxywidgets.qml
@@ -1,5 +1,5 @@
import Qt 4.6
-import "MyWidgets" 1.0
+import "ProxyWidgets" 1.0
Rectangle {
id: window
diff --git a/examples/declarative/widgets/MyWidgets/qmldir b/examples/declarative/widgets/MyWidgets/qmldir
deleted file mode 100644
index dc1d10e..0000000
--- a/examples/declarative/widgets/MyWidgets/qmldir
+++ /dev/null
@@ -1 +0,0 @@
-plugin mywidgetsplugin
diff --git a/src/declarative/graphicsitems/qdeclarativeanchors.cpp b/src/declarative/graphicsitems/qdeclarativeanchors.cpp
index dc1f09d..ffcedda 100644
--- a/src/declarative/graphicsitems/qdeclarativeanchors.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeanchors.cpp
@@ -1059,7 +1059,7 @@ bool QDeclarativeAnchorsPrivate::checkVAnchorValid(QDeclarativeAnchorLine anchor
return true;
}
-#include <moc_qdeclarativeanchors_p.cpp>
-
QT_END_NAMESPACE
+#include <moc_qdeclarativeanchors_p.cpp>
+
diff --git a/src/declarative/graphicsitems/qdeclarativepositioners.cpp b/src/declarative/graphicsitems/qdeclarativepositioners.cpp
index b23b8c9..781e584 100644
--- a/src/declarative/graphicsitems/qdeclarativepositioners.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepositioners.cpp
@@ -237,21 +237,13 @@ void QDeclarativeBasePositioner::prePositioning()
positionedItems.append(*item);
}
}
- doPositioning();
+ QSizeF contentSize;
+ doPositioning(&contentSize);
if(d->addTransition || d->moveTransition)
finishApplyTransitions();
//Set implicit size to the size of its children
- qreal h = 0.0f;
- qreal w = 0.0f;
- for (int i = 0; i < positionedItems.count(); ++i) {
- const PositionedItem &posItem = positionedItems.at(i);
- if (posItem.isVisible) {
- h = qMax(h, posItem.item->y() + posItem.item->height());
- w = qMax(w, posItem.item->x() + posItem.item->width());
- }
- }
- setImplicitHeight(h);
- setImplicitWidth(w);
+ setImplicitHeight(contentSize.height());
+ setImplicitWidth(contentSize.width());
}
void QDeclarativeBasePositioner::positionX(int x, const PositionedItem &target)
@@ -423,7 +415,7 @@ static inline bool isInvisible(QDeclarativeItem *child)
return child->opacity() == 0.0 || !child->isVisible() || !child->width() || !child->height();
}
-void QDeclarativeColumn::doPositioning()
+void QDeclarativeColumn::doPositioning(QSizeF *contentSize)
{
int voffset = 0;
@@ -435,9 +427,13 @@ void QDeclarativeColumn::doPositioning()
if(child.item->y() != voffset)
positionY(voffset, child);
+ contentSize->setWidth(qMax(contentSize->width(), child.item->width()));
+
voffset += child.item->height();
voffset += spacing();
}
+
+ contentSize->setHeight(voffset - spacing());
}
/*!
@@ -534,7 +530,7 @@ QDeclarativeRow::QDeclarativeRow(QDeclarativeItem *parent)
{
}
-void QDeclarativeRow::doPositioning()
+void QDeclarativeRow::doPositioning(QSizeF *contentSize)
{
int hoffset = 0;
@@ -546,9 +542,13 @@ void QDeclarativeRow::doPositioning()
if(child.item->x() != hoffset)
positionX(hoffset, child);
+ contentSize->setHeight(qMax(contentSize->height(), child.item->height()));
+
hoffset += child.item->width();
hoffset += spacing();
}
+
+ contentSize->setWidth(hoffset - spacing());
}
@@ -698,7 +698,7 @@ void QDeclarativeGrid::setRows(const int rows)
emit rowsChanged();
}
-void QDeclarativeGrid::doPositioning()
+void QDeclarativeGrid::doPositioning(QSizeF *contentSize)
{
int c=_columns,r=_rows;//Actual number of rows/columns
int numVisible = positionedItems.count();
@@ -745,6 +745,10 @@ void QDeclarativeGrid::doPositioning()
positionX(xoffset, child);
positionY(yoffset, child);
}
+
+ contentSize->setWidth(qMax(contentSize->width(), xoffset + child.item->width()));
+ contentSize->setHeight(yoffset + maxRowHeight[curRow]);
+
xoffset+=maxColWidth[curCol]+spacing();
curCol++;
curCol%=c;
@@ -854,7 +858,7 @@ void QDeclarativeFlow::setFlow(Flow flow)
}
}
-void QDeclarativeFlow::doPositioning()
+void QDeclarativeFlow::doPositioning(QSizeF *contentSize)
{
Q_D(QDeclarativeFlow);
@@ -886,6 +890,9 @@ void QDeclarativeFlow::doPositioning()
positionY(voffset, child);
}
+ contentSize->setWidth(qMax(contentSize->width(), hoffset + child.item->width()));
+ contentSize->setHeight(qMax(contentSize->height(), voffset + child.item->height()));
+
if (d->flow == LeftToRight) {
hoffset += child.item->width();
hoffset += spacing();
diff --git a/src/declarative/graphicsitems/qdeclarativepositioners_p.h b/src/declarative/graphicsitems/qdeclarativepositioners_p.h
index f38847c..c4414d1 100644
--- a/src/declarative/graphicsitems/qdeclarativepositioners_p.h
+++ b/src/declarative/graphicsitems/qdeclarativepositioners_p.h
@@ -90,10 +90,10 @@ Q_SIGNALS:
void addChanged();
protected Q_SLOTS:
- virtual void doPositioning()=0;
void prePositioning();
protected:
+ virtual void doPositioning(QSizeF *contentSize)=0;
struct PositionedItem {
PositionedItem(QDeclarativeItem *i) : item(i), isNew(false), isVisible(true) {}
bool operator==(const PositionedItem &other) const { return other.item == item; }
@@ -116,8 +116,8 @@ class Q_DECLARATIVE_EXPORT QDeclarativeColumn : public QDeclarativeBasePositione
Q_OBJECT
public:
QDeclarativeColumn(QDeclarativeItem *parent=0);
-protected Q_SLOTS:
- virtual void doPositioning();
+protected:
+ virtual void doPositioning(QSizeF *contentSize);
private:
Q_DISABLE_COPY(QDeclarativeColumn)
};
@@ -127,8 +127,8 @@ class Q_DECLARATIVE_EXPORT QDeclarativeRow: public QDeclarativeBasePositioner
Q_OBJECT
public:
QDeclarativeRow(QDeclarativeItem *parent=0);
-protected Q_SLOTS:
- virtual void doPositioning();
+protected:
+ virtual void doPositioning(QSizeF *contentSize);
private:
Q_DISABLE_COPY(QDeclarativeRow)
};
@@ -151,8 +151,8 @@ Q_SIGNALS:
void rowsChanged();
void columnsChanged();
-protected Q_SLOTS:
- virtual void doPositioning();
+protected:
+ virtual void doPositioning(QSizeF *contentSize);
private:
int _rows;
@@ -176,8 +176,8 @@ public:
Q_SIGNALS:
void flowChanged();
-protected Q_SLOTS:
- virtual void doPositioning();
+protected:
+ virtual void doPositioning(QSizeF *contentSize);
protected:
QDeclarativeFlow(QDeclarativeFlowPrivate &dd, QDeclarativeItem *parent);
diff --git a/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h b/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h
index 3a1edee..7880e3e 100644
--- a/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h
+++ b/src/declarative/graphicsitems/qdeclarativepositioners_p_p.h
@@ -73,8 +73,8 @@ class QDeclarativeBasePositionerPrivate : public QDeclarativeItemPrivate, public
public:
QDeclarativeBasePositionerPrivate()
- : spacing(0), type(QDeclarativeBasePositioner::None), moveTransition(0), addTransition(0),
- queuedPositioning(false)
+ : spacing(0), type(QDeclarativeBasePositioner::None)
+ , moveTransition(0), addTransition(0), queuedPositioning(false)
{
}
@@ -84,6 +84,7 @@ public:
}
int spacing;
+
QDeclarativeBasePositioner::PositionerType type;
QDeclarativeTransition *moveTransition;
QDeclarativeTransition *addTransition;
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/flowtest.qml b/tests/auto/declarative/qdeclarativepositioners/data/flowtest.qml
index bd13bac..6c1c823 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/flowtest.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/flowtest.qml
@@ -4,7 +4,8 @@ Item {
width: 90
height: 480
Flow {
- anchors.fill: parent
+ objectName: "flow"
+ width: parent.width
Rectangle {
objectName: "one"
color: "red"
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/grid-animated.qml b/tests/auto/declarative/qdeclarativepositioners/data/grid-animated.qml
index f6376a1..9741ba9 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/grid-animated.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/grid-animated.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Grid {
+ objectName: "grid"
columns: 3
add: Transition {
NumberAnimation {
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/grid-spacing.qml b/tests/auto/declarative/qdeclarativepositioners/data/grid-spacing.qml
index 5b4a30d..e335932 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/grid-spacing.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/grid-spacing.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Grid {
+ objectName: "grid"
columns: 3
spacing: 4
Rectangle {
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/gridtest.qml b/tests/auto/declarative/qdeclarativepositioners/data/gridtest.qml
index 830df6a..1d6f44e 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/gridtest.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/gridtest.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Grid {
+ objectName: "grid"
columns: 3
Rectangle {
objectName: "one"
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/horizontal-animated.qml b/tests/auto/declarative/qdeclarativepositioners/data/horizontal-animated.qml
index c113a36..a1c05a8 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/horizontal-animated.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/horizontal-animated.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Row {
+ objectName: "row"
add: Transition {
NumberAnimation {
properties: "x";
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/horizontal-spacing.qml b/tests/auto/declarative/qdeclarativepositioners/data/horizontal-spacing.qml
index 32bf775..fb9fdd1 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/horizontal-spacing.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/horizontal-spacing.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Row {
+ objectName: "row"
spacing: 10
Rectangle {
objectName: "one"
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/horizontal.qml b/tests/auto/declarative/qdeclarativepositioners/data/horizontal.qml
index 06ae151..3a7a3b1 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/horizontal.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/horizontal.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Row {
+ objectName: "row"
Rectangle {
objectName: "one"
color: "red"
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/vertical-animated.qml b/tests/auto/declarative/qdeclarativepositioners/data/vertical-animated.qml
index 10f6cbb..31faa54 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/vertical-animated.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/vertical-animated.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Column {
+ objectName: "column"
add: Transition {
NumberAnimation {
properties: "y";
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/vertical-spacing.qml b/tests/auto/declarative/qdeclarativepositioners/data/vertical-spacing.qml
index 69a8256..1c5696b 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/vertical-spacing.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/vertical-spacing.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Column {
+ objectName: "column"
spacing: 10
Rectangle {
objectName: "one"
diff --git a/tests/auto/declarative/qdeclarativepositioners/data/vertical.qml b/tests/auto/declarative/qdeclarativepositioners/data/vertical.qml
index 856c180..cd777e2 100644
--- a/tests/auto/declarative/qdeclarativepositioners/data/vertical.qml
+++ b/tests/auto/declarative/qdeclarativepositioners/data/vertical.qml
@@ -4,6 +4,7 @@ Item {
width: 640
height: 480
Column {
+ objectName: "column"
Rectangle {
objectName: "one"
color: "red"
diff --git a/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp b/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp
index 9026566..08eac0a 100644
--- a/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp
+++ b/tests/auto/declarative/qdeclarativepositioners/tst_qdeclarativepositioners.cpp
@@ -94,6 +94,10 @@ void tst_QDeclarativePositioners::test_horizontal()
QCOMPARE(two->y(), 0.0);
QCOMPARE(three->x(), 70.0);
QCOMPARE(three->y(), 0.0);
+
+ QDeclarativeItem *row = canvas->rootObject()->findChild<QDeclarativeItem*>("row");
+ QCOMPARE(row->width(), 110.0);
+ QCOMPARE(row->height(), 50.0);
}
void tst_QDeclarativePositioners::test_horizontal_spacing()
@@ -115,6 +119,10 @@ void tst_QDeclarativePositioners::test_horizontal_spacing()
QCOMPARE(two->y(), 0.0);
QCOMPARE(three->x(), 90.0);
QCOMPARE(three->y(), 0.0);
+
+ QDeclarativeItem *row = canvas->rootObject()->findChild<QDeclarativeItem*>("row");
+ QCOMPARE(row->width(), 130.0);
+ QCOMPARE(row->height(), 50.0);
}
void tst_QDeclarativePositioners::test_horizontal_animated()
@@ -135,6 +143,11 @@ void tst_QDeclarativePositioners::test_horizontal_animated()
QCOMPARE(two->x(), -100.0);
QCOMPARE(three->x(), -100.0);
+ QDeclarativeItem *row = canvas->rootObject()->findChild<QDeclarativeItem*>("row");
+ QVERIFY(row);
+ QCOMPARE(row->width(), 100.0);
+ QCOMPARE(row->height(), 50.0);
+
//QTRY_COMPARE used instead of waiting for the expected time of animation completion
//Note that this means the duration of the animation is NOT tested
@@ -149,6 +162,11 @@ void tst_QDeclarativePositioners::test_horizontal_animated()
//Add 'two'
two->setOpacity(1.0);
QCOMPARE(two->opacity(), 1.0);
+
+ // New size should be immediate
+ QCOMPARE(row->width(), 150.0);
+ QCOMPARE(row->height(), 50.0);
+
QTest::qWait(0);//Let the animation start
QCOMPARE(two->x(), -100.0);
QCOMPARE(three->x(), 50.0);
@@ -176,6 +194,11 @@ void tst_QDeclarativePositioners::test_vertical()
QCOMPARE(two->y(), 50.0);
QCOMPARE(three->x(), 0.0);
QCOMPARE(three->y(), 60.0);
+
+ QDeclarativeItem *column = canvas->rootObject()->findChild<QDeclarativeItem*>("column");
+ QVERIFY(column);
+ QCOMPARE(column->height(), 80.0);
+ QCOMPARE(column->width(), 50.0);
}
void tst_QDeclarativePositioners::test_vertical_spacing()
@@ -197,6 +220,10 @@ void tst_QDeclarativePositioners::test_vertical_spacing()
QCOMPARE(two->y(), 60.0);
QCOMPARE(three->x(), 0.0);
QCOMPARE(three->y(), 80.0);
+
+ QDeclarativeItem *column = canvas->rootObject()->findChild<QDeclarativeItem*>("column");
+ QCOMPARE(column->height(), 100.0);
+ QCOMPARE(column->width(), 50.0);
}
void tst_QDeclarativePositioners::test_vertical_animated()
@@ -216,6 +243,11 @@ void tst_QDeclarativePositioners::test_vertical_animated()
QVERIFY(three != 0);
QCOMPARE(three->y(), -100.0);
+ QDeclarativeItem *column = canvas->rootObject()->findChild<QDeclarativeItem*>("column");
+ QVERIFY(column);
+ QCOMPARE(column->height(), 100.0);
+ QCOMPARE(column->width(), 50.0);
+
//QTRY_COMPARE used instead of waiting for the expected time of animation completion
//Note that this means the duration of the animation is NOT tested
@@ -230,6 +262,8 @@ void tst_QDeclarativePositioners::test_vertical_animated()
//Add 'two'
two->setOpacity(1.0);
QTRY_COMPARE(two->opacity(), 1.0);
+ QCOMPARE(column->height(), 150.0);
+ QCOMPARE(column->width(), 50.0);
QTest::qWait(0);//Let the animation start
QCOMPARE(two->y(), -100.0);
QCOMPARE(three->y(), 50.0);
@@ -264,6 +298,10 @@ void tst_QDeclarativePositioners::test_grid()
QCOMPARE(four->y(), 50.0);
QCOMPARE(five->x(), 50.0);
QCOMPARE(five->y(), 50.0);
+
+ QDeclarativeItem *grid = canvas->rootObject()->findChild<QDeclarativeItem*>("grid");
+ QCOMPARE(grid->width(), 120.0);
+ QCOMPARE(grid->height(), 100.0);
}
void tst_QDeclarativePositioners::test_grid_spacing()
@@ -291,6 +329,10 @@ void tst_QDeclarativePositioners::test_grid_spacing()
QCOMPARE(four->y(), 54.0);
QCOMPARE(five->x(), 54.0);
QCOMPARE(five->y(), 54.0);
+
+ QDeclarativeItem *grid = canvas->rootObject()->findChild<QDeclarativeItem*>("grid");
+ QCOMPARE(grid->width(), 128.0);
+ QCOMPARE(grid->height(), 104.0);
}
void tst_QDeclarativePositioners::test_grid_animated()
@@ -323,6 +365,11 @@ void tst_QDeclarativePositioners::test_grid_animated()
QCOMPARE(five->x(), -100.0);
QCOMPARE(five->y(), -100.0);
+ QDeclarativeItem *grid = canvas->rootObject()->findChild<QDeclarativeItem*>("grid");
+ QVERIFY(grid);
+ QCOMPARE(grid->width(), 150.0);
+ QCOMPARE(grid->height(), 100.0);
+
//QTRY_COMPARE used instead of waiting for the expected time of animation completion
//Note that this means the duration of the animation is NOT tested
@@ -341,6 +388,8 @@ void tst_QDeclarativePositioners::test_grid_animated()
//Add 'two'
two->setOpacity(1.0);
QCOMPARE(two->opacity(), 1.0);
+ QCOMPARE(grid->width(), 150.0);
+ QCOMPARE(grid->height(), 100.0);
QTest::qWait(0);//Let the animation start
QCOMPARE(two->x(), -100.0);
QCOMPARE(two->y(), -100.0);
@@ -468,6 +517,11 @@ void tst_QDeclarativePositioners::test_flow()
QCOMPARE(four->y(), 70.0);
QCOMPARE(five->x(), 50.0);
QCOMPARE(five->y(), 70.0);
+
+ QDeclarativeItem *flow = canvas->rootObject()->findChild<QDeclarativeItem*>("flow");
+ QVERIFY(flow);
+ QCOMPARE(flow->width(), 90.0);
+ QCOMPARE(flow->height(), 120.0);
}
void tst_QDeclarativePositioners::test_flow_resize()