Example #1
0
 public override DrawObjectMouseDown OnMouseDown(ICanvas canvas, UnitPoint unitPoint, ISnapPoint snapPoint, MouseEventArgs e)
 {
     OnMouseMove(canvas, unitPoint);
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.StartPoint)
     {
         this.CurrentPoint = MultiSegementLineCurrentPoint.MidPoint;
         return(DrawObjectMouseDown.Continue);
     }
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.MidPoint)
     {
         this.CurrentPoint = MultiSegementLineCurrentPoint.EndPoint;
         return(DrawObjectMouseDown.Continue);
     }
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.EndPoint)
     {
         this.CurrentPoint        = MultiSegementLineCurrentPoint.Done;
         this.IsSelected          = false;
         this.GroupParam.FigureSN = ++GlobalModel.TotalDrawObjectCount;
         this.GroupParam.ShowSN   = this.GroupParam.FigureSN;
         this.IsCompleteDraw      = true;
         this.StartMovePoint      = this.Points[0].Point;
         this.EndMovePoint        = this.Points[0].Point;
         return(DrawObjectMouseDown.Done);
     }
     return(DrawObjectMouseDown.Done);
 }
Example #2
0
 public override DrawObjectMouseDown OnMouseDown(ICanvas canvas, UnitPoint unitPoint, ISnapPoint snapPoint, MouseEventArgs e)
 {
     OnMouseMove(canvas, unitPoint);
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.StartPoint)
     {
         this.CurrentPoint = MultiSegementLineCurrentPoint.MidPoint;
         return(DrawObjectMouseDown.Continue);
     }
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.MidPoint)
     {
         this.CurrentPoint = MultiSegementLineCurrentPoint.EndPoint;
         Point  positionCursor = Cursor.Position;
         PointF point0         = canvas.ToScreen(this.Points[0].Point);
         Point  offset0        = new Point((int)point0.X - positionCursor.X, (int)point0.Y - positionCursor.Y);
         PointF point          = canvas.ToScreen(this.Points[1].Point);
         Cursor.Position = new Point((int)point.X - offset0.X, (int)point.Y - offset0.Y);
         return(DrawObjectMouseDown.Continue);
     }
     if (this.CurrentPoint == MultiSegementLineCurrentPoint.EndPoint)
     {
         this.CurrentPoint        = MultiSegementLineCurrentPoint.Done;
         this.IsSelected          = false;
         this.GroupParam.FigureSN = ++GlobalModel.TotalDrawObjectCount;
         this.GroupParam.ShowSN   = this.GroupParam.FigureSN;
         this.StartMovePoint      = this.Points[0].Point;
         this.EndMovePoint        = this.Points[0].Point;
         this.IsCompleteDraw      = true;
         return(DrawObjectMouseDown.Done);
     }
     return(DrawObjectMouseDown.Done);
 }