using System.Windows.Input; using Avalonia; using Avalonia.Controls; namespace SPTInstaller.CustomControls; public partial class UpdateButton : UserControl { public UpdateButton() { InitializeComponent(); } public static readonly StyledProperty<string> InfoTextProperty = AvaloniaProperty.Register<UpdateButton, string>( "InfoText"); public string InfoText { get => GetValue(InfoTextProperty); set => SetValue(InfoTextProperty, value); } public static readonly StyledProperty<bool> CheckingForUpdateProperty = AvaloniaProperty.Register<UpdateButton, bool>( "CheckingForUpdate"); public bool CheckingForUpdate { get => GetValue(CheckingForUpdateProperty); set => SetValue(CheckingForUpdateProperty, value); } public static readonly StyledProperty<ICommand> DismissCommandProperty = AvaloniaProperty.Register<UpdateButton, ICommand>( "DismissCommand"); public ICommand DismissCommand { get => GetValue(DismissCommandProperty); set => SetValue(DismissCommandProperty, value); } public static readonly StyledProperty<ICommand> UpdateCommandProperty = AvaloniaProperty.Register<UpdateButton, ICommand>( "UpdateCommand"); public ICommand UpdateCommand { get => GetValue(UpdateCommandProperty); set => SetValue(UpdateCommandProperty, value); } public static readonly StyledProperty<bool> UpdatingProperty = AvaloniaProperty.Register<UpdateButton, bool>( "Updating"); public bool Updating { get => GetValue(UpdatingProperty); set => SetValue(UpdatingProperty, value); } public static readonly StyledProperty<int> DownloadProgressProperty = AvaloniaProperty.Register<UpdateButton, int>( "DownloadProgress"); public int DownloadProgress { get => GetValue(DownloadProgressProperty); set => SetValue(DownloadProgressProperty, value); } public static readonly StyledProperty<bool> IsIndeterminateProperty = AvaloniaProperty.Register<UpdateButton, bool>( "IsIndeterminate"); public bool IsIndeterminate { get => GetValue(IsIndeterminateProperty); set => SetValue(IsIndeterminateProperty, value); } public static readonly StyledProperty<bool> UpdateAvailableProperty = AvaloniaProperty.Register<UpdateButton, bool>( "UpdateAvailable"); public bool UpdateAvailable { get => GetValue(UpdateAvailableProperty); set => SetValue(UpdateAvailableProperty, value); } }