co.edu.icesi.academ.client.perfiles.propietario.CrearCompetencia.java Source code

Java tutorial

Introduction

Here is the source code for co.edu.icesi.academ.client.perfiles.propietario.CrearCompetencia.java

Source

/**
* Copyright  2013 Universidad Icesi
* 
* This file is part of ACADEM.
* 
* ACADEM is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* 
* ACADEM is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with ACADEM.  If not, see <http://www.gnu.org/licenses/>.
**/

package co.edu.icesi.academ.client.perfiles.propietario;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import co.edu.icesi.academ.bo.CompetenciaBO;
import co.edu.icesi.academ.bo.EvaluacionBO;
import co.edu.icesi.academ.bo.ResultadoAprendizajeBO;
import co.edu.icesi.academ.excepciones.CrearCompetenciaException;

import com.vaadin.annotations.AutoGenerated;
import com.vaadin.server.UserError;
import com.vaadin.ui.AbsoluteLayout;
import com.vaadin.ui.AbstractComponent;
import com.vaadin.ui.Button.ClickEvent;
import com.vaadin.ui.Button.ClickListener;
import com.vaadin.ui.CustomComponent;
import com.vaadin.ui.Label;
import com.vaadin.ui.NativeButton;
import com.vaadin.ui.Notification;
import com.vaadin.ui.TextArea;
import com.vaadin.ui.TwinColSelect;
import com.vaadin.ui.Notification.Type;
import com.vaadin.server.AbstractErrorMessage.ContentMode;
import com.vaadin.server.ErrorMessage.ErrorLevel;

public class CrearCompetencia extends CustomComponent {

    /*- VaadinEditorProperties={"grid":"RegularGrid,20","showGrid":true,"snapToGrid":true,"snapToObject":true,"movingGuides":false,"snappingDistance":10} */

    @AutoGenerated
    private AbsoluteLayout mainLayout;
    @AutoGenerated
    private TextArea textDescripcion;
    @AutoGenerated
    private NativeButton btGuardarCompetencia;
    @AutoGenerated
    private Label label_3;
    @AutoGenerated
    private Label label_2;
    @AutoGenerated
    private Label label_1;
    @AutoGenerated
    private TwinColSelect resutadoAprendizajeSelect;
    /**
     * default serial versionUID
     */
    private static final long serialVersionUID = 1L;

    /**
     * The constructor should first build the main layout, set the
     * composition root and then do any custom initialization.
     *
     * The constructor will not be automatically regenerated by the
     * visual editor.
     */
    public CrearCompetencia() {
        buildMainLayout();
        setCompositionRoot(mainLayout);

        // TODO add user code here
        btGuardarCompetencia.addClickListener(new ClickListener() {

            @Override
            public void buttonClick(ClickEvent event) {
                guardarCompetencia();
            }
        });
    }

    protected void guardarCompetencia() {
        CompetenciaBO competenciaBO = new CompetenciaBO();
        competenciaBO.setDescripcion(textDescripcion.getValue());
        Iterator iter = resutadoAprendizajeSelect.getItemIds().iterator();
        List<ResultadoAprendizajeBO> asociados = new ArrayList<ResultadoAprendizajeBO>();
        while (iter.hasNext()) {
            ResultadoAprendizajeBO act = (ResultadoAprendizajeBO) iter.next();
            asociados.add(act);
        }
        competenciaBO.setResultadosAprendizaje(asociados);
        ControladorPropietario.getInstance().crearCompetencia(competenciaBO);
        ControladorPropietario.getInstance().cargarCompentencias();
    }

    //   private void mostrarErrorValidacion(AbstractComponent componente, String mensaje) {
    //      Notification.show("Error de validacin", mensaje, Type.TRAY_NOTIFICATION);
    //      this.labelError.setValue(mensaje);
    //   }
    //
    //   public void setMensajeError(String mensaje) {
    //      Notification.show("ACaDeM", mensaje, Type.TRAY_NOTIFICATION);
    //      this.labelError.setValue(mensaje);
    //      btGuardarCompetencia.setComponentError(new UserError(mensaje, ContentMode.TEXT, ErrorLevel.WARNING));
    //   }

    public void cargarResultadosAprendizajePrograma(List<ResultadoAprendizajeBO> resultados) {

        for (ResultadoAprendizajeBO resultadoAprendizajeBO : resultados) {
            resutadoAprendizajeSelect.addItem(resultadoAprendizajeBO);
        }
    }

    public void cargarResultadosAprendizajeAsociados(List<ResultadoAprendizajeBO> resultadosAprendizaje) {

        for (ResultadoAprendizajeBO resultadoAprendizajeBO : resultadosAprendizaje) {
            resutadoAprendizajeSelect.addItem(resultadoAprendizajeBO);
            resutadoAprendizajeSelect.select(resultadoAprendizajeBO);
            resutadoAprendizajeSelect.setValue(resultadoAprendizajeBO);
        }
    }

    @AutoGenerated
    private AbsoluteLayout buildMainLayout() {
        // common part: create layout
        mainLayout = new AbsoluteLayout();
        mainLayout.setImmediate(false);
        mainLayout.setWidth("700px");
        mainLayout.setHeight("480px");

        // top-level component properties
        setWidth("700px");
        setHeight("480px");

        // resutadoAprendizajeSelect
        resutadoAprendizajeSelect = new TwinColSelect();
        resutadoAprendizajeSelect.setImmediate(false);
        resutadoAprendizajeSelect.setWidth("100.0%");
        resutadoAprendizajeSelect.setHeight("-1px");
        mainLayout.addComponent(resutadoAprendizajeSelect, "top:60.0px;right:63.0px;left:80.0px;");

        // label_1
        label_1 = new Label();
        label_1.setImmediate(false);
        label_1.setWidth("229px");
        label_1.setHeight("-1px");
        label_1.setValue("Resultados de Aprendizaje Disponibles:");
        mainLayout.addComponent(label_1, "top:20.0px;left:80.0px;");

        // label_2
        label_2 = new Label();
        label_2.setImmediate(false);
        label_2.setWidth("229px");
        label_2.setHeight("-1px");
        label_2.setValue("Resultados de Aprendizaje Asociados:");
        mainLayout.addComponent(label_2, "top:20.0px;left:380.0px;");

        // label_3
        label_3 = new Label();
        label_3.setImmediate(false);
        label_3.setWidth("89px");
        label_3.setHeight("18px");
        label_3.setValue("Competencia:");
        mainLayout.addComponent(label_3, "top:222.0px;left:80.0px;");

        // btGuardarCompetencia
        btGuardarCompetencia = new NativeButton();
        btGuardarCompetencia.setCaption("Guardar");
        btGuardarCompetencia.setImmediate(true);
        btGuardarCompetencia.setWidth("-1px");
        btGuardarCompetencia.setHeight("-1px");
        mainLayout.addComponent(btGuardarCompetencia, "top:418.0px;left:566.0px;");

        // textDescripcion
        textDescripcion = new TextArea();
        textDescripcion.setImmediate(false);
        textDescripcion.setWidth("560px");
        textDescripcion.setHeight("140px");
        textDescripcion.setMaxLength(100);
        mainLayout.addComponent(textDescripcion, "top:260.0px;left:80.0px;");

        return mainLayout;
    }

    public void setDescripcion(String descripcion) {
        textDescripcion.setValue(descripcion);
    }

}