[Interest] Awkwardness of delegates in heterogenous ListViews
Elvis Stansvik
elvstone at gmail.com
Wed Jun 8 15:34:12 CEST 2016
2016-06-08 15:32 GMT+02:00 Elvis Stansvik <elvstone at gmail.com>:
> Hi all,
>
> I'm currently using a "type" role in my items and then a Loader as
> delegate, to give a level of indirection and let me choose the actual
> delegate based on the "type" of the item.
>
> This explains it better (from my ListView):
>
> delegate: Loader {
> sourceComponent: {
> switch (type) {
> case "color":
> return colorDelegate
> case "flag":
> return flagDelegate
> ...
> }
> }
>
> Component {
> id: colorDelegate
>
> ColorDelegate { }
> }
>
> Component {
> id: flagDelegate
>
> FlagDelegate { }
> }
>
> ...
> }
>
> What I don't like with this approach is that inside my delegates, e.g.
> ColorDelegate.qml, I have to use parent.ListView.view.model to get a
I should clarify: I have to use this notation since it is the parent
(the Loader) which is the real delegate and has the ListView attached
properties.
Elvis
> reference to the model (needed for editing operations). The use of
> "parent" here assumes a certain layout, but I see no other way :(
>
> How have others solved the issue of delegates for heterogenous lists?
>
> Best regards,
> Elvis
More information about the Interest
mailing list