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