Skip to content

Commit 9660811

Browse files
authored
Update GradientOrigin property to align with WPF naming (#2181)
* Update GradientOffset property to match spec * Rename to GradientOrigin * Update local variable
1 parent a939567 commit 9660811

7 files changed

+38
-35
lines changed

dev/Generated/RadialGradientBrush.properties.cpp

+13-13
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ namespace winrt::Microsoft::UI::Xaml::Media
1515

1616
GlobalDependencyProperty RadialGradientBrushProperties::s_EllipseCenterProperty{ nullptr };
1717
GlobalDependencyProperty RadialGradientBrushProperties::s_EllipseRadiusProperty{ nullptr };
18-
GlobalDependencyProperty RadialGradientBrushProperties::s_GradientOriginOffsetProperty{ nullptr };
18+
GlobalDependencyProperty RadialGradientBrushProperties::s_GradientOriginProperty{ nullptr };
1919
GlobalDependencyProperty RadialGradientBrushProperties::s_InterpolationSpaceProperty{ nullptr };
2020
GlobalDependencyProperty RadialGradientBrushProperties::s_MappingModeProperty{ nullptr };
2121
GlobalDependencyProperty RadialGradientBrushProperties::s_SpreadMethodProperty{ nullptr };
@@ -49,16 +49,16 @@ void RadialGradientBrushProperties::EnsureProperties()
4949
ValueHelper<winrt::Point>::BoxValueIfNecessary(winrt::Point(0.5,0.5)),
5050
winrt::PropertyChangedCallback(&OnEllipseRadiusPropertyChanged));
5151
}
52-
if (!s_GradientOriginOffsetProperty)
52+
if (!s_GradientOriginProperty)
5353
{
54-
s_GradientOriginOffsetProperty =
54+
s_GradientOriginProperty =
5555
InitializeDependencyProperty(
56-
L"GradientOriginOffset",
56+
L"GradientOrigin",
5757
winrt::name_of<winrt::Point>(),
5858
winrt::name_of<winrt::RadialGradientBrush>(),
5959
false /* isAttached */,
60-
ValueHelper<winrt::Point>::BoxedDefaultValue(),
61-
winrt::PropertyChangedCallback(&OnGradientOriginOffsetPropertyChanged));
60+
ValueHelper<winrt::Point>::BoxValueIfNecessary(winrt::Point(0.5,0.5)),
61+
winrt::PropertyChangedCallback(&OnGradientOriginPropertyChanged));
6262
}
6363
if (!s_InterpolationSpaceProperty)
6464
{
@@ -99,7 +99,7 @@ void RadialGradientBrushProperties::ClearProperties()
9999
{
100100
s_EllipseCenterProperty = nullptr;
101101
s_EllipseRadiusProperty = nullptr;
102-
s_GradientOriginOffsetProperty = nullptr;
102+
s_GradientOriginProperty = nullptr;
103103
s_InterpolationSpaceProperty = nullptr;
104104
s_MappingModeProperty = nullptr;
105105
s_SpreadMethodProperty = nullptr;
@@ -121,12 +121,12 @@ void RadialGradientBrushProperties::OnEllipseRadiusPropertyChanged(
121121
winrt::get_self<RadialGradientBrush>(owner)->OnEllipseRadiusPropertyChanged(args);
122122
}
123123

124-
void RadialGradientBrushProperties::OnGradientOriginOffsetPropertyChanged(
124+
void RadialGradientBrushProperties::OnGradientOriginPropertyChanged(
125125
winrt::DependencyObject const& sender,
126126
winrt::DependencyPropertyChangedEventArgs const& args)
127127
{
128128
auto owner = sender.as<winrt::RadialGradientBrush>();
129-
winrt::get_self<RadialGradientBrush>(owner)->OnGradientOriginOffsetPropertyChanged(args);
129+
winrt::get_self<RadialGradientBrush>(owner)->OnGradientOriginPropertyChanged(args);
130130
}
131131

132132
void RadialGradientBrushProperties::OnInterpolationSpacePropertyChanged(
@@ -173,14 +173,14 @@ winrt::Point RadialGradientBrushProperties::EllipseRadius()
173173
return ValueHelper<winrt::Point>::CastOrUnbox(static_cast<RadialGradientBrush*>(this)->GetValue(s_EllipseRadiusProperty));
174174
}
175175

176-
void RadialGradientBrushProperties::GradientOriginOffset(winrt::Point const& value)
176+
void RadialGradientBrushProperties::GradientOrigin(winrt::Point const& value)
177177
{
178-
static_cast<RadialGradientBrush*>(this)->SetValue(s_GradientOriginOffsetProperty, ValueHelper<winrt::Point>::BoxValueIfNecessary(value));
178+
static_cast<RadialGradientBrush*>(this)->SetValue(s_GradientOriginProperty, ValueHelper<winrt::Point>::BoxValueIfNecessary(value));
179179
}
180180

181-
winrt::Point RadialGradientBrushProperties::GradientOriginOffset()
181+
winrt::Point RadialGradientBrushProperties::GradientOrigin()
182182
{
183-
return ValueHelper<winrt::Point>::CastOrUnbox(static_cast<RadialGradientBrush*>(this)->GetValue(s_GradientOriginOffsetProperty));
183+
return ValueHelper<winrt::Point>::CastOrUnbox(static_cast<RadialGradientBrush*>(this)->GetValue(s_GradientOriginProperty));
184184
}
185185

186186
void RadialGradientBrushProperties::InterpolationSpace(winrt::CompositionColorSpace const& value)

dev/Generated/RadialGradientBrush.properties.h

+5-5
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ class RadialGradientBrushProperties
1515
void EllipseRadius(winrt::Point const& value);
1616
winrt::Point EllipseRadius();
1717

18-
void GradientOriginOffset(winrt::Point const& value);
19-
winrt::Point GradientOriginOffset();
18+
void GradientOrigin(winrt::Point const& value);
19+
winrt::Point GradientOrigin();
2020

2121
void InterpolationSpace(winrt::CompositionColorSpace const& value);
2222
winrt::CompositionColorSpace InterpolationSpace();
@@ -29,14 +29,14 @@ class RadialGradientBrushProperties
2929

3030
static winrt::DependencyProperty EllipseCenterProperty() { return s_EllipseCenterProperty; }
3131
static winrt::DependencyProperty EllipseRadiusProperty() { return s_EllipseRadiusProperty; }
32-
static winrt::DependencyProperty GradientOriginOffsetProperty() { return s_GradientOriginOffsetProperty; }
32+
static winrt::DependencyProperty GradientOriginProperty() { return s_GradientOriginProperty; }
3333
static winrt::DependencyProperty InterpolationSpaceProperty() { return s_InterpolationSpaceProperty; }
3434
static winrt::DependencyProperty MappingModeProperty() { return s_MappingModeProperty; }
3535
static winrt::DependencyProperty SpreadMethodProperty() { return s_SpreadMethodProperty; }
3636

3737
static GlobalDependencyProperty s_EllipseCenterProperty;
3838
static GlobalDependencyProperty s_EllipseRadiusProperty;
39-
static GlobalDependencyProperty s_GradientOriginOffsetProperty;
39+
static GlobalDependencyProperty s_GradientOriginProperty;
4040
static GlobalDependencyProperty s_InterpolationSpaceProperty;
4141
static GlobalDependencyProperty s_MappingModeProperty;
4242
static GlobalDependencyProperty s_SpreadMethodProperty;
@@ -52,7 +52,7 @@ class RadialGradientBrushProperties
5252
winrt::DependencyObject const& sender,
5353
winrt::DependencyPropertyChangedEventArgs const& args);
5454

55-
static void OnGradientOriginOffsetPropertyChanged(
55+
static void OnGradientOriginPropertyChanged(
5656
winrt::DependencyObject const& sender,
5757
winrt::DependencyPropertyChangedEventArgs const& args);
5858

dev/RadialGradientBrush/RadialGradientBrush.cpp

+8-6
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,11 @@ void RadialGradientBrush::OnEllipseRadiusPropertyChanged(const winrt::Dependency
8080
}
8181
}
8282

83-
void RadialGradientBrush::OnGradientOriginOffsetPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args)
83+
void RadialGradientBrush::OnGradientOriginPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args)
8484
{
8585
if (SharedHelpers::IsCompositionRadialGradientBrushAvailable())
8686
{
87-
UpdateCompositionGradientOriginOffset();
87+
UpdateCompositionGradientOrigin();
8888
}
8989
}
9090

@@ -138,7 +138,7 @@ void RadialGradientBrush::EnsureCompositionBrush()
138138

139139
UpdateCompositionGradientEllipseCenter();
140140
UpdateCompositionGradientEllipseRadius();
141-
UpdateCompositionGradientOriginOffset();
141+
UpdateCompositionGradientOrigin();
142142
UpdateCompositionGradientStops();
143143
UpdateCompositionGradientMappingMode();
144144
UpdateCompositionInterpolationSpace();
@@ -197,14 +197,16 @@ void RadialGradientBrush::UpdateCompositionGradientMappingMode()
197197
}
198198
}
199199

200-
void RadialGradientBrush::UpdateCompositionGradientOriginOffset()
200+
void RadialGradientBrush::UpdateCompositionGradientOrigin()
201201
{
202202
MUX_ASSERT(SharedHelpers::IsCompositionRadialGradientBrushAvailable());
203203

204204
if (const auto compositionGradientBrush = m_brush.try_as<winrt::CompositionRadialGradientBrush>())
205205
{
206-
const auto gradientOriginOffset = GradientOriginOffset();
207-
compositionGradientBrush.GradientOriginOffset(winrt::float2(gradientOriginOffset.X, gradientOriginOffset.Y));
206+
const auto gradientOrigin = GradientOrigin();
207+
// This sets the gradient offset center to the top left corner
208+
// Top Left is (-0.5,-0.5), center is (0,0)
209+
compositionGradientBrush.GradientOriginOffset(winrt::float2(gradientOrigin.X - 0.5f, gradientOrigin.Y - 0.5f));
208210
}
209211
}
210212

dev/RadialGradientBrush/RadialGradientBrush.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class RadialGradientBrush :
2525

2626
void OnEllipseCenterPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
2727
void OnEllipseRadiusPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
28-
void OnGradientOriginOffsetPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
28+
void OnGradientOriginPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
2929
void OnMappingModePropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
3030
void OnInterpolationSpacePropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
3131
void OnSpreadMethodPropertyChanged(const winrt::DependencyPropertyChangedEventArgs& args);
@@ -46,7 +46,7 @@ class RadialGradientBrush :
4646
void UpdateCompositionGradientEllipseCenter();
4747
void UpdateCompositionGradientEllipseRadius();
4848
void UpdateCompositionGradientMappingMode();
49-
void UpdateCompositionGradientOriginOffset();
49+
void UpdateCompositionGradientOrigin();
5050
void UpdateCompositionGradientStops();
5151
void UpdateCompositionInterpolationSpace();
5252
void UpdateCompositionExtendMode();

dev/RadialGradientBrush/RadialGradientBrush.idl

+3-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ unsealed runtimeclass RadialGradientBrush : Windows.UI.Xaml.Media.XamlCompositio
1717
Windows.Foundation.Point EllipseRadius { get; set; };
1818

1919
[MUX_PROPERTY_CHANGED_CALLBACK(TRUE)]
20-
Windows.Foundation.Point GradientOriginOffset { get; set; };
20+
[MUX_DEFAULT_VALUE("winrt::Point(0.5,0.5)")]
21+
Windows.Foundation.Point GradientOrigin { get; set; };
2122

2223
[MUX_PROPERTY_CHANGED_CALLBACK(TRUE)]
2324
[MUX_DEFAULT_VALUE("winrt::BrushMappingMode::RelativeToBoundingBox")]
@@ -35,7 +36,7 @@ unsealed runtimeclass RadialGradientBrush : Windows.UI.Xaml.Media.XamlCompositio
3536

3637
static Windows.UI.Xaml.DependencyProperty EllipseCenterProperty { get; };
3738
static Windows.UI.Xaml.DependencyProperty EllipseRadiusProperty { get; };
38-
static Windows.UI.Xaml.DependencyProperty GradientOriginOffsetProperty { get; };
39+
static Windows.UI.Xaml.DependencyProperty GradientOriginProperty { get; };
3940
static Windows.UI.Xaml.DependencyProperty InterpolationSpaceProperty { get; };
4041
static Windows.UI.Xaml.DependencyProperty MappingModeProperty { get; };
4142
static Windows.UI.Xaml.DependencyProperty SpreadMethodProperty { get; };

dev/RadialGradientBrush/TestUI/RadialGradientBrushPage.xaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,8 @@
120120
<TextBlock Text="{x:Bind DynamicGradientBrush.MappingMode}" Grid.Row="0" Grid.Column="1" />
121121
<TextBlock Text="GradientStops.Count: " Grid.Row="1" />
122122
<TextBlock Text="{x:Bind DynamicGradientBrush.GradientStops.Count}" Grid.Row="1" Grid.Column="1" x:Name="GradientStopCountText" AutomationProperties.Name="GradientStopCountText" />
123-
<TextBlock Text="GradientOriginOffset: " Grid.Row="2" />
124-
<TextBlock Text="{x:Bind DynamicGradientBrush.GradientOriginOffset}" Grid.Row="2" Grid.Column="1" />
123+
<TextBlock Text="GradientOrigin: " Grid.Row="2" />
124+
<TextBlock Text="{x:Bind DynamicGradientBrush.GradientOrigin}" Grid.Row="2" Grid.Column="1" />
125125
<TextBlock Text="EllipseCenter: " Grid.Row="3" />
126126
<TextBlock Text="{x:Bind DynamicGradientBrush.EllipseCenter}" Grid.Row="3" Grid.Column="1" />
127127
<TextBlock Text="EllipseRadius: " Grid.Row="4" />

dev/RadialGradientBrush/TestUI/RadialGradientBrushPage.xaml.cs

+5-5
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ private void RemoveGradientStopButton_Click(object sender, RoutedEventArgs e)
121121

122122
private void RandomizeGradientOriginButton_Click(object sender, RoutedEventArgs e)
123123
{
124-
RandomizeGradientOriginOffset(DynamicGradientBrush);
124+
RandomizeGradientOrigin(DynamicGradientBrush);
125125
}
126126

127127
private void RandomizeEllipseCenterButton_Click(object sender, RoutedEventArgs e)
@@ -198,17 +198,17 @@ private void RemoveRandomGradientStop(RadialGradientBrush gradientBrush)
198198
}
199199
}
200200

201-
private void RandomizeGradientOriginOffset(RadialGradientBrush gradientBrush)
201+
private void RandomizeGradientOrigin(RadialGradientBrush gradientBrush)
202202
{
203203
if (gradientBrush != null)
204204
{
205205
if (gradientBrush.MappingMode == BrushMappingMode.Absolute)
206206
{
207-
gradientBrush.GradientOriginOffset = new Point(_random.Next(0, 100), _random.Next(0, 100));
207+
gradientBrush.GradientOrigin = new Point(_random.Next(0, 100), _random.Next(0, 100));
208208
}
209209
else
210210
{
211-
gradientBrush.GradientOriginOffset = new Point(_random.Next(-100, 100) / 100f, _random.Next(-100, 100) / 100f);
211+
gradientBrush.GradientOrigin = new Point(_random.Next(-100, 100) / 100f, _random.Next(-100, 100) / 100f);
212212
}
213213
}
214214
}
@@ -251,7 +251,7 @@ private void ToggleMappingMode(RadialGradientBrush gradientBrush)
251251

252252
RandomizeEllipseCenter(gradientBrush);
253253
RandomizeEllipseRadius(gradientBrush);
254-
RandomizeGradientOriginOffset(gradientBrush);
254+
RandomizeGradientOrigin(gradientBrush);
255255
}
256256
}
257257

0 commit comments

Comments
 (0)