// Decompiled by DJ v3.12.12.96 Copyright 2011 Atanas Neshkov  Date: 08/10/2012 8:47:33
// Home Page: http://members.fortunecity.com/neshkov/dj.html http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3) 
// Source File Name:   ControlDeLasPreguntasTipoG.java

package project;

import java.applet.AudioClip;
import java.awt.*;
import java.awt.event.*;
import java.io.File;
import java.util.Properties;
import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.text.JTextComponent;
import org.w3c.dom.Document;
import traduccion.Traducir;

// Referenced classes of package project:
//            Boton, BotonPreguntasTipoG, MensajeDeError, LabelPreguntasTipoG, 
//            AccederADatos, LeerXML, ClasePantalla, BotonSiguiente, 
//            EZIPImageLoader, LabelDeFondoDelFrame2, Mensajes, EscribirBDTipoC, 
//            NRespuesta, Caja, Crono, TareaDeRetardo, 
//            Botoncitos, AumentarAciertosYFallos, NNivel

public class ControlDeLasPreguntasTipoG
{

    public ControlDeLasPreguntasTipoG()
    {
        yaesta = 0;
        hechas1 = "";
        hechas2 = "";
        hechas3 = "";
        modulo = "";
        ultimoPinchado = null;
        penultimoPinchado = null;
        antepenultimoPinchado = null;
        numeroDePalabras = 0;
        correcta = 1;
        mifrase = "";
        mifrase2 = "0";
        palabraEncontrada = "";
        d = 0;
        a = 0;
        respuestaDada = "";
        nivel = 0;
        deshacer = new Boton(Traducir.getTraduccion(AccederADatos.leer("h.proyecto"), "project.ControlDeLasPreguntasTipoG", "200411221851", AccederADatos.idioma));
        aceptar = new Boton(Traducir.getTraduccion(AccederADatos.leer("h.proyecto"), "project.ControlDeLasPreguntasTipoG", "200411221856", AccederADatos.idioma));
        panel1 = new JPanel();
        panel2 = new JPanel();
        respcorr = "\0";
        frase = "";
        j = 0;
        textoBoton = "";
        contador = 0;
        p1 = new JPanel();
        JPanel panelBotones = new JPanel();
        panelBotones.setOpaque(false);
        panelBotones.setLayout(new FlowLayout());
        panelBotones.add(deshacer);
        panelBotones.add(aceptar);
        panel1.add(panelBotones, "East");
        borde2 = BorderFactory.createEmptyBorder(10, 0, 10, 0);
        JPanel panel8 = new JPanel();
        panel8.setLayout(new GridLayout(4, 1));
        panel8.setOpaque(false);
        Font f1 = new Font("Arial", 0, 11);
        panel2.setLayout(null);
        panel2.setOpaque(false);
        p1.setOpaque(false);
        p1.setBounds(new Rectangle(0, 0, 400, 260));
        panel2.add(p1);
        p111 = new JPanel();
        p111.setPreferredSize(new Dimension(20, 10));
        p111.setOpaque(false);
        p333 = new JPanel();
        p333.setPreferredSize(new Dimension(10, 10));
        p333.setOpaque(false);
        p222 = new JPanel();
        p222.setPreferredSize(new Dimension(10, 10));
        p222.setOpaque(false);
        aceptar.addMouseListener(new MouseAdapter() {

            public void mouseExited(MouseEvent e)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(true);
            }

            public void mouseEntered(MouseEvent mouseevent)
            {
            }

            public void mouseReleased(MouseEvent event)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(true);
            }

            public void mousePressed(MouseEvent event)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(false);
            }

        }
);
        deshacer.addMouseListener(new MouseAdapter() {

            public void mouseExited(MouseEvent e)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(true);
            }

            public void mouseEntered(MouseEvent mouseevent)
            {
            }

            public void mouseReleased(MouseEvent event)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(true);
            }

            public void mousePressed(MouseEvent event)
            {
                Crono _tmp = labelDeFondoDelFrame.crono;
                Crono.losBotMeDejan(false);
            }

        }
);
        deshacer.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent event)
            {
                if(bsig.sonido.compareTo("si") == 0)
                    bsig.audio.play();
                mifrase = respcorr + ",";
                correcta = 1;
                if(ultimoPinchado != null)
                {
                    arrayBotones[Integer.parseInt(ultimoPinchado) - 1].setEnabled(true);
                    ultimoPinchado = penultimoPinchado;
                    penultimoPinchado = antepenultimoPinchado;
                    antepenultimoPinchado = null;
                } else
                {
                    for(int j = 0; j < arrayBotones.length; j++)
                        if(arrayBotones[j] != null)
                            arrayBotones[j].setEnabled(true);

                }
            }

            public void mouseExited(MouseEvent e)
            {
                escribirToolTip2();
            }

            public void mouseEntered(MouseEvent e)
            {
                escribirToolTip();
            }

        }
);
        aceptar.addActionListener(new ActionListener() {

            public void actionPerformed(ActionEvent event)
            {
                if(respuestaDada.compareToIgnoreCase("") != 0 && yaesta == 0)
                {
                    yaesta = 1;
                    if(bsig.sonido.compareTo("si") == 0)
                        bsig.audio.play();
                    bsig.mostrarNmostrar();
                    respuestaDada = "";
                    for(int cursorArrBot = 0; cursorArrBot < arrayBotones.length; cursorArrBot++)
                    {
                        if(arrayBotones[cursorArrBot] == null || arrayBotones[cursorArrBot].isEnabled())
                            continue;
                        if(respuestaDada != "")
                            respuestaDada = respuestaDada + "-" + arrayBotones[cursorArrBot].numero;
                        else
                            respuestaDada = arrayBotones[cursorArrBot].numero;
                    }

                    if(respcorr.compareTo(respuestaDada) == 0)
                        correcta = 1;
                    else
                        correcta = 0;
                    if(correcta == 1)
                    {
                        if(!bsig.array[bsig.ultimoBotonPinchado].preguntaRealizada)
                            if(leerxml.grado.compareTo("1") == 0)
                                labelDeFondoDelFrame.grado1++;
                            else
                            if(leerxml.grado.compareTo("2") == 0)
                                labelDeFondoDelFrame.grado2++;
                            else
                            if(leerxml.grado.compareTo("3") == 0)
                                labelDeFondoDelFrame.grado3++;
                        resultado = "1,G," + (numero + 1) + "," + "(" + respuestaDada + ")";
                        String param = materia + "_a";
                        if(!bsig.array[bsig.ultimoBotonPinchado].preguntaRealizada)
                            bsig.aumentarAciertosYFallos.aumentarAciertos(materia, labelDeFondoDelFrame);
                        nRespuesta.escribir(resultado);
                        labelDeFondoDelFrame.nNivel.cero();
                        TareaDeRetardo mi_tarea = new TareaDeRetardo();
                        mi_tarea.datos(areaActiva, caja, bsig, true);
                        if(!bsig.array[bsig.ultimoBotonPinchado].preguntaRealizada)
                            escribirBDTipoC.escribir(leerxml.zip, materia, String.valueOf(numero + 1), resultado, 1);
                    } else
                    {
                        resultado = "2,G," + (numero + 1) + "," + "(" + respuestaDada + ")";
                        String param = materia + "_f";
                        if(!bsig.array[bsig.ultimoBotonPinchado].preguntaRealizada)
                            bsig.aumentarAciertosYFallos.aumentarFallos(materia, labelDeFondoDelFrame);
                        nRespuesta.escribir(resultado);
                        labelDeFondoDelFrame.nNivel.cero();
                        TareaDeRetardo mi_tarea = new TareaDeRetardo();
                        mi_tarea.datos(areaActiva, caja, bsig, false);
                        if(!bsig.array[bsig.ultimoBotonPinchado].preguntaRealizada)
                            escribirBDTipoC.escribir(leerxml.zip, materia, String.valueOf(numero + 1), resultado, 2);
                    }
                }
            }

        }
);
    }

    public void ControlDeLasPreguntasTipoG2(LeerXML leerXML2, Caja caja2, ClasePantalla areaActiva2, JPanel PanAreAct2, int num, BotonSiguiente bsig2, LabelDeFondoDelFrame2 labelDeFondoDelFrame2, 
            Document doc2, NRespuesta nRespuesta2, String modulo2, String orden5, String orden4, String hechas5, String hechas4, 
            EscribirBDTipoC escribirBDTipoC2, String orden6, String hechas6)
    {
        respcorr = "\0";
        frase = "";
        textoBoton = "";
        mifrase = "";
        mifrase2 = "0";
        palabraEncontrada = "";
        d = 0;
        a = 0;
        j = 0;
        respuestaDada = "";
        ultimoPinchado = null;
        penultimoPinchado = null;
        antepenultimoPinchado = null;
        numeroDePalabras = 0;
        contador = 0;
        arrayBotones = new BotonPreguntasTipoG[500];
        yaesta = 0;
        p1.removeAll();
        p1.setLayout(new FlowLayout(0, 0, 3));
        doc = doc2;
        labelDeFondoDelFrame = labelDeFondoDelFrame2;
        bsig = bsig2;
        orden1 = orden5;
        orden2 = orden4;
        orden3 = orden6;
        hechas1 = hechas5;
        hechas2 = hechas4;
        hechas3 = hechas6;
        modulo = modulo2;
        nRespuesta = nRespuesta2;
        escribirBDTipoC = escribirBDTipoC2;
        numero = num;
        PanAreAct = PanAreAct2;
        areaActiva = areaActiva2;
        caja = caja2;
        leerxml = leerXML2;
        PrimeraPregunta = leerxml.darTexto();
        caja.setText(PrimeraPregunta);
        frase = leerxml.fraseR;
        respcorr = leerxml.respcorr;
        PrimeraImagen = leerxml.darPrimeraImagen();
        try
        {
            if(leerxml.darUpdated().compareToIgnoreCase("true") != 0)
                areaActiva.insertarImagen(new ImageIcon((project.Frame1.class).getResource(PrimeraImagen)));
            else
            if(!AccederADatos.entraComoApplet)
            {
                File ficheroACargar = new File(System.getProperties().getProperty("user.dir") + "/java/updates/" + leerxml.darZip());
                String imagenesABuscar[] = {
                    PrimeraImagen
                };
                ImageIcon images[] = bsig.eZIPImageLoader.getPicturesFromZIP(ficheroACargar, imagenesABuscar);
                areaActiva.insertarImagen(images[0]);
            }
        }
        catch(Exception e)
        {
            e.printStackTrace();
            MensajeDeError mensaje = new MensajeDeError();
            mensaje.mensaje(true, Traducir.getTraduccion(AccederADatos.leer("h.proyecto"), "project.ControlDeLasPreguntasTipoG", "200411301739", AccederADatos.idioma) + PrimeraImagen);
            mensaje = null;
        }
        areaActiva.removeAll();
        areaActiva.setLayout(new BorderLayout());
        areaActiva.add(panel1, "South");
        areaActiva.add(p111, "West");
        areaActiva.add(p333, "East");
        areaActiva.add(p222, "North");
        areaActiva.add(panel2, "Center");
        leerxml.cargarCoordenadasEImagen(numero, 0, 0, 0, "(-1)", icono);
        mifrase = respcorr + ",";
        materia = leerxml.darArea();
        array = frase.toCharArray();
        for(int i = 0; i < array.length; i++)
        {
            textoEncontrado = false;
            for(int recorrer = 0; recorrer < arrayCambio.length && !textoEncontrado; recorrer++)
            {
                if(array[i] != arrayCambio[recorrer].toCharArray()[0])
                    continue;
                textoEncontrado = true;
                textoBoton = String.valueOf(array).substring(j, i);
                if(textoBoton.length() > 0)
                {
                    numeroDePalabras = numeroDePalabras + 1;
                    arrayBotones[contador] = new BotonPreguntasTipoG(textoBoton, this);
                    arrayBotones[contador].numero = String.valueOf(numeroDePalabras);
                    p1.add(arrayBotones[contador]);
                    contador++;
                }
                textoBoton = arrayCambio[recorrer];
                p1.add(new LabelPreguntasTipoG(textoBoton));
                textoBoton = "";
                j = i + 1;
            }

        }

    }

    public void escribirToolTip()
    {
        Mensajes _tmp = labelDeFondoDelFrame.mensajes;
        Mensajes.ponerMensaje(Traducir.getTraduccion(AccederADatos.leer("h.proyecto"), "project.ControlDeLasPreguntasTipoG", "200412011051", AccederADatos.idioma));
    }

    public void escribirToolTip2()
    {
        Mensajes _tmp = labelDeFondoDelFrame.mensajes;
        Mensajes.ponerMensaje("");
    }

    boolean textoEncontrado;
    String arrayCambio[] = {
        ",", ".", "!", "<", "-", "_", ":", ";", ">", "\"", 
        "'", "(", ")", "\277", "?", " ", "\241"
    };
    JPanel p111;
    JPanel p222;
    JPanel p333;
    int yaesta;
    String orden1;
    String orden2;
    String hechas1;
    String hechas2;
    String orden3;
    String hechas3;
    String modulo;
    String ultimoPinchado;
    String penultimoPinchado;
    String antepenultimoPinchado;
    int numeroDePalabras;
    int correcta;
    String textoABorrar;
    Icon icono;
    String mifrase;
    String mifrase2;
    String palabraEncontrada;
    char arr[];
    int d;
    int a;
    String respuestaDada;
    EscribirBDTipoC escribirBDTipoC;
    NRespuesta nRespuesta;
    int nivel;
    LeerXML leerxml;
    Caja caja;
    ClasePantalla areaActiva;
    String PrimeraPregunta;
    String PrimeraImagen;
    JPanel PanAreAct;
    BotonSiguiente bsig;
    Boton deshacer;
    Boton aceptar;
    JPanel panel1;
    JPanel panel2;
    Border borde;
    Border borde2;
    String resultado;
    String respcorr;
    int numero;
    String materia;
    LabelDeFondoDelFrame2 labelDeFondoDelFrame;
    Document doc;
    String frase;
    char array[];
    BotonPreguntasTipoG arrayBotones[];
    int j;
    String textoBoton;
    int contador;
    JPanel p1;
}