Browse Source

Fixed SD2-510: Deleting a file with local modifications

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@660 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 21 years ago
parent
commit
c0cd40529b
  1. 9
      src/AddIns/Misc/SubversionAddIn/Project/Src/Commands/AutostartCommands.cs
  2. 8
      src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/ProjectBrowserControl.cs

9
src/AddIns/Misc/SubversionAddIn/Project/Src/Commands/AutostartCommands.cs

@ -111,8 +111,13 @@ namespace ICSharpCode.Svn.Commands
break; break;
case StatusKind.Modified: case StatusKind.Modified:
case StatusKind.Replaced: case StatusKind.Replaced:
MessageService.ShowError("The file has local modifications. Do you really want to remove it?"); if (MessageService.AskQuestion("The file has local modifications. Do you really want to remove it?")) {
e.Cancel = true; // modified files cannot be deleted, so we need to revert the changes first
SvnClient.Instance.Client.Revert(new string[] { fullName }, e.IsDirectory);
} else {
e.Cancel = true;
return;
}
break; break;
case StatusKind.Added: case StatusKind.Added:
if (status.Copied) { if (status.Copied) {

8
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/ProjectBrowserControl.cs

@ -61,8 +61,8 @@ namespace ICSharpCode.SharpDevelop.Project
{ {
InitializeComponent(); InitializeComponent();
treeView.BeforeSelect += TreeViewBeforeSelect; treeView.BeforeSelect += TreeViewBeforeSelect;
FileService.FileRenaming += FileServiceFileRenaming; FileService.FileRenamed += FileServiceFileRenamed;
FileService.FileRemoving += FileServiceFileRemoving; FileService.FileRemoved += FileServiceFileRemoved;
ProjectService.ProjectItemAdded += ProjectServiceProjectItemAdded; ProjectService.ProjectItemAdded += ProjectServiceProjectItemAdded;
ProjectService.SolutionFolderRemoved += ProjectServiceSolutionFolderRemoved; ProjectService.SolutionFolderRemoved += ProjectServiceSolutionFolderRemoved;
@ -100,12 +100,12 @@ namespace ICSharpCode.SharpDevelop.Project
} }
} }
void FileServiceFileRemoving(object sender, FileEventArgs e) void FileServiceFileRemoved(object sender, FileEventArgs e)
{ {
CallVisitor(new FileRemoveTreeNodeVisitor(e.FileName)); CallVisitor(new FileRemoveTreeNodeVisitor(e.FileName));
} }
void FileServiceFileRenaming(object sender, FileRenameEventArgs e) void FileServiceFileRenamed(object sender, FileRenameEventArgs e)
{ {
CallVisitor(new FileRenameTreeNodeVisitor(e.SourceFile, e.TargetFile)); CallVisitor(new FileRenameTreeNodeVisitor(e.SourceFile, e.TargetFile));
} }

Loading…
Cancel
Save