private void PointerDetectUIElement_PointerCanceled(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) { PointerPoint win10PointerPoint = e.GetCurrentPoint(PointerDetectUIElement); RXPointer pointer = new RXPointer(this); pointer.Win10PointerPoint = win10PointerPoint; System.Diagnostics.Debug.WriteLine("Canceled:" + pointer); }
private void PointerDetectUIElement_PointerExited(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) { PointerPoint win10PointerPoint = e.GetCurrentPoint(PointerDetectUIElement); lock (PointerDict) { if (PointerDict.ContainsKey(win10PointerPoint.PointerId)) { RXPointer pointer = PointerDict[win10PointerPoint.PointerId] as RXPointer; pointer.UpdatePointer(win10PointerPoint, PointerState.Exited); PointerDict.Remove(win10PointerPoint.PointerId); PointerExited?.Invoke(this, pointer); } } }
private void PointerDetectUIElement_PointerMoved(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) { PointerPoint win10PointerPoint = e.GetCurrentPoint(PointerDetectUIElement); lock (PointerDictLock) { if (PointerDict.ContainsKey(win10PointerPoint.PointerId)) { RXPointer pointer = PointerDict[win10PointerPoint.PointerId] as RXPointer; pointer.UpdatePointer(win10PointerPoint, pointer.LatestState); PointerMoved?.Invoke(this, pointer); } else { throw new NotImplementedException(); } } }
private void PointerDetectUIElement_PointerEntered(object sender, Windows.UI.Xaml.Input.PointerRoutedEventArgs e) { PointerPoint win10PointerPoint = e.GetCurrentPoint(PointerDetectUIElement); lock (PointerDict) { if (PointerDict.ContainsKey(win10PointerPoint.PointerId)) { throw new NotImplementedException(); } else { RXPointer pointer = new RXPointer(this); pointer.UpdatePointer(win10PointerPoint, PointerState.Entered); PointerDict.Add(pointer.Win10PointerPoint.PointerId, pointer); PointerEntered?.Invoke(this, pointer); } } }