示例#1
0
        protected override void OnPanGesture(PanGestureEventArgs args)
        {
            base.OnPanGesture(args);
            RadPanoramaElement tilePanelElement = this.FindTilePanelElement();

            if (tilePanelElement == null || !this.AllowDrag)
            {
                return;
            }
            RadDragDropService dragDropService = tilePanelElement.DragDropService;

            if (args.IsBegin)
            {
                this.currentPanOffset = SizeF.Empty;
                this.panBeginLocation = this.ElementTree.Control.PointToScreen(args.Location);
                this.ZIndex           = 1000;
            }
            if (dragDropService.State == RadServiceState.Working)
            {
                dragDropService.DoMouseMove(this.ElementTree.Control.PointToScreen(args.Location));
            }
            else
            {
                tilePanelElement.ScrollView(args.Offset.Width, true);
                if (tilePanelElement.AllowDragDrop)
                {
                    if (!args.IsInertia)
                    {
                        this.currentPanOffset.Width  += (float)args.Offset.Width;
                        this.currentPanOffset.Height += (float)args.Offset.Height;
                    }
                    if ((double)Math.Abs(this.currentPanOffset.Height) > (double)(this.Size.Height / this.RowSpan))
                    {
                        this.PositionOffset      = SizeF.Empty;
                        this.panBeginLocation.X += (int)this.currentPanOffset.Width;
                        dragDropService.BeginDrag(this.panBeginLocation, (ISupportDrag)this);
                        if (dragDropService.State == RadServiceState.Working)
                        {
                            dragDropService.DoMouseMove(this.ElementTree.Control.PointToScreen(args.Location));
                        }
                    }
                    else
                    {
                        this.PositionOffset = new SizeF(0.0f, 20f * this.currentPanOffset.Height / (float)(this.Size.Height / this.RowSpan));
                    }
                }
            }
            if (args.IsEnd)
            {
                if (dragDropService.State == RadServiceState.Working)
                {
                    dragDropService.EndDrag();
                }
                this.PositionOffset = SizeF.Empty;
                int num = (int)this.ResetValue(RadElement.ZIndexProperty, ValueResetFlags.Local);
            }
            args.Handled = true;
        }
        protected override void OnPanGesture(PanGestureEventArgs args)
        {
            base.OnPanGesture(args);
            RadDragDropService columnDragDropService = (RadDragDropService)(this.Data.Owner.ViewElement as DetailListViewElement).ColumnDragDropService;

            if (columnDragDropService.State != RadServiceState.Working && this.IsInResizeLocation(args.Location))
            {
                return;
            }
            if (args.IsBegin)
            {
                int num = (int)this.SetValue(RadElement.IsMouseDownProperty, (object)true);
                columnDragDropService.BeginDrag(this.ElementTree.Control.PointToScreen(args.Location), (ISupportDrag)this);
            }
            if (columnDragDropService.State == RadServiceState.Working)
            {
                columnDragDropService.DoMouseMove(this.ElementTree.Control.PointToScreen(args.Location));
            }
            if (args.IsEnd)
            {
                columnDragDropService.EndDrag();
                int num1 = (int)this.SetValue(RadElement.IsMouseDownProperty, (object)false);
                int num2 = (int)this.ResetValue(RadElement.IsMouseDownProperty, ValueResetFlags.Local);
            }
            args.Handled = true;
        }
示例#3
0
        protected override void OnPanGesture(PanGestureEventArgs args)
        {
            base.OnPanGesture(args);
            RadDragDropService service = this.TemplateElement.GroupPanelElement.GetService <RadDragDropService>();

            if (args.IsBegin && service.State != RadServiceState.Working)
            {
                service.BeginDrag(this.ElementTree.Control.PointToScreen(args.Location), (ISupportDrag)this);
            }
            if (service.State == RadServiceState.Working)
            {
                service.DoMouseMove(this.ElementTree.Control.PointToScreen(args.Location));
            }
            if (args.IsEnd)
            {
                service.EndDrag();
            }
            args.Handled = true;
        }
示例#4
0
        protected override void OnPanGesture(PanGestureEventArgs args)
        {
            base.OnPanGesture(args);
            RadDragDropService service = this.serviceProvider.GetService <RadDragDropService>();

            if (args.IsBegin)
            {
                int num = (int)this.SetValue(RadElement.IsMouseDownProperty, (object)true);
                service.BeginDrag(this.ElementTree.Control.PointToScreen(args.Location), (ISupportDrag)this);
            }
            if (service.State == RadServiceState.Working)
            {
                service.DoMouseMove(this.ElementTree.Control.PointToScreen(args.Location));
            }
            if (args.IsEnd)
            {
                service.EndDrag();
                int num1 = (int)this.SetValue(RadElement.IsMouseDownProperty, (object)false);
                int num2 = (int)this.ResetValue(RadElement.IsMouseDownProperty, ValueResetFlags.Local);
            }
            args.Handled = true;
        }