[Qt-qml] "Screens"
henrik.hartz at nokia.com
henrik.hartz at nokia.com
Fri Jul 9 09:43:07 CEST 2010
Hi Jason,
On 8. juli 2010, at 23.02, ext Jason H wrote:
> I posted this to both interest and preview, since I didn't know about this list
> yet...
>
> First, I love the new designer tool for it... My only disappointment is I can't
> figure out how to do animation in anything other than the text editor.
We don't have a visual transition editor for Bauhaus. I'll leave it to the Bauhaus team to comment on this.
> Next, QML itself (and the viewer for it) is quite impressive. It is doing a
> better job than I am at minimizing CPU usage.
Glad to hear!
> Next, using the new 2.1 beta2 designer, I was not able to "import QtWebKit 1.0"
> what do I need to try the web view?
Do you get a specific error? Which platform are you running Qt on? Try running qmlviewer from the commandline, and ensure that all dependencies are correctly resolved so Qt and qmlviewer is able to load the plugin module.
> Finally, I do have questions. Maybe you can point me into the right part of the
> documentation, or answer directly.
>
> I want to basically have an application that has multiple independent QML
> "screens". But here's the kicker, I want them generated at run-time based on
> dynamic data. I can generate the text for the screens easily enough. But if a
> runtime condition of the system is met, I need to stop the current screen and
> put up a new one.
>
> How can I do this?
>
> 1 Screen 1
> 2 Screen 2
> 3 Screen 3
> 4 Goto 1
>
> Sometime later, an alert condition happens say, low coolant/fuel level. I want
> to interrupt screen2 and put up screen LowLevelAlert Once this alert is
> acknowledged or the level is fixed, I want it to return to the normal cycle.
>
> I don't mind coding something in C++, or JS. But how could I do this?
You should be able to control the visibility of each screen using states. And for the content, you could use the Loader element which would allow you to load generated QML content and populate an Item with it.
E.g. for the States case, you could use the when condition of the state to ensure its shown with the fuel level is low;
Rectangle {
id: fuelWarningPane
y: -200 // put it outside the visible area
}
State {
name: fuelWarning
when: fuel<0.2
PropertyChanges {
target: fuelWarningPane
y: 10 // set it to be inside the visible area, use a transition in addition to smoothly slide it in
}
}
Hope this helps.
Henrik
More information about the Qt-qml
mailing list