Hi, Michael-- >>Charley spaketh: >> I wrote my own "layout" type class by hooking >> into onChildrenChanged which is triggered on >> parent changed, and it works great: >> >> Item { >> id: myItem >> onChildrenChanged: { >> myItem.myUpdateChildrenPlacement() >> } >> >> function myUpdateChildrenPlacement() { >> for(var i= 0; i < myItem.children.length; ++i) { >> myItem.children[i].x = 13; >> myItem.children[i].y = 42; >> >> // HOW TO APPLY A TRANSFORM? LIKE: >> //NOT WORK: myItem.children[i].translate += Rotation { ...} >> } >> } >> } >> >> I know the "translate" is read-only, and that you would >> typically define the Rotation{} when you defined the >> (child) item.
Michael respondeth: > I think you mean "transform" here? The following works for me, > using HEAD (if it isn't working for you, it may be that a required > fix is coming in 4.7.1): > <snip, code that works> Oh, thanks! Your code works for me: Yes, I meant "transform", and I didn't actually attempt to *overwrite* the value because the docs seemed to suggest it was read-only: <http://doc.qt.nokia.com/4.7/qml-item.html#transform-prop> ...Are the docs incorrect, or am I reading them improperly? (I find the "read-only" moniker to be quite helpful on all the property documentation to which it applies. For example, you'll notice the "Item.transformOrigin" below it is *not* read only, so I know I can overwrite it directly.) > However, there isn't any built-in way to *append* to > a list property (the rotation would replace any > transforms currently on the item). Thanks -- actually, your example works for me as-is, I currently just want to overwrite anyway. (If you forced me to think about the problem, I'm not sure if it's appropriate to *append* transforms at all from within MyNewLayoutElement -- I probably should think about that.) > You should be able to use one of the techniques described at > http://doc.qt.nokia.com/4.7/qdeclarativedynamicobjects.html > to dynamically create a Rotation element for each child. Ah! Good reading. I need to read that again. > Just in case you haven't noticed them before, I'll also > mention that there are also simple "rotation" and "scale" > properties that would be easier to manipulate, assuming > you didn't need the full features offered by Rotation, etc. Very good point -- thanks. In this case, I'm actually animating "angle" around the Y-axis, so I needed the Rotation {}. Thanks very much for your help! (I think I'm starting to get the hang of this QML thing.) --charley _______________________________________________ Qt-qml mailing list Qt-qml@trolltech.com http://lists.trolltech.com/mailman/listinfo/qt-qml