Browse Source

Fixed SD2-817: File changes lost when moving file in project tree

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1432 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 19 years ago
parent
commit
e8e6d4e662
  1. 20
      src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/TreeNodes/DirectoryNode.cs

20
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/TreeNodes/DirectoryNode.cs

@ -6,14 +6,13 @@ @@ -6,14 +6,13 @@
// </file>
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
using ICSharpCode.SharpDevelop.Project.Commands;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Gui;
using ICSharpCode.SharpDevelop.Project.Commands;
namespace ICSharpCode.SharpDevelop.Project
{
@ -599,6 +598,13 @@ namespace ICSharpCode.SharpDevelop.Project @@ -599,6 +598,13 @@ namespace ICSharpCode.SharpDevelop.Project
{
AddExistingItemsToProject.CopyDirectory(fileName, this, true);
if (performMove) {
foreach (IViewContent content in WorkbenchSingleton.Workbench.ViewContentCollection) {
if (content.FileName != null &&
FileUtility.IsBaseDirectory(fileName, content.FileName))
{
content.FileName = FileUtility.RenameBaseDirectory(content.FileName, fileName, Path.Combine(this.directory, Path.GetFileName(fileName)));
}
}
FileService.RemoveFile(fileName, true);
}
}
@ -640,6 +646,14 @@ namespace ICSharpCode.SharpDevelop.Project @@ -640,6 +646,14 @@ namespace ICSharpCode.SharpDevelop.Project
RecreateSubNodes();
}
if (performMove) {
foreach (IViewContent content in WorkbenchSingleton.Workbench.ViewContentCollection) {
if (content.FileName != null &&
FileUtility.IsEqualFileName(content.FileName, fileName))
{
content.FileName = copiedFileName;
content.TitleName = shortFileName;
}
}
FileService.RemoveFile(fileName, false);
}
}

Loading…
Cancel
Save