|
61 | 61 | BorderBrush="{TemplateBinding BorderBrush}" |
62 | 62 | x:Name="border" |
63 | 63 | Effect="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ShadowAssist.ShadowDepth), Converter={x:Static converters:ShadowConverter.Instance}}" /> |
64 | | - <ProgressBar x:Name="ProgressBar" |
65 | | - Style="{DynamicResource MaterialDesignLinearProgressBar}" |
| 64 | + <ProgressBar x:Name="ProgressBar" |
| 65 | + Style="{DynamicResource MaterialDesignLinearProgressBar}" |
66 | 66 | Minimum="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Minimum)}" |
67 | 67 | Maximum="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Maximum)}" |
68 | 68 | Foreground="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.IndicatorForeground)}" |
|
73 | 73 | Height="{TemplateBinding Height}" |
74 | 74 | Width="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ButtonBase}}, Path=ActualWidth}" |
75 | 75 | Opacity="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Opacity)}" |
76 | | - HorizontalAlignment="Left" |
| 76 | + HorizontalAlignment="Left" |
77 | 77 | VerticalAlignment="Center"> |
78 | 78 | </ProgressBar> |
79 | 79 | </Grid> |
80 | 80 | </AdornerDecorator> |
81 | | - <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
| 81 | + <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
82 | 82 | ContentStringFormat="{TemplateBinding ContentStringFormat}" |
83 | | - HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
| 83 | + HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
84 | 84 | VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" |
85 | | - Padding="{TemplateBinding Padding}" |
| 85 | + Padding="{TemplateBinding Padding}" |
86 | 86 | SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> |
87 | 87 | </Grid> |
88 | 88 | <ControlTemplate.Triggers> |
|
140 | 140 | <Border Background="{TemplateBinding Background}" x:Name="border" |
141 | 141 | CornerRadius="{Binding Path=(wpf:ButtonAssist.CornerRadius), RelativeSource={RelativeSource TemplatedParent}}" |
142 | 142 | BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"> |
143 | | - <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
144 | | - HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
| 143 | + <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
| 144 | + HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
145 | 145 | VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" |
146 | | - Padding="{TemplateBinding Padding}" |
| 146 | + Padding="{TemplateBinding Padding}" |
147 | 147 | SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> |
148 | 148 | </Border> |
149 | 149 | </Grid> |
|
230 | 230 | <Setter Property="Template"> |
231 | 231 | <Setter.Value> |
232 | 232 | <ControlTemplate TargetType="ButtonBase"> |
233 | | - <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
234 | | - HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
| 233 | + <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
| 234 | + HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
235 | 235 | VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" |
236 | | - Padding="{TemplateBinding Padding}" |
| 236 | + Padding="{TemplateBinding Padding}" |
237 | 237 | SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> |
238 | 238 | <ControlTemplate.Triggers> |
239 | 239 | <Trigger Property="IsEnabled" Value="false"> |
|
271 | 271 | <ControlTemplate TargetType="{x:Type ButtonBase}"> |
272 | 272 | <Grid> |
273 | 273 | <AdornerDecorator CacheMode="{Binding RelativeSource={RelativeSource Self}, Path=(wpf:ShadowAssist.CacheMode)}"> |
274 | | - <Ellipse Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" |
| 274 | + <Ellipse Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" |
275 | 275 | Effect="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ShadowAssist.ShadowDepth), Converter={x:Static converters:ShadowConverter.Instance}}" |
276 | 276 | x:Name="border"> |
277 | 277 | </Ellipse> |
278 | 278 | </AdornerDecorator> |
279 | | - <ProgressBar x:Name="ProgressBar" |
280 | | - Style="{DynamicResource MaterialDesignCircularProgressBar}" |
| 279 | + <ProgressBar x:Name="ProgressBar" |
| 280 | + Style="{DynamicResource MaterialDesignCircularProgressBar}" |
281 | 281 | Minimum="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Minimum)}" |
282 | 282 | Maximum="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Maximum)}" |
283 | 283 | Foreground="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.IndicatorForeground)}" |
|
286 | 286 | IsIndeterminate="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.IsIndeterminate)}" |
287 | 287 | Opacity="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.Opacity)}" |
288 | 288 | Visibility="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(wpf:ButtonProgressAssist.IsIndicatorVisible), Converter={StaticResource BooleanToVisibilityConverter}}" |
289 | | - Margin="-8" |
| 289 | + Margin="-8" |
290 | 290 | Width="{TemplateBinding Width, Converter={StaticResource MathAddConverter}, ConverterParameter={StaticResource ProgressRingStrokeWidth}}" |
291 | 291 | Height="{TemplateBinding Height, Converter={StaticResource MathAddConverter}, ConverterParameter={StaticResource ProgressRingStrokeWidth}}" |
292 | | - HorizontalAlignment="Stretch" |
| 292 | + HorizontalAlignment="Stretch" |
293 | 293 | VerticalAlignment="Stretch" |
294 | 294 | RenderTransformOrigin=".5, .5"> |
295 | 295 | <ProgressBar.RenderTransform> |
|
299 | 299 | </ProgressBar.RenderTransform> |
300 | 300 | </ProgressBar> |
301 | 301 | <Ellipse Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}" /> |
302 | | - <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
| 302 | + <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
303 | 303 | Clip="{Binding ElementName=GeometryEllipse, Path=RenderedGeometry}" ClipToBounds="True" |
304 | | - HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
| 304 | + HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
305 | 305 | VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" |
306 | | - Padding="{TemplateBinding Padding}" |
| 306 | + Padding="{TemplateBinding Padding}" |
307 | 307 | SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> |
308 | 308 | <Ellipse x:Name="GeometryEllipse" Fill="Transparent" IsHitTestVisible="False" Focusable="False" /> |
309 | 309 | </Grid> |
|
391 | 391 | <Setter Property="wpf:ButtonProgressAssist.IndicatorForeground" Value="{DynamicResource PrimaryHueMidBrush}" /> |
392 | 392 | </Style> |
393 | 393 |
|
| 394 | + <Style x:Key="MaterialDesignIconButton" TargetType="{x:Type ButtonBase}" BasedOn="{StaticResource MaterialDesignFlatButton}"> |
| 395 | + <Setter Property="Padding" Value="0"/> |
| 396 | + <Setter Property="Width" Value="48" /> |
| 397 | + <Setter Property="Height" Value="48" /> |
| 398 | + <Setter Property="Template"> |
| 399 | + <Setter.Value> |
| 400 | + <ControlTemplate TargetType="{x:Type ButtonBase}"> |
| 401 | + <ControlTemplate.Resources> |
| 402 | + <Style TargetType="wpf:PackIcon"> |
| 403 | + <Setter Property="Width" Value="24"/> |
| 404 | + <Setter Property="Height" Value="24"/> |
| 405 | + </Style> |
| 406 | + </ControlTemplate.Resources> |
| 407 | + <Grid> |
| 408 | + <Ellipse |
| 409 | + Fill="{TemplateBinding Background}" |
| 410 | + x:Name="border" |
| 411 | + RenderTransformOrigin="0.5, 0.5"> |
| 412 | + <Ellipse.RenderTransform> |
| 413 | + <ScaleTransform CenterX="0.5" CenterY="0.5" ScaleX="1.0" ScaleY="1.0" x:Name="CheckedEllipseScale"/> |
| 414 | + </Ellipse.RenderTransform> |
| 415 | + </Ellipse> |
| 416 | + <wpf:Ripple Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" Focusable="False" |
| 417 | + HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" |
| 418 | + VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" |
| 419 | + Padding="{TemplateBinding Padding}" |
| 420 | + Clip="{Binding ElementName=GeometryEllipse, Path=RenderedGeometry}" ClipToBounds="True" |
| 421 | + SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" /> |
| 422 | + <Ellipse x:Name="GeometryEllipse" Fill="Transparent" IsHitTestVisible="False" Focusable="False" /> |
| 423 | + </Grid> |
| 424 | + <ControlTemplate.Triggers> |
| 425 | + <Trigger Property="IsMouseOver" Value="true"> |
| 426 | + <Setter Property="Fill" TargetName="border" Value="{DynamicResource MaterialDesignFlatButtonClick}" /> |
| 427 | + </Trigger> |
| 428 | + <Trigger Property="IsEnabled" Value="false"> |
| 429 | + <Setter Property="Opacity" Value="0.23"/> |
| 430 | + </Trigger> |
| 431 | + </ControlTemplate.Triggers> |
| 432 | + </ControlTemplate> |
| 433 | + </Setter.Value> |
| 434 | + </Setter> |
| 435 | + </Style> |
| 436 | + |
| 437 | + <Style x:Key="MaterialDesignIconForegroundButton" TargetType="{x:Type ButtonBase}" BasedOn="{StaticResource MaterialDesignIconButton}"> |
| 438 | + <Setter Property="Foreground" Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type FrameworkElement}}, Path=(TextElement.Foreground)}"/> |
| 439 | + </Style> |
| 440 | + |
394 | 441 | </ResourceDictionary> |
0 commit comments