2using System.Collections.Generic;
4using System.Reflection;
7using Microsoft.Xna.Framework;
8using Microsoft.Xna.Framework.Input;
9using Microsoft.Xna.Framework.Graphics;
13 public class CUISwipeHandle : ICUIVitalizable
15 public void SetHost(CUIComponent host) => Host = host;
16 public CUIComponent Host;
18 public bool Swipeable;
19 public Vector2 PrevPosition;
20 public CUIMouseEvent Trigger = CUIMouseEvent.Down;
21 public bool ShouldStart(CUIInput input)
24 (Trigger == CUIMouseEvent.Down && input.MouseDown) ||
25 (Trigger == CUIMouseEvent.DClick && input.DoubleClick)
29 public void BeginSwipe(Vector2 cursorPos)
32 PrevPosition = cursorPos;
35 public void EndSwipe()
38 Host.MainComponent?.OnSwipeEnd(
this);
41 public void Swipe(CUIInput input)
43 Host.CUIProps.ChildrenOffset.SetValue(
44 Host.ChildrenOffset.Shift(
45 input.MousePositionDif.X,
46 input.MousePositionDif.Y
49 Host.InvokeOnSwipe(input.MousePositionDif.X, input.MousePositionDif.Y);
51 public CUISwipeHandle() { }
53 public CUISwipeHandle(CUIComponent host) => Host = host;