From a8ebc1e456623f9b81f5b32a622f6886772e312a Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Thu, 20 Jan 2011 05:57:23 +0000 Subject: [PATCH] Make AssFile handle autosaving on every commit itself rather than going through FrameMain Originally committed to SVN as r5247. --- aegisub/src/ass_file.cpp | 5 +++++ aegisub/src/frame_main.cpp | 11 +---------- aegisub/src/frame_main.h | 1 - 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/aegisub/src/ass_file.cpp b/aegisub/src/ass_file.cpp index 898c0cb1e..a74f4fdcb 100644 --- a/aegisub/src/ass_file.cpp +++ b/aegisub/src/ass_file.cpp @@ -800,6 +800,11 @@ int AssFile::Commit(wxString desc, CommitType type, int amendId) { UndoStack.pop_front(); } + if (OPT_GET("App/Auto/Save on Every Change")->GetBool()) { + if (!filename.empty() && CanSave()) + Save(filename); + } + AnnounceCommit(type); return commitId; } diff --git a/aegisub/src/frame_main.cpp b/aegisub/src/frame_main.cpp index 34df705f1..575373a75 100644 --- a/aegisub/src/frame_main.cpp +++ b/aegisub/src/frame_main.cpp @@ -126,7 +126,7 @@ FrameMain::FrameMain (wxArrayString args) StartupLog("Initializing context models"); AssFile::top = context->ass = new AssFile; - context->ass->AddCommitListener(&FrameMain::OnSubtitlesCommit, this); + context->ass->AddCommitListener(&FrameMain::UpdateTitle, this); context->ass->AddFileOpenListener(&FrameMain::OnSubtitlesOpen, this); context->ass->AddFileSaveListener(&FrameMain::UpdateTitle, this); @@ -1135,15 +1135,6 @@ void FrameMain::OnAudioClose() SetDisplayMode(-1, 0); } -void FrameMain::OnSubtitlesCommit() { - if (OPT_GET("App/Auto/Save on Every Change")->GetBool()) { - if (context->ass->IsModified() && context->ass->CanSave()) - (*cmd::get("subtitle/save"))(context.get()); - } - - UpdateTitle(); -} - void FrameMain::OnSubtitlesOpen() { UpdateTitle(); diff --git a/aegisub/src/frame_main.h b/aegisub/src/frame_main.h index 816f2f0df..33f142d5d 100644 --- a/aegisub/src/frame_main.h +++ b/aegisub/src/frame_main.h @@ -158,7 +158,6 @@ private: void OnVideoOpen(); - void OnSubtitlesCommit(); void OnSubtitlesOpen(); void OnSubtitlesSave();