コード例 #1
0
        public static void seleccLaProdEnLaGram(int lineaEnLaGramatica)
        {
            if (Parser.muestraProducciones)
            {
                Code.restaurarRichTextBox7conNegro();    //Gramatica
                string texto      = Program1.form1.richTextBox7.Text;
                int    sizeToken1 = 2;                   //

                int segActual = lineaEnLaGramatica / 21; //De 0 a 20 => 0, De 21 a .. => 1, ....
                if (segActual != segmAnteriorGram)
                {
                    Program1.form1.richTextBox7.SelectionStart =
                        Program1.form1.richTextBox7.GetFirstCharIndexFromLine(segActual * 21);
                    // + 2 debido a .locals consume 3 lineas en vez de 1

                    Program1.form1.richTextBox7.ScrollToCaret();
                }
                segmAnteriorGram = segActual;
                Program1.form1.richTextBox7.Select(  //Error
                    Program1.form1.richTextBox7.GetFirstCharIndexFromLine(
                        lineaEnLaGramatica) + 0,
                    sizeToken1);
                Program1.form1.richTextBox7.SelectionColor = System.Drawing.Color.Red;
                Program1.form1.richTextBox7.SelectionFont  =
                    new Font(Program1.form1.richTextBox7.Font.FontFamily,
                             Program1.form1.richTextBox7.Font.Size, FontStyle.Bold);
                Parser.MessageBoxCon3Preg();
            }
        }
コード例 #2
0
        public static void seleccLaProdEnLaGram(int lineaEnLaGramatica)
        {
            int tamDelSegm = 15;  //21

            // G3 PERU Se le suma 9 porque en statement hay 9 lineas en una sola regla.
            // Si se agrega una regla antes de Statement, revisar.
            if (lineaEnLaGramatica > 18)
            {
                lineaEnLaGramatica += 9;
            }
            if (Parser.muestraProducciones)
            {
                Code.restaurarRichTextBox7conNegro();//Gramatica
                string texto      = Program1.form1.richTextBox7.Text;
                int    sizeToken1 = 2;
                int    segActual  = lineaEnLaGramatica / tamDelSegm; //De 0 a tamDelSegm-1 (21 -1 = 20) => 0, De tamDelSegm (21) a .. => 1, ....
                if (segActual != segmAnteriorGram)
                {
                    Program1.form1.richTextBox7.SelectionStart =
                        Program1.form1.richTextBox7.GetFirstCharIndexFromLine(segActual * tamDelSegm);


                    Program1.form1.richTextBox7.ScrollToCaret();
                }
                segmAnteriorGram = segActual;
                Program1.form1.richTextBox7.Select(Program1.form1.richTextBox7.GetFirstCharIndexFromLine(lineaEnLaGramatica) + 0, sizeToken1);
                Program1.form1.richTextBox7.SelectionColor = System.Drawing.Color.Red;
                Program1.form1.richTextBox7.SelectionFont  = new Font(Program1.form1.richTextBox7.Font.FontFamily, Program1.form1.richTextBox7.Font.Size, FontStyle.Bold);
            }
        }
コード例 #3
0
        public static void seleccLaProdEnLaGram(int lineaEnLaGramatica)
        {
            int tamDelSegm = 15;  //21

            if (Parser.muestraProducciones)
            {
                Code.restaurarRichTextBox7conNegro();            //Gramatica
                string texto      = Program1.form1.richTextBox7.Text;
                int    sizeToken1 = 2;                           //

                int segActual = lineaEnLaGramatica / tamDelSegm; //De 0 a tamDelSegm-1 (21 -1 = 20) => 0, De tamDelSegm (21) a .. => 1, ....

                //System.Windows.Forms.MessageBox.Show("linGram:" + Convert.ToString(lineaEnLaGramatica) + ", segActual:" + Convert.ToString(segActual) + ", segmAntGram:" + Convert.ToString(segmAnteriorGram));

                if (segActual != segmAnteriorGram)
                {
                    Program1.form1.richTextBox7.SelectionStart =
                        Program1.form1.richTextBox7.GetFirstCharIndexFromLine(segActual * tamDelSegm);


                    Program1.form1.richTextBox7.ScrollToCaret();
                }
                segmAnteriorGram = segActual;
                Program1.form1.richTextBox7.Select(  //
                    Program1.form1.richTextBox7.GetFirstCharIndexFromLine(
                        lineaEnLaGramatica) + 0,
                    sizeToken1);
                Program1.form1.richTextBox7.SelectionColor = System.Drawing.Color.Red;
                Program1.form1.richTextBox7.SelectionFont  =
                    new Font(Program1.form1.richTextBox7.Font.FontFamily,
                             Program1.form1.richTextBox7.Font.Size, FontStyle.Bold);
                //Parser.MessageBoxCon3Preg();
            }
        }