|
|
|
@ -1,6 +1,6 @@ |
|
|
|
using System; |
|
|
|
using Avalonia.Controls.Mixins; |
|
|
|
using Avalonia.Controls.Primitives; |
|
|
|
using Avalonia.Data; |
|
|
|
using Avalonia.Input; |
|
|
|
using Avalonia.Interactivity; |
|
|
|
using Avalonia.Layout; |
|
|
|
@ -40,13 +40,11 @@ namespace Avalonia.Controls |
|
|
|
/// </summary>
|
|
|
|
static Slider() |
|
|
|
{ |
|
|
|
PressedMixin.Attach<Slider>(); |
|
|
|
OrientationProperty.OverrideDefaultValue(typeof(Slider), Orientation.Horizontal); |
|
|
|
Thumb.DragStartedEvent.AddClassHandler<Slider>((x, e) => x.OnThumbDragStarted(e), RoutingStrategies.Bubble); |
|
|
|
Thumb.DragDeltaEvent.AddClassHandler<Slider>((x, e) => x.OnThumbDragDelta(e), RoutingStrategies.Bubble); |
|
|
|
Thumb.DragCompletedEvent.AddClassHandler<Slider>((x, e) => x.OnThumbDragCompleted(e), RoutingStrategies.Bubble); |
|
|
|
PointerPressedEvent.AddClassHandler<Slider>((x, e) => x.HandlePointerPressed(e), RoutingStrategies.Tunnel, true); |
|
|
|
PointerReleasedEvent.AddClassHandler<Slider>((x, e) => x.HandlePointerReleased(), RoutingStrategies.Tunnel, true); |
|
|
|
PointerCaptureLostEvent.AddClassHandler<Slider>((x, e) => x.HandlePointerReleased(), RoutingStrategies.Tunnel, true); |
|
|
|
Thumb.DragCompletedEvent.AddClassHandler<Slider>((x, e) => x.OnThumbDragCompleted(e), RoutingStrategies.Bubble); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
@ -201,24 +199,6 @@ namespace Avalonia.Controls |
|
|
|
return value; |
|
|
|
} |
|
|
|
|
|
|
|
private void HandlePointerPressed(PointerPressedEventArgs e) |
|
|
|
{ |
|
|
|
if (e.GetCurrentPoint(this).Properties.IsLeftButtonPressed) |
|
|
|
{ |
|
|
|
UpdatePseudoClasses(true); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void HandlePointerReleased() |
|
|
|
{ |
|
|
|
UpdatePseudoClasses(false); |
|
|
|
} |
|
|
|
|
|
|
|
private void UpdatePseudoClasses(bool isPressed) |
|
|
|
{ |
|
|
|
PseudoClasses.Set(":pressed", isPressed); |
|
|
|
} |
|
|
|
|
|
|
|
private void UpdatePseudoClasses(Orientation o) |
|
|
|
{ |
|
|
|
PseudoClasses.Set(":vertical", o == Orientation.Vertical); |
|
|
|
|