History

Switching to a wrapper mechanism for VR menus

Brad Davis committed 11 years ago

Commit a96f69a1 parent ee3058830 files · +1335 −1045Browse files

Showing the changes to interface/src/scripting/MenuScriptingInterface.cpp (1 of 30 files). Show all

Unified · Split

interface/src/scripting/MenuScriptingInterface.cpp+35−13
@@ -28,50 +28,72 @@ void MenuScriptingInterface::menuItemTriggered() { · 27 unmodified lines
28}28}
29 29
30void MenuScriptingInterface::addMenu(const QString& menu) {30void MenuScriptingInterface::addMenu(const QString& menu) {
31 Menu::getInstance()->addMenu("", menu);31 QMetaObject::invokeMethod(Menu::getInstance(), "addMenu", Q_ARG(const QString&, menu));
32}32}
33 33
34void MenuScriptingInterface::removeMenu(const QString& menu) {34void MenuScriptingInterface::removeMenu(const QString& menu) {
35 Menu::getInstance()->removeMenu(menu);35 QMetaObject::invokeMethod(Menu::getInstance(), "removeMenu", Q_ARG(const QString&, menu));
36}36}
37 37
38bool MenuScriptingInterface::menuExists(const QString& menu) {38bool MenuScriptingInterface::menuExists(const QString& menu) {
39 return Menu::getInstance()->menuExists(menu);39 bool result;
40 QMetaObject::invokeMethod(Menu::getInstance(), "menuExists", Qt::BlockingQueuedConnection,
41 Q_RETURN_ARG(bool, result),
42 Q_ARG(const QString&, menu));
43 return result;
40}44}
41 45
42void MenuScriptingInterface::addSeparator(const QString& menuName, const QString& separatorName) {46void MenuScriptingInterface::addSeparator(const QString& menuName, const QString& separatorName) {
43 Menu::getInstance()->addSeparator(menuName, separatorName);47 QMetaObject::invokeMethod(Menu::getInstance(), "addSeparator",
48 Q_ARG(const QString&, menuName),
49 Q_ARG(const QString&, separatorName));
44}50}
45 51
46void MenuScriptingInterface::removeSeparator(const QString& menuName, const QString& separatorName) {52void MenuScriptingInterface::removeSeparator(const QString& menuName, const QString& separatorName) {
47 Menu::getInstance()->removeSeparator(menuName, separatorName);53 QMetaObject::invokeMethod(Menu::getInstance(), "removeSeparator",
54 Q_ARG(const QString&, menuName),
55 Q_ARG(const QString&, separatorName));
48}56}
49 57
50void MenuScriptingInterface::addMenuItem(const MenuItemProperties& properties) {58void MenuScriptingInterface::addMenuItem(const MenuItemProperties& properties) {
51 Menu::getInstance()->addMenuItem(properties);59 QMetaObject::invokeMethod(Menu::getInstance(), "addMenuItem", Q_ARG(const MenuItemProperties&, properties));
52}60}
53 61
54void MenuScriptingInterface::addMenuItem(const QString& menu, const QString& menuitem, const QString& shortcutKey) {62void MenuScriptingInterface::addMenuItem(const QString& menu, const QString& menuitem, const QString& shortcutKey) {
55 Menu::getInstance()->addItem(menu, menuitem);63 MenuItemProperties properties(menu, menuitem, shortcutKey);
56 Menu::getInstance()->setItemShortcut(menuitem, shortcutKey);64 QMetaObject::invokeMethod(Menu::getInstance(), "addMenuItem", Q_ARG(const MenuItemProperties&, properties));
57}65}
58 66
59void MenuScriptingInterface::addMenuItem(const QString& menu, const QString& menuitem) {67void MenuScriptingInterface::addMenuItem(const QString& menu, const QString& menuitem) {
60 Menu::getInstance()->addItem(menu, menuitem);68 MenuItemProperties properties(menu, menuitem);
69 QMetaObject::invokeMethod(Menu::getInstance(), "addMenuItem", Q_ARG(const MenuItemProperties&, properties));
61}70}
62 71
63void MenuScriptingInterface::removeMenuItem(const QString& menu, const QString& menuitem) {72void MenuScriptingInterface::removeMenuItem(const QString& menu, const QString& menuitem) {
64 Menu::getInstance()->removeItem(menuitem);73 QMetaObject::invokeMethod(Menu::getInstance(), "removeMenuItem",
74 Q_ARG(const QString&, menu),
75 Q_ARG(const QString&, menuitem));
65};76};
66 77
67bool MenuScriptingInterface::menuItemExists(const QString& menu, const QString& menuitem) {78bool MenuScriptingInterface::menuItemExists(const QString& menu, const QString& menuitem) {
68 return Menu::getInstance()->itemExists(menu, menuitem);79 bool result;
80 QMetaObject::invokeMethod(Menu::getInstance(), "menuItemExists", Qt::BlockingQueuedConnection,
81 Q_RETURN_ARG(bool, result),
82 Q_ARG(const QString&, menu),
83 Q_ARG(const QString&, menuitem));
84 return result;
69}85}
70 86
71bool MenuScriptingInterface::isOptionChecked(const QString& menuOption) {87bool MenuScriptingInterface::isOptionChecked(const QString& menuOption) {
72 return Menu::getInstance()->isChecked(menuOption);88 bool result;
89 QMetaObject::invokeMethod(Menu::getInstance(), "isOptionChecked", Qt::BlockingQueuedConnection,
90 Q_RETURN_ARG(bool, result),
91 Q_ARG(const QString&, menuOption));
92 return result;
73}93}
74 94
75void MenuScriptingInterface::setIsOptionChecked(const QString& menuOption, bool isChecked) {95void MenuScriptingInterface::setIsOptionChecked(const QString& menuOption, bool isChecked) {
76 Menu::getInstance()->setChecked(menuOption, isChecked);96 QMetaObject::invokeMethod(Menu::getInstance(), "setIsOptionChecked", Qt::BlockingQueuedConnection,
97 Q_ARG(const QString&, menuOption),
98 Q_ARG(bool, isChecked));
77}99}