History

Add defaultScriptsOverride option

Ryan Huffman committed 7 years ago

Commit d29cd791 parent b9558624 files · +31 −7Browse files

Showing the changes to libraries/script-engine/src/ScriptEngines.cpp (1 of 4 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngines.cpp+19−5
@@ -29,6 +29,7 @@ static const QString DESKTOP_LOCATION = QStandardPaths::writableLocation(QStanda · 28 unmodified lines
29static const bool HIFI_SCRIPT_DEBUGGABLES { true };29static const bool HIFI_SCRIPT_DEBUGGABLES { true };
30static const QString SETTINGS_KEY { "RunningScripts" };30static const QString SETTINGS_KEY { "RunningScripts" };
31static const QUrl DEFAULT_SCRIPTS_LOCATION { "file:///~//defaultScripts.js" };31static const QUrl DEFAULT_SCRIPTS_LOCATION { "file:///~//defaultScripts.js" };
32
32// Using a QVariantList so this is human-readable in the settings file33// Using a QVariantList so this is human-readable in the settings file
33static Setting::Handle<QVariantList> runningScriptsHandle(SETTINGS_KEY, { QVariant(DEFAULT_SCRIPTS_LOCATION) });34static Setting::Handle<QVariantList> runningScriptsHandle(SETTINGS_KEY, { QVariant(DEFAULT_SCRIPTS_LOCATION) });
34 35
@@ -64,8 +65,8 @@ void ScriptEngines::onErrorLoadingScript(const QString& url) { · 29 unmodified lines
64 emit errorLoadingScript(url);65 emit errorLoadingScript(url);
65}66}
66 67
67ScriptEngines::ScriptEngines(ScriptEngine::Context context)68ScriptEngines::ScriptEngines(ScriptEngine::Context context, const QUrl& defaultScriptsOverride)
68 : _context(context)69 : _context(context), _defaultScriptsOverride(defaultScriptsOverride)
69{70{
70 _scriptsModelFilter.setSourceModel(&_scriptsModel);71 _scriptsModelFilter.setSourceModel(&_scriptsModel);
71 _scriptsModelFilter.sort(0, Qt::AscendingOrder);72 _scriptsModelFilter.sort(0, Qt::AscendingOrder);
@@ -322,13 +323,22 @@ void ScriptEngines::loadScripts() { · 250 unmodified lines
322 323
323 // loads all saved scripts324 // loads all saved scripts
324 auto runningScripts = runningScriptsHandle.get();325 auto runningScripts = runningScriptsHandle.get();
326 bool defaultScriptsOverrideSet = !_defaultScriptsOverride.isEmpty();
325 327
326 for (auto script : runningScripts) {328 for (auto script : runningScripts) {
327 auto string = script.toString();329 auto url = script.toUrl();
328 if (!string.isEmpty()) {330 if (!url.isEmpty()) {
329 loadScript(string);331 if (defaultScriptsOverrideSet && url == DEFAULT_SCRIPTS_LOCATION) {
332 _defaultScriptsWasRunning = true;
333 } else {
334 loadScript(url);
335 }
330 }336 }
331 }337 }
338
339 if (defaultScriptsOverrideSet) {
340 loadScript(_defaultScriptsOverride, false);
341 }
332}342}
333 343
334void ScriptEngines::saveScripts() {344void ScriptEngines::saveScripts() {
@@ -359,6 +369,10 @@ void ScriptEngines::saveScripts() { · 24 unmodified lines
359 }369 }
360 }370 }
361 371
372 if (_defaultScriptsWasRunning) {
373 list.append(DEFAULT_SCRIPTS_LOCATION);
374 }
375
362 runningScriptsHandle.set(list);376 runningScriptsHandle.set(list);
363}377}
364 378

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t