protected override void OnKinectCursorMove(object sender, KinectCursorEventArgs e)
 {
     if (e.Z < _handDepth - PushThreshold)
     {
         RaiseEvent(new RoutedEventArgs(ClickEvent));
     }
 }
 protected override void OnKinectCursorLeave(object sender, KinectCursorEventArgs e)
 {
     if (_timerEnabled)
     {
         e.Cursor.StopCursorAnimation();
         _hoverTimer.Stop();
     }
 }
 protected override void OnKinectCursorEnter(object sender, KinectCursorEventArgs e)
 {
     if (_timerEnabled)
     {
         _hoverTimer.Interval = TimeSpan.FromMilliseconds(HoverInterval);
         e.Cursor.AnimateCursor(HoverInterval);
         _hoverTimer.Start();
     }
 }
 protected override void OnKinectCursorLeave(object sender, KinectCursorEventArgs e)
 {
     if (_timerEnabled)
     {
         e.Cursor.StopCursorAnimation();
         _hoverTimer.Stop();
         Console.WriteLine("HOVER - On cursor enter");
     }
 }
 protected override void OnKinectCursorEnter(object sender, KinectCursorEventArgs e)
 {
     _handDepth = e.Z;
 }
 protected virtual void OnKinectCursorMove(object sender, KinectCursorEventArgs e)
 {
 }
 protected virtual void OnKinectCursorEnter(object sender, KinectCursorEventArgs e)
 {
     RaiseEvent(new RoutedEventArgs(ClickEvent));
 }