Index: Core/Common/src/Core.Common.Base/IProjectItem.cs =================================================================== diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Base/IProjectItem.cs (.../IProjectItem.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755) +++ Core/Common/src/Core.Common.Base/IProjectItem.cs (.../IProjectItem.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -7,5 +7,5 @@ /// TODO: remove IDeepCloneable, not all project items must be cloneable, also use ICloneable /// TODO: rename to IEntity and move to DelftTools.Utils, it has nothing to do with Folder /// - public interface IProjectItem : INameable, IDeepCloneable {} + public interface IProjectItem : IDeepCloneable {} } \ No newline at end of file Index: Core/Common/src/Core.Common.Base/Workflow/IActivity.cs =================================================================== diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Base/Workflow/IActivity.cs (.../IActivity.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755) +++ Core/Common/src/Core.Common.Base/Workflow/IActivity.cs (.../IActivity.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -1,5 +1,7 @@ using System; +using System.Security.Cryptography.X509Certificates; using Core.Common.Utils.Collections.Generic; +using PostSharp.Aspects.Advices; namespace Core.Common.Base.Workflow { @@ -13,6 +15,8 @@ /// public interface IActivity : IProjectItem /* TODO: wrap it with the ProjectItem instead */ { + string Name { get; set; } + /// /// Event to be fired when we want to publish changes in . /// Index: Core/Common/src/Core.Common.Controls.Swf/Charting/IChart.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Controls.Swf/Charting/IChart.cs (.../IChart.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/src/Core.Common.Controls.Swf/Charting/IChart.cs (.../IChart.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -1,12 +1,11 @@ using System; using System.Drawing; using System.Windows.Forms; -using Core.Common.Utils; using Core.Common.Utils.Collections.Generic; namespace Core.Common.Controls.Swf.Charting { - public interface IChart : INameable + public interface IChart { /// /// Color to use as background color for the chart Index: Core/Common/src/Core.Common.Controls.Swf/TreeViewControls/TreeViewNodePresenterBase.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Controls.Swf/TreeViewControls/TreeViewNodePresenterBase.cs (.../TreeViewNodePresenterBase.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/src/Core.Common.Controls.Swf/TreeViewControls/TreeViewNodePresenterBase.cs (.../TreeViewNodePresenterBase.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -31,12 +31,12 @@ /// This method should be overridden for that do not inherit from . public virtual void OnNodeRenamed(T data, string newName) { - if (data is INameable) + var nameProperty = data.GetType().GetMember("Name"); + if (nameProperty.Any()) { - var nameable = (INameable) data; - if (nameable.Name != newName) + if (nameProperty.GetValue(0) != newName) { - nameable.Name = newName; + nameProperty.SetValue(newName, 0); } } else Index: Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationReportControl.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationReportControl.cs (.../ValidationReportControl.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationReportControl.cs (.../ValidationReportControl.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -211,8 +211,7 @@ { foreach (var issue in issues) { - var nameable = (issue.Subject as INameable); - var name = nameable != null ? nameable.Name + ": " : ""; + var name = issue.Subject.GetType().Name; // todo: does every subject a name? var node = CreateIssueNode(name + issue.Message, issue); nodeCollection.Add(node); } Index: Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationView.cs =================================================================== diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationView.cs (.../ValidationView.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755) +++ Core/Common/src/Core.Common.Gui.Swf/Validation/ValidationView.cs (.../ValidationView.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -68,7 +68,7 @@ return; } - var dataName = (data is INameable) ? ((INameable) data).Name : data.ToString(); + var dataName = data.ToString(); Text = dataName + " Validation Report"; } Fisheye: Tag f1c02b2d47dc561deec70a24128d8dd49d9bed6a refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Gui/DeltaShellGui.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/src/Core.Common.Gui/RingtoetsGui.cs =================================================================== diff -u -rf1c02b2d47dc561deec70a24128d8dd49d9bed6a -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision f1c02b2d47dc561deec70a24128d8dd49d9bed6a) +++ Core/Common/src/Core.Common.Gui/RingtoetsGui.cs (.../RingtoetsGui.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -909,8 +909,7 @@ var enumerable = view.Data as IEnumerable; var data = enumerable == null ? view.Data : enumerable.Cast().FirstOrDefault(); - var nameableItem = data as INameable; - return nameableItem != null ? nameableItem.Name : (view.Data == null ? "" : view.Data.ToString()); + return view.Data == null ? "" : view.Data.ToString(); } private void UpdateViewName(IView view) Index: Core/Common/src/Core.Common.Utils/Core.Common.Utils.csproj =================================================================== diff -u -r50c0adfe3509dcd54a191f420b70a0194bdfe26b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Utils/Core.Common.Utils.csproj (.../Core.Common.Utils.csproj) (revision 50c0adfe3509dcd54a191f420b70a0194bdfe26b) +++ Core/Common/src/Core.Common.Utils/Core.Common.Utils.csproj (.../Core.Common.Utils.csproj) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -172,12 +172,10 @@ - - Fisheye: Tag ee0b95b2a1a34d8e81a21c8d05ef1354169af50c refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Utils/INameable.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/src/Core.Common.Utils/IO/FileUtils.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Utils/IO/FileUtils.cs (.../FileUtils.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/src/Core.Common.Utils/IO/FileUtils.cs (.../FileUtils.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -448,65 +448,6 @@ } } - public static string GetUniqueFileNameWithPath(string existingFileName) - { - var newFileName = GetUniqueFileName(existingFileName); - return Path.Combine(Path.GetDirectoryName(existingFileName), newFileName); - } - - public static string MakeDirectoryNameUnique(string directory) - { - if (!Directory.Exists(directory)) - { - return directory; - } - - var parentDirectory = Directory.GetParent(directory); - var directoryName = Path.GetFileName(directory); - - var uniqueFolderName = NamingHelper.GenerateUniqueNameFromList(directoryName + "{0}", true, parentDirectory.GetDirectories().Select(d => d.Name)); - return Path.Combine(parentDirectory.FullName, uniqueFolderName); - } - - /// - /// - /// - /// The name of the file wich may include the path - /// - public static string GetUniqueFileName(string existingFileName) - { - if (existingFileName == null) - { - throw new ArgumentNullException("existingFileName"); - } - - var directory = Path.GetDirectoryName(existingFileName).Replace(Path.GetFileName(existingFileName), ""); - directory = string.IsNullOrEmpty(directory) ? "." : directory; - - // Declare a function to strip a file name which leaves out the extension - Func getFileNameWithoutExtension = Path.GetFileNameWithoutExtension; - - var searchString = string.Format("{0}*.*", getFileNameWithoutExtension(existingFileName)); - - // get all items with the same name - var items = Directory.GetFiles(directory, searchString); - - // make a list of INameable items where the Name property will get the name of the file - var namedItems = - items.Select(f => new FileName - { - Name = getFileNameWithoutExtension(f) - }); - - var newName = getFileNameWithoutExtension(existingFileName); - if (namedItems.Any()) - { - newName = NamingHelper.GetUniqueName(string.Format("{0} ({{0}})", newName), namedItems, typeof(INameable)); - } - - return newName + Path.GetExtension(existingFileName); - } - public static IList GetDirectoriesRelative(string path) { var q = from subdir in Directory.GetDirectories(path) @@ -623,7 +564,7 @@ return info1.FullName == info2.FullName; } - private class FileName : INameable + private class FileName { public string Name { get; set; } } Fisheye: Tag ee0b95b2a1a34d8e81a21c8d05ef1354169af50c refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Utils/NamingHelper.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/src/Core.Common.Utils/TextDocumentBase.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Utils/TextDocumentBase.cs (.../TextDocumentBase.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/src/Core.Common.Utils/TextDocumentBase.cs (.../TextDocumentBase.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -3,7 +3,7 @@ namespace Core.Common.Utils { [Entity(FireOnCollectionChange = false)] - public abstract class TextDocumentBase : INameable + public abstract class TextDocumentBase { private readonly bool readOnly; Index: Core/Common/src/Core.Common.Utils/Url.cs =================================================================== diff -u -rf1c02b2d47dc561deec70a24128d8dd49d9bed6a -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/src/Core.Common.Utils/Url.cs (.../Url.cs) (revision f1c02b2d47dc561deec70a24128d8dd49d9bed6a) +++ Core/Common/src/Core.Common.Utils/Url.cs (.../Url.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -10,7 +10,7 @@ /// Web link, url. /// [Entity(FireOnCollectionChange = false)] - public class Url : ICloneable, INameable, IXmlSerializable + public class Url : ICloneable, IXmlSerializable { private string path; Index: Core/Common/test/Core.Common.Utils.Tests/Core.Common.Utils.Tests.csproj =================================================================== diff -u -r50c0adfe3509dcd54a191f420b70a0194bdfe26b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/test/Core.Common.Utils.Tests/Core.Common.Utils.Tests.csproj (.../Core.Common.Utils.Tests.csproj) (revision 50c0adfe3509dcd54a191f420b70a0194bdfe26b) +++ Core/Common/test/Core.Common.Utils.Tests/Core.Common.Utils.Tests.csproj (.../Core.Common.Utils.Tests.csproj) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -104,7 +104,6 @@ - Index: Core/Common/test/Core.Common.Utils.Tests/IO/FileUtilsTest.cs =================================================================== diff -u -rbc0ae819921a08cdfc3240f2cc75875aff8a2bb4 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/test/Core.Common.Utils.Tests/IO/FileUtilsTest.cs (.../FileUtilsTest.cs) (revision bc0ae819921a08cdfc3240f2cc75875aff8a2bb4) +++ Core/Common/test/Core.Common.Utils.Tests/IO/FileUtilsTest.cs (.../FileUtilsTest.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -139,66 +139,8 @@ Debug.WriteLine(e); } } - + [Test] - public void GetUniqueFileNameWithPathReturnsCorrectFilePath() - { - const string someFileName = "somefile.nc"; - - using (File.Create(someFileName)) {} - - var path = Path.GetFullPath(someFileName).Replace(someFileName, ""); - - string newName = FileUtils.GetUniqueFileNameWithPath(Path.Combine(path, someFileName)); - Assert.AreEqual(Path.Combine(path, "somefile (1).nc"), newName); - - File.Delete(someFileName); - } - - [Test] - public void GetUniqueFileNameReturnsTheSameNameWhenNoFileIsFound() - { - const string someFileName = "somefile.nc"; - Assert.AreEqual(someFileName, FileUtils.GetUniqueFileName(someFileName)); - } - - [Test] - public void GetUniqueFileNameReturnsNewNameBasedOnFilesFound() - { - const string someFileName = "somefile.nc"; - - using (File.Create(someFileName)) {} - - string newName = FileUtils.GetUniqueFileName(someFileName); - Assert.AreEqual("somefile (1).nc", newName); - - File.Delete(someFileName); - } - - [Test] - public void GetUniqueFileNameReturnsNewNameBasedOnMultipleFilesFound() - { - const string someFileName0 = "somefile.nc"; - using (File.Create(someFileName0)) {} - - const string someFileName1 = "somefile (1).nc"; - using (File.Create(someFileName1)) {} - - string newName = FileUtils.GetUniqueFileName(someFileName0); - Assert.AreEqual("somefile (2).nc", newName); - - File.Delete(someFileName0); - File.Delete(someFileName1); - } - - [Test] - [ExpectedException(typeof(ArgumentNullException))] - public void GetUniqueFileNameThrowsArgumentNullExceptionOnNullArgument() - { - FileUtils.GetUniqueFileName(null); - } - - [Test] public void DeleteFileIfItExists() { // no error if it does not exist Fisheye: Tag ee0b95b2a1a34d8e81a21c8d05ef1354169af50c refers to a dead (removed) revision in file `Core/Common/test/Core.Common.Utils.Tests/NamingHelperTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/test/Core.Common.Utils.Tests/TextDocumentBaseTest.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/test/Core.Common.Utils.Tests/TextDocumentBaseTest.cs (.../TextDocumentBaseTest.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/test/Core.Common.Utils.Tests/TextDocumentBaseTest.cs (.../TextDocumentBaseTest.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -12,7 +12,6 @@ var docBase = new SimpleTextDocumentBase(); // assert - Assert.IsInstanceOf(docBase); Assert.IsInstanceOf(docBase); Assert.IsFalse(docBase.ReadOnly); Assert.IsNull(docBase.Name); @@ -28,7 +27,6 @@ var docBase = new SimpleTextDocumentBase(isReadOnly); // assert - Assert.IsInstanceOf(docBase); Assert.IsInstanceOf(docBase); Assert.AreEqual(isReadOnly, docBase.ReadOnly); Assert.IsNull(docBase.Name); Index: Core/Common/test/Core.Common.Utils.Tests/TextDocumentTest.cs =================================================================== diff -u -ra950714ad9510756331d862aa35695fa0b2ed03b -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Common/test/Core.Common.Utils.Tests/TextDocumentTest.cs (.../TextDocumentTest.cs) (revision a950714ad9510756331d862aa35695fa0b2ed03b) +++ Core/Common/test/Core.Common.Utils.Tests/TextDocumentTest.cs (.../TextDocumentTest.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -14,7 +14,6 @@ var doc = new TextDocument(); // assert - Assert.IsInstanceOf(doc); Assert.IsInstanceOf(doc); Assert.IsInstanceOf(doc); Assert.IsFalse(doc.ReadOnly); @@ -31,7 +30,6 @@ var doc = new TextDocument(isReadOnly); // assert - Assert.IsInstanceOf(doc); Assert.IsInstanceOf(doc); Assert.IsInstanceOf(doc); Assert.AreEqual(isReadOnly, doc.ReadOnly); Index: Core/GIS/src/Core.GIS.GeoAPI.Extensions/Feature/IFeature.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.GeoAPI.Extensions/Feature/IFeature.cs (.../IFeature.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.GeoAPI.Extensions/Feature/IFeature.cs (.../IFeature.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -5,6 +5,7 @@ { public interface IFeature : ICloneable { + string Name { get; set; } IGeometry Geometry { get; set; } IFeatureAttributeCollection Attributes { get; set; } Index: Core/GIS/src/Core.GIS.NetTopologySuite.Extensions/Features/Feature.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.NetTopologySuite.Extensions/Features/Feature.cs (.../Feature.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.NetTopologySuite.Extensions/Features/Feature.cs (.../Feature.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -5,6 +5,8 @@ { public class Feature : IFeature { + public string Name { get; set; } + /// /// When changing the geometry of a feature make sure to call GeometryChangedAction /// Index: Core/GIS/src/Core.GIS.SharpMap.Api/Editors/TrackerFeature.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.Api/Editors/TrackerFeature.cs (.../TrackerFeature.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.Api/Editors/TrackerFeature.cs (.../TrackerFeature.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -83,6 +83,8 @@ #region IFeature Members + public string Name { get; set; } + public virtual IGeometry Geometry { get Index: Core/GIS/src/Core.GIS.SharpMap.Api/IMap.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.Api/IMap.cs (.../IMap.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.Api/IMap.cs (.../IMap.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -2,7 +2,6 @@ using System.Collections.Generic; using System.Drawing; using System.Drawing.Drawing2D; -using Core.Common.Utils; using Core.Common.Utils.Collections.Generic; using Core.GIS.GeoAPI.CoordinateSystems; using Core.GIS.GeoAPI.Extensions.Feature; @@ -12,7 +11,7 @@ namespace Core.GIS.SharpMap.Api { - public interface IMap : INameable, ICloneable + public interface IMap : ICloneable { /// /// Event fired when the zoomlevel or the center point has been changed @@ -131,7 +130,6 @@ /// double MaximumZoom { get; set; } - string Name { get; set; } bool HasDefaultEnvelopeSet { get; } bool IsDisposing { get; } Index: Core/GIS/src/Core.GIS.SharpMap.UI/Tools/CurvePointTool.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.UI/Tools/CurvePointTool.cs (.../CurvePointTool.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.UI/Tools/CurvePointTool.cs (.../CurvePointTool.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -159,10 +159,7 @@ if (featureInteractor.EditableObject != null) { - var featureName = featureInteractor.SourceFeature is INameable - ? ((INameable) featureInteractor.SourceFeature).Name - : ""; - + var featureName = featureInteractor.SourceFeature.Name; featureInteractor.EditableObject.BeginEdit(string.Format(ActionName + " {0}", featureName)); } Index: Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MapTool.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MapTool.cs (.../MapTool.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MapTool.cs (.../MapTool.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -510,7 +510,7 @@ private static string GetFeatureName(IFeature feature, ILayer layer) { - var featureName = feature is INameable ? ((INameable) feature).Name : feature.ToString(); + var featureName = feature.Name; var layerName = layer == null ? "-" : layer.Name; return string.Format("{0} ({1})", featureName, layerName); } Index: Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MoveTool.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MoveTool.cs (.../MoveTool.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.UI/Tools/MoveTool.cs (.../MoveTool.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -236,7 +236,7 @@ if (MouseMoved(worldPosition, mouseDownLocation) && MapControl.SelectTool.SelectedFeatureInteractors.Count > 0) { var interactor = trackerFeature.FeatureInteractor; - DoEditAction(interactor.EditableObject, interactor.SourceFeature as INameable, () => interactor.Stop(snapResult)); + DoEditAction(interactor.EditableObject, interactor.SourceFeature, () => interactor.Stop(snapResult)); Map.GetLayerByFeature(interactor.SourceFeature).RenderRequired = true; } @@ -355,11 +355,11 @@ return !selectTool.KeyToggleSelection && !selectTool.KeyExtendSelection && trackerAlreadySelected; } - private static void DoEditAction(IEditableObject editableObject, INameable nameable, Action editAction) + private static void DoEditAction(IEditableObject editableObject, IFeature sourceFeature, Action editAction) { if (editableObject != null) { - editableObject.BeginEdit(string.Format("Move feature {0}", nameable != null ? nameable.Name : "")); + editableObject.BeginEdit(string.Format("Move feature {0}", sourceFeature.Name)); } editAction(); Index: Core/GIS/src/Core.GIS.SharpMap.UI/Tools/SelectTool.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap.UI/Tools/SelectTool.cs (.../SelectTool.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap.UI/Tools/SelectTool.cs (.../SelectTool.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -5,7 +5,6 @@ using System.Drawing; using System.Linq; using System.Windows.Forms; -using Core.Common.Utils; using Core.Common.Utils.Collections; using Core.GIS.GeoAPI.CoordinateSystems.Transformations; using Core.GIS.GeoAPI.Extensions.Feature; @@ -69,19 +68,14 @@ public event EventHandler SelectionChanged; public static int MaxSelectedFeatures = 5000; private static readonly ILog log = LogManager.GetLogger(typeof(SelectTool)); - private static readonly IDictionary stylesCache = new Dictionary(); private readonly Collection trackers = new Collection(); private readonly List selectPoints = new List(); - private readonly VectorLayer trackingLayer; - private DateTime orgClickTime; - private ICoordinate mouseDownLocation; // TODO: remove me private ICoordinate orgMouseDownLocation; private ICoordinate WORLDPOSITION; - private bool isMultiSelect; public SelectTool() @@ -319,7 +313,7 @@ { var message = string.Format("The feature '{1}' you want to select is NOT in the layer '{0}'", foundLayer.Name, - feature is INameable ? ((INameable) feature).Name : feature.ToString()); + feature.Name); warningMessages.Add(message); } } Index: Core/GIS/src/Core.GIS.SharpMap/Data/FeatureDataRow.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/src/Core.GIS.SharpMap/Data/FeatureDataRow.cs (.../FeatureDataRow.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/src/Core.GIS.SharpMap/Data/FeatureDataRow.cs (.../FeatureDataRow.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -18,6 +18,8 @@ internal FeatureDataRow(DataRowBuilder rb) : base(rb) {} + public string Name { get; set; } + /// /// The geometry of the current feature /// Index: Core/GIS/test/Core.GIS.SharpMapTestUtils/TestClasses/SampleFeature.cs =================================================================== diff -u -r9f01c4daf5b7af6549045ed6ac404d18419c2555 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/GIS/test/Core.GIS.SharpMapTestUtils/TestClasses/SampleFeature.cs (.../SampleFeature.cs) (revision 9f01c4daf5b7af6549045ed6ac404d18419c2555) +++ Core/GIS/test/Core.GIS.SharpMapTestUtils/TestClasses/SampleFeature.cs (.../SampleFeature.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -29,6 +29,7 @@ #region IFeature members + public string Name { get; set; } public IGeometry Geometry { get; set; } public IFeatureAttributeCollection Attributes { get; set; } Index: Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/Forms/MapView.cs =================================================================== diff -u -rf1c02b2d47dc561deec70a24128d8dd49d9bed6a -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/Forms/MapView.cs (.../MapView.cs) (revision f1c02b2d47dc561deec70a24128d8dd49d9bed6a) +++ Core/Plugins/src/Core.Plugins.SharpMapGis.Gui/Forms/MapView.cs (.../MapView.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -424,7 +424,7 @@ yield break; } - var matchingItems = layer.DataSource.Features.OfType(). + var matchingItems = layer.DataSource.Features.OfType(). Where(n => n.Name != null && (caseSensitive ? n.Name.Contains(text) Index: Ringtoets/Piping/src/Ringtoets.Piping.Data/WtiProject.cs =================================================================== diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Ringtoets/Piping/src/Ringtoets.Piping.Data/WtiProject.cs (.../WtiProject.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755) +++ Ringtoets/Piping/src/Ringtoets.Piping.Data/WtiProject.cs (.../WtiProject.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -7,7 +7,7 @@ /// /// Container for all the data that has been imported and calculated by the user when performing an assessment. /// - public class WtiProject : INameable, IObservable + public class WtiProject : IObservable { private readonly IList observers = new List(); Index: Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/WtiProjectTest.cs =================================================================== diff -u -r2a90c0c1be6114f72af65c42f0a6f334b30e4755 -ree0b95b2a1a34d8e81a21c8d05ef1354169af50c --- Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/WtiProjectTest.cs (.../WtiProjectTest.cs) (revision 2a90c0c1be6114f72af65c42f0a6f334b30e4755) +++ Ringtoets/Piping/test/Ringtoets.Piping.Data.Test/WtiProjectTest.cs (.../WtiProjectTest.cs) (revision ee0b95b2a1a34d8e81a21c8d05ef1354169af50c) @@ -1,10 +1,7 @@ using Core.Common.Base; -using Core.Common.Utils; using NUnit.Framework; using Rhino.Mocks; -using Ringtoets.Piping.Data; - namespace Ringtoets.Piping.Data.Test { [TestFixture] @@ -17,7 +14,6 @@ var project = new WtiProject(); // Assert - Assert.IsInstanceOf(project); Assert.IsInstanceOf(project); Assert.AreEqual("WTI project", project.Name); } @@ -33,7 +29,6 @@ // Assert Assert.IsNotNull(project.PipingFailureMechanism); - } [Test]