using Avalonia; using Avalonia.Controls; using Avalonia.Markup.Xaml; using Dinah.Core; using LibationFileManager; using System.Collections.Generic; using ReactiveUI; namespace LibationAvalonia.Controls { public partial class DirectoryOrCustomSelectControl : UserControl { public static readonly StyledProperty> KnownDirectoriesProperty = AvaloniaProperty.Register>(nameof(KnownDirectories), DirectorySelectControl.DefaultKnownDirectories); public static readonly StyledProperty SubDirectoryProperty = AvaloniaProperty.Register(nameof(SubDirectory)); public static readonly StyledProperty DirectoryProperty = AvaloniaProperty.Register(nameof(Directory)); public List KnownDirectories { get => GetValue(KnownDirectoriesProperty); set => SetValue(KnownDirectoriesProperty, value); } public string Directory { get => GetValue(DirectoryProperty); set => SetValue(DirectoryProperty, value); } public string SubDirectory { get => GetValue(SubDirectoryProperty); set => SetValue(SubDirectoryProperty, value); } CustomState customStates = new(); public DirectoryOrCustomSelectControl() { InitializeComponent(); customDirBrowseBtn = this.Find