From f92b2b65b212d18c0787681a56313827b883acd7 Mon Sep 17 00:00:00 2001 From: Chris Bordeman Date: Fri, 11 Oct 2024 05:45:04 -0400 Subject: [PATCH] Implemented Name on Quick Filters. --- .../Dialogs/EditQuickFilters.axaml | 13 +- .../Dialogs/EditQuickFilters.axaml.cs | 21 ++- .../ViewModels/MainVM.Filters.cs | 22 +-- .../LibationAvalonia/Views/MainWindow.axaml | 2 +- .../Views/MainWindow.axaml.cs | 2 +- Source/LibationFileManager/QuickFilters.cs | 112 ++++++++--- .../Dialogs/EditQuickFilters.Designer.cs | 178 ++++++++++-------- .../Dialogs/EditQuickFilters.cs | 30 +-- .../Dialogs/EditQuickFilters.resx | 67 ++++++- Source/LibationWinForms/Form1.QuickFilters.cs | 13 +- 10 files changed, 309 insertions(+), 151 deletions(-) diff --git a/Source/LibationAvalonia/Dialogs/EditQuickFilters.axaml b/Source/LibationAvalonia/Dialogs/EditQuickFilters.axaml index 54aad592..4fef0328 100644 --- a/Source/LibationAvalonia/Dialogs/EditQuickFilters.axaml +++ b/Source/LibationAvalonia/Dialogs/EditQuickFilters.axaml @@ -2,11 +2,13 @@ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + xmlns:dialogs="clr-namespace:LibationAvalonia.Dialogs" mc:Ignorable="d" d:DesignWidth="400" d:DesignHeight="350" Width="800" Height="450" x:Class="LibationAvalonia.Dialogs.EditQuickFilters" Title="Audible Accounts" - Icon="/Assets/libation.ico"> + Icon="/Assets/libation.ico" + x:DataType="dialogs:EditQuickFilters"> @@ -43,7 +45,14 @@ - + + + + Filters { get; } = new(); public class Filter : ViewModels.ViewModelBase - { - private string _filterString; + { + private string _name; + public string Name + { + get => _name; + set + { + this.RaiseAndSetIfChanged(ref _name, value); + } + } + + private string _filterString; public string FilterString { get => _filterString; @@ -25,6 +35,9 @@ namespace LibationAvalonia.Dialogs } } public bool IsDefault { get; private set; } = true; + + public QuickFilters.NamedFilter AsNamedFilter() => new(FilterString, Name); + } public EditQuickFilters() { @@ -40,7 +53,7 @@ namespace LibationAvalonia.Dialogs ControlToFocusOnShow = this.FindControl