[Development] QAction-like API for QML

Bache-Wiig Jens Jens.Bache-Wiig at digia.com
Mon Dec 17 02:11:55 CET 2012


>> How about having ToolBar.addAction() for convenience? It is exactly what we do for widgets.
> 
> Widgets is a toolkit for an imperative language. Looping over lists
> and adding things individually is acceptable there. In a declarative
> language it is really not the right way to go. Even if you don't want
> to implement menus with ActionGroup, I'd still recommend that you have
> something like it (which can take a list of Action/QAction) so that
> you only need to list all the actions once, where-ever that may be,
> and then add them to other places en masse.

Agreed. But we can provide convenience even if we treat tool bars as a visual item. For instance, you would have to do this to follow the model approach of actions:

RowLayout { Repeater { model: myActions ; ToolButton { action: modelData} } }}

Granted, a bit too verbose. However with a little bit of convenience, we can for instance reduce this to just:  ActionRowLayout { model: myActions } 


Jens


More information about the Development mailing list