Example usage for com.vaadin.ui Notification Notification

List of usage examples for com.vaadin.ui Notification Notification

Introduction

In this page you can find the example usage for com.vaadin.ui Notification Notification.

Prototype

public Notification(String caption, String description) 

Source Link

Document

Creates a "humanized" notification message with a bigger caption and smaller description.

Usage

From source file:tad.grupo7.ccamistadeslargas.EventosLayout.java

/**
 * Se muestra el evento en el vertical layout derecho del splitpanel.
 *
 * @param e Recoge el evento que se quiere mostrar.
 *///from w  w w .j ava2 s. c  o  m
private void mostrarEvento(Evento e) {
    removeAllComponents();
    //T?TULO
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Evento " + e.getNombre());
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO POR SI SE QUIERE EDITAR EL EVENTO
    TextField nombre = new TextField("Nombre");
    nombre.setValue(e.getNombre());
    nombre.setRequired(true);
    ComboBox divisa = new ComboBox("Divisa");
    divisa.setNullSelectionAllowed(false);
    divisa.setRequired(true);
    divisa.addItem("");
    divisa.addItem("$");

    HorizontalLayout layouth = new HorizontalLayout();
    HorizontalLayout layouth2 = new HorizontalLayout();
    layouth.setSpacing(true);
    layouth2.setSpacing(true);

    final Button actualizar = new Button("Actualizar Evento");
    final Button eliminar = new Button("Eliminar Evento");
    final Button addPago = new Button("Aadir Pago");
    final Button addParticipante = new Button("Aadir Participante");
    layouth.addComponents(actualizar, eliminar);
    layouth2.addComponents(addPago, addParticipante);
    final Button hacerCuentas = new Button("Hacer las cuentas");
    //BOTN PARA ACTUALIZAR EL EVENTO
    actualizar.addClickListener(clickEvent -> {
        try {
            nombre.validate();
            divisa.validate();
            if (EventoDAO.readDBObject(nombre.getValue(), usuario.getId()) == null) {
                EventoDAO.update(e.getId(), nombre.getValue(), divisa.getValue().toString());
                Notification n = new Notification("Evento actualizado",
                        Notification.Type.ASSISTIVE_NOTIFICATION);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
                mostrarEventos();
            } else {
                Notification n = new Notification("Ya existe un evento con ese nombre",
                        Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            }
        } catch (Validator.InvalidValueException ex) {
            Notification n = new Notification("Error con los campos", Notification.Type.WARNING_MESSAGE);
            n.setPosition(Position.TOP_CENTER);
            n.show(Page.getCurrent());
        }

    });
    //BOTN PARA QUE SALGA UNA VENTANA EMERGENTE PARA AADIR UN GASTO AL EVENTO
    addPago.addClickListener(clickEvent -> {
        mostrarFormularioAddGasto(e);
    });
    //BOTN PARA ELIMINAR EL EVENTO
    eliminar.addClickListener(clickEvent -> {
        EventoDAO.delete(e.getId());
        removeAllComponents();
        mostrarEventos();
    });
    //BOTN PARA AADIR PARTICIPANTES
    addParticipante.addClickListener(clickEvent -> {
        mostrarFormularioAddParticipante(e);
    });
    //BOTN PARA HACER LAS CUENTAS
    hacerCuentas.addClickListener(clickEvent -> {
        removeAllComponents();
        VerticalLayout vl = new VerticalLayout();
        Table tablaResumenPlusvalia = getTablaResumenPlusvalia(e);
        HorizontalLayout hl1 = new HorizontalLayout(tablaResumenPlusvalia);
        hl1.setMargin(true);
        hl1.setSpacing(true);
        vl.addComponent(hl1);
        for (Participante p : ParticipanteDAO.readAllFromEvento(e.getId())) {
            HorizontalLayout hl = new HorizontalLayout(getTablaResumenGastosPorPersona(e, p));
            hl.setMargin(true);
            hl.setSpacing(true);
            vl.addComponent(hl);
        }
        setSplitPosition(100, Sizeable.UNITS_PERCENTAGE);
        setFirstComponent(vl);
    });
    //TABLA CON TODOS LOS GASTOS DEL EVENTO
    Table tablaGastos = getTablaGastos(e);
    //TABLA CON TODOS LOS PARTICIPANTES DEL EVENTO
    Table tablaParticipantes = getTablaParticipantes(e);
    //AADIMOS LOS COMPONENTES
    FormLayout form = new FormLayout(nombre, divisa, layouth, layouth2, hacerCuentas);
    VerticalLayout vl = new VerticalLayout(l, form, tablaGastos, tablaParticipantes);
    vl.setMargin(true);
    setFirstComponent(vl);
}

From source file:tad.grupo7.ccamistadeslargas.EventosLayout.java

/**
 * Se muestra un gasto para poder actualizarlo o eliminarlo.
 *
 * @param e Recoge el evento al que pertenece el gasto.
 *///  w w  w.  j  a va2 s . co  m
private void mostrarGasto(Gasto g, Evento e) {
    //T?TULO
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Gasto " + g.getNombre());
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO POR SI SE QUIERE EDITAR EL GASTO
    TextField nombre = new TextField("Titulo");
    nombre.setValue(g.getNombre());
    nombre.setRequired(true);
    TextField precio = new TextField("Precio");
    precio.setValue(g.getPrecio().toString());
    precio.setRequired(true);
    final Button actualizar = new Button("Actualizar Gasto");
    final Button eliminar = new Button("Eliminar Gasto");
    //BOTN PARA ACTUALIZAR EL GASTO
    actualizar.addClickListener(clickEvent -> {
        try {
            nombre.validate();
            precio.validate();
            GastoDAO.update(g.getId(), nombre.getValue(), Double.valueOf(precio.getValue()), g.getIdEvento(),
                    g.getIdPagador(), g.getDeudores());
            Notification n = new Notification("Gasto actualizado", Notification.Type.ASSISTIVE_NOTIFICATION);
            n.setPosition(Position.TOP_CENTER);
            n.show(Page.getCurrent());
            setSecondComponent(null);
            mostrarEvento(e);
        } catch (Validator.InvalidValueException ex) {
            Notification n = new Notification("Error con los campos", Notification.Type.WARNING_MESSAGE);
            n.setPosition(Position.TOP_CENTER);
            n.show(Page.getCurrent());
        }
    });
    //BOTN PARA ELIMINAR EL GASTO
    eliminar.addClickListener(clickEvent -> {
        GastoDAO.delete(g.getId());
        removeAllComponents();
        mostrarEvento(e);
    });
    //AADIMOS LOS COMPONENTES
    FormLayout form = new FormLayout(nombre, precio, actualizar, eliminar);
    VerticalLayout vl = new VerticalLayout(l, form);
    vl.setMargin(true);
    setSecondComponent(vl);
}

From source file:tad.grupo7.ccamistadeslargas.EventosLayout.java

/**
 * Se muestra el formulario de aadir un nuevo evento.
 *//*from  w ww  .j a v  a  2s .  c  om*/
private void mostrarFormularioAddEvento() {
    //T?TULO
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Aadir Evento");
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO
    TextField nombre = new TextField("Nombre");
    nombre.setRequired(true);
    ComboBox divisa = new ComboBox("Divisa");
    divisa.setRequired(true);
    divisa.addItem("");
    divisa.addItem("$");
    final Button add = new Button("Crear evento");
    add.addStyleName(ValoTheme.BUTTON_PRIMARY);
    add.setClickShortcut(ShortcutAction.KeyCode.ENTER);
    FormLayout form = new FormLayout(nombre, divisa, add);
    //BOTN PARA AADIR EVENTO
    add.addClickListener(clickEvent -> {
        try {
            nombre.validate();
            divisa.validate();
            if (EventoDAO.readDBObject(nombre.getValue(), usuario.getId()) == null) {
                EventoDAO.create(nombre.getValue(), divisa.getValue().toString(), usuario);
                mostrarEventos();
            } else {
                Notification n = new Notification("Ya existe un evento con ese nombre",
                        Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            }

        } catch (Validator.InvalidValueException ex) {
            Notification n = new Notification("Error con los campos", Notification.Type.WARNING_MESSAGE);
            n.setPosition(Position.TOP_CENTER);
            n.show(Page.getCurrent());
        }
    });
    //AADIMOS COMPONENTES
    form.setMargin(true);
    setSecondComponent(form);
}

From source file:tad.grupo7.ccamistadeslargas.EventosLayout.java

/**
 * Se muestra el formulario para aadir un participante al evento.
 *
 * @param e Recoge el evento./*from www .j  a  va2 s.c  o  m*/
 */
private void mostrarFormularioAddParticipante(Evento e) {
    //T?TULO
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Aadir Participante");
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO
    List<Participante> participantes = ParticipanteDAO.readAllFromUsuario(usuario.getId());
    ComboBox nuevoParticipante = new ComboBox("Participante Nuevo");
    nuevoParticipante.setRequired(true);
    for (Participante p : participantes) {
        nuevoParticipante.addItem(p.getNombre());
    }
    final Button add = new Button("Aadir participante");
    add.addStyleName(ValoTheme.BUTTON_PRIMARY);
    add.setClickShortcut(ShortcutAction.KeyCode.ENTER);
    add.addClickListener(clickEvent -> {
        try {
            nuevoParticipante.validate();
            Participante p = ParticipanteDAO.read(nuevoParticipante.getValue().toString(), usuario.getId());
            if (!EventoDAO.esParticipante(e, p)) {
                EventoDAO.addParticipante(e.getId(), p.getId());
                Notification n = new Notification("Participante aadido",
                        Notification.Type.ASSISTIVE_NOTIFICATION);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
                setSecondComponent(null);
                mostrarEvento(e);
            } else {
                Notification n = new Notification("El participante ya se encuentra en el evento",
                        Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            }

        } catch (Validator.InvalidValueException ex) {
            Notification n = new Notification("Error con los campos", Notification.Type.WARNING_MESSAGE);
            n.setPosition(Position.TOP_CENTER);
            n.show(Page.getCurrent());
        }
    });
    FormLayout form = new FormLayout(l, nuevoParticipante, add);
    form.setMargin(true);
    setSecondComponent(form);
}

From source file:tad.grupo7.ccamistadeslargas.EventosLayout.java

/**
 * Muestra el formulario para aadir un gasto al evento.
 *
 * @param e Evento al que aadir el gasto.
 *//*from w w  w  . j av  a 2  s. co  m*/
private void mostrarFormularioAddGasto(Evento e) {
    //T?TULO
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Aadir Gasto");
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO
    TextField titulo = new TextField("Ttulo");
    titulo.setRequired(true);
    TextField precio = new TextField("Precio");
    precio.setRequired(true);
    List<Participante> participantes = ParticipanteDAO.readAllFromEvento(e.getId());
    ComboBox pagador = new ComboBox("Pagador");
    List<Participante> deudores = new ArrayList<>();
    Label d = new Label("Deudores");
    FormLayout form = new FormLayout(l, titulo, precio, pagador, d);
    for (Participante p : participantes) {
        pagador.addItem(p.getNombre());
        CheckBox c = new CheckBox(p.getNombre());
        c.addValueChangeListener(evento -> {
            deudores.add(p);
        });
        form.addComponent(c);
    }
    final Button add = new Button("Aadir Gasto");
    add.addStyleName(ValoTheme.BUTTON_PRIMARY);
    add.setClickShortcut(ShortcutAction.KeyCode.ENTER);
    //SI SE CLICA EN AADIR PAGO SE CREA EL PAGO A LA VEZ QUE SE CIERRA LA VENTANA
    add.addClickListener(new Button.ClickListener() {
        @Override
        public void buttonClick(Button.ClickEvent event) {
            try {
                titulo.validate();
                precio.validate();
                pagador.validate();
                GastoDAO.create(titulo.getValue(), Double.valueOf(precio.getValue()), e.getId(),
                        ParticipanteDAO.read(pagador.getValue().toString(), usuario.getId()).getId(), deudores);
                mostrarEvento(e);
            } catch (Validator.InvalidValueException ex) {
                Notification n = new Notification("Rellena todos los campos",
                        Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            }
        }
    });
    //AADIMOS LOS COMPONENTES
    form.addComponent(add);
    setSecondComponent(form);
}

From source file:tad.grupo7.ccamistadeslargas.ListadoLayout.java

/**
 * Obtiene una tabla con todos los usuarios.
 *
 * @return Table/*from  w  w  w .ja v a2 s  .  co  m*/
 */
private Table getTablaListado() {
    List<Usuario> usuarios = UsuarioDAO.readAll();
    Table table = new Table("");
    table.addContainerProperty("Nombre", String.class, null);
    table.addContainerProperty("Password", String.class, null);
    table.addContainerProperty("Email", String.class, null);
    Iterator<Usuario> it = usuarios.iterator();
    it.next();
    while (it.hasNext()) {
        table.addItem(it.next().getArray(), null);
    }

    table.setPageLength(table.size());
    table.setWidth(100, UNITS_PERCENTAGE);
    table.setSelectable(true);
    table.setImmediate(true);

    table.addValueChangeListener(new ValueChangeListener() {

        @Override
        public void valueChange(Property.ValueChangeEvent event) {
            try {
                Usuario u = usuarios.get((int) table.getValue());
                UsuarioDAO.delete(u.getId());
                mostrarListado();
                Notification n = new Notification("Usuario eliminado", Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            } catch (Exception e) {
            }
        }
    });

    return table;
}

From source file:tad.grupo7.ccamistadeslargas.LoginView.java

/**
 * Crea los campos del formulario.//from   w w  w .j  a  va 2  s  .  c o  m
 *
 * @return Component Devuelve el layout que contiene todos los campos del
 * formulario.
 */
private Component buildFields() {
    //LAYOUT CON LOS CAMPOS DEL FORMULARIO
    HorizontalLayout fields = new HorizontalLayout();
    fields.setSpacing(true);
    fields.addStyleName("fields");

    final TextField email = new TextField("Email");
    email.setRequired(true);
    email.setIcon(FontAwesome.USER);
    email.addStyleName(ValoTheme.TEXTFIELD_INLINE_ICON);
    email.focus();

    final PasswordField password = new PasswordField("Password");
    password.setRequired(true);
    password.setIcon(FontAwesome.LOCK);
    password.addStyleName(ValoTheme.TEXTFIELD_INLINE_ICON);

    final Button signin = new Button("Sign In");
    signin.addStyleName(ValoTheme.BUTTON_PRIMARY);
    signin.setClickShortcut(KeyCode.ENTER);

    final Button registrar = new Button("Sign Up");
    signin.addStyleName(ValoTheme.BUTTON_PRIMARY);

    fields.addComponents(email, password, signin, registrar);
    fields.setComponentAlignment(signin, Alignment.BOTTOM_LEFT);
    fields.setComponentAlignment(registrar, Alignment.BOTTOM_LEFT);

    //LOGARSE
    signin.addClickListener(new ClickListener() {
        @Override
        public void buttonClick(final ClickEvent event) {
            try {
                email.validate();
                password.validate();
                Usuario u = UsuarioDAO.read(email.getValue(), password.getValue());
                if (u != null) {
                    if (u.getEmail().equals("admin") && u.getPassword().equals("admin")) {
                        Session.setAttribute("usuario", u);
                        UI.getCurrent().getNavigator().navigateTo("AdminIndex");
                    } else {
                        Session.setAttribute("usuario", u);
                        UI.getCurrent().getNavigator().navigateTo("index");
                    }
                } else {
                    Notification n = new Notification("Usuario incorrecto", Notification.Type.WARNING_MESSAGE);
                    n.setPosition(Position.TOP_CENTER);
                    n.show(Page.getCurrent());
                }
            } catch (Validator.InvalidValueException ex) {
                Notification n = new Notification("Rellena todos los campos",
                        Notification.Type.WARNING_MESSAGE);
                n.setPosition(Position.TOP_CENTER);
                n.show(Page.getCurrent());
            }
        }
    });
    //IR AL FORMULARIO DE REGISTRARSE
    registrar.addClickListener(new ClickListener() {
        @Override
        public void buttonClick(final ClickEvent event) {
            UI.getCurrent().getNavigator().navigateTo("registrar");
        }
    });
    return fields;
}

From source file:tad.grupo7.ccamistadeslargas.PerfilLayout.java

private void mostrarPerfil() {
    //T?TULO/*from w  w  w  .j  av  a  2s  .c  om*/
    CssLayout labels = new CssLayout();
    labels.addStyleName("labels");
    Label l = new Label("Perfil");
    l.setSizeUndefined();
    l.addStyleName(ValoTheme.LABEL_H2);
    l.addStyleName(ValoTheme.LABEL_COLORED);
    //FORMULARIO
    TextField nombre = new TextField("Nombre");
    nombre.setValue(usuario.getNombre());
    nombre.setRequired(true);
    TextField password = new TextField("Password");
    password.setValue(usuario.getPassword());
    password.setRequired(true);
    TextField email = new TextField("Email");
    email.setValue(usuario.getEmail());
    email.setEnabled(false);
    Button actualizar = new Button("Actualizar");
    //BOTN ACTUALIZAR
    actualizar.addClickListener(clickEvent -> {
        UsuarioDAO.update(usuario.getId(), nombre.getValue(), password.getValue(), usuario.getEmail());
        Notification n = new Notification("Usuario actualizado", Notification.Type.ASSISTIVE_NOTIFICATION);
        n.setPosition(Position.TOP_CENTER);
        n.show(Page.getCurrent());
        usuario.setNombre(nombre.getValue());
        usuario.setPassword(password.getValue());
    });
    //AADIR COMPONENTES
    FormLayout form = new FormLayout(l, nombre, password, email, actualizar);
    form.setMargin(true);
    addComponents(form);
}

From source file:VaadinIRC.main.java

License:Open Source License

/**
 * Shows login panel for the user.//from  w  w  w .j a  va 2  s  .  co m
 */
private void showLoginPanel() {
    loginPanel = new Panel("Login");
    loginPanel.setWidth(250, Sizeable.UNITS_PIXELS);
    loginPanel.setHeight(200, Sizeable.UNITS_PIXELS);
    LoginForm login = new LoginForm();
    loginPanel.addComponent(login);
    window.addComponent(loginPanel);
    VerticalLayout windowLayout = (VerticalLayout) window.getLayout();
    windowLayout.setComponentAlignment(loginPanel, Alignment.MIDDLE_CENTER);

    login.addListener(new LoginListener() {
        public void onLogin(LoginEvent event) {
            String username = event.getLoginParameter("username");
            String password = event.getLoginParameter("password");
            if (username.equals(settings.AUTHENTICATION_USERNAME)
                    && password.equals(settings.AUTHENTICATION_PASSWORD)) {
                window.removeComponent(loginPanel);
                startMainApplication();
            } else {
                Notification notification = new Notification("Wrong username or password.",
                        Notification.TYPE_ERROR_MESSAGE);
                notification.setPosition(Notification.POSITION_BOTTOM_RIGHT);
                notification.setDelayMsec(250);
                window.showNotification(notification);
            }
        }
    });
}