summaryrefslogtreecommitdiffstats
path: root/tools/designer/src/lib/uilib/properties.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/designer/src/lib/uilib/properties.cpp')
-rw-r--r--tools/designer/src/lib/uilib/properties.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/tools/designer/src/lib/uilib/properties.cpp b/tools/designer/src/lib/uilib/properties.cpp
index 8eccee1..615aa8a 100644
--- a/tools/designer/src/lib/uilib/properties.cpp
+++ b/tools/designer/src/lib/uilib/properties.cpp
@@ -655,16 +655,21 @@ DomProperty *variantToDomProperty(QAbstractFormBuilder *afb, const QMetaObject *
case QVariant::Brush:
dom_prop->setElementBrush(afb->saveBrush(qvariant_cast<QBrush>(v)));
break;
- default:
+ default: {
+ const bool hadAttributeStdset = dom_prop->hasAttributeStdset();
+ const bool attributeStdset = dom_prop->attributeStdset();
delete dom_prop;
if (afb->resourceBuilder()->isResourceType(v)) {
dom_prop = afb->resourceBuilder()->saveResource(afb->workingDirectory(), v);
- if (dom_prop)
+ if (dom_prop) {
dom_prop->setAttributeName(pname);
+ if (hadAttributeStdset)
+ dom_prop->setAttributeStdset(attributeStdset);
+ }
break;
}
uiLibWarning(msgCannotWriteProperty(pname, v));
- return 0;
+ } return 0;
}
return dom_prop;
}