[Interest] Define map of static items in QML
Martin Leutelt
martin.leutelt at basyskom.com
Wed Mar 30 10:15:57 CEST 2016
From: Elvis Stansvik <elvstone at gmail.com>
To: "interest at qt-project.org Interest" <interest at qt-project.org>
Sent: 3/30/2016 8:43 AM
Subject: Re: [Interest] Define map of static items in QML
Den 30 mar 2016 8:36 fm skrev "Elvis Stansvik" <elvstone at gmail.com>:
>
> Hi all,
>
> I can understand why I can do
>
> property Item foo: Foo {}
> property Item bar: Bar {}
> property variant items: {
> "foo": foo,
> "bar": bar
> }
>
> but not
>
> property variant items: {
> "foo": Foo{},
> "bar": Bar{}
> }
>
> The first opening { in the second example probably puts me in JS territory, where the Item {} syntax is not understood as a static definition of an item.
>
> However, is there some way of defining a map of static items like this, without having to bind the item instances to properties first? Such that I can later do e.g. items["foo"] to access an item?
You can of course define your objects like this:
Foo {
id: foo
}
Bar {
id: bar
}
property variant items: {
"foo": foo,
"bar": bar
}
Hope that helps...
I should state my use case as well: I'm doing a small page based embedded app (less than 20 pages), based on a StackView, where I'm thankfully not hardware constrained (it's a fast PC). So I have no reason to use Loader to load pages dynamically but was thinking of keeping them all statically in a map, so that I can switch page based on the name of the page (e.g "WelcomeScreen") by calling some function or perhaps emitting a signal with the name as argument.
Elvis
>
> Thanks in advance,
> Elvis
_______________________________________________
Interest mailing list
Interest at qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160330/e366701f/attachment.html>
More information about the Interest
mailing list