From a70d87ea16b5e235faa7e8a1518dce5d5675d1b4 Mon Sep 17 00:00:00 2001 From: Tig Date: Fri, 17 May 2024 16:33:53 -0700 Subject: [PATCH] Cleanup --- Terminal.Gui/View/Layout/PosAlign.cs | 20 +++++++++----------- UnitTests/Drawing/AlignerTests.cs | 1 - 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/Terminal.Gui/View/Layout/PosAlign.cs b/Terminal.Gui/View/Layout/PosAlign.cs index bb94c7342..9ca4a203b 100644 --- a/Terminal.Gui/View/Layout/PosAlign.cs +++ b/Terminal.Gui/View/Layout/PosAlign.cs @@ -44,12 +44,7 @@ public class PosAlign : Pos /// private static void AlignGroup (int groupId, IList views, Dimension dimension, int size) { - if (views is null) - { - return; - } - - Aligner firstInGroup = null; + Aligner? firstInGroup = null; List dimensionsList = new (); List viewsInGroup = views.Where ( @@ -76,7 +71,7 @@ public class PosAlign : Pos foreach (View view in viewsInGroup) { - PosAlign posAlign = dimension == Dimension.Width ? view.X as PosAlign : view.Y as PosAlign; + PosAlign? posAlign = dimension == Dimension.Width ? view.X as PosAlign : view.Y as PosAlign; if (posAlign is { }) { @@ -100,7 +95,7 @@ public class PosAlign : Pos for (var index = 0; index < viewsInGroup.Count; index++) { View view = viewsInGroup [index]; - PosAlign align = dimension == Dimension.Width ? view.X as PosAlign : view.Y as PosAlign; + PosAlign? align = dimension == Dimension.Width ? view.X as PosAlign : view.Y as PosAlign; if (align is { }) { @@ -125,13 +120,16 @@ public class PosAlign : Pos private void Aligner_PropertyChanged (object? sender, PropertyChangedEventArgs e) { _location = null; } /// - public override bool Equals (object other) + public override bool Equals (object? other) { - return other is PosAlign align && _groupId == align._groupId && _location == align._location && align.Aligner.Alignment == Aligner.Alignment; + return other is PosAlign align && + _groupId == align._groupId && + _location == align._location && + align.Aligner.Alignment == Aligner.Alignment; } /// - public override int GetHashCode () { return Aligner.GetHashCode () ^ _groupId.GetHashCode (); } + public override int GetHashCode () { return HashCode.Combine (Aligner, _groupId); } /// public override string ToString () { return $"Align(groupId={_groupId}, alignment={Aligner.Alignment})"; } diff --git a/UnitTests/Drawing/AlignerTests.cs b/UnitTests/Drawing/AlignerTests.cs index fd8b0b381..cc4564a95 100644 --- a/UnitTests/Drawing/AlignerTests.cs +++ b/UnitTests/Drawing/AlignerTests.cs @@ -228,7 +228,6 @@ public class AlignerTests (ITestOutputHelper output) [InlineData (Alignment.FirstLeftRestRight, new [] { 10, 20, 30 }, 101, new [] { 0, 50, 71 })] [InlineData (Alignment.FirstLeftRestRight, new [] { 10, 20, 30, 40 }, 101, new [] { 0, 10, 30, 61 })] [InlineData (Alignment.FirstLeftRestRight, new [] { 10, 20, 30, 40, 50 }, 151, new [] { 0, 10, 30, 60, 101 })] - [InlineData (Alignment.FirstLeftRestRight, new [] { 3, 4, 5 }, 21, new [] { 0, 11, 16 })] public void Alignment_SpaceBetweenItems (Alignment alignment, int [] sizes, int containerSize, int [] expected) { int [] positions = new Aligner