first commit

This commit is contained in:
Dante Ruiz 2017-01-04 23:47:18 +00:00
parent 28c8d527df
commit c99f897db1
3 changed files with 21 additions and 1 deletions

View file

@ -14,6 +14,8 @@
#include <PathUtils.h>
#include <RegisteredMetaTypes.h>
#include "ScriptEngineLogging.h"
#include "DependencyManager.h"
#include "OffscreenUi.h"
TabletScriptingInterface::TabletScriptingInterface() {
qmlRegisterType<SoundEffect>("Hifi", 1, 0, "SoundEffect");
@ -56,6 +58,7 @@ void TabletScriptingInterface::setQmlTabletRoot(QString tabletId, QQuickItem* qm
static const char* TABLET_SOURCE_URL = "Tablet.qml";
static const char* WEB_VIEW_SOURCE_URL = "TabletWebView.qml";
static const char* LOADER_SOURCE_PROPERTY_NAME = "LoaderSource";
static const char* VRMENU_SOURCE_URL = "VrMenuView.qml";
TabletProxy::TabletProxy(QString name) : _name(name) {
;
@ -95,6 +98,16 @@ void TabletProxy::setQmlTabletRoot(QQuickItem* qmlTabletRoot, QObject* qmlOffscr
}
}
void TabletProxy::gotoMenuScreen() {
if (_qmlTabletRoot) {
_qmlTabletRoot->setProperty(LOADER_SOURCE_PROPERTY_NAME, TABLET_SOURCE_URL);
auto loader = _qmlTabletRoot->findChild<QQuickItem*>("loader");
auto offscreenUi = DependencyManager::get<OffscreenUi>();
auto rootMenu = offscreenUi->getRootMenu();
QMetaObject::invokeMethod(_qmlTabletRoot, "loadSource", Q_ARG(const QVariant&, QVariant(VRMENU_SOURCE_URL)));
}
}
void TabletProxy::gotoHomeScreen() {
if (_qmlTabletRoot) {
QString tabletSource = _qmlTabletRoot->property(LOADER_SOURCE_PROPERTY_NAME).toString();
@ -186,6 +199,10 @@ void TabletProxy::addButtonsToHomeScreen() {
QObject::disconnect(loader, SIGNAL(loaded()), this, SLOT(addButtonsToHomeScreen()));
}
void TabletProxy::addButtonsToMenuScreen() {
}
void TabletProxy::removeButtonsFromHomeScreen() {
auto tabletScriptingInterface = DependencyManager::get<TabletScriptingInterface>();
for (auto& buttonProxy : _tabletButtonProxies) {

View file

@ -65,6 +65,8 @@ public:
void setQmlTabletRoot(QQuickItem* qmlTabletRoot, QObject* qmlOffscreenSurface);
Q_INVOKABLE void gotoMenuScreen();
/**jsdoc
* transition to the home screen
* @function TabletProxy#gotoHomeScreen
@ -120,6 +122,7 @@ signals:
private slots:
void addButtonsToHomeScreen();
void addButtonsToMenuScreen();
protected:
void removeButtonsFromHomeScreen();
QQuickItem* getQmlTablet() const;

View file

@ -118,7 +118,7 @@ WebTablet = function (url, width, dpi, hand, clientOnly) {
_this.clicked = true;
}
var tablet = Tablet.getTablet("com.highfidelity.interface.tablet.system");
tablet.gotoHomeScreen();
tablet.gotoMenuScreen();
}
};