From a0cc1951b30282a367db8fd9933101a6c851c15b Mon Sep 17 00:00:00 2001 From: Gabriel de Dietrich Date: Mon, 8 Apr 2013 18:13:29 +0200 Subject: Menu: Add API for inserting items, separators, submenus In particular, Menu::insertItem() is now overloaded. It can take a string as second parameter, in which case it will create a new MenuItem and return it after inserting it, or it can take any QtMenuBase based class pointer and just insert it. The latter use case is useful when populating a menu with the Instantiator type. Currently, addSeparator and insertSeparator don't return any value since MenuSeparators are not configurable. Change-Id: I9659ea0ee9d76ed5163316be1a5c7a8f03eaa28f Reviewed-by: J-P Nurmi --- src/controls/Menu.qml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/controls/Menu.qml') diff --git a/src/controls/Menu.qml b/src/controls/Menu.qml index 6c2d3cc4..1df73356 100644 --- a/src/controls/Menu.qml +++ b/src/controls/Menu.qml @@ -105,14 +105,23 @@ MenuPrivate { /*! \internal \omit - See qtmenu.cpp. + Documented in qtmenu.cpp. \endomit */ function addMenu(title) { + return root.insertMenu(items.length, title) + } + + /*! \internal + \omit + Documented in qtmenu.cpp. + \endomit + */ + function insertMenu(index, title) { if (!__selfComponent) __selfComponent = Qt.createComponent("Menu.qml", root) var submenu = __selfComponent.createObject(__selfComponent, { "title": title }) - root.insertItem(items.length, submenu) + root.insertItem(index, submenu) return submenu } -- cgit v1.2.1