/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package gestion;

import dibujo.AreaDibujo;
import interfaz.Interfaz;
import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.beans.PropertyVetoException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;

/**
 *
 * @author voragoth
 */
public class NuevoDocumento implements ActionListener{
    AreaDibujo areaDibujo;
    
    public NuevoDocumento(AreaDibujo areaDibujo){
        this.areaDibujo=areaDibujo;
        Interfaz.nuevoDocumento.addActionListener(this);
        Interfaz.menuNuevo.addActionListener(this);
        interfaz.Interfaz.B=new algoritmobr.Grafo();
        interfaz.Interfaz.R=new algoritmobr.Grafo();
        interfaz.Interfaz.jTextArea1.setText("");
        
    }

    private void cerrarFrame(){
        if(JOptionPane.showConfirmDialog(null, "¿ESTA SEGURO DE CERRAR EL ARCHIVO?\n"
            + "CUALQUIER DATO NO GUARDADO SE PERDERA")==JOptionPane.YES_OPTION){
            
            Interfaz.abierto=false;
            areaDibujo.limpiarArea();
            areaDibujo.grafo.destruirGrafo();
            interfaz.Interfaz.jTextArea1.setText("");
           
            
            try {
                Thread.sleep(120);
            } catch (InterruptedException ex) {
                Logger.getLogger(Interfaz.class.getName()).log(Level.SEVERE, null, ex);
            }
            
            Interfaz.nodoNuevo.setEnabled(true);
            Interfaz.nodoNuevo1.setEnabled(true);
            Interfaz.cambiarEtiqueta.setEnabled(false);
            Interfaz.guardarArchivo.setEnabled(true);
            Interfaz.menuGuardar.setEnabled(true);
            Interfaz.aristaNueva.setEnabled(true);
            Interfaz.BarAgregaArista.setEnabled(true);
            Interfaz.Cuadricular.setEnabled(true);
            Interfaz.Screen.setEnabled(true);
            Interfaz.guardarimagen.setEnabled(true);
            Interfaz.cuadri.setEnabled(true);
            Interfaz.modificar.setSelected(true);
            Interfaz.BarAgregavertice.setEnabled(false);
            AreaDibujo.desactivar();
        
        } else {
            Interfaz.frameDibujo.setVisible(true);
        }
        Interfaz.file=null;
        Interfaz.archivo=false;
        
    }
    
    private void nuevo(){

       
        if(Interfaz.abierto==false){
            Interfaz.nodoNuevo.setEnabled(true);
            Interfaz.nodoNuevo1.setEnabled(true);
            Interfaz.aristaNueva.setEnabled(true);
            Interfaz.BarAgregaArista.setEnabled(true);
            Interfaz.configurarPagina.setEnabled(true);
            Interfaz.imprimir.setEnabled(true);
            Interfaz.Imprimir.setEnabled(true);
            Interfaz.cambiarEtiqueta.setEnabled(false);
            Interfaz.guardarArchivo.setEnabled(true);
            Interfaz.menuGuardar.setEnabled(true);
            Interfaz.Screen.setEnabled(true);
            Interfaz.jButton1.setEnabled(true);
            Interfaz.guardarimagen.setEnabled(true);
            Interfaz.Cuadricular.setEnabled(true);
            Interfaz.frameDibujo.setVisible(true);
            Interfaz.cuadri.setEnabled(true);
            Interfaz.modificar.setSelected(true);
            Interfaz.BarAgregavertice.setEnabled(false);
            AreaDibujo.desactivar();
            try {
                    Interfaz.frameDibujo.setMaximum(true);
                } catch (PropertyVetoException ex) {
                    Logger.getLogger(Interfaz.class.getName()).log(Level.SEVERE, null, ex);
                }
            Interfaz.frameDibujo.setTitle("Nuevo Grafo");
            Interfaz.abierto=true;
        } else {
            cerrarFrame();
            
            Interfaz.configurarPagina.setEnabled(true);
            Interfaz.imprimir.setEnabled(true);
            Interfaz.Imprimir.setEnabled(true);
            
            Interfaz.guardarArchivo.setEnabled(true);
            Interfaz.frameDibujo.setVisible(true);
            try {
                    Interfaz.frameDibujo.setMaximum(true);
                } catch (PropertyVetoException ex) {
                    Logger.getLogger(Interfaz.class.getName()).log(Level.SEVERE, null, ex);
                }
            Interfaz.frameDibujo.setTitle("Nuevo Grafo");
            //areaDibujo.cargarArchivo(null);
            Interfaz.abierto=true;
            
        }
        
    }
    @Override
    public void actionPerformed(ActionEvent e) {
        nuevo();
        Interfaz.file=null;
        Interfaz.archivo=false;
    }
    
}
