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 @@ -111,8 +111,13 @@ namespace ICSharpCode.Svn.Commands
break;
case StatusKind.Modified:
case StatusKind.Replaced:
MessageService.ShowError("The file has local modifications. Do you really want to remove it?");
e.Cancel = true;
if (MessageService.AskQuestion("The file has local modifications. Do you really want to remove it?")) {
// 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;
case StatusKind.Added:
if (status.Copied) {

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

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

Loading…
Cancel
Save