コード例 #1
0
ファイル: Mouse_Line.cs プロジェクト: taigama/MegaDraw
        public override void Move(MouseEventArgs e)
        {
            //if (isDraw)
            //{
            //    gDraw.Clear(Color.Transparent);
            //    gDraw.DrawLine(penCustom.penMain, pointLast.X, pointLast.Y, e.X, e.Y);
            //    host.Invalidate();
            //}
            Vector2 foo;

            typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out foo);

            if (isDrag)
            {
                gDraw.Clear(Color.Transparent);

                grabPoint.X = e.X;
                grabPoint.Y = e.Y;

                gDraw.DrawLine(penCustom.penMain, pointLast.X, pointLast.Y, grabPoint.X, grabPoint.Y);
                host.Invalidate();
            }

            base.Move(e);
        }
コード例 #2
0
ファイル: Mouse_Eclipse.cs プロジェクト: taigama/MegaDraw
        public override void Down(MouseEventArgs e)
        {
            if (isDraw)
            {
                typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out grabPoint);
                if (typeControl == TYPE_CONTROL.None)
                {
                    End();
                }
                if (typeControl == TYPE_CONTROL.Move)
                {
                    isDrag = true;
                    return;
                }
            }

            base.Down(e);

            isDraw = true;
            //pointLast = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(new Vector2(e.X, e.Y));

            isDrag    = true;
            grabPoint = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(grabPoint);

            penCustom.penMain       = new Pen(penCustom.brushFront);
            penCustom.penMain.Width = penCustom.sizeBrush;

            penCustom.CreateBack(e.X, e.Y, e.X + 15, e.Y + 15);
        }
コード例 #3
0
        public override void Down(MouseEventArgs e)
        {
            if (isDraw)
            {
                typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out grabPoint);
                if (typeControl == TYPE_CONTROL.None)
                {
                    // -----------------------------------------


                    grabPoint = new Vector2(e.X, e.Y);
                    pointController.AddPoint(grabPoint);

                    gDraw.Clear(Color.Transparent);
                    path.Reset();
                    Point[] points = pointController.GetPoints();
                    path.AddLines(points);

                    //using (Brush brushBack = new SolidBrush(penCustom.colorBack))
                    //{
                    //    gDraw.FillPolygon(brushBack, pointController.GetPoints());
                    //}
                    gDraw.FillPolygon(penCustom.brushBack, points);

                    gDraw.DrawPath(penCustom.penMain, path);

                    isDrag = true;
                    return;


                    //End();
                    // --------------------------------------------
                }
                if (typeControl == TYPE_CONTROL.Move)
                {
                    isDrag = true;
                    return;
                }
            }

            base.Down(e);

            Start(e.X, e.Y);
        }
コード例 #4
0
ファイル: Mouse_Rectangle.cs プロジェクト: taigama/MegaDraw
        public override void Down(MouseEventArgs e)
        {
            if (isDraw)
            {
                typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out grabPoint);
                if (typeControl == TYPE_CONTROL.None)
                {
                    End();
                }
                if (typeControl == TYPE_CONTROL.Move)
                {
                    //points = host.controlPoint.GetVectors();

                    //if (points[0] != grabPoint)
                    //{
                    //    pointLast = points[0];
                    //}
                    //else
                    //{
                    //    pointLast = points[1];
                    //}

                    isDrag = true;
                    return;
                }
            }

            base.Down(e);

            isDraw = true;
            //pointLast = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(new Vector2(e.X, e.Y));

            isDrag    = true;
            grabPoint = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(grabPoint);

            penCustom.penMain       = new Pen(penCustom.brushFront);
            penCustom.penMain.Width = penCustom.sizeBrush;

            //penCustom.ChooseBrush(BRUSH_TYPE.linearGradient);
            penCustom.CreateBack(e.X, e.Y, e.X + 15, e.Y + 15);
        }
コード例 #5
0
ファイル: Mouse_Line.cs プロジェクト: taigama/MegaDraw
        public override void Down(MouseEventArgs e)
        {
            if (isDraw)
            {
                typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out grabPoint);
                if (typeControl == TYPE_CONTROL.None)
                {
                    End();
                }
                if (typeControl == TYPE_CONTROL.Move)
                {
                    Vector2[] points = host.controlPoint.GetVectors();

                    if (points[0] != grabPoint)
                    {
                        pointLast = points[0];
                    }
                    else
                    {
                        pointLast = points[1];
                    }

                    isDrag = true;
                    return;
                }
            }

            base.Down(e);

            isDraw    = true;
            pointLast = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(pointLast);

            isDrag    = true;
            grabPoint = new Vector2(e.X, e.Y);
            host.controlPoint.AddPoint(grabPoint);

            penCustom.penMain       = new Pen(penCustom.brushFront);
            penCustom.penMain.Width = penCustom.sizeBrush;
        }
コード例 #6
0
ファイル: Mouse_Rectangle.cs プロジェクト: taigama/MegaDraw
        public override void Move(MouseEventArgs e)
        {
            typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out foo);

            if (isDrag)
            {
                gDraw.Clear(Color.Transparent);
                points = host.controlPoint.GetVectors();

                grabPoint.X = e.X;
                grabPoint.Y = e.Y;

                penCustom.NotifyMovePoint();

                gDraw.FillRectangle(penCustom.brushBack, host.RectValid(points[0].X, points[0].Y, points[1].X, points[1].Y));
                gDraw.DrawRectangle(penCustom.penMain, host.RectValid(points[0].X, points[0].Y, points[1].X, points[1].Y));

                host.Invalidate();
            }

            base.Move(e);
        }
コード例 #7
0
        public override void Down(MouseEventArgs e)
        {
            typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out grabPoint);
            if (typeControl == TYPE_CONTROL.None)
            {
                End();
            }
            if (typeControl == TYPE_CONTROL.Area)
            {
                grabPoint = new Vector2(e.X, e.Y);

                isDrag = true;
                return;
            }


            base.Down(e);



            Start(e.X, e.Y);
        }
コード例 #8
0
        public override void Move(MouseEventArgs e)
        {
            Vector2 foo;

            typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out foo);

            if (isDrag)
            {
                gDraw.Clear(Color.Transparent);

                grabPoint.X = e.X;
                grabPoint.Y = e.Y;

                penCustom.NotifyMovePoint();

                path.Reset();
                path.FillMode = FillMode.Winding;

                Point[] points = pointController.GetPoints();
                path.AddLines(points);
                //for (int i = 0; i < points.Length; i++)
                //{

                //}

                //using (Brush brushBack = new SolidBrush(penCustom.colorBack))
                //{
                //    gDraw.FillPolygon(brushBack, pointController.GetPoints());
                //}
                gDraw.FillPolygon(penCustom.brushBack, points);

                gDraw.DrawPath(penCustom.penMain, path);

                host.Invalidate();
            }

            base.Move(e);
        }
コード例 #9
0
        public override void Move(MouseEventArgs e)
        {
            if (isDraw)
            {
                gDraw.Clear(Color.Transparent);
                gDraw.DrawRectangle(penCustom.penMain, host.RectValid(pointLast.X, pointLast.Y, e.X, e.Y));
                host.Invalidate();
                return;
            }

            Vector2 foo;

            typeControl = host.controlPoint.OnControl(new Vector2(e.X, e.Y), out foo);

            if (isDrag)
            {
                //gDraw.Clear(Color.Transparent);

                deltaX = e.X - grabPoint.X;
                deltaY = e.Y - grabPoint.Y;

                grabPoint.X = e.X;
                grabPoint.Y = e.Y;

                host.controlPoint.MoveRegion(deltaX, deltaY);

                //pointLast.X += deltaX;
                //pointLast.Y += deltaY;

                pointTranslate.X += deltaX; //pointLast.X;
                pointTranslate.Y += deltaY; //pointLast.Y;
                //gDraw.DrawRectangle(penCustom.penMain, pointLast.X, pointLast.Y, grabPoint.X, grabPoint.Y);
                host.Invalidate();
            }

            base.Move(e);
        }