private Gesture_Event_Showing detectShowingRegister(List<My_Point> points) { List<My_Point> result = new List<My_Point>(); if (points.Count > 0) { for (int i = 0; i < points.Count; i++) { if (points[i].Life > STATICS.MIN_SHOW_LIFE && points[i].Sender is Card) { result.Add(points[i]); for (int m = 0; m < points.Count; m++) { if (i != m && points[i].Sender == points[m].Sender && points[m].Life > STATICS.MIN_SHOW_LIFE) { result.Add(points[m]); } } if (result.Count > 2) { My_Point[] argPoints = result.ToArray(); object[] objects = new object[1]; objects[0] = argPoints[0].Sender; Gesture_Event_Showing showEvent = new Gesture_Event_Showing(); showEvent.Points = argPoints; Gesture_List.addGesture(showEvent); Gesture_Showing_Listener gestureListener = new Gesture_Showing_Listener(this, showEvent); showEvent.Register(objects, argPoints); return showEvent; } else { result.Clear(); } } } } return null; }