From be9525c04cd4cc633b72ffdd5bb30fb2283d55cf Mon Sep 17 00:00:00 2001 From: NaBian <836904362@qq.com> Date: Sat, 27 Sep 2025 12:23:05 +0800 Subject: [PATCH] feat: add avalonia PathIcon style. --- .../UserControl/Styles/CalendarDemo.axaml | 3 +- .../Themes/Basic/Brushes.axaml | 3 +- .../Themes/Basic/Colors.axaml | 1 + .../Themes/Basic/Converters.axaml | 1 + .../Themes/Basic/Effects.axaml | 3 +- .../Themes/Basic/Fonts.axaml | 1 + .../Themes/Basic/Geometries.axaml | 3 +- .../Themes/Basic/Paths.axaml | 3 +- .../Themes/Basic/Sizes.axaml | 1 + .../Themes/Styles/Border.axaml | 1 + .../Themes/Styles/Button.axaml | 1 + .../Themes/Styles/ButtonSpinner.axaml | 1 + .../Themes/Styles/Calendar.axaml | 1 + .../Themes/Styles/CheckBox.axaml | 3 +- .../Themes/Styles/ComboBox.axaml | 1 + .../Themes/Styles/ContentControl.axaml | 3 +- .../Themes/Styles/ContextMenu.axaml | 1 + .../Themes/Styles/DataValidationErrors.axaml | 3 +- .../Themes/Styles/Expander.axaml | 1 + .../Themes/Styles/ItemsControl.axaml | 3 +- .../Themes/Styles/Label.axaml | 1 + .../Themes/Styles/ListBox.axaml | 1 + .../Themes/Styles/Menu.axaml | 1 + .../Themes/Styles/MenuFlyoutPresenter.axaml | 1 + .../Themes/Styles/MergedStyles.axaml | 53 +++++++++++++++++++ .../Themes/Styles/NumericUpDown.axaml | 1 + .../Themes/Styles/PathIcon.axaml | 29 ++++++++++ .../Themes/Styles/PopupRoot.axaml | 3 +- .../Themes/Styles/ProgressBar.axaml | 1 + .../Themes/Styles/RadioButton.axaml | 1 + .../Themes/Styles/RepeatButton.axaml | 1 + .../Themes/Styles/ScrollViewer.axaml | 1 + .../Themes/Styles/Slider.axaml | 1 + .../Themes/Styles/TabControl.axaml | 1 + .../Themes/Styles/TextBlock.axaml | 3 +- .../Themes/Styles/TextBox.axaml | 1 + .../Themes/Styles/ToggleButton.axaml | 1 + .../Themes/Styles/ToolTip.axaml | 1 + .../Themes/Styles/TreeView.axaml | 1 + .../Themes/Styles/UserControl.axaml | 3 +- .../HandyControl_Avalonia/Themes/Theme.axaml | 48 ++--------------- 41 files changed, 136 insertions(+), 56 deletions(-) create mode 100644 src/Avalonia/HandyControl_Avalonia/Themes/Styles/MergedStyles.axaml create mode 100644 src/Avalonia/HandyControl_Avalonia/Themes/Styles/PathIcon.axaml diff --git a/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/CalendarDemo.axaml b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/CalendarDemo.axaml index 489a000a..acd24106 100644 --- a/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/CalendarDemo.axaml +++ b/src/Avalonia/HandyControlDemo_Avalonia/UserControl/Styles/CalendarDemo.axaml @@ -1,6 +1,5 @@ - + diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Brushes.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Brushes.axaml index 7a1c695f..59c037ac 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Brushes.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Brushes.axaml @@ -1,5 +1,6 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Converters.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Converters.axaml index 00110357..e5fc211c 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Converters.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Converters.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Effects.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Effects.axaml index 0685f0a6..2e3ec518 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Effects.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Effects.axaml @@ -1,5 +1,6 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> Black diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Fonts.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Fonts.axaml index cdddadad..625f7e81 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Fonts.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Fonts.axaml @@ -1,5 +1,6 @@ 24 20 diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Geometries.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Geometries.axaml index e26534c3..de680304 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Geometries.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Geometries.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> M377.897477 116.291025l265.298718 0 0 47.459125-265.298718 0 0-47.459125ZM888.317416 116.291025 748.229288 116.291025l0 47.459125 123.54866 0c18.167626 0 32.894732 14.727106 32.894732 32.894732l0 92.92987L115.42936 289.574752l0-92.92987c0-18.167626 14.727106-32.894732 32.894732-32.894732l123.54866 0 0-47.459125L131.776437 116.291025c-35.244356 0-63.814389 28.571056-63.814389 63.815412l0.004093 713.966329c0 35.243333 28.571056 63.814389 63.814389 63.814389l756.540979 0c35.244356 0 63.814389-28.571056 63.814389-63.815412l-0.004093-713.966329C952.131805 144.861058 923.560749 116.291025 888.317416 116.291025zM904.67268 337.033877l0 540.498398c0 18.167626-14.727106 32.894732-32.894732 32.894732L148.324092 910.427007c-18.167626 0-32.894732-14.727106-32.894732-32.894732L115.42936 337.033877 904.67268 337.033877zM300.659736 64.801927l47.459125 0 0 170.241292-47.459125 0 0-170.241292ZM672.97481 64.801927l47.450938 0 0 170.241292-47.450938 0 0-170.241292ZM358.384138 547.939214l0 231.021432 52.863464 0L411.247602 459.226591l-34.580198 0-2.651514 3.804835c-18.000819 25.896006-41.448959 48.758786-69.681285 67.955908l-3.886703 2.643327 0 53.742526 13.441772-8.069156C330.690097 569.215794 345.588103 558.712075 358.384138 547.939214zM618.031888 726.552576c-10.287791 6.395971-24.435678 8.069156-42.059902 4.948946-16.094309-2.842881-27.898712-18.373321-35.082666-46.159464l-2.261615-8.753781-48.312603 13.424375 1.68956 8.129534c6.270098 30.168514 18.347737 52.052967 35.884976 65.017855 17.120734 12.705979 35.542152 19.777364 54.731087 21.043255 3.358652 0.225138 6.655903 0.337707 9.897892 0.337707 14.859119 0 28.430857-2.374184 40.452211-7.072408 14.417029-5.641758 26.88866-13.338413 37.076162-22.86278 10.365566-9.723922 18.230051-22.143362 23.378552-36.920612 4.918246-14.170401 7.739636-28.296797 8.385373-42.025108 0.60685-13.658723-0.667228-26.650218-3.791531-38.619382l-0.008187-0.017397c-3.111-11.777796-8.133628-23.738773-14.946104-35.551363-7.353831-12.679372-19.028268-22.750211-34.710165-29.952586-15.037183-6.872854-30.927843-10.685876-47.24729-11.32752-11.414505-0.415482-23.487027 1.386646-36.04462 5.434017 3.813022-14.568486 7.648557-31.884681 11.465673-51.775637l113.87693 0 0-49.357449L535.645647 464.492778l-1.495122 7.028404c-24.621928 115.77116-31.589954 145.497585-33.102473 150.039235l-3.432334 10.338958 45.829943 5.391036 3.054716-4.20292c8.146931-11.214951 18.247448-18.139996 30.879746-21.164011 13.004799-3.137607 24.743707-3.180588 34.879018-0.129966 9.857981 2.95545 17.822756 8.771178 24.327202 17.758284 6.512633 9.03111 10.084143 20.392401 10.617311 33.757421 0.519864 13.849067-1.603598 26.442477-6.314102 37.440476C636.315153 711.429431 628.843637 719.871089 618.031888 726.552576z M512 620.544l253.3376 253.3376a76.6976 76.6976 0 1 0 108.544-108.544L620.6464 512l253.2352-253.3376a76.6976 76.6976 0 1 0-108.544-108.544L512 403.3536 258.6624 150.1184a76.6976 76.6976 0 1 0-108.544 108.544L403.3536 512 150.1184 765.3376a76.6976 76.6976 0 1 0 108.544 108.544L512 620.6464z diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Paths.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Paths.axaml index 4355368b..da982cb8 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Paths.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Paths.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Sizes.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Sizes.axaml index 0f1bf99e..e65e68e2 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Sizes.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Basic/Sizes.axaml @@ -1,5 +1,6 @@  28 20 diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Border.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Border.axaml index 8383f466..d9ec788a 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Border.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Border.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Button.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Button.axaml index c8acc581..382dcce0 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Button.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Button.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ButtonSpinner.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ButtonSpinner.axaml index 44c3bc6e..e93bd9a6 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ButtonSpinner.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ButtonSpinner.axaml @@ -1,5 +1,6 @@ diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/CheckBox.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/CheckBox.axaml index 33c51b1a..bb3a80b6 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/CheckBox.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/CheckBox.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContentControl.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContentControl.axaml index 3676da9e..f8e910ae 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContentControl.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContentControl.axaml @@ -1,5 +1,6 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContextMenu.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContextMenu.axaml index 734d69be..9920512d 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContextMenu.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ContextMenu.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Expander.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Expander.axaml index 95e7e119..9d6e38e3 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Expander.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Expander.axaml @@ -1,5 +1,6 @@ diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ItemsControl.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ItemsControl.axaml index 8860b082..aad14a15 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ItemsControl.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ItemsControl.axaml @@ -1,5 +1,6 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Label.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Label.axaml index 16b3f620..57034b50 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Label.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Label.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ListBox.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ListBox.axaml index 8afe22fd..492ebf11 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ListBox.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ListBox.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Menu.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Menu.axaml index 14630e87..6de309b4 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Menu.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/Menu.axaml @@ -1,5 +1,6 @@ diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MenuFlyoutPresenter.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MenuFlyoutPresenter.axaml index c5699769..7404159a 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MenuFlyoutPresenter.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/MenuFlyoutPresenter.axaml @@ -1,5 +1,6 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/NumericUpDown.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/NumericUpDown.axaml index b7b9eab5..c1f6d08a 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/NumericUpDown.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/NumericUpDown.axaml @@ -1,5 +1,6 @@ diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PathIcon.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PathIcon.axaml new file mode 100644 index 00000000..4e65f952 --- /dev/null +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PathIcon.axaml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PopupRoot.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PopupRoot.axaml index 4841ddb0..400fa3ee 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PopupRoot.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/PopupRoot.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RadioButton.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RadioButton.axaml index 40ac8789..cfc3e6b3 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RadioButton.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RadioButton.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RepeatButton.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RepeatButton.axaml index 657c5aa4..528d46a2 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RepeatButton.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/RepeatButton.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ScrollViewer.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ScrollViewer.axaml index 492bd0b9..b1c1b1ce 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ScrollViewer.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ScrollViewer.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TabControl.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TabControl.axaml index 242be144..75ccccce 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TabControl.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TabControl.axaml @@ -1,5 +1,6 @@  diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TextBlock.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TextBlock.axaml index 73e558fc..bbc57084 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TextBlock.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TextBlock.axaml @@ -1,5 +1,6 @@ + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ToggleButton.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ToggleButton.axaml index 44730a49..37507e94 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ToggleButton.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/ToggleButton.axaml @@ -1,5 +1,6 @@ diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TreeView.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TreeView.axaml index 40b7b51c..e4c770c7 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TreeView.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/TreeView.axaml @@ -1,5 +1,6 @@ M508.893248 762.931659a65.039498 65.039498 0 0 1-46.420659-19.485839L97.125746 371.004022c-25.143018-25.634319-24.752868-66.816849 0.881451-91.959868 25.648769-25.164693 66.809624-24.745643 91.959867 0.881451l318.933409 325.125238 318.933408-325.125238a65.025048 65.025048 0 0 1 92.841318 91.078417L555.313907 743.44582a65.025048 65.025048 0 0 1-46.420659 19.485839z diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/UserControl.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/UserControl.axaml index 8c2c431b..f96af582 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Styles/UserControl.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Styles/UserControl.axaml @@ -1,5 +1,6 @@  + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + x:ClassModifier="internal"> diff --git a/src/Avalonia/HandyControl_Avalonia/Themes/Theme.axaml b/src/Avalonia/HandyControl_Avalonia/Themes/Theme.axaml index ce69a3bb..0fe14cae 100644 --- a/src/Avalonia/HandyControl_Avalonia/Themes/Theme.axaml +++ b/src/Avalonia/HandyControl_Avalonia/Themes/Theme.axaml @@ -1,51 +1,13 @@ - - + x:Class="HandyControl.Themes.Theme"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + +