コード例 #1
0
        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);
        }
コード例 #2
0
 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;
 }
コード例 #3
0
 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);
     }
 }
コード例 #4
0
 /// <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)
 {
 }
コード例 #5
0
 /// <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)
 {
 }