History

put back LocationScriptingInterface so it works prior to replacement

Stephen Birarda committed 12 years ago

Commit f0ead981 parent 892e0e74 files · +112 −1Browse files

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

Unified · Split

interface/src/scripting/LocationScriptingInterface.cpp+52−0
@@ -0,0 +1,52 @@
1//
2// LocationScriptingInterface.cpp
3// interface/src/scripting
4//
5// Created by Ryan Huffman on 4/29/14.
6// Copyright 2014 High Fidelity, Inc.
7//
8// Distributed under the Apache License, Version 2.0.
9// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
10//
11
12#include <glm/glm.hpp>
13
14#include "NodeList.h"
15
16#include "LocationScriptingInterface.h"
17
18LocationScriptingInterface* LocationScriptingInterface::getInstance() {
19 static LocationScriptingInterface sharedInstance;
20 return &sharedInstance;
21}
22
23bool LocationScriptingInterface::isConnected() {
24 return NodeList::getInstance()->getDomainHandler().isConnected();
25}
26
27QString LocationScriptingInterface::getHref() {
28 return getProtocol() + "//" + getHostname() + getPathname();
29}
30
31QString LocationScriptingInterface::getPathname() {
32 MyAvatar* applicationAvatar = Application::getInstance()->getAvatar();
33 return AddressManager::pathForPositionAndOrientation(applicationAvatar->getPosition(),
34 true, applicationAvatar->getOrientation());
35}
36
37QString LocationScriptingInterface::getHostname() {
38 return NodeList::getInstance()->getDomainHandler().getHostname();
39}
40
41void LocationScriptingInterface::assign(const QString& url) {
42 QMetaObject::invokeMethod(&AddressManager::getInstance(), "handleLookupString", Q_ARG(const QString&, url));
43}
44
45QScriptValue LocationScriptingInterface::locationGetter(QScriptContext* context, QScriptEngine* engine) {
46 return engine->newQObject(getInstance());
47}
48
49QScriptValue LocationScriptingInterface::locationSetter(QScriptContext* context, QScriptEngine* engine) {
50 LocationScriptingInterface::getInstance()->assign(context->argument(0).toString());
51 return QScriptValue::UndefinedValue;
52}