Example #1
0
 private void dlgDrawingBoard_Activated(object sender, System.EventArgs e)
 {
     if (drawPage != null)
     {
         drawPage.Invalidate();
     }
     timer1.Enabled = true;
 }
        protected override DialogResult dlgDrawingsMouseDown(object sender, MouseEventArgs e, ref int nStep, dlgDrawings owner)
        {
            dlgBezierStep dlgStep;

            switch (nStep)
            {
            case 0:                    //
                ptStart.X = e.X;
                ptStart.Y = e.Y;
                nStep++;
                break;

            case 1:                    //
                ptEnd.X = e.X;
                ptEnd.Y = e.Y;
                nStep++;
                break;

            case 2:                    //
                ptControl1.X = e.X;
                ptControl1.Y = e.Y;
                nStep++;
                break;

            case 3:                    //
                ptControl2.X = e.X;
                ptControl2.Y = e.Y;
                nStep++;
                break;
            }
            dlgStep = new dlgBezierStep();
            dlgStep.SetStep(nStep);
            dlgStep.ShowDialog((Form)sender);
            if (dlgStep.nStep < 0)
            {
                return(DialogResult.Cancel);
            }
            else if (dlgStep.nStep >= 10)
            {
                owner.Invalidate();
                dlgEditBezier dlgBezier = new dlgEditBezier();
                dlgBezier.LoadData(this, owner);
                return(dlgBezier.ShowDialog(owner));
            }
            else
            {
                nStep = dlgStep.nStep;
            }
            step = nStep;
            return(DialogResult.None);
        }
Example #3
0
 public void MoveDown()
 {
     if (lstDrawings.SelectedIndex >= 0 && lstDrawings.SelectedIndex < lstDrawings.Items.Count - 1)
     {
         int         i   = lstDrawings.SelectedIndex;
         DrawingItem obj = (DrawingItem)lstDrawings.Items[i];
         if (drawings.MoveDown(obj))
         {
             ReloadData();
             lstDrawings.SelectedIndex = i + 1;
             dlgDrawings frm = this.Parent as dlgDrawings;
             frm.Invalidate();
         }
     }
 }
Example #4
0
 public void MoveUp()
 {
     if (lstDrawings.SelectedIndex > 0)
     {
         int         i   = lstDrawings.SelectedIndex;
         DrawingItem obj = (DrawingItem)lstDrawings.Items[i];
         if (drawings.MoveUp(obj))
         {
             ReloadData();
             lstDrawings.SelectedIndex = i - 1;
             dlgDrawings frm = this.Parent as dlgDrawings;
             frm.Invalidate();
         }
     }
 }
        protected override DialogResult dlgDrawingsMouseDown(object sender, MouseEventArgs e, ref int nStep, dlgDrawings owner)
        {
            DialogResult ret = DialogResult.None;

            switch (nStep)
            {
            case 0:                    //first step, select up-left corner
                SetOrigin(e.X, e.Y);
                nStep++;
                break;

            case 1:                    //second step, size
                if (e.X > Left)
                {
                    SetBoundsWidth(e.X - Left);
                }
                else
                {
                    SetBoundsWidth(Left - e.X);
                    Left = e.X;
                }
                if (e.Y > Top)
                {
                    SetBoundsHeight(e.Y - Top);
                }
                else
                {
                    SetBoundsHeight(Top - e.Y);
                    Top = e.Y;
                }
                nStep++;
                owner.Invalidate();
                dlgEditEllips dlgEllips = new dlgEditEllips();
                dlgEllips.LoadData(this, owner);
                dlgEllips.Text = "Rectangle properties";
                ret            = dlgEllips.ShowDialog(owner);

                break;
            }
            step = nStep;
            return(ret);
        }
Example #6
0
        private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
        {
            switch (toolBar1.Buttons.IndexOf(e.Button))
            {
            case 0:                    //new
            {
                dlgNewDrawing dlg = new dlgNewDrawing();
                dlg.LoadData(HotspotOnly);
                if (dlg.ShowDialog(this) == DialogResult.OK)
                {
                    dlgDrawings frm = this.Parent as dlgDrawings;
                    dlg.objRet.Page = frm;
                    frm.StartDrawing(dlg.objRet);
                    this.Hide();
                }
            }
            break;

            case 1:                    //edit
                if (lstDrawings.SelectedIndex >= 0)
                {
                    dlgDrawings frm = this.Parent as dlgDrawings;
                    DrawingItem obj = lstDrawings.Items[lstDrawings.SelectedIndex] as DrawingItem;
                    if (obj != null)
                    {
                        obj.Edit(frm);
                    }
                }
                break;

            case 2:                    //delete
                DeleteObject();
                break;

            case 3:                     //up
                MoveUp();
                break;

            case 4:                     //down
                MoveDown();

                break;

            case 5:                     //finish
                this.DialogResult      = System.Windows.Forms.DialogResult.OK;
                frmParent.DialogResult = System.Windows.Forms.DialogResult.OK;
                frmParent.Close();
                break;

            case 6:                     //cancel
                this.DialogResult      = System.Windows.Forms.DialogResult.Cancel;
                frmParent.DialogResult = System.Windows.Forms.DialogResult.Cancel;
                frmParent.Close();
                break;

            case 8:                     //show/hide background image
                if (e.Button.Pushed)
                {
                    if (frmParent != null)
                    {
                        if (frmParent.BKImage != null)
                        {
                            frmParent.BackgroundImage = frmParent.BKImage;
                        }
                    }
                }
                else
                {
                    frmParent.BackgroundImage = null;
                }
                frmParent.Invalidate();
                break;
            }
        }
        protected override DialogResult dlgDrawingsMouseDown(object sender, MouseEventArgs e, ref int nStep, dlgDrawings owner)
        {
            ptNew = new Point(e.X, e.Y);
            if (e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                dlgModalMenu menu = new dlgModalMenu();
                menu.Left  = e.X;
                menu.Top   = e.Y;
                menu.Width = menu.Width - 1;
                menu.AddItem("Finish");
                menu.AddItem("Continue");
                menu.AddItem("Cancel");
                if (nStep >= 0 && nStep < PointCount)
                {
                    menu.AddItem("Delete");
                    menu.AddItem("Skip");
                }
                menu.ShowDialog(owner);
                switch (menu.nRet)
                {
                case 0:
                    owner.Invalidate();
                    dlgEditPolygon dlgEllips = new dlgEditPolygon();
                    dlgEllips.LoadData(this, owner);
                    return(dlgEllips.ShowDialog(owner));

                case 2:
                    return(System.Windows.Forms.DialogResult.Cancel);

                case 3:
                    DeletePoint(nStep);
                    break;

                case 4:
                    pts[nStep] = ptCur;
                    nStep++;
                    break;
                }
                if (nStep >= 0 && nStep < PointCount)
                {
                    ptCur = pts[nStep];
                }
                return(System.Windows.Forms.DialogResult.None);
            }
            else
            {
                if (nStep >= 0 && nStep < PointCount)
                {
                    pts[nStep].X = e.X;
                    pts[nStep].Y = e.Y;
                }
                else
                {
                    AppendPoint(e.X, e.Y);
                }
                nStep++;

                step = nStep;
                if (nStep >= 0 && nStep < PointCount)
                {
                    ptCur = pts[nStep];
                }
                return(System.Windows.Forms.DialogResult.None);
            }
        }
        protected override System.Windows.Forms.DialogResult dlgDrawingsMouseDown(object sender, System.Windows.Forms.MouseEventArgs e, ref int nStep, dlgDrawings owner)
        {
            System.Windows.Forms.DialogResult ret = System.Windows.Forms.DialogResult.None;
            switch (nStep)
            {
            case 0:                    //first step, select up-left corner
                rc.X = e.X;
                rc.Y = e.Y;
                nStep++;
                break;

            case 1:                    //second step, size
                if (e.X > rc.X)
                {
                    rc.Width = e.X - rc.X;
                }
                else
                {
                    rc.Width = rc.X - e.X;
                    rc.X     = e.X;
                }
                if (e.Y > rc.Y)
                {
                    rc.Height = e.Y - rc.Y;
                }
                else
                {
                    rc.Height = rc.Y - e.Y;
                    rc.Y      = e.Y;
                }
                nStep++;
                break;

            case 2:                    //start angle
            {
                int x = rc.X + rc.Width / 2;
                int y = rc.Y + rc.Height / 2;
                x = e.X - x;
                y = e.Y - y;
                this.startAngle = (float)((180 / System.Math.PI) * System.Math.Atan2((double)y, (double)x));
                nStep++;
            }
            break;

            case 3:                    //end angle
            {
                int x = rc.X + rc.Width / 2;
                int y = rc.Y + rc.Height / 2;
                x = e.X - x;
                y = e.Y - y;
                float a = (float)((180 / System.Math.PI) * System.Math.Atan2((double)y, (double)x));
                this.sweepAngle = a - this.startAngle;
                nStep++;
                owner.Invalidate();
                dlgEditArc dlgArc = new dlgEditArc();
                dlgArc.LoadData(this, owner);
                ret = dlgArc.ShowDialog(owner);
            }
            break;
            }
            step = nStep;
            return(ret);
        }