mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 13:18:38 +02:00
Save the set of running scripts when they change, as well as at shutdown
This commit is contained in:
parent
b87e8220c4
commit
c5b5746646
1 changed files with 8 additions and 1 deletions
|
@ -731,11 +731,18 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer) :
|
||||||
registerScriptEngineWithApplicationServices(engine);
|
registerScriptEngineWithApplicationServices(engine);
|
||||||
});
|
});
|
||||||
|
|
||||||
connect(scriptEngines, &ScriptEngines::scriptCountChanged, scriptEngines, [this] {
|
static const int SCRIPT_SAVE_COUNTDOWN_INTERVAL_MS = 5000;
|
||||||
|
QTimer* scriptSaveTimer = new QTimer(this);
|
||||||
|
connect(scriptSaveTimer, &QTimer::timeout, [] {
|
||||||
|
DependencyManager::get<ScriptEngines>()->saveScripts();
|
||||||
|
});
|
||||||
|
scriptSaveTimer->setSingleShot(true);
|
||||||
|
connect(scriptEngines, &ScriptEngines::scriptCountChanged, scriptEngines, [this, scriptSaveTimer] {
|
||||||
auto scriptEngines = DependencyManager::get<ScriptEngines>();
|
auto scriptEngines = DependencyManager::get<ScriptEngines>();
|
||||||
if (scriptEngines->getRunningScripts().isEmpty()) {
|
if (scriptEngines->getRunningScripts().isEmpty()) {
|
||||||
getMyAvatar()->clearScriptableSettings();
|
getMyAvatar()->clearScriptableSettings();
|
||||||
}
|
}
|
||||||
|
scriptSaveTimer->start(SCRIPT_SAVE_COUNTDOWN_INTERVAL_MS);
|
||||||
}, Qt::QueuedConnection);
|
}, Qt::QueuedConnection);
|
||||||
|
|
||||||
connect(scriptEngines, &ScriptEngines::scriptsReloading, scriptEngines, [this] {
|
connect(scriptEngines, &ScriptEngines::scriptsReloading, scriptEngines, [this] {
|
||||||
|
|
Loading…
Reference in a new issue