From 6f16d57efdf8492d12e034f42cb09a7f74e0c382 Mon Sep 17 00:00:00 2001 From: Emmanuel Hansen Date: Wed, 14 Jun 2023 11:31:44 +0000 Subject: [PATCH] andd and and or queries --- samples/ControlCatalog/MainView.xaml | 7 ++ .../Styling/Activators/AndQueryActivator.cs | 69 ++++++++++++ .../Activators/AndQueryActivatorBuilder.cs | 51 +++++++++ .../Styling/Activators/OrQueryActivator.cs | 63 +++++++++++ .../Activators/OrQueryActivatorBuilder.cs | 51 +++++++++ src/Avalonia.Base/Styling/AndQuery.cs | 100 +++++++++++++++++ src/Avalonia.Base/Styling/OrQuery.cs | 7 +- src/Avalonia.Base/Styling/Queries.cs | 20 ++++ .../AvaloniaXamlIlQueryTransformer.cs | 94 +++++++++++++++- .../Markup/Parsers/MediaQueryGrammar.cs | 25 ++++- .../Markup/Parsers/MediaQueryParser.cs | 41 +++---- .../Parsers/QueryGrammarTests.cs | 104 ++++++++++++++++++ .../Parsers/QueryParserTests.cs | 24 ++++ 13 files changed, 620 insertions(+), 36 deletions(-) create mode 100644 src/Avalonia.Base/Styling/Activators/AndQueryActivator.cs create mode 100644 src/Avalonia.Base/Styling/Activators/AndQueryActivatorBuilder.cs create mode 100644 src/Avalonia.Base/Styling/Activators/OrQueryActivator.cs create mode 100644 src/Avalonia.Base/Styling/Activators/OrQueryActivatorBuilder.cs create mode 100644 src/Avalonia.Base/Styling/AndQuery.cs create mode 100644 tests/Avalonia.Markup.UnitTests/Parsers/QueryGrammarTests.cs create mode 100644 tests/Avalonia.Markup.UnitTests/Parsers/QueryParserTests.cs diff --git a/samples/ControlCatalog/MainView.xaml b/samples/ControlCatalog/MainView.xaml index 9fe0b4d84f..c065fb35f9 100644 --- a/samples/ControlCatalog/MainView.xaml +++ b/samples/ControlCatalog/MainView.xaml @@ -14,6 +14,12 @@ Value="Red" /> + + +