Пример #1
0
 public virtual void DoResizing(InputState evttype)
 {
     if (base.CurrentObject != null)
     {
         InputEventArgs       args1  = base.LastInput;
         DiagramViewSnapStyle style1 = base.View.GridSnapResize;
         if ((style1 == DiagramViewSnapStyle.Jump) || ((style1 == DiagramViewSnapStyle.After) && (evttype == InputState.Finish)))
         {
             args1.DocPoint  = base.View.FindNearestGridPoint(args1.DocPoint);
             args1.ViewPoint = base.View.ConvertDocToView(args1.DocPoint);
         }
         Shapes.DiagramShape obj1 = base.CurrentObject;
         RectangleF          ef1  = obj1.Bounds;
         obj1.DoResize(base.View, this.OriginalBounds, args1.DocPoint, this.ResizeHandle.HandleID, evttype, this.MinimumSize, this.MaximumSize);
         if ((!this.mySelectionHidden && (ef1 == obj1.Bounds)) && (obj1.Document == base.View.Document))
         {
             obj1.AddSelectionHandles(base.Selection, this.mySelectedObject);
         }
     }
 }
Пример #2
0
 public virtual void DoDragging(InputState evttype)
 {
     if (base.CurrentObject != null)
     {
         SizeF ef1   = DiagramTool.SubtractPoints(base.LastInput.DocPoint, base.CurrentObject.Position);
         SizeF ef2   = new SizeF(ef1.Width - this.MoveOffset.Width, ef1.Height - this.MoveOffset.Height);
         bool  flag1 = this.MustBeCopying();
         DiagramViewSnapStyle style1 = base.View.GridSnapDrag;
         if (this.EffectiveSelection == null)
         {
             this.myEffectiveSelection = this.ComputeEffectiveSelection(base.Selection, !flag1);
         }
         if (evttype != InputState.Finish)
         {
             bool flag2 = style1 == DiagramViewSnapStyle.Jump;
             if (flag1 || !base.View.DragsRealtime)
             {
                 this.MakeDragSelection();
                 base.View.MoveSelection(this.DragSelection, ef2, flag2);
             }
             else
             {
                 this.ClearDragSelection();
                 base.View.MoveSelection(this.EffectiveSelection, ef2, flag2);
             }
         }
         else
         {
             SizeF ef3 = new SizeF();
             if (this.DragSelection != null)
             {
                 ef3 = DiagramTool.SubtractPoints(base.CurrentObject.Position, this.DragSelectionOriginalObject.Position);
                 this.ClearDragSelection();
             }
             else
             {
                 ef3 = ef2;
             }
             bool flag3 = (style1 == DiagramViewSnapStyle.Jump) || (style1 == DiagramViewSnapStyle.After);
             if (flag1)
             {
                 if (this.CopiesEffectiveSelection)
                 {
                     base.View.CopySelection(this.ComputeEffectiveSelection(base.Selection, false), ef3, flag3);
                 }
                 else
                 {
                     base.View.CopySelection(base.Selection, ef3, flag3);
                 }
             }
             else
             {
                 if (this.EffectiveSelection == null)
                 {
                     this.myEffectiveSelection = this.ComputeEffectiveSelection(base.Selection, true);
                 }
                 base.View.MoveSelection(this.EffectiveSelection, ef3, flag3);
             }
         }
     }
 }