void MainForm_Activated(object sender, EventArgs e) { if (wasChangedExternally) { wasChangedExternally = false; if (file == null) { return; } string fileName = file.FileName; if (!File.Exists(fileName)) { return; } string message = StringParser.Parse( "${res:ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.TextEditorDisplayBinding.FileAlteredMessage}", new StringTagPair("File", Path.GetFullPath(fileName)) ); if ((AutoLoadExternalChangesOption && file.IsDirty == false) || MessageService.AskQuestion(message, StringParser.Parse("${res:MainWindow.DialogName}"))) { if (File.Exists(fileName)) { file.ReloadFromDisk(); } } else { file.MakeDirty(); } } }
public static void AskForReload() { if (currentlyReloading) { return; } currentlyReloading = true; try { lock (queue) { foreach (var file in queue) { string fileName = file.FileName; if (!File.Exists(fileName)) { continue; } string message = StringParser.Parse( "${res:ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.TextEditorDisplayBinding.FileAlteredMessage}", new StringTagPair("File", Path.GetFullPath(fileName)) ); if (SD.MessageService.AskQuestion(message, StringParser.Parse("${res:MainWindow.DialogName}"))) { if (File.Exists(fileName)) { file.ReloadFromDisk(); } } else { file.MakeDirty(); } } queue.Clear(); } } finally { currentlyReloading = false; } }