Advertisement
Guest User

ALS.GUI

a guest
Nov 13th, 2011
778
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 11.02 KB | None | 0 0
  1. import java.io.*;
  2. import javax.swing.*;
  3. /**
  4.  *
  5.  * @author Julio Chinchilla
  6.  */
  7. public class GUI extends javax.swing.JFrame {
  8.  
  9.     public GUI() {
  10.         initComponents();
  11.     }
  12.  
  13.     @SuppressWarnings("unchecked")
  14.     // <editor-fold defaultstate="collapsed" desc="Codigo Generado por NetBeans">
  15.     private void initComponents() {
  16.  
  17.         jArchivos = new javax.swing.JFileChooser();
  18.         jFTablaTokens = new javax.swing.JFrame();
  19.         jsPanelTablaTokens = new javax.swing.JScrollPane();
  20.         jTextoDeTablaDeTokens = new javax.swing.JTextPane();
  21.         jScrollPane1 = new javax.swing.JScrollPane();
  22.         jEditorLenguaje = new javax.swing.JEditorPane();
  23.         jScrollPane3 = new javax.swing.JScrollPane();
  24.         jDespliegueEstado = new javax.swing.JEditorPane();
  25.         jMenuGeneral = new javax.swing.JMenuBar();
  26.         jMenuArchivo = new javax.swing.JMenu();
  27.         JmAbrir = new javax.swing.JMenuItem();
  28.         jSeparadorMenuArchivo = new javax.swing.JSeparator();
  29.         JmSalir = new javax.swing.JMenuItem();
  30.         jMCompilar = new javax.swing.JMenu();
  31.         jmenuCompilar = new javax.swing.JMenuItem();
  32.         jmenuTablaTokens = new javax.swing.JMenuItem();
  33.  
  34.         jArchivos.setDialogType(javax.swing.JFileChooser.CUSTOM_DIALOG);
  35.         jArchivos.addActionListener(new java.awt.event.ActionListener() {
  36.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  37.                 jArchivosActionPerformed(evt);
  38.             }
  39.         });
  40.  
  41.         jFTablaTokens.setTitle("Tabla de Tokens");
  42.  
  43.         jTextoDeTablaDeTokens.setFont(new java.awt.Font("Courier New", 0, 12));
  44.         jsPanelTablaTokens.setViewportView(jTextoDeTablaDeTokens);
  45.  
  46.         javax.swing.GroupLayout jFTablaTokensLayout = new javax.swing.GroupLayout(jFTablaTokens.getContentPane());
  47.         jFTablaTokens.getContentPane().setLayout(jFTablaTokensLayout);
  48.         jFTablaTokensLayout.setHorizontalGroup(
  49.             jFTablaTokensLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  50.             .addGroup(jFTablaTokensLayout.createSequentialGroup()
  51.                 .addContainerGap()
  52.                 .addComponent(jsPanelTablaTokens, javax.swing.GroupLayout.DEFAULT_SIZE, 837, Short.MAX_VALUE)
  53.                 .addContainerGap())
  54.         );
  55.         jFTablaTokensLayout.setVerticalGroup(
  56.             jFTablaTokensLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  57.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jFTablaTokensLayout.createSequentialGroup()
  58.                 .addContainerGap()
  59.                 .addComponent(jsPanelTablaTokens, javax.swing.GroupLayout.DEFAULT_SIZE, 395, Short.MAX_VALUE)
  60.                 .addContainerGap())
  61.         );
  62.  
  63.         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  64.         setTitle("Compilador GNX 1.0 alpha");
  65.  
  66.         jEditorLenguaje.setFont(new java.awt.Font("Courier New", 1, 15)); // NOI18N
  67.         jEditorLenguaje.setForeground(new java.awt.Color(102, 102, 102));
  68.         jEditorLenguaje.setText("GeneraExpresiones ( \"PatronExpresion\" , \"EncajadorExpresión\" )\nExpresionGenerada \nO = ( \"marrón\" , \"castaño\" ) ;\nN  = ( * , \"a\" ) ;\nN = ( + , \"b\" ) ;\nN = ( ? , \"b\" ) ;\nExpresionEvalua\nEvaluar =  \"marronaaaaaaaaaaa\" ;");
  69.         jEditorLenguaje.setDisabledTextColor(new java.awt.Color(153, 153, 153));
  70.         jScrollPane1.setViewportView(jEditorLenguaje);
  71.  
  72.         jDespliegueEstado.setEditable(false);
  73.         jDespliegueEstado.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
  74.         jDespliegueEstado.setForeground(new java.awt.Color(255, 102, 102));
  75.         jScrollPane3.setViewportView(jDespliegueEstado);
  76.  
  77.         jMenuArchivo.setText("Archivo");
  78.         jMenuArchivo.addActionListener(new java.awt.event.ActionListener() {
  79.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  80.                 jMenuArchivoActionPerformed(evt);
  81.             }
  82.         });
  83.  
  84.         JmAbrir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_A, java.awt.event.InputEvent.CTRL_MASK));
  85.         JmAbrir.setText("Abrir");
  86.         JmAbrir.addActionListener(new java.awt.event.ActionListener() {
  87.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  88.                 JmAbrirActionPerformed(evt);
  89.             }
  90.         });
  91.         jMenuArchivo.add(JmAbrir);
  92.         jMenuArchivo.add(jSeparadorMenuArchivo);
  93.  
  94.         JmSalir.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_Q, java.awt.event.InputEvent.CTRL_MASK));
  95.         JmSalir.setText("Salir");
  96.         JmSalir.addActionListener(new java.awt.event.ActionListener() {
  97.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  98.                 JmSalirActionPerformed(evt);
  99.             }
  100.         });
  101.         jMenuArchivo.add(JmSalir);
  102.  
  103.         jMenuGeneral.add(jMenuArchivo);
  104.  
  105.         jMCompilar.setText("Compilar");
  106.         jMCompilar.addActionListener(new java.awt.event.ActionListener() {
  107.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  108.                 jMCompilarActionPerformed(evt);
  109.             }
  110.         });
  111.  
  112.         jmenuCompilar.setText("Compilar");
  113.         jmenuCompilar.addActionListener(new java.awt.event.ActionListener() {
  114.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  115.                 jmenuCompilarActionPerformed(evt);
  116.             }
  117.         });
  118.         jMCompilar.add(jmenuCompilar);
  119.  
  120.         jmenuTablaTokens.setText("Mostrar Tabla de Tokens");
  121.         jmenuTablaTokens.setToolTipText("Muestra la tabla de tokens, esta se basa en el analizador lexico");
  122.         jmenuTablaTokens.addActionListener(new java.awt.event.ActionListener() {
  123.             public void actionPerformed(java.awt.event.ActionEvent evt) {
  124.                 jmenuTablaTokensActionPerformed(evt);
  125.             }
  126.         });
  127.         jMCompilar.add(jmenuTablaTokens);
  128.  
  129.         jMenuGeneral.add(jMCompilar);
  130.  
  131.         setJMenuBar(jMenuGeneral);
  132.  
  133.         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  134.         getContentPane().setLayout(layout);
  135.         layout.setHorizontalGroup(
  136.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  137.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  138.                 .addContainerGap()
  139.                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
  140.                     .addComponent(jScrollPane3, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 780, Short.MAX_VALUE)
  141.                     .addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 780, Short.MAX_VALUE))
  142.                 .addContainerGap())
  143.         );
  144.         layout.setVerticalGroup(
  145.             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  146.             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
  147.                 .addContainerGap()
  148.                 .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 454, Short.MAX_VALUE)
  149.                 .addGap(18, 18, 18)
  150.                 .addComponent(jScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 85, javax.swing.GroupLayout.PREFERRED_SIZE)
  151.                 .addContainerGap())
  152.         );
  153.  
  154.         pack();
  155.     }// </editor-fold>
  156.  
  157.     private void JmSalirActionPerformed(java.awt.event.ActionEvent evt) {                                        
  158.         System.exit(0);
  159.     }                                      
  160.  
  161.     private void JmAbrirActionPerformed(java.awt.event.ActionEvent evt) {                                        
  162.         this.jArchivos.setAcceptAllFileFilterUsed(true);
  163.         FiltroArchivos fa = new FiltroArchivos();
  164.         this.jArchivos.setFileFilter(fa);            
  165.         this.jArchivos.setDialogType(JFileChooser.OPEN_DIALOG);
  166.         this.jArchivos.setDialogTitle("Abrir...");        
  167.         this.jArchivos.showOpenDialog(this);
  168.         File f = this.jArchivos.getSelectedFile();
  169.         manejoArchivos.Archivo arch = new manejoArchivos.Archivo();
  170.         this.jEditorLenguaje.setText(arch.LeeArchivo(f));        
  171.     }                                      
  172.  
  173.     private void jArchivosActionPerformed(java.awt.event.ActionEvent evt) {                                          
  174.         // TODO add your handling code here:
  175.        
  176.     }                                        
  177.  
  178.     private void jmenuCompilarActionPerformed(java.awt.event.ActionEvent evt) {                                          
  179.         // TODO add your handling code here:
  180.         String ss = this.jEditorLenguaje.getText();        
  181.         analisis.AnalisisSintactico as = new analisis.AnalisisSintactico(ss);
  182.         this.jDespliegueEstado.setText(as.imp);
  183.        
  184.     }                                          
  185.  
  186.     private void jMCompilarActionPerformed(java.awt.event.ActionEvent evt) {                                          
  187.         // TODO add your handling code here:
  188. }                                          
  189.  
  190.     private void jmenuTablaTokensActionPerformed(java.awt.event.ActionEvent evt) {                                          
  191.         String ed = this.jEditorLenguaje.getText();
  192.         analisis.AnalisisLexico al = new analisis.AnalisisLexico(ed);        
  193.         this.jTextoDeTablaDeTokens.setText(al.imp);        
  194.         this.jFTablaTokens.setSize(640,480);
  195.         this.jFTablaTokens.setResizable(false);                
  196.         this.jFTablaTokens.setVisible(true);      
  197.        
  198.     }                                          
  199.  
  200.     private void jMenuArchivoActionPerformed(java.awt.event.ActionEvent evt) {                                            
  201.         // TODO add your handling code here:
  202.     }                                            
  203.  
  204.     /**
  205.     * @param args the command line arguments
  206.     */
  207.     public static void main(String args[]) {
  208.         java.awt.EventQueue.invokeLater(new Runnable() {
  209.             public void run() {
  210.                 GUI gui = new GUI();
  211.                 gui.setLocationRelativeTo(null);
  212.                 gui.setVisible(true);
  213.             }
  214.         });
  215.     }
  216.  
  217.     // Variables declaration - do not modify
  218.     private javax.swing.JMenuItem JmAbrir;
  219.     private javax.swing.JMenuItem JmSalir;
  220.     private javax.swing.JFileChooser jArchivos;
  221.     private javax.swing.JEditorPane jDespliegueEstado;
  222.     private javax.swing.JEditorPane jEditorLenguaje;
  223.     private javax.swing.JFrame jFTablaTokens;
  224.     private javax.swing.JMenu jMCompilar;
  225.     private javax.swing.JMenu jMenuArchivo;
  226.     private javax.swing.JMenuBar jMenuGeneral;
  227.     private javax.swing.JScrollPane jScrollPane1;
  228.     private javax.swing.JScrollPane jScrollPane3;
  229.     private javax.swing.JSeparator jSeparadorMenuArchivo;
  230.     private javax.swing.JTextPane jTextoDeTablaDeTokens;
  231.     private javax.swing.JMenuItem jmenuCompilar;
  232.     private javax.swing.JMenuItem jmenuTablaTokens;
  233.     private javax.swing.JScrollPane jsPanelTablaTokens;
  234. }
  235.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement