From c509d2024a68535718496096afb23490f7ce3725 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Fri, 9 Dec 2022 19:14:03 +0800 Subject: [PATCH 1/2] feat: update radio button theme, pending on card and pure card. update checkbox glyphs. --- src/Semi.Avalonia.Demo/MainWindow.axaml | 18 +- src/Semi.Avalonia.Demo/MainWindow.axaml.cs | 1 + .../Pages/RadioButtonDemo.axaml | 56 ++++ .../Pages/RadioButtonDemo.axaml.cs | 18 ++ src/Semi.Avalonia/Controls/CheckBox.axaml | 4 +- src/Semi.Avalonia/Controls/Controls.axaml | 1 + src/Semi.Avalonia/Controls/RadioButton.axaml | 302 ++++++++++++++++++ src/Semi.Avalonia/Controls/Window.axaml | 22 +- src/Semi.Avalonia/Themes/Base.axaml | 12 +- src/Semi.Avalonia/Themes/Light/Light.axaml | 1 + .../Themes/Light/RadioButton.axaml | 54 ++++ 11 files changed, 460 insertions(+), 29 deletions(-) create mode 100644 src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml create mode 100644 src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml.cs create mode 100644 src/Semi.Avalonia/Controls/RadioButton.axaml create mode 100644 src/Semi.Avalonia/Themes/Light/RadioButton.axaml diff --git a/src/Semi.Avalonia.Demo/MainWindow.axaml b/src/Semi.Avalonia.Demo/MainWindow.axaml index c047a31..1b98c8e 100644 --- a/src/Semi.Avalonia.Demo/MainWindow.axaml +++ b/src/Semi.Avalonia.Demo/MainWindow.axaml @@ -1,14 +1,9 @@ + x:Class="Semi.Avalonia.Demo.MainWindow" xmlns="https://github.com/avaloniaui" + 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:pages="using:Semi.Avalonia.Demo.Pages" + Title="Semi.Demo" d:DesignHeight="450" + d:DesignWidth="800" mc:Ignorable="d"> @@ -16,5 +11,8 @@ + + + diff --git a/src/Semi.Avalonia.Demo/MainWindow.axaml.cs b/src/Semi.Avalonia.Demo/MainWindow.axaml.cs index 9f969bb..516942c 100644 --- a/src/Semi.Avalonia.Demo/MainWindow.axaml.cs +++ b/src/Semi.Avalonia.Demo/MainWindow.axaml.cs @@ -1,4 +1,5 @@ using Avalonia.Controls; +using Avalonia.Interactivity; namespace Semi.Avalonia.Demo { diff --git a/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml new file mode 100644 index 0000000..ce65be9 --- /dev/null +++ b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml @@ -0,0 +1,56 @@ + + + + + 111 + 222 + 333 + + + + + 小1 + 小2 + + + + + 默认1 + 默认2 + + + + + 大1 + 大2 + + + + + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + + + diff --git a/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml.cs b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml.cs new file mode 100644 index 0000000..d288d1c --- /dev/null +++ b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml.cs @@ -0,0 +1,18 @@ +using Avalonia; +using Avalonia.Controls; +using Avalonia.Markup.Xaml; + +namespace Semi.Avalonia.Demo.Pages; + +public partial class RadioButtonDemo : UserControl +{ + public RadioButtonDemo() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + AvaloniaXamlLoader.Load(this); + } +} \ No newline at end of file diff --git a/src/Semi.Avalonia/Controls/CheckBox.axaml b/src/Semi.Avalonia/Controls/CheckBox.axaml index a82566a..e1d9e21 100644 --- a/src/Semi.Avalonia/Controls/CheckBox.axaml +++ b/src/Semi.Avalonia/Controls/CheckBox.axaml @@ -90,7 +90,7 @@ @@ -134,7 +134,7 @@ diff --git a/src/Semi.Avalonia/Controls/Controls.axaml b/src/Semi.Avalonia/Controls/Controls.axaml index ee0dd9c..448a2b8 100644 --- a/src/Semi.Avalonia/Controls/Controls.axaml +++ b/src/Semi.Avalonia/Controls/Controls.axaml @@ -3,6 +3,7 @@ + diff --git a/src/Semi.Avalonia/Controls/RadioButton.axaml b/src/Semi.Avalonia/Controls/RadioButton.axaml new file mode 100644 index 0000000..d2a5654 --- /dev/null +++ b/src/Semi.Avalonia/Controls/RadioButton.axaml @@ -0,0 +1,302 @@ + + + + Hello Button + Hello Button2 + Hello Button3 + + + Hello Button2 + Hello Button3 + + + Hello Button3 + Hello Button3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Semi.Avalonia/Controls/Window.axaml b/src/Semi.Avalonia/Controls/Window.axaml index 2ba614f..af5f45c 100644 --- a/src/Semi.Avalonia/Controls/Window.axaml +++ b/src/Semi.Avalonia/Controls/Window.axaml @@ -1,27 +1,27 @@ - + - + - - - + + + - + - + VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" + Content="{TemplateBinding Content}" + ContentTemplate="{TemplateBinding ContentTemplate}" /> diff --git a/src/Semi.Avalonia/Themes/Base.axaml b/src/Semi.Avalonia/Themes/Base.axaml index 1c53dce..fa1a177 100644 --- a/src/Semi.Avalonia/Themes/Base.axaml +++ b/src/Semi.Avalonia/Themes/Base.axaml @@ -1,7 +1,7 @@ - - - 14 - Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif + + + 14 + Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif diff --git a/src/Semi.Avalonia/Themes/Light/Light.axaml b/src/Semi.Avalonia/Themes/Light/Light.axaml index 0796013..f507da3 100644 --- a/src/Semi.Avalonia/Themes/Light/Light.axaml +++ b/src/Semi.Avalonia/Themes/Light/Light.axaml @@ -4,6 +4,7 @@ + diff --git a/src/Semi.Avalonia/Themes/Light/RadioButton.axaml b/src/Semi.Avalonia/Themes/Light/RadioButton.axaml new file mode 100644 index 0000000..f3cc71a --- /dev/null +++ b/src/Semi.Avalonia/Themes/Light/RadioButton.axaml @@ -0,0 +1,54 @@ + + 16 + 6 + 14 + 0 2 8 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 3 + 3 + + 600 + 16 2 + 16 4 + 24 6 + + 12 + 12 + 14 + + + + + + 16 12 + + From 6f9ed6d15ba7e339364d2408a48d835bbd7e1071 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Fri, 9 Dec 2022 22:26:57 +0800 Subject: [PATCH 2/2] feat: add pure card theme for RadioButton. --- .../Pages/RadioButtonDemo.axaml | 34 ++++- src/Semi.Avalonia/Controls/RadioButton.axaml | 123 ++++++++++++++---- .../Themes/Light/RadioButton.axaml | 13 ++ 3 files changed, 135 insertions(+), 35 deletions(-) diff --git a/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml index ce65be9..bb655cd 100644 --- a/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml +++ b/src/Semi.Avalonia.Demo/Pages/RadioButtonDemo.axaml @@ -1,8 +1,7 @@ + xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d"> @@ -25,27 +24,48 @@ 默认2 - + 大1 大2 - - + + 单选框标题 Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 - + 单选框标题 Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 - + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + + + + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + + + 单选框标题 + Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 + + + 单选框标题 Semi Design 是由互娱社区前端团队与 UED 团队共同设计开发并维护的设计系统 diff --git a/src/Semi.Avalonia/Controls/RadioButton.axaml b/src/Semi.Avalonia/Controls/RadioButton.axaml index d2a5654..49ba2dc 100644 --- a/src/Semi.Avalonia/Controls/RadioButton.axaml +++ b/src/Semi.Avalonia/Controls/RadioButton.axaml @@ -1,7 +1,6 @@ - - Hello Button + Hello Button2 Hello Button3 @@ -10,14 +9,15 @@ Hello Button3 - Hello Button3 - Hello Button3 + Hello Button3 + Hello Button3 + @@ -138,6 +138,7 @@ + @@ -184,13 +185,14 @@ - + + - + @@ -239,6 +241,8 @@ - + + - - - + - + - + - + + + + + + + + + + + + + + + + - + + + diff --git a/src/Semi.Avalonia/Themes/Light/RadioButton.axaml b/src/Semi.Avalonia/Themes/Light/RadioButton.axaml index f3cc71a..63f99cc 100644 --- a/src/Semi.Avalonia/Themes/Light/RadioButton.axaml +++ b/src/Semi.Avalonia/Themes/Light/RadioButton.axaml @@ -51,4 +51,17 @@ 16 12 + + + + + + + + + + + + 3 +