From 0818155813958673e2eeeb7db7f3124e7b1202b4 Mon Sep 17 00:00:00 2001
From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
Date: Tue, 11 Jul 2023 15:10:06 +0800
Subject: [PATCH 1/6] feat: add success styles.
---
demo/Ursa.Demo/Pages/BadgeDemo.axaml | 9 +++++++++
src/Ursa.Themes.Semi/Controls/Badge.axaml | 3 +++
src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml | 1 +
src/Ursa.Themes.Semi/Themes/Light/Badge.axaml | 1 +
4 files changed, 14 insertions(+)
diff --git a/demo/Ursa.Demo/Pages/BadgeDemo.axaml b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
index 642cefa..c8a3b0e 100644
--- a/demo/Ursa.Demo/Pages/BadgeDemo.axaml
+++ b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
@@ -89,6 +89,9 @@
+
+
+
+
+
+
diff --git a/src/Ursa.Themes.Semi/Controls/Badge.axaml b/src/Ursa.Themes.Semi/Controls/Badge.axaml
index cf6896f..a1e9c3a 100644
--- a/src/Ursa.Themes.Semi/Controls/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Controls/Badge.axaml
@@ -130,5 +130,8 @@
+
diff --git a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
index b92979b..9fb3409 100644
--- a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
@@ -7,4 +7,5 @@
+
diff --git a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
index 36e14da..ca87cd5 100644
--- a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
@@ -7,4 +7,5 @@
+
From 905e0f6fc250cb7e46d3b411acb18a46a03669b9 Mon Sep 17 00:00:00 2001
From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
Date: Fri, 21 Jul 2023 02:21:28 +0800
Subject: [PATCH 2/6] feat: add Light and Inverted classes.
---
demo/Ursa.Demo/Pages/BadgeDemo.axaml | 379 ++++++++++++------
src/Ursa.Themes.Semi/Controls/Badge.axaml | 54 ++-
src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml | 28 +-
src/Ursa.Themes.Semi/Themes/Light/Badge.axaml | 26 +-
4 files changed, 350 insertions(+), 137 deletions(-)
diff --git a/demo/Ursa.Demo/Pages/BadgeDemo.axaml b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
index c8a3b0e..ce4e062 100644
--- a/demo/Ursa.Demo/Pages/BadgeDemo.axaml
+++ b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
@@ -8,135 +8,254 @@
d:DesignHeight="450"
d:DesignWidth="800"
mc:Ignorable="d">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
\ No newline at end of file
diff --git a/src/Ursa.Themes.Semi/Controls/Badge.axaml b/src/Ursa.Themes.Semi/Controls/Badge.axaml
index e1d5f25..2dc94dd 100644
--- a/src/Ursa.Themes.Semi/Controls/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Controls/Badge.axaml
@@ -11,6 +11,7 @@
+
@@ -18,6 +19,7 @@
+
+ TextElement.Foreground="{TemplateBinding Foreground}">
@@ -133,5 +135,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
\ No newline at end of file
diff --git a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
index 9fb3409..b65dbc0 100644
--- a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
@@ -1,11 +1,33 @@
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
index ca87cd5..3a326b4 100644
--- a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
@@ -1,11 +1,33 @@
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
From 2c71f3a0a3dd0df871d457f55d1fe0f067c4dda3 Mon Sep 17 00:00:00 2001
From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
Date: Mon, 24 Jul 2023 17:45:50 +0800
Subject: [PATCH 3/6] fix: Border brush color.
---
src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml | 2 +-
src/Ursa.Themes.Semi/Themes/Light/Badge.axaml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
index b65dbc0..6d97358 100644
--- a/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Dark/Badge.axaml
@@ -1,5 +1,5 @@
-
+
diff --git a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
index 3a326b4..6128269 100644
--- a/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Themes/Light/Badge.axaml
@@ -1,5 +1,5 @@
-
+
From e4ff70ad14234e104b01655e6c654155d7318fa0 Mon Sep 17 00:00:00 2001
From: Zhang Dian <54255897+zdpcdt@users.noreply.github.com>
Date: Fri, 4 Aug 2023 22:55:09 +0800
Subject: [PATCH 4/6] feat: Badge inherits HeaderedContentControl.
---
demo/Ursa.Demo/Pages/BadgeDemo.axaml | 98 +++++++++++------------
src/Ursa.Themes.Semi/Controls/Badge.axaml | 8 +-
src/Ursa/Controls/Badge.cs | 25 ++----
3 files changed, 58 insertions(+), 73 deletions(-)
diff --git a/demo/Ursa.Demo/Pages/BadgeDemo.axaml b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
index ce4e062..5d2f3d0 100644
--- a/demo/Ursa.Demo/Pages/BadgeDemo.axaml
+++ b/demo/Ursa.Demo/Pages/BadgeDemo.axaml
@@ -27,152 +27,152 @@
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -180,37 +180,37 @@
@@ -219,37 +219,37 @@
diff --git a/src/Ursa.Themes.Semi/Controls/Badge.axaml b/src/Ursa.Themes.Semi/Controls/Badge.axaml
index 2dc94dd..9dd320d 100644
--- a/src/Ursa.Themes.Semi/Controls/Badge.axaml
+++ b/src/Ursa.Themes.Semi/Controls/Badge.axaml
@@ -45,12 +45,12 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="{TemplateBinding CornerRadius}"
- IsVisible="{Binding !!BadgeContent, RelativeSource={RelativeSource TemplatedParent}}"
+ IsVisible="{Binding !!Header, RelativeSource={RelativeSource TemplatedParent}}"
RenderTransformOrigin=".5,.5"
Theme="{TemplateBinding BadgeTheme}"
UseLayoutRounding="False">
-
+
@@ -93,7 +93,7 @@
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
CornerRadius="{TemplateBinding CornerRadius}"
- IsVisible="{Binding !!BadgeContent, RelativeSource={RelativeSource TemplatedParent}}"
+ IsVisible="{Binding !!Header, RelativeSource={RelativeSource TemplatedParent}}"
RenderTransformOrigin=".5,.5" />
diff --git a/src/Ursa/Controls/Badge.cs b/src/Ursa/Controls/Badge.cs
index 9956352..3e24381 100644
--- a/src/Ursa/Controls/Badge.cs
+++ b/src/Ursa/Controls/Badge.cs
@@ -1,7 +1,6 @@
using Avalonia;
using Avalonia.Controls;
using Avalonia.Controls.Metadata;
-using Avalonia.Controls.Presenters;
using Avalonia.Controls.Primitives;
using Avalonia.Interactivity;
using Avalonia.Media;
@@ -10,18 +9,14 @@ using Ursa.Common;
namespace Ursa.Controls;
-[TemplatePart(PART_ContentPresenter, typeof(ContentPresenter))]
[TemplatePart(PART_BadgeContainer, typeof(Border))]
-[TemplatePart(PART_BadgeContentPresenter, typeof(ContentPresenter))]
-public class Badge: ContentControl
+public class Badge: HeaderedContentControl
{
public const string PART_ContentPresenter = "PART_ContentPresenter";
public const string PART_BadgeContainer = "PART_BadgeContainer";
- public const string PART_BadgeContentPresenter = "PART_BadgeContentPresenter";
-
- private ContentPresenter? _content;
+ public const string PART_HeaderPresenter = "PART_HeaderPresenter";
+
private Border? _badgeContainer;
- private ContentPresenter? _badgeContent;
public static readonly StyledProperty BadgeThemeProperty = AvaloniaProperty.Register(
nameof(BadgeTheme));
@@ -39,14 +34,6 @@ public class Badge: ContentControl
set => SetValue(DotProperty, value);
}
- public static readonly StyledProperty