From d52c09180fd635d2c93b1f5e06c9aa399f851053 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Wed, 23 Aug 2006 19:25:00 +0000 Subject: [PATCH] SD2-1000: Deleting the ".." folder visible when the project contains incorrectly linked files deletes the whole parent directory git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1708 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- AddIns/ICSharpCode.SharpDevelop.addin | 6 +++--- .../Base/Project/Src/Project/Items/FileProjectItem.cs | 11 +++++++---- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/AddIns/ICSharpCode.SharpDevelop.addin b/AddIns/ICSharpCode.SharpDevelop.addin index 09ec511fb4..f14ac5da2f 100644 --- a/AddIns/ICSharpCode.SharpDevelop.addin +++ b/AddIns/ICSharpCode.SharpDevelop.addin @@ -495,7 +495,7 @@ label = "${res:Global.RemoveButtonText}" type = "Item" icon = "Icons.16x16.DeleteIcon" - class = "ICSharpCode.SharpDevelop.Project.Commands.DeleteProjectBrowserNode"/> + class = "ICSharpCode.SharpDevelop.Project.Commands.ExcludeFileFromProject"/> @@ -546,7 +546,7 @@ label = "${res:Global.RemoveButtonText}" type = "Item" icon = "Icons.16x16.DeleteIcon" - class = "ICSharpCode.SharpDevelop.Project.Commands.DeleteProjectBrowserNode"/> + class = "ICSharpCode.SharpDevelop.Project.Commands.ExcludeFileFromProject"/> @@ -574,7 +574,7 @@ label = "${res:Global.RemoveButtonText}" type = "Item" icon = "Icons.16x16.DeleteIcon" - class = "ICSharpCode.SharpDevelop.Project.Commands.DeleteProjectBrowserNode"/> + class = "ICSharpCode.SharpDevelop.Project.Commands.ExcludeFileFromProject"/> diff --git a/src/Main/Base/Project/Src/Project/Items/FileProjectItem.cs b/src/Main/Base/Project/Src/Project/Items/FileProjectItem.cs index 8616ccdecb..b47c453906 100644 --- a/src/Main/Base/Project/Src/Project/Items/FileProjectItem.cs +++ b/src/Main/Base/Project/Src/Project/Items/FileProjectItem.cs @@ -1,13 +1,14 @@ // // // -// +// // $Revision$ // using System; using System.ComponentModel; using System.IO; +using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Gui; namespace ICSharpCode.SharpDevelop.Project @@ -108,7 +109,7 @@ namespace ICSharpCode.SharpDevelop.Project [Browsable(false)] public bool IsLink { get { - return base.Properties.IsSet("Link"); + return base.Properties.IsSet("Link") || !FileUtility.IsBaseDirectory(this.Project.Directory, this.FileName); } } @@ -120,10 +121,12 @@ namespace ICSharpCode.SharpDevelop.Project /// public string VirtualName { get { - if (IsLink) + if (base.Properties.IsSet("Link")) return base.Properties["Link"]; - else + else if (FileUtility.IsBaseDirectory(this.Project.Directory, this.FileName)) return this.Include; + else + return Path.GetFileName(this.Include); } }