With this kind of dynamic programming environment it might be a fragile 
development practice to rely on the assumption that the framework will 
load elements in the same order all the way now and in the future. What 
about rather writing a C++ plugin that will construct the qml scene 
dynamically exactly in the order you wish?

I definitely don't know your use case so I'd be interested to hear a bit 
of it really. It might well be a useful trick for some development time 
hack or a quick&dirty demo :)

Br,
Matti

24.11.2010 10:47, ext-ivailo.il...@nokia.com kirjoitti:
> Hello,
>
> as I got this is how it works now. The first one is the parent onCompleted 
> and then we have all the child events poped up from the tail somehow.
>
> though it looks strange - in the "normal" HTML / Js or WEB in general you 
> shall expect them to be fom top-to-bottom, or in a complete mess. So this 
> queue pop-up behaviour is a little strange.
>
> But if this is how it should be it's ok for me at least - if I know how it 
> should work I could structure my stuff for it.
>
> But if it's still in progress of development and if you could think of 
> another approach I think many people will like to see the other behaviour - 
> form top to bottom. So to make it more clear the "better" result from this 
> example for us will be:
>
> one
> two
> three
> screen
>
> I know that this is structurally incorrect for you, as you cannot start 
> invoking events before you have full initialization, but if you can reverse 
> the stack with events and call them in this way it will be great :-P
>
> best regards,
> Ivo
> ________________________________________
> From: Pasion Jerome (Nokia-MS-Qt/Oslo)
> Sent: Tuesday, November 23, 2010 9:29 PM
> To: Iliev Ivailo (EXT-ProData/Berlin); Kennedy Aaron (Nokia-MS-Qt/Brisbane)
> Cc: qt-qml@trolltech.com
> Subject: RE: [Qt-qml] How QML file is parsed and linked and executed?
>
> Hello,
>
> Example:
> ============================
> import QtQuick 1.0
>
> Rectangle {
>
> id:screen; width: 100; height: 100
>
> Rectangle {
>      id: one; width: 10; height: 10
>      Component.onCompleted: console.log("one")
> }
> Rectangle {
>      id: two; width: 10; height: 10
>      Component.onCompleted: console.log("two")
> }
> Rectangle {
>      id: three; width: 10; height: 10
>      Component.onCompleted: console.log("three")
> }
>
> Component.onCompleted: console.log("screen")
> }
> =================================
> output:
> screen
> three
> two
> one
>
> The top level's handler is first, then the children.
> Is this a reasonable generalization to make?
>
> Cheers,
> Jerome P.
> ________________________________________
> From: qt-qml-boun...@trolltech.com [qt-qml-boun...@trolltech.com] On Behalf 
> Of Iliev Ivailo (EXT-ProData/Berlin)
> Sent: Tuesday, November 23, 2010 9:23 AM
> To: Kennedy Aaron (Nokia-MS-Qt/Brisbane)
> Cc: qt-qml@trolltech.com
> Subject: Re: [Qt-qml] How QML file is parsed and linked and executed?
>
> Hi,
>
> ok, thanks :)
>
> best regards,
> Ivo
>
> ________________________________
> From: Kennedy Aaron (Nokia-MS-Qt/Brisbane)
> Sent: Tuesday, November 23, 2010 3:03 AM
> To: Iliev Ivailo (EXT-ProData/Berlin)
> Cc:<qt-qml@trolltech.com>
> Subject: Re: [Qt-qml] How QML file is parsed and linked and executed?
>
> Hi,
>
> As it says in the documentation, the order Component.onCompleted handlers are 
> executed is not defined.
>
> Roughly speaking (as there are exceptions), elements are instantiated from 
> top to bottom, and the onCompleted signals are executed in reverse order of 
> instantiation.  But don't rely on that behaviour.
>
> Cheers,
>
> Aaron
>
>
> On 22/11/2010, at 6:49 PM, ext 
> ext-ivailo.il...@nokia.com<mailto:ext-ivailo.il...@nokia.com>  wrote:
>
> Hi,
>
> as you all know HTML and JavaScript are executed / or evaluated / form the 
> TOP to BOTTOM. So if you have a source of 100 lines it will start from line 1 
> and will finish with the last one. When you know this you can somehow figure 
> our some tricks you want to make and know what to expect.
>
> I have a QML file that I want to trace how it's reacting.
>
> Rectangle {onCompleted: {console.col("m1")}}
> Rectangle {onCompleted: {console.col("m2")}}
>
> and in the console output I have m2, m1.
>
> so does it mean that in QML we have stack popup priority of structure 
> handling - you parse it from top to bottom and execute it form bottom to top? 
> does it mean that my "later" element will always have Component.onCompleted 
> "before"? Or this reverse order is just temporary or coincidence on my 
> machine or we shall not  expect any order of loading - "everything will come 
> when it comes"?
>
> Best Regards,
> Ivo
> _______________________________________________
> Qt-qml mailing list
> Qt-qml@trolltech.com<mailto:Qt-qml@trolltech.com>
> http://lists.trolltech.com/mailman/listinfo/qt-qml
>
>
> _______________________________________________
> Qt-qml mailing list
> Qt-qml@trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-qml
_______________________________________________
Qt-qml mailing list
Qt-qml@trolltech.com
http://lists.trolltech.com/mailman/listinfo/qt-qml

Reply via email to