From 40108976c3c8fd6343b771abf91146c504055b71 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sun, 16 Oct 2022 18:28:42 -0500 Subject: [PATCH] GUI: more mark modified cases --- src/gui/gui.cpp | 6 ++++++ src/gui/songInfo.cpp | 1 + src/gui/sysManager.cpp | 4 ++++ 3 files changed, 11 insertions(+) diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 1fed0a51..fc2de66c 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3446,6 +3446,8 @@ bool FurnaceGUI::loop() { if (picked!=DIV_SYSTEM_NULL) { if (!e->addSystem(picked)) { showError("cannot add chip! ("+e->getLastError()+")"); + } else { + MARK_MODIFIED; } ImGui::CloseCurrentPopup(); if (e->song.autoSystem) { @@ -3471,6 +3473,7 @@ bool FurnaceGUI::loop() { DivSystem picked=systemPicker(); if (picked!=DIV_SYSTEM_NULL) { e->changeSystem(i,picked,preserveChanPos); + MARK_MODIFIED; if (e->song.autoSystem) { autoDetectSystem(); } @@ -3488,6 +3491,8 @@ bool FurnaceGUI::loop() { if (ImGui::MenuItem(fmt::sprintf("%d. %s##_SYSR%d",i+1,getSystemName(e->song.system[i]),i).c_str())) { if (!e->removeSystem(i,preserveChanPos)) { showError("cannot remove chip! ("+e->getLastError()+")"); + } else { + MARK_MODIFIED; } if (e->song.autoSystem) { autoDetectSystem(); @@ -4640,6 +4645,7 @@ bool FurnaceGUI::loop() { if (e->song.autoSystem) { autoDetectSystem(); updateWindowTitle(); + MARK_MODIFIED; } ImGui::CloseCurrentPopup(); } diff --git a/src/gui/songInfo.cpp b/src/gui/songInfo.cpp index 8d4e0999..24ed67c0 100644 --- a/src/gui/songInfo.cpp +++ b/src/gui/songInfo.cpp @@ -91,6 +91,7 @@ void FurnaceGUI::drawSongInfo() { autoDetectSystem(); updateWindowTitle(); } + MARK_MODIFIED; } popToggleColors(); autoButtonSize=ImGui::GetItemRectSize().x; diff --git a/src/gui/sysManager.cpp b/src/gui/sysManager.cpp index 386d2658..cd82b84c 100644 --- a/src/gui/sysManager.cpp +++ b/src/gui/sysManager.cpp @@ -62,6 +62,7 @@ void FurnaceGUI::drawSysManager() { if (dragItem->IsDataType("FUR_SYS")) { if (sysToMove!=i && sysToMove>=0) { e->swapSystem(sysToMove,i,preserveChanPos); + MARK_MODIFIED; } sysToMove=-1; } @@ -82,6 +83,7 @@ void FurnaceGUI::drawSysManager() { DivSystem picked=systemPicker(); if (picked!=DIV_SYSTEM_NULL) { e->changeSystem(i,picked,preserveChanPos); + MARK_MODIFIED; if (e->song.autoSystem) { autoDetectSystem(); } @@ -112,6 +114,8 @@ void FurnaceGUI::drawSysManager() { if (picked!=DIV_SYSTEM_NULL) { if (!e->addSystem(picked)) { showError("cannot add chip! ("+e->getLastError()+")"); + } else { + MARK_MODIFIED; } if (e->song.autoSystem) { autoDetectSystem();