From f55ead465ca385771b9e9d6659399d4a5aaea064 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Sun, 11 Dec 2022 12:17:52 +0800 Subject: [PATCH] feat: implement CardBorder. --- src/Semi.Avalonia.Demo/MainWindow.axaml | 3 ++ src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml | 17 +++++++++ .../Pages/BorderDemo.axaml.cs | 18 ++++++++++ src/Semi.Avalonia.Demo/Program.cs | 2 +- src/Semi.Avalonia/Controls/Border.axaml | 36 +++++++++++++++++++ src/Semi.Avalonia/Controls/Controls.axaml | 1 + src/Semi.Avalonia/Controls/Label.axaml | 2 +- src/Semi.Avalonia/Controls/RadioButton.axaml | 6 ---- src/Semi.Avalonia/Themes/Light/Border.axaml | 10 ++++++ src/Semi.Avalonia/Themes/Light/Light.axaml | 1 + 10 files changed, 88 insertions(+), 8 deletions(-) create mode 100644 src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml create mode 100644 src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml.cs create mode 100644 src/Semi.Avalonia/Controls/Border.axaml create mode 100644 src/Semi.Avalonia/Themes/Light/Border.axaml diff --git a/src/Semi.Avalonia.Demo/MainWindow.axaml b/src/Semi.Avalonia.Demo/MainWindow.axaml index 44476e5..ba4ea16 100644 --- a/src/Semi.Avalonia.Demo/MainWindow.axaml +++ b/src/Semi.Avalonia.Demo/MainWindow.axaml @@ -20,5 +20,8 @@ + + + diff --git a/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml b/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml new file mode 100644 index 0000000..04442d8 --- /dev/null +++ b/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml @@ -0,0 +1,17 @@ + + + + Card + + + Shadow Always Applied + + + Shadow on Pointerover + + + diff --git a/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml.cs b/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml.cs new file mode 100644 index 0000000..476c880 --- /dev/null +++ b/src/Semi.Avalonia.Demo/Pages/BorderDemo.axaml.cs @@ -0,0 +1,18 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Markup.Xaml; + +namespace Semi.Avalonia.Demo.Pages; + +public partial class BorderDemo : UserControl +{ + public BorderDemo() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + AvaloniaXamlLoader.Load(this); + } +} \ No newline at end of file diff --git a/src/Semi.Avalonia.Demo/Program.cs b/src/Semi.Avalonia.Demo/Program.cs index 025b4f1..afe35b2 100644 --- a/src/Semi.Avalonia.Demo/Program.cs +++ b/src/Semi.Avalonia.Demo/Program.cs @@ -16,7 +16,7 @@ namespace Semi.Avalonia.Demo public static AppBuilder BuildAvaloniaApp() => AppBuilder.Configure() .UsePlatformDetect() - .With(new Win32PlatformOptions(){ UseCompositor = false}) + .With(new Win32PlatformOptions(){ UseCompositor = true}) .LogToTrace(); } } \ No newline at end of file diff --git a/src/Semi.Avalonia/Controls/Border.axaml b/src/Semi.Avalonia/Controls/Border.axaml new file mode 100644 index 0000000..6d56000 --- /dev/null +++ b/src/Semi.Avalonia/Controls/Border.axaml @@ -0,0 +1,36 @@ + + + + + Hello + + + Hello + + + Hello + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/Controls.axaml b/src/Semi.Avalonia/Controls/Controls.axaml index e805b53..9846461 100644 --- a/src/Semi.Avalonia/Controls/Controls.axaml +++ b/src/Semi.Avalonia/Controls/Controls.axaml @@ -1,6 +1,7 @@ + diff --git a/src/Semi.Avalonia/Controls/Label.axaml b/src/Semi.Avalonia/Controls/Label.axaml index cc3e0aa..bae693e 100644 --- a/src/Semi.Avalonia/Controls/Label.axaml +++ b/src/Semi.Avalonia/Controls/Label.axaml @@ -183,7 +183,7 @@ ContentTemplate="{TemplateBinding ContentTemplate}" CornerRadius="{TemplateBinding CornerRadius}" FontSize="{TemplateBinding FontSize}" - RecognizesAccessKey="True" /> + RecognizesAccessKey="True" UseLayoutRounding="True" /> - - - - - - diff --git a/src/Semi.Avalonia/Themes/Light/Border.axaml b/src/Semi.Avalonia/Themes/Light/Border.axaml new file mode 100644 index 0000000..1f3a45c --- /dev/null +++ b/src/Semi.Avalonia/Themes/Light/Border.axaml @@ -0,0 +1,10 @@ + + White + + 4 + 20 + 4 + 1 + diff --git a/src/Semi.Avalonia/Themes/Light/Light.axaml b/src/Semi.Avalonia/Themes/Light/Light.axaml index 478588e..3b32fa9 100644 --- a/src/Semi.Avalonia/Themes/Light/Light.axaml +++ b/src/Semi.Avalonia/Themes/Light/Light.axaml @@ -2,6 +2,7 @@ +