History

expose application settings to JS

ZappoMan committed 12 years ago

Commit 938959a1 parent b7243b06 files · +94 −7Browse files

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

Unified · Split

interface/src/scripting/SettingsScriptingInterface.cpp+36−0
@@ -0,0 +1,36 @@
1//
2// SettingsScriptingInterface.cpp
3// hifi
4//
5// Created by Brad Hefta-Gaub on 2/25/14
6// Copyright (c) 2014 HighFidelity, Inc. All rights reserved.
7//
8
9#include "Application.h"
10#include "SettingsScriptingInterface.h"
11
12
13SettingsScriptingInterface* SettingsScriptingInterface::getInstance() {
14 static SettingsScriptingInterface sharedInstance;
15 return &sharedInstance;
16}
17
18QVariant SettingsScriptingInterface::getValue(const QString& setting) {
19 QSettings* settings = Application::getInstance()->lockSettings();
20 QVariant value = settings->value(setting);
21 Application::getInstance()->unlockSettings();
22 return value;
23}
24
25QVariant SettingsScriptingInterface::getValue(const QString& setting, const QVariant& defaultValue) {
26 QSettings* settings = Application::getInstance()->lockSettings();
27 QVariant value = settings->value(setting, defaultValue);
28 Application::getInstance()->unlockSettings();
29 return value;
30}
31
32void SettingsScriptingInterface::setValue(const QString& setting, const QVariant& value) {
33 QSettings* settings = Application::getInstance()->lockSettings();
34 settings->setValue(setting, value);
35 Application::getInstance()->unlockSettings();
36}