From 7c31edd21f20b76dd08219f2fe3f3692a5658b65 Mon Sep 17 00:00:00 2001 From: Andrew Belt Date: Thu, 19 Oct 2017 11:43:05 -0400 Subject: [PATCH] Save lastPath in settings --- src/main.cpp | 11 +++++++---- src/settings.cpp | 9 +++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index ac071445..4fae38f7 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -18,18 +18,21 @@ int main(int argc, char* argv[]) { engineInit(); guiInit(); sceneInit(); - settingsLoad(assetLocal("settings.json")); - if (argc >= 2) + if (argc >= 2) { + // TODO Set gRackWidget->lastPath gRackWidget->loadPatch(argv[1]); - else + } + else { gRackWidget->loadPatch(assetLocal("autosave.vcv")); + } + settingsLoad(assetLocal("settings.json")); engineStart(); guiRun(); engineStop(); - gRackWidget->savePatch(assetLocal("autosave.vcv")); settingsSave(assetLocal("settings.json")); + gRackWidget->savePatch(assetLocal("autosave.vcv")); sceneDestroy(); guiDestroy(); engineDestroy(); diff --git a/src/settings.cpp b/src/settings.cpp index 8f449489..bbfd2ec1 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -39,6 +39,10 @@ static json_t *settingsToJson() { json_t *plugLightJ = json_boolean(gToolbar->plugLightButton->value > 0.0); json_object_set_new(rootJ, "plugLight", plugLightJ); + // lastPath + json_t *lastPathJ = json_string(gRackWidget->lastPath.c_str()); + json_object_set_new(rootJ, "lastPath", lastPathJ); + return rootJ; } @@ -74,6 +78,11 @@ static void settingsFromJson(json_t *rootJ) { json_t *plugLightJ = json_object_get(rootJ, "plugLight"); if (plugLightJ) gToolbar->plugLightButton->setValue(json_is_true(plugLightJ) ? 1.0 : 0.0); + + // lastPath + json_t *lastPathJ = json_object_get(rootJ, "lastPath"); + if (lastPathJ) + gRackWidget->lastPath = json_string_value(lastPathJ); }