From af751ee044b9efc31f18f05ad09c7801d5d19805 Mon Sep 17 00:00:00 2001 From: kike-garbo Date: Tue, 25 Jul 2023 17:00:07 +0200 Subject: [PATCH 1/2] Fix on 'Delete Element' component. When 'Deleted' output is visible but 'Modified' is not. --- .../Components/Element/Delete.cs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/RhinoInside.Revit.GH/Components/Element/Delete.cs b/src/RhinoInside.Revit.GH/Components/Element/Delete.cs index 449edcc6d..6c23d388a 100644 --- a/src/RhinoInside.Revit.GH/Components/Element/Delete.cs +++ b/src/RhinoInside.Revit.GH/Components/Element/Delete.cs @@ -136,7 +136,7 @@ int Delete var result = 0; if (elementIds.Count > 0) { - using (var updater = deleted is object && modified is object ? new Updater(document) : default) + using (var updater = modified is object ? new Updater(document) : default) { if (!document.CanDeleteElements(elementIds)) { @@ -154,12 +154,13 @@ int Delete { result = DeletedElementIds.Count; - if (updater?.DeletedElementIds is object) + var deletedElementIds = updater?.DeletedElementIds ?? DeletedElementIds; + if (deletedElementIds is object) { deleted.AddRange ( - updater.DeletedElementIds.Select(x => new Types.Element(document, x)), - updater.DeletedElementIds.Count + deletedElementIds.Select(x => new Types.Element(document, x)), + deletedElementIds.Count ); } } @@ -167,12 +168,13 @@ int Delete { result = -1; - if (updater?.DeletedElementIds is object) + var deletedElementIds = updater?.DeletedElementIds ?? DeletedElementIds; + if (deletedElementIds is object) { deleted.AddRange ( - updater.DeletedElementIds.Select(x => Types.Element.FromElementId(document, x)), - updater.DeletedElementIds.Count + deletedElementIds.Select(x => Types.Element.FromElementId(document, x)), + deletedElementIds.Count ); } } From b2d3d5d306edbe423a06acd718dbae133541c87c Mon Sep 17 00:00:00 2001 From: kike-garbo Date: Tue, 25 Jul 2023 17:02:26 +0200 Subject: [PATCH 2/2] Null checking. --- src/RhinoInside.Revit.GH/Components/Element/Delete.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/RhinoInside.Revit.GH/Components/Element/Delete.cs b/src/RhinoInside.Revit.GH/Components/Element/Delete.cs index 6c23d388a..d9d399325 100644 --- a/src/RhinoInside.Revit.GH/Components/Element/Delete.cs +++ b/src/RhinoInside.Revit.GH/Components/Element/Delete.cs @@ -157,7 +157,7 @@ int Delete var deletedElementIds = updater?.DeletedElementIds ?? DeletedElementIds; if (deletedElementIds is object) { - deleted.AddRange + deleted?.AddRange ( deletedElementIds.Select(x => new Types.Element(document, x)), deletedElementIds.Count @@ -171,7 +171,7 @@ int Delete var deletedElementIds = updater?.DeletedElementIds ?? DeletedElementIds; if (deletedElementIds is object) { - deleted.AddRange + deleted?.AddRange ( deletedElementIds.Select(x => Types.Element.FromElementId(document, x)), deletedElementIds.Count @@ -181,7 +181,7 @@ int Delete if (updater?.ModifiedElementIds is object) { - modified.AddRange + modified?.AddRange ( updater.ModifiedElementIds.Select(x => Types.Element.FromElementId(document, x)), updater.ModifiedElementIds.Count