using Avalonia; using Avalonia.Controls; using Avalonia.Controls.Primitives; using StabilityMatrix.Core.Attributes; namespace StabilityMatrix.Avalonia.Controls; [Transient] public class StackExpander : TemplatedControl { public static readonly StyledProperty IsExpandedProperty = Expander .IsExpandedProperty .AddOwner(); public static readonly StyledProperty ExpandDirectionProperty = Expander .ExpandDirectionProperty .AddOwner(); public static readonly StyledProperty SpacingProperty = AvaloniaProperty.Register( "Spacing", 8 ); public ExpandDirection ExpandDirection { get => GetValue(ExpandDirectionProperty); set => SetValue(ExpandDirectionProperty, value); } public bool IsExpanded { get => GetValue(IsExpandedProperty); set => SetValue(IsExpandedProperty, value); } public int Spacing { get => GetValue(SpacingProperty); set => SetValue(SpacingProperty, value); } }