public Principal() { InitializeComponent(); //Inicialización componentes Pestañas = new List <TabPage>(); cuadrosTexto = new List <RichTextBox>(); valla = new Valla(); analizadorLexico = new analisisLexico(); //Inicialización de variables seleccion = 0; banderaAnalisis = false; crearPestaña(); numeroLabel.Font = cuadrosTexto[seleccion].Font; }
/*Ya realizado el análisis léxico y verificada la estructura, en base a como están distribuidos los tokens * se establecen las propiedades para construir la valla*/ private void generarValla_Click(object sender, EventArgs e) { if (!banderaAnalisis || errores.Count != 0 || erroresAnalisis.Count != 0) { MessageBox.Show("Se deben solucionar primero los errores del código fuente para generar su valla \n" + "Verifique en 'Compilar>Archivos de Salida>Archivo de Errores' y la terminal, o bien" + "no se ha realizado el análisis"); } else { valla = new Valla(); valla.Pixeles.Clear(); Boolean fondo = false; Boolean pixel = false; String elemento = ""; int posicionx = 1; int posiciony = 1; String color = ""; for (int i = 0; i < tokens.Count - 1; i++) { elemento = tokens.ElementAt(i).Lexema; if (elemento == "fondo") { fondo = !fondo; } if (elemento == "pixel") { if (!pixel) { pixel = !pixel; } else { valla.Pixeles.Add(crearPixel(posicionx, posiciony, color)); posicionx = 1; posiciony = 1; color = ""; pixel = !pixel; } } if (elemento == "empresa") { valla.Empresa = tokens.ElementAt(i + 2).Lexema; i += 7; } else if (elemento == "horizontal") { valla.Tamaño_horizontal = Int32.Parse(tokens.ElementAt(i + 2).Lexema); i += 7; } else if (elemento == "vertical") { valla.Tamaño_vertical = Int32.Parse(tokens.ElementAt(i + 2).Lexema); i += 7; } else if (elemento == "color" && fondo) { valla.Color_fondo = establecerColor(tokens.ElementAt(i + 2).Lexema); i += 7; } else if (elemento == "posicionx") { posicionx = Int32.Parse(tokens.ElementAt(i + 2).Lexema); i += 7; } else if (elemento == "posiciony") { posiciony = Int32.Parse(tokens.ElementAt(i + 2).Lexema); i += 7; } else if (elemento == "color" && pixel) { color = tokens.ElementAt(i + 2).Lexema; i += 7; } } visualizarValla estiloValla = new visualizarValla(valla); estiloValla.Show(); } }
public visualizarValla(Valla valla) { InitializeComponent(); this.valla = valla; }