public static Gesture_Event_Showing_Sorting Detect(List <My_Point> points, Gesture_Controler controler) { List <My_Point> result = new List <My_Point>(); Gesture_Event_Showing_Sorting showGroupEvent = null; if (points.Count > 0) { for (int i = 0; i < points.Count; i++) { if (Calculator.CalDistance(points[i].StartPoint, points[i].CurrentPoint) < STATICS.MIN_DISTANCE_FOR_MOVE && points[i].Life > STATICS.MIN_LONG_PRESS_LIFE && points[i].Sender is Menu_Sort_Box) { bool moreThan1 = false; if (points.Count > 1) { for (int m = 0; m < points.Count; m++) { if (i != m && points[i].Sender == points[m].Sender) { moreThan1 = true; break; } } } if (!moreThan1) { result.Add(points[i]); My_Point[] argPoints = result.ToArray(); object[] objects = new object[argPoints.Length]; objects[0] = argPoints[0].Sender; showGroupEvent = new Gesture_Event_Showing_Sorting(); showGroupEvent.Points = argPoints; Gesture_List.addGesture(showGroupEvent); Gesture_Showing_Sorting_Listener gestureListener = new Gesture_Showing_Sorting_Listener(controler, showGroupEvent); showGroupEvent.Register(objects, argPoints); foreach (My_Point p in result) { points.Remove(p); } return(showGroupEvent); } } } } return(null); }
public static Gesture_Event_Showing_Sorting Detect(List<My_Point> points,Gesture_Controler controler) { List<My_Point> result = new List<My_Point>(); Gesture_Event_Showing_Sorting showGroupEvent = null; if (points.Count > 0) { for (int i = 0; i < points.Count; i++) { if (Calculator.CalDistance(points[i].StartPoint, points[i].CurrentPoint) < STATICS.MIN_DISTANCE_FOR_MOVE && points[i].Life > STATICS.MIN_LONG_PRESS_LIFE && points[i].Sender is Menu_Sort_Box) { bool moreThan1 = false; if (points.Count > 1) { for (int m = 0; m < points.Count; m++) { if (i != m && points[i].Sender == points[m].Sender) { moreThan1 = true; break; } } } if (!moreThan1) { result.Add(points[i]); My_Point[] argPoints = result.ToArray(); object[] objects = new object[argPoints.Length]; objects[0] = argPoints[0].Sender; showGroupEvent = new Gesture_Event_Showing_Sorting(); showGroupEvent.Points = argPoints; Gesture_List.addGesture(showGroupEvent); Gesture_Showing_Sorting_Listener gestureListener = new Gesture_Showing_Sorting_Listener(controler, showGroupEvent); showGroupEvent.Register(objects, argPoints); foreach (My_Point p in result) { points.Remove(p); } return showGroupEvent; } } } } return null; }
private void detectGesture() { if (newGesturePoints.Count > 0) { // the code that you want to measure comes here Gesture_Event_Linking.Detect(newGesturePoints, this); //Gesture_Event_Copying.Detect(newGesturePoints, this); Gesture_Event_Sorting.Detect(newGesturePoints, this); //Gesture_Event_Emphasizing.Detect(newGesturePoints, this); //Gesture_Event_Grouping.Detect(newGesturePoints,this); //Gesture_Event_Sorting_Group.Detect(newGesturePoints, this); Gesture_Event_Showing.Detect(newGesturePoints, this); Gesture_Event_Showing_Sorting.Detect(newGesturePoints, this); Gesture_Event_Cutting_Sorting.Detect(newGesturePoints, this); Gesture_Event_Cutting_Link.Detect(newGesturePoints, this); Gesture_Event_Deleting_Bin.Detect(newGesturePoints, this); Gesture_Event_Collaborative_Zoon.Detect(newGesturePoints, this); } }
/// <param name="gestureControler">Should be the one created in the MainWindow</param> /// <param name="gestureEvent">The gesture variable which fire the event</param> public Gesture_Showing_Sorting_Listener(Gesture_Controler gestureControler, Gesture_Event_Showing_Sorting gestureEvent) : base(gestureControler, gestureEvent) { }