Details
-
Suggestion
-
Resolution: Unresolved
-
P2: Important
-
None
Description
User contacted Qt support with following improvement idea:
"
In order to style my controls, i have wrapped some of theme in My... components (e.g TextField MyTextField)
Problem is that I need to alias by hand all properties of the wrapped TextField by hand.
So, conceptually
MyTextField { // can this list be made more simple ? property alias text : field.text property alias elide : field.elide // etc RowLayout { Image{ } TextField { id : field } }
"
Users improvement idea:
"
Perhaps something similar to the default property ?
property default alias : componentId //eg. Item { // would alias all properties of subItem property default alias : subItem Text { id : subItem } }
perhaps one could consider 'merging' where the last alias overrules any alias
property previously aliased ?
Item { // would alias all properties of subItem1 property default alias : subItem1 // this alias exports all properties of subitem2 overruling any previous aliases ? (i.e. subitem1 has no valid aliases anymore as both are Text Items property default alias : subItem2 // perhaps also allowing this : overrule subItem2 text alias cause all alliases that are NOT text to be subitem2 but only text to be subitem1 property alias text : subItem1.text Text { id : subItem1 } Text { id : subItem2 } }
perhaps with an unalias which would break the alias of default exported
aliases
Item { // would alias all properties of subItem1 property default alias : subItem1 // breaks the alias for subitem1.text property unalias : subItem1.text Text { id : subItem1 } }
or allow for multiple aliases (e.g set all colors of items
Item { property alias color : [ r1.color, r2.color ] Rectangle { id : r1 } Rectangle { id : r2 } }
"