Esempio n. 1
0
        public void OnMouseDown(GrPanel panel, System.Windows.Forms.MouseEventArgs e)
        {
            IGrObj grobj = panel.GetObjectUnder(e.X, e.Y);
            if (grobj != null && !_objs.Contains(grobj))
            {
                panel.ClearSelected();
                panel.AddToSelected(grobj);
                panel.Invalidate();
            }
            else if (grobj == null && e.Button == MouseButtons.Left)
            {
                _selecting = true;
                _selBoxStart = new Point(e.X, e.Y);
                _selBoxEnd = new Point(e.X, e.Y);

                panel.Cursor = Cursors.Cross;
                panel.ClearSelected();
                panel.Invalidate();
            }

            if (panel.SelectedObjects.Count != 0 && e.Button == MouseButtons.Left)
            {
                _objs.Clear();
                _objs.AddRange(panel.SelectedObjects);
                _moveX = e.X;
                _moveY = e.Y;
                panel.Cursor = Cursors.SizeAll;
            }
        }
Esempio n. 2
0
        public void OnMouseClick(GrPanel panel, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
                return;

            IGrObj grobj = panel.GetObjectUnder(e.X, e.Y);

            if (grobj != null && grobj is GrPoint)
            {
                _besie.Objects.Add(grobj as GrPoint);

                if (_besie.PointCount == 2)
                    panel.Edited.Objects.Add(_besie);

                panel.Invalidate();
            }
            else
            {
                GrPoint pnt = new GrPoint(null, e.X, e.Y);
                panel.Root.Objects.Add(pnt);

                _besie.Objects.Add(pnt);

                if (_besie.PointCount == 2)
                    panel.Edited.Objects.Add(_besie);

                panel.Invalidate();
            }
        }
Esempio n. 3
0
        public void OnMouseClick(GrPanel panel, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
                return;

            GrPoint pnt = new GrPoint(
                null,
                e.X,
                e.Y
                );

            panel.Edited.Objects.Add(pnt);
            panel.Invalidate();
        }
Esempio n. 4
0
        public void OnMouseMove(GrPanel panel, System.Windows.Forms.MouseEventArgs e)
        {
            if (_selecting)
            {
                _selBoxEnd = new Point(e.X, e.Y);
                panel.Invalidate();
            }
            else
                if (_objs.Count != 0)
                {
                    foreach (IGrObj grobj in _objs)
                    {
                        grobj.X += e.X - _moveX;
                        grobj.Y += e.Y - _moveY;
                    }

                    _moveX = e.X;
                    _moveY = e.Y;
                    panel.Invalidate();
                }
        }
Esempio n. 5
0
        public void OnMouseClick(GrPanel panel, System.Windows.Forms.MouseEventArgs e)
        {
            IGrObj grobj = panel.GetObjectUnder(e.X, e.Y);

            IGrObj parent = grobj;
            if (grobj == null || grobj.IsPrimitive)
            {
                parent = panel.Root;
            }

            if (_linePnt == null)
            {
                if (grobj is GrPoint)
                {
                    _linePnt = grobj as GrPoint;
                }
                else
                {
                    _linePnt = new GrPoint(parent, e.X, e.Y);
                }
            }
            else if (parent == _linePnt.Parent)
            {
                GrLine line;
                if (grobj is GrPoint)
                {
                    line = new GrLine(null, _linePnt, grobj as GrPoint);
                }
                else
                {
                    line = new GrLine(null, _linePnt, new GrPoint(null, e.X, e.Y));
                }

                line.Color = panel.SpawnColor;
                panel.Edited.Objects.Add(line);
                _linePnt = null;
                panel.Invalidate();
            }
        }
Esempio n. 6
0
        public void OnMouseClick(GrPanel panel, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
                return;

            IGrObj grobj = panel.GetObjectUnder(e.X, e.Y);

            if (_hermiteVector == null && grobj != null
                && grobj is GrLine)
            {
                _hermiteVector = grobj as GrLine;
            }
            else if (_hermiteVector != null && grobj != null
                && grobj is GrLine)
            {
                GrHermite hermite = new GrHermite(null, _hermiteVector, grobj as GrLine);
                hermite.Color = panel.SpawnColor;
                panel.Edited.Objects.Add(hermite);
                _hermiteVector = null;
            }

            panel.Invalidate();
        }
Esempio n. 7
0
 public void Deactivate(GrPanel panel)
 {
     _besie = null;
 }
Esempio n. 8
0
 public void Activate(GrPanel panel)
 {
     _besie = new GrBesie(null);
     _besie.Color = panel.SpawnColor;
 }
Esempio n. 9
0
 public void Deactivate(GrPanel panel)
 {
 }
Esempio n. 10
0
 public void Activate(GrPanel panel)
 {
 }
Esempio n. 11
0
 public void Deactivate(GrPanel panel)
 {
     _hermiteVector = null;
 }
Esempio n. 12
0
 public void OnMouseUp(GrPanel panel, System.Windows.Forms.MouseEventArgs e)
 {
 }
Esempio n. 13
0
 public void Deactivate(GrPanel panel)
 {
     _linePnt = null;
 }
Esempio n. 14
0
        public void OnMouseUp(GrPanel panel, System.Windows.Forms.MouseEventArgs e)
        {
            _objs.Clear();
            panel.Cursor = Cursors.Arrow;

            if (_selecting)
            {
                _selecting = false;

                panel.ClearSelected();
            /*				foreach (IGrObj grobj in panel.Edited.Objects)

                    panel.AddToSelected(grobj);*/

                panel.Invalidate();
            }
        }
Esempio n. 15
0
 public void OnMouseUp(GrPanel panel, MouseEventArgs e)
 {
 }
Esempio n. 16
0
 public void OnPaint(GrPanel panel, Graphics gr)
 {
 }
Esempio n. 17
0
        public void OnPaint(GrPanel panel, Graphics gr)
        {
            if (_selecting)
            {
                gr.DrawRectangle(
                    Pens.LightBlue,
                    Math.Min(_selBoxStart.X, _selBoxEnd.X),
                    Math.Min(_selBoxStart.Y, _selBoxEnd.Y),
                    Math.Abs(_selBoxEnd.X - _selBoxStart.X),
                    Math.Abs(_selBoxEnd.Y - _selBoxStart.Y)
                );
            }

            /*			foreach (IGrObj selobj in panel.SelectedObjects)
                        {
                            gr.DrawRectangle(
                                Pens.LightGray,
                                selobj.X,
                                selobj.Y,
                                selobj.Width,
                                selobj.Height
                            );
                        }*/
        }