AlignmentModes -> GenerateEnumExtensionMethods

This commit is contained in:
Tig
2024-05-23 12:25:14 -06:00
parent 86139e1f5b
commit f6e5caf3a1
3 changed files with 7 additions and 2 deletions

View File

@@ -88,12 +88,12 @@ public class Aligner : INotifyPropertyChanged
}
var sizesCopy = sizes;
if (alignmentMode.HasFlag (AlignmentModes.EndToStart))
if (alignmentMode.FastHasFlags (AlignmentModes.EndToStart))
{
sizesCopy = sizes.Reverse ().ToArray ();
}
int maxSpaceBetweenItems = alignmentMode.HasFlag (AlignmentModes.AddSpaceBetweenItems) ? 1 : 0;
int maxSpaceBetweenItems = alignmentMode.FastHasFlags (AlignmentModes.AddSpaceBetweenItems) ? 1 : 0;
int totalItemsSize = sizes.Sum ();
int totalGaps = sizes.Length - 1; // total gaps between items
int totalItemsAndSpaces = totalItemsSize + totalGaps * maxSpaceBetweenItems; // total size of items and spacesToGive if we had enough room

View File

@@ -1,8 +1,12 @@
using Terminal.Gui.Analyzers.Internal.Attributes;
namespace Terminal.Gui;
/// <summary>
/// Determines the position of items when arranged in a container.
/// </summary>
[GenerateEnumExtensionMethods (FastHasFlags = true)]
public enum Alignment
{
/// <summary>

View File

@@ -6,6 +6,7 @@ namespace Terminal.Gui;
/// Determines alignment modes for <see cref="Alignment"/>.
/// </summary>
[Flags]
[GenerateEnumExtensionMethods (FastHasFlags = true)]
public enum AlignmentModes
{
/// <summary>