diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2018-02-21 23:11:25 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2018-04-13 11:26:45 +0000 |
commit | ec6cc9921f4b804ed309b7dbfae6ee3b1cf3d8a7 (patch) | |
tree | 02e9b87f41a139557c12333cc5473c038e429578 /tests | |
parent | 3e3a4062ae8051d862b39420e0955ac5e9fbe7a2 (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.qml | 47 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_frame.qml | 8 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_groupbox.qml | 8 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_page.qml | 8 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_pane.qml | 10 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_tabbar.qml | 24 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_toolbar.qml | 8 |
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) } |