diff options
-rw-r--r-- | src/quicktemplates2/qquickicon.cpp | 10 | ||||
-rw-r--r-- | tests/auto/controls/data/tst_abstractbutton.qml | 8 |
2 files changed, 12 insertions, 6 deletions
diff --git a/src/quicktemplates2/qquickicon.cpp b/src/quicktemplates2/qquickicon.cpp index 1b8f4797..bfa2f8c1 100644 --- a/src/quicktemplates2/qquickicon.cpp +++ b/src/quicktemplates2/qquickicon.cpp @@ -204,19 +204,19 @@ QQuickIcon QQuickIcon::resolve(const QQuickIcon &other) const QQuickIcon resolved = *this; if (!(d->resolveMask & QQuickIconPrivate::NameResolved)) - resolved.setName(other.name()); + resolved.d->name = other.name(); if (!(d->resolveMask & QQuickIconPrivate::SourceResolved)) - resolved.setSource(other.source()); + resolved.d->source = other.source(); if (!(d->resolveMask & QQuickIconPrivate::WidthResolved)) - resolved.setWidth(other.width()); + resolved.d->width = other.width(); if (!(d->resolveMask & QQuickIconPrivate::HeightResolved)) - resolved.setHeight(other.height()); + resolved.d->height = other.height(); if (!(d->resolveMask & QQuickIconPrivate::ColorResolved)) - resolved.setColor(other.color()); + resolved.d->color = other.color(); return resolved; } diff --git a/tests/auto/controls/data/tst_abstractbutton.qml b/tests/auto/controls/data/tst_abstractbutton.qml index 80155f69..ee26a6d6 100644 --- a/tests/auto/controls/data/tst_abstractbutton.qml +++ b/tests/auto/controls/data/tst_abstractbutton.qml @@ -599,7 +599,7 @@ TestCase { AbstractButton { action: Action { text: "Default" - icon.name: "default" + icon.name: checked ? "checked" : "unchecked" icon.source: "qrc:/icons/default.png" checkable: true checked: true @@ -617,6 +617,7 @@ TestCase { compare(control.checkable, true) compare(control.checked, true) compare(control.enabled, false) + compare(control.icon.name, "checked") var textSpy = signalSpy.createObject(control, { target: control, signalName: "textChanged" }) verify(textSpy.valid) @@ -630,6 +631,7 @@ TestCase { compare(control.checkable, false) // propagates compare(control.checked, false) // propagates compare(control.enabled, true) // propagates + compare(control.icon.name, "unchecked") // propagates compare(textSpy.count, 1) // changes via button @@ -637,19 +639,23 @@ TestCase { control.checkable = true control.checked = true control.enabled = false + control.icon.name = "default" compare(control.text, "Button") compare(control.checkable, true) compare(control.checked, true) compare(control.enabled, false) + compare(control.icon.name, "default") compare(control.action.text, "Action") // does NOT propagate compare(control.action.checkable, true) // propagates compare(control.action.checked, true) // propagates compare(control.action.enabled, true) // does NOT propagate + compare(control.action.icon.name, control.action.checked ? "checked" : "unchecked") // does NOT propagate compare(textSpy.count, 2) // remove the action so that only the button's properties are left control.action = null compare(control.text, "Button") + compare(control.icon.name, "default") compare(textSpy.count, 2) // setting an action while button has a particular property set |