Showing the changes to libraries/script-engine/src/TabletScriptingInterface.cpp (1 of 3 files). Show all
Unified · Split
| @@ -14,6 +14,8 @@ · 13 unmodified lines | ||
| 14 | 14 | #include <PathUtils.h> |
| 15 | 15 | #include <RegisteredMetaTypes.h> |
| 16 | 16 | #include "ScriptEngineLogging.h" |
| 17 | +#include "DependencyManager.h" | |
| 18 | +#include "OffscreenUi.h" | |
| 17 | 19 | |
| 18 | 20 | TabletScriptingInterface::TabletScriptingInterface() { |
| 19 | 21 | qmlRegisterType<SoundEffect>("Hifi", 1, 0, "SoundEffect"); |
| @@ -56,6 +58,7 @@ void TabletScriptingInterface::setQmlTabletRoot(QString tabletId, QQuickItem* qm · 36 unmodified lines | ||
| 56 | 58 | static const char* TABLET_SOURCE_URL = "Tablet.qml"; |
| 57 | 59 | static const char* WEB_VIEW_SOURCE_URL = "TabletWebView.qml"; |
| 58 | 60 | static const char* LOADER_SOURCE_PROPERTY_NAME = "LoaderSource"; |
| 61 | +static const char* VRMENU_SOURCE_URL = "VrMenuView.qml"; | |
| 59 | 62 | |
| 60 | 63 | TabletProxy::TabletProxy(QString name) : _name(name) { |
| 61 | 64 | ; |
| @@ -95,6 +98,16 @@ void TabletProxy::setQmlTabletRoot(QQuickItem* qmlTabletRoot, QObject* qmlOffscr · 33 unmodified lines | ||
| 95 | 98 | } |
| 96 | 99 | } |
| 97 | 100 | |
| 101 | +void TabletProxy::gotoMenuScreen() { | |
| 102 | + if (_qmlTabletRoot) { | |
| 103 | + _qmlTabletRoot->setProperty(LOADER_SOURCE_PROPERTY_NAME, TABLET_SOURCE_URL); | |
| 104 | + auto loader = _qmlTabletRoot->findChild<QQuickItem*>("loader"); | |
| 105 | + auto offscreenUi = DependencyManager::get<OffscreenUi>(); | |
| 106 | + auto rootMenu = offscreenUi->getRootMenu(); | |
| 107 | + QMetaObject::invokeMethod(_qmlTabletRoot, "loadSource", Q_ARG(const QVariant&, QVariant(VRMENU_SOURCE_URL))); | |
| 108 | + } | |
| 109 | +} | |
| 110 | + | |
| 98 | 111 | void TabletProxy::gotoHomeScreen() { |
| 99 | 112 | if (_qmlTabletRoot) { |
| 100 | 113 | QString tabletSource = _qmlTabletRoot->property(LOADER_SOURCE_PROPERTY_NAME).toString(); |
| @@ -186,6 +199,10 @@ void TabletProxy::addButtonsToHomeScreen() { · 85 unmodified lines | ||
| 186 | 199 | QObject::disconnect(loader, SIGNAL(loaded()), this, SLOT(addButtonsToHomeScreen())); |
| 187 | 200 | } |
| 188 | 201 | |
| 202 | +void TabletProxy::addButtonsToMenuScreen() { | |
| 203 | + | |
| 204 | +} | |
| 205 | + | |
| 189 | 206 | void TabletProxy::removeButtonsFromHomeScreen() { |
| 190 | 207 | auto tabletScriptingInterface = DependencyManager::get<TabletScriptingInterface>(); |
| 191 | 208 | for (auto& buttonProxy : _tabletButtonProxies) { |