Exemple #1
0
        void WidgetMouseMoveForDragHandler(object o, MouseEventArgs e)
        {
            if ((enabledEvents & WidgetEvent.DragStarted) == 0)
            {
                return;
            }
            if (e.LeftButton != MouseButtonState.Pressed)
            {
                return;
            }

            if (DragDropInfo.DragRect.IsEmpty)
            {
                SetupDragRect(e);
            }

            if (DragDropInfo.DragRect.Contains(e.GetPosition(Widget)))
            {
                return;
            }

            DragStartData dragData = null;

            Context.InvokeUserCode(delegate {
                dragData = eventSink.OnDragStarted();
            });

            if (dragData != null)
            {
                DragStart(dragData);
            }

            DragDropInfo.DragRect = Rect.Empty;
        }