aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2018-02-21 23:11:25 +0100
committerJ-P Nurmi <jpnurmi@qt.io>2018-04-13 11:26:45 +0000
commitec6cc9921f4b804ed309b7dbfae6ee3b1cf3d8a7 (patch)
tree02e9b87f41a139557c12333cc5473c038e429578 /tests
parent3e3a4062ae8051d862b39420e0955ac5e9fbe7a2 (diff)
Control: add implicitContentWidth|Height properties
[ChangeLog][Controls][Control] Added implicitContentWidth and implicitContentHeight properties that can be used to simplify complex implicit size bindings. Change-Id: I6ccef572c013605058808ce2ad17f8bd82f49ef0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/controls/data/tst_control.qml47
-rw-r--r--tests/auto/controls/data/tst_frame.qml8
-rw-r--r--tests/auto/controls/data/tst_groupbox.qml8
-rw-r--r--tests/auto/controls/data/tst_page.qml8
-rw-r--r--tests/auto/controls/data/tst_pane.qml10
-rw-r--r--tests/auto/controls/data/tst_tabbar.qml24
-rw-r--r--tests/auto/controls/data/tst_toolbar.qml8
7 files changed, 105 insertions, 8 deletions
diff --git a/tests/auto/controls/data/tst_control.qml b/tests/auto/controls/data/tst_control.qml
index 29a76e50..c6158a3e 100644
--- a/tests/auto/controls/data/tst_control.qml
+++ b/tests/auto/controls/data/tst_control.qml
@@ -1140,6 +1140,12 @@ TestCase {
var implicitHeightSpy = createTemporaryObject(signalSpy, testCase, {target: control, signalName: "implicitHeightChanged"})
verify(implicitHeightSpy.valid)
+ var implicitContentWidthSpy = createTemporaryObject(signalSpy, testCase, {target: control, signalName: "implicitContentWidthChanged"})
+ verify(implicitContentWidthSpy.valid)
+
+ var implicitContentHeightSpy = createTemporaryObject(signalSpy, testCase, {target: control, signalName: "implicitContentHeightChanged"})
+ verify(implicitContentHeightSpy.valid)
+
var implicitBackgroundWidthSpy = createTemporaryObject(signalSpy, testCase, {target: control, signalName: "implicitBackgroundWidthChanged"})
verify(implicitBackgroundWidthSpy.valid)
@@ -1148,21 +1154,58 @@ TestCase {
var implicitWidthChanges = 0
var implicitHeightChanges = 0
+ var implicitContentWidthChanges = 0
+ var implicitContentHeightChanges = 0
var implicitBackgroundWidthChanges = 0
var implicitBackgroundHeightChanges = 0
compare(control.implicitWidth, 0)
compare(control.implicitHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
+ compare(control.implicitBackgroundWidth, 0)
+ compare(control.implicitBackgroundHeight, 0)
+
+ control.contentItem = rectangle.createObject(control, {implicitWidth: 10, implicitHeight: 20})
+ compare(control.implicitWidth, 10)
+ compare(control.implicitHeight, 20)
+ compare(control.implicitContentWidth, 10)
+ compare(control.implicitContentHeight, 20)
compare(control.implicitBackgroundWidth, 0)
compare(control.implicitBackgroundHeight, 0)
+ compare(implicitWidthSpy.count, ++implicitWidthChanges)
+ compare(implicitHeightSpy.count, ++implicitHeightChanges)
+ compare(implicitBackgroundWidthSpy.count, implicitBackgroundWidthChanges)
+ compare(implicitBackgroundHeightSpy.count, implicitBackgroundHeightChanges)
+ compare(implicitContentWidthSpy.count, ++implicitContentWidthChanges)
+ compare(implicitContentHeightSpy.count, ++implicitContentHeightChanges)
+
+ control.contentItem.implicitWidth += 1
+ control.contentItem.implicitHeight += 1
+ compare(control.implicitWidth, 11)
+ compare(control.implicitHeight, 21)
+ compare(control.implicitContentWidth, 11)
+ compare(control.implicitContentHeight, 21)
+ compare(control.implicitBackgroundWidth, 0)
+ compare(control.implicitBackgroundHeight, 0)
+ compare(implicitWidthSpy.count, ++implicitWidthChanges)
+ compare(implicitHeightSpy.count, ++implicitHeightChanges)
+ compare(implicitContentWidthSpy.count, ++implicitContentWidthChanges)
+ compare(implicitContentHeightSpy.count, ++implicitContentHeightChanges)
+ compare(implicitBackgroundWidthSpy.count, implicitBackgroundWidthChanges)
+ compare(implicitBackgroundHeightSpy.count, implicitBackgroundHeightChanges)
control.background = rectangle.createObject(control, {implicitWidth: 20, implicitHeight: 30})
compare(control.implicitWidth, 20)
compare(control.implicitHeight, 30)
+ compare(control.implicitContentWidth,11)
+ compare(control.implicitContentHeight, 21)
compare(control.implicitBackgroundWidth, 20)
compare(control.implicitBackgroundHeight, 30)
compare(implicitWidthSpy.count, ++implicitWidthChanges)
compare(implicitHeightSpy.count, ++implicitHeightChanges)
+ compare(implicitContentWidthSpy.count, implicitContentWidthChanges)
+ compare(implicitContentHeightSpy.count, implicitContentHeightChanges)
compare(implicitBackgroundWidthSpy.count, ++implicitBackgroundWidthChanges)
compare(implicitBackgroundHeightSpy.count, ++implicitBackgroundHeightChanges)
@@ -1170,10 +1213,14 @@ TestCase {
control.background.implicitHeight += 1
compare(control.implicitWidth, 21)
compare(control.implicitHeight, 31)
+ compare(control.implicitContentWidth, 11)
+ compare(control.implicitContentHeight, 21)
compare(control.implicitBackgroundWidth, 21)
compare(control.implicitBackgroundHeight, 31)
compare(implicitWidthSpy.count, ++implicitWidthChanges)
compare(implicitHeightSpy.count, ++implicitHeightChanges)
+ compare(implicitContentWidthSpy.count, implicitContentWidthChanges)
+ compare(implicitContentHeightSpy.count, implicitContentHeightChanges)
compare(implicitBackgroundWidthSpy.count, ++implicitBackgroundWidthChanges)
compare(implicitBackgroundHeightSpy.count, ++implicitBackgroundHeightChanges)
}
diff --git a/tests/auto/controls/data/tst_frame.qml b/tests/auto/controls/data/tst_frame.qml
index c6ecdb43..95838155 100644
--- a/tests/auto/controls/data/tst_frame.qml
+++ b/tests/auto/controls/data/tst_frame.qml
@@ -106,6 +106,8 @@ TestCase {
verify(control.contentItem)
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
}
function test_oneChild() {
@@ -114,6 +116,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
}
@@ -124,6 +128,8 @@ TestCase {
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
verify(control.implicitWidth > 0)
verify(control.implicitHeight > 0)
}
@@ -134,6 +140,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
}
diff --git a/tests/auto/controls/data/tst_groupbox.qml b/tests/auto/controls/data/tst_groupbox.qml
index 28de0479..446283d8 100644
--- a/tests/auto/controls/data/tst_groupbox.qml
+++ b/tests/auto/controls/data/tst_groupbox.qml
@@ -106,6 +106,8 @@ TestCase {
verify(control.contentItem)
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
}
function test_oneChild() {
@@ -114,6 +116,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
}
@@ -124,6 +128,8 @@ TestCase {
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
verify(control.implicitWidth > 0)
verify(control.implicitHeight > 0)
}
@@ -134,6 +140,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
}
diff --git a/tests/auto/controls/data/tst_page.qml b/tests/auto/controls/data/tst_page.qml
index 4fb2d089..5d5a7e8b 100644
--- a/tests/auto/controls/data/tst_page.qml
+++ b/tests/auto/controls/data/tst_page.qml
@@ -132,6 +132,8 @@ TestCase {
verify(control.contentItem)
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
}
function test_oneChild() {
@@ -140,6 +142,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
compare(control.implicitWidth, 100 + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, 30 + control.topPadding + control.bottomPadding)
}
@@ -150,6 +154,8 @@ TestCase {
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
compare(control.implicitWidth, Math.max(control.leftPadding + control.rightPadding,
control.background ? control.background.implicitWidth : 0))
compare(control.implicitHeight, Math.max(control.topPadding + control.bottomPadding,
@@ -162,6 +168,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
compare(control.implicitWidth, 100 + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, 30 + control.topPadding + control.bottomPadding)
}
diff --git a/tests/auto/controls/data/tst_pane.qml b/tests/auto/controls/data/tst_pane.qml
index 019e3916..8976d4f9 100644
--- a/tests/auto/controls/data/tst_pane.qml
+++ b/tests/auto/controls/data/tst_pane.qml
@@ -119,6 +119,8 @@ TestCase {
verify(control.contentItem)
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
}
function test_oneChild() {
@@ -127,6 +129,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
@@ -136,6 +140,8 @@ TestCase {
compare(control.contentWidth, 200)
compare(control.contentHeight, 40)
+ compare(control.implicitContentWidth, 200)
+ compare(control.implicitContentHeight, 40)
verify(control.implicitWidth > 200)
verify(control.implicitHeight > 40)
}
@@ -146,6 +152,8 @@ TestCase {
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
verify(control.implicitWidth > 0)
verify(control.implicitHeight > 0)
}
@@ -156,6 +164,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth > 100)
verify(control.implicitHeight > 30)
}
diff --git a/tests/auto/controls/data/tst_tabbar.qml b/tests/auto/controls/data/tst_tabbar.qml
index adb27f78..58917d84 100644
--- a/tests/auto/controls/data/tst_tabbar.qml
+++ b/tests/auto/controls/data/tst_tabbar.qml
@@ -514,8 +514,10 @@ TestCase {
control.addItem(tab1)
tryCompare(tab1, "width", control.width)
compare(tab1.height, control.height)
- compare(control.contentWidth, tab1.implicitWidth)
- compare(control.contentHeight, tab1.implicitHeight)
+ compare(control.implicitContentWidth, tab1.implicitWidth)
+ compare(control.implicitContentHeight, tab1.implicitHeight)
+ compare(control.contentWidth, control.implicitContentWidth)
+ compare(control.contentHeight, control.implicitContentHeight)
compare(control.implicitWidth, control.contentWidth + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, control.contentHeight + control.topPadding + control.bottomPadding)
@@ -525,8 +527,10 @@ TestCase {
compare(tab1.height, control.height)
compare(tab2.width, (control.width - data.spacing) / 2)
compare(tab2.height, control.height)
- compare(control.contentWidth, tab1.implicitWidth + tab2.implicitWidth + data.spacing)
- compare(control.contentHeight, tab2.implicitHeight)
+ compare(control.implicitContentWidth, tab1.implicitWidth + tab2.implicitWidth + data.spacing)
+ compare(control.implicitContentHeight, tab2.implicitHeight)
+ compare(control.contentWidth, control.implicitContentWidth)
+ compare(control.contentHeight, control.implicitContentHeight)
compare(control.implicitWidth, control.contentWidth + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, control.contentHeight + control.topPadding + control.bottomPadding)
@@ -542,8 +546,10 @@ TestCase {
compare(tab3.y, (control.height - tab3.height) / 2)
compare(tab3.width, 50)
compare(tab3.height, tab1.implicitHeight - 10)
- compare(control.contentWidth, tab1.implicitWidth + tab2.implicitWidth + tab3.width + 2 * data.spacing)
- compare(control.contentHeight, tab2.implicitHeight)
+ compare(control.implicitContentWidth, tab1.implicitWidth + tab2.implicitWidth + tab3.width + 2 * data.spacing)
+ compare(control.implicitContentHeight, tab2.implicitHeight)
+ compare(control.contentWidth, control.implicitContentWidth)
+ compare(control.contentHeight, control.implicitContentHeight)
compare(control.implicitWidth, control.contentWidth + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, control.contentHeight + control.topPadding + control.bottomPadding)
@@ -556,8 +562,10 @@ TestCase {
compare(tab2.height, control.height)
compare(tab3.width, expectedWidth)
compare(tab3.height, tab3.implicitHeight)
- compare(control.contentWidth, tab1.implicitWidth + tab2.implicitWidth + tab3.implicitWidth + 2 * data.spacing)
- compare(control.contentHeight, tab2.implicitHeight)
+ compare(control.implicitContentWidth, tab1.implicitWidth + tab2.implicitWidth + tab3.implicitWidth + 2 * data.spacing)
+ compare(control.implicitContentHeight, tab2.implicitHeight)
+ compare(control.contentWidth, control.implicitContentWidth)
+ compare(control.contentHeight, control.implicitContentHeight)
compare(control.implicitWidth, control.contentWidth + control.leftPadding + control.rightPadding)
compare(control.implicitHeight, control.contentHeight + control.topPadding + control.bottomPadding)
diff --git a/tests/auto/controls/data/tst_toolbar.qml b/tests/auto/controls/data/tst_toolbar.qml
index 085c491d..c0f0845c 100644
--- a/tests/auto/controls/data/tst_toolbar.qml
+++ b/tests/auto/controls/data/tst_toolbar.qml
@@ -106,6 +106,8 @@ TestCase {
verify(control.contentItem)
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
}
function test_oneChild() {
@@ -114,6 +116,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth >= 100)
verify(control.implicitHeight >= 30)
}
@@ -124,6 +128,8 @@ TestCase {
compare(control.contentWidth, 0)
compare(control.contentHeight, 0)
+ compare(control.implicitContentWidth, 0)
+ compare(control.implicitContentHeight, 0)
verify(control.implicitWidth >= 0)
verify(control.implicitHeight >= 0)
}
@@ -134,6 +140,8 @@ TestCase {
compare(control.contentWidth, 100)
compare(control.contentHeight, 30)
+ compare(control.implicitContentWidth, 100)
+ compare(control.implicitContentHeight, 30)
verify(control.implicitWidth >= 100)
verify(control.implicitHeight >= 30)
}