Beispiel #1
0
        // find closest coordinate in GCode and mark
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            if (logDetailed)
            {
                Logger.Trace("pictureBox1_MouseDown e.x:{0} y:{1}  absPos-x:{2:0.00} y:{3:0.00}", e.X, e.Y, picAbsPos.X, picAbsPos.Y);
            }
            pictureBox1.Focus();
            moveTranslationOld = new xyPoint(e.X, e.Y);
            allowZoom          = false;
            if (e.Button == MouseButtons.Left)
            {
                if ((fCTBCode.LinesCount > 2) && !posIsMoving)
                {
                    int line = 0;
                    posMoveStart = picAbsPos;
                    posMoveTmp   = posMoveStart;
                    posMoveEnd   = posMoveStart;

                    if (manualEdit)
                    {
                        newCodeEnd();
                    }
                    if (Panel.ModifierKeys == Keys.Alt)
                    {
                        line = VisuGCode.setPosMarkerNearBy(picAbsPos, false);         // find line with coord nearby, mark / unmark figure
                        fCTBCodeClickedLineNow = line;
                        findFigureMarkSelection(xmlMarkerType.Line, line, (foldLevel > 0));
                    }
                    else if (Panel.ModifierKeys == Keys.Control)               //Keys.Alt)
                    {
                        line = VisuGCode.setPosMarkerNearBy(picAbsPos, false); // find line with coord nearby, mark / unmark figure
                        fCTBCodeClickedLineNow = line;
                        findFigureMarkSelection(xmlMarkerType.Group, line, (foldLevel > 0));
                    }
                    else
                    {
                        line = VisuGCode.setPosMarkerNearBy(picAbsPos);         // find line with coord nearby, mark / unmark figure
                        fCTBCodeClickedLineNow = line;
                        findFigureMarkSelection(xmlMarkerType.Figure, line, (foldLevel > 0));
                    }

                    cmsPicBoxMoveToMarkedPosition.ToolTipText = "Work X: " + grbl.posMarker.X.ToString() + "   Y: " + grbl.posMarker.Y.ToString();
                    enableBlockCommands(VisuGCode.getHighlightStatus() > 0);
                    if (VisuGCode.codeBlocksAvailable())
                    {
                        statusStripSet(1, Localization.getString("statusStripeClickKeys2"), Color.LightGreen);
                    }
                    posIsMoving = false;
                }
            }
        }
        // find closest coordinate in GCode and mark
        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {   // MessageBox.Show(picAbsPosX + "  " + picAbsPosY);
            pictureBox1.Focus();
            moveTranslationOld = new xyPoint(e.X, e.Y);
            allowZoom          = false;
            if (e.Button == MouseButtons.Left)
            {
                if ((fCTBCode.LinesCount > 2) && !posIsMoving)
                {
                    int line = VisuGCode.setPosMarkerNearBy(picAbsPos);
                    posMoveStart = picAbsPos;
                    posMoveTmp   = posMoveStart;
                    posMoveEnd   = posMoveStart;

                    moveToMarkedPositionToolStripMenuItem.ToolTipText = "Work X: " + grbl.posMarker.X.ToString() + "   Y: " + grbl.posMarker.Y.ToString();

                    fCTBCodeClickedLineNow = line;
                    fCTBCodeMarkLine();
                    fCTBBookmark.DoVisible();
                    findFigureMarkSelection(Color.OrangeRed);
                    posIsMoving = false;
                }
            }
        }