/// <summary> /// Ask whether changes should be saved. Returns false if cancelled, else true. /// </summary> public override bool AskSaveChanges() { if (_suppressAskSave) { return(true); } StopSeeking(); if (CurrentTasMovie != null && CurrentTasMovie.Changes) { var result = MainForm.DoWithTempMute(() => MessageBox.Show( "Save Changes?", "Tastudio", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3)); if (result == DialogResult.Yes) { SaveTas(); } else if (result == DialogResult.No) { CurrentTasMovie.ClearChanges(); return(true); } else if (result == DialogResult.Cancel) { return(false); } } return(true); }
private void SaveTas() { if (string.IsNullOrEmpty(CurrentTasMovie.Filename) || CurrentTasMovie.Filename == DefaultTasProjName()) { SaveAsTas(); } else { _autosaveTimer?.Stop(); MainForm.DoWithTempMute(() => { MessageStatusLabel.Text = "Saving..."; Cursor = Cursors.WaitCursor; Update(); CurrentTasMovie.Save(); if (Settings.AutosaveInterval > 0) { _autosaveTimer?.Start(); } MessageStatusLabel.Text = "File saved."; Settings.RecentTas.Add(CurrentTasMovie.Filename); Cursor = Cursors.Default; }); } }
public override bool AskSaveChanges() { if (_watches.Changes) { var result = MainForm.DoWithTempMute(() => MessageBox.Show("Save Changes?", "RAM Watch", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3)); if (result == DialogResult.Yes) { if (string.IsNullOrWhiteSpace(_watches.CurrentFileName)) { SaveAs(); } else { _watches.Save(); Config.RecentWatches.Add(_watches.CurrentFileName); } } else if (result == DialogResult.No) { _watches.Changes = false; return(true); } else if (result == DialogResult.Cancel) { return(false); } } return(true); }
private void SaveAsTas() { _autosaveTimer.Stop(); MainForm.DoWithTempMute(() => { ClearLeftMouseStates(); var filename = CurrentTasMovie.Filename; if (string.IsNullOrWhiteSpace(filename) || filename == DefaultTasProjName()) { filename = SuggestedTasProjName(); } var file = SaveFileDialog( filename, Config.PathEntries.MovieAbsolutePath(), "Tas Project Files", "tasproj", this ); if (file != null) { CurrentTasMovie.Filename = file.FullName; MessageStatusLabel.Text = "Saving..."; Cursor = Cursors.WaitCursor; Update(); CurrentTasMovie.Save(); Settings.RecentTas.Add(CurrentTasMovie.Filename); UpdateWindowTitle(); MessageStatusLabel.Text = "File saved."; Cursor = Cursors.Default; } // keep insisting if (Settings.AutosaveInterval > 0) { _autosaveTimer.Start(); } MainForm.SetWindowText(); }); }