add separator support

This commit is contained in:
ZappoMan 2014-02-24 23:53:26 -08:00
parent 374b12980b
commit cb01c1ee10
3 changed files with 26 additions and 7 deletions

View file

@ -15,6 +15,7 @@ function setupMenus() {
Menu.addMenuItem("Foo","Foo item 2", "SHIFT+F" );
Menu.addMenuItem("Foo","Foo item 3", "META+F" );
Menu.addCheckableMenuItem("Foo","Foo item 4", "ALT+F", true);
Menu.addSeparator("Foo","Removable Tools");
Menu.addMenuItem("Foo","Remove Foo item 4");
Menu.addMenuItem("Foo","Remove Foo");
Menu.addMenu("Bar");
@ -23,6 +24,7 @@ function setupMenus() {
Menu.addMenu("Bar > Spam");
Menu.addMenuItem("Bar > Spam","Spam item 1");
Menu.addCheckableMenuItem("Bar > Spam","Spam item 2",false);
Menu.addSeparator("Bar > Spam","Other Items");
Menu.addMenuItem("Bar > Spam","Remove Spam item 2");
Menu.addMenuItem("Foo","Remove Spam item 2");
}

View file

@ -1393,6 +1393,14 @@ void Menu::removeMenu(const QString& menuName) {
}
}
void Menu::addSeparator(const QString& menuName, const QString& separatorName) {
QMenu* menuObj = getMenu(menuName);
if (menuObj) {
addDisabledActionAndSeparator(menuObj, separatorName);
}
}
void Menu::addMenuItem(const QString& menuName, const QString& menuitem, bool checkable, bool checked) {
QMenu* menuObj = getMenu(menuName);
if (menuObj) {
@ -1480,6 +1488,12 @@ void MenuScriptingInterface::removeMenu(const QString& menu) {
QMetaObject::invokeMethod(Menu::getInstance(), "removeMenu", Q_ARG(const QString&, menu));
}
void MenuScriptingInterface::addSeparator(const QString& menuName, const QString& separatorName) {
QMetaObject::invokeMethod(Menu::getInstance(), "addSeparator",
Q_ARG(const QString&, menuName),
Q_ARG(const QString&, separatorName));
}
void MenuScriptingInterface::addMenuItemWithKeyEvent(const QString& menu, const QString& menuitem, const KeyEvent& shortcutKey) {
QMetaObject::invokeMethod(Menu::getInstance(), "addMenuItem",
Q_ARG(const QString&, menu),

View file

@ -113,13 +113,14 @@ public slots:
void goTo();
void pasteToVoxel();
QMenu* addMenu(const QString& menu);
void removeMenu(const QString& menu);
void addMenuItem(const QString& menu, const QString& menuitem, bool checkable, bool checked);
void addMenuItem(const QString& menu, const QString& menuitem, const KeyEvent& shortcutKey, bool checkable, bool checked);
void addMenuItem(const QString& menu, const QString& menuitem, const QString& shortcutKey, bool checkable, bool checked);
void addMenuItem(const QString& topMenuName, const QString& menuitem, const QKeySequence& shortcutKey, bool checkable, bool checked);
void removeMenuItem(const QString& menu, const QString& menuitem);
QMenu* addMenu(const QString& menuName);
void removeMenu(const QString& menuName);
void addSeparator(const QString& menuName, const QString& separatorName);
void addMenuItem(const QString& menuName, const QString& menuitem, bool checkable, bool checked);
void addMenuItem(const QString& menuName, const QString& menuitem, const KeyEvent& shortcutKey, bool checkable, bool checked);
void addMenuItem(const QString& menuName, const QString& menuitem, const QString& shortcutKey, bool checkable, bool checked);
void addMenuItem(const QString& menuName, const QString& menuitem, const QKeySequence& shortcutKey, bool checkable, bool checked);
void removeMenuItem(const QString& menuName, const QString& menuitem);
private slots:
@ -335,6 +336,8 @@ public slots:
void addMenu(const QString& menuName);
void removeMenu(const QString& menuName);
void addSeparator(const QString& menuName, const QString& separatorName);
void addMenuItemWithKeyEvent(const QString& menu, const QString& menuitem, const KeyEvent& shortcutKey);
void addMenuItem(const QString& menuName, const QString& menuitem, const QString& shortcutKey);
void addMenuItem(const QString& menuName, const QString& menuitem);