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

import java.awt.Component;
import java.util.Vector;
import javax.swing.JDesktopPane;
import javax.swing.plaf.basic.BasicInternalFrameUI;
import org.jdom.Namespace;

/**
 *
 * @author Silvia
 */
public class PortadaLoader {

    private String courseName;
    private String optionName;
    private Vector<String> listaCursos;
    //Cambiamos CVApplet por MainWindow
    //private CVApplet applet;
    private MainWindow_portada frame;
    // Panel donde se añaden los componentes visuales
    JDesktopPane panel = new JDesktopPane();
    // JInternalFrame que contiene los elementos del menú de un curso
    VentanaSeleccionCurso vsu = null;
    // Namespace asociados al fichero imsmanifest.xml de un curso
    Namespace manifestNS;
    Namespace metadataNS;
    Namespace manifestStyle;
    //Identifier del manifest
    private String courseId;
    protected String lastScoId;
    protected String scoPath;
    protected String scoPoint;
    protected boolean restored = false;

    public PortadaLoader(MainWindow_portada frame) {
        System.out.println("PortadaLoader");
        //this.applet = applet;
        this.frame = frame;
        //this.courseName = this.applet.nombreCurso;
        this.courseName = this.frame.nombreCurso;
        //this.optionName = this.applet.option;
        this.optionName = this.frame.option;
        this.listaCursos = this.frame.listaCursos;

    }

    public void setPanel(JDesktopPane panel) {
        this.panel = panel;
    }

    public Component getVisual() {
        panel.repaint();
        panel.setLayout(null);
        this.mostrarCursos(this.listaCursos);
        panel.setVisible(true);
        panel.setOpaque(true);
        panel.setBounds(0, 0, 720, 576);

        //System.out.println("numero de frames "+panel.getAllFrames().length);

        return panel;
    }

    /******************************************************************************
     * Función que muestra el menú del curso en el applet                         *
     * @param nombre: nombre del curso seleccionado                               *
     ******************************************************************************/
    public void mostrarCursos(Vector<String> listaCursos) {
        System.out.println("Mostrar cursos en PortadaLoader");
        //final String path = frame.rutaScorm + nombre;
        vsu = new VentanaSeleccionCurso(listaCursos, frame, this.optionName, null);
        //vsu = new VentanaSeleccionUnidad(resultado, path, applet, this.optionName, valuesStyle, 0, null);

        // Eliminar top border JInternalFrame
        BasicInternalFrameUI ui = (BasicInternalFrameUI) vsu.getUI();
        ui.setNorthPane(null);

        panel.add(vsu);
        vsu.moveToFront(); // mejor que andar poniendo y quitando los elementos para que vsu quede al frente (y mucho más rápido)

        vsu.setVisible(true);
    }
}
