List of usage examples for com.vaadin.ui VerticalLayout setSizeFull
@Override public void setSizeFull()
From source file:fr.univlorraine.mondossierweb.views.NotesMobileView.java
License:Apache License
public void refresh() { //On vrifie le droit d'accder la vue if (UI.getCurrent() instanceof MdwTouchkitUI && (userController.isEnseignant() || userController.isEtudiant()) && MdwTouchkitUI.getCurrent() != null && MdwTouchkitUI.getCurrent().getEtudiant() != null) { removeAllComponents();// w w w.j a va 2 s . c o m /* Style */ setMargin(false); setSpacing(false); setSizeFull(); //NAVBAR HorizontalLayout navbar = new HorizontalLayout(); navbar.setSizeFull(); navbar.setHeight("40px"); navbar.setStyleName("navigation-bar"); //Bouton retour if (userController.isEnseignant()) { returnButton = new Button(); returnButton.setIcon(FontAwesome.ARROW_LEFT); //returnButton.setStyleName(ValoTheme.BUTTON_ICON_ONLY); returnButton.setStyleName("v-nav-button"); returnButton.addClickListener(e -> { if (MdwTouchkitUI.getCurrent().getDossierEtuFromView() != null && MdwTouchkitUI.getCurrent() .getDossierEtuFromView().equals(ListeInscritsMobileView.NAME)) { MdwTouchkitUI.getCurrent().navigateToListeInscrits(); } if (MdwTouchkitUI.getCurrent().getDossierEtuFromView() != null && MdwTouchkitUI.getCurrent() .getDossierEtuFromView().equals(RechercheMobileView.NAME)) { MdwTouchkitUI.getCurrent().navigateToRecherche(null); } }); navbar.addComponent(returnButton); navbar.setComponentAlignment(returnButton, Alignment.MIDDLE_LEFT); } //Titre Label labelNavBar = new Label(MdwTouchkitUI.getCurrent().getEtudiant().getNom()); labelNavBar.setStyleName("v-label-navbar"); navbar.addComponent(labelNavBar); navbar.setComponentAlignment(labelNavBar, Alignment.MIDDLE_CENTER); navbar.setExpandRatio(labelNavBar, 1); //Significations if (MdwTouchkitUI.getCurrent().getEtudiant().isSignificationResultatsUtilisee()) { significationButton = new Button(); significationButton.setIcon(FontAwesome.INFO_CIRCLE); significationButton.setStyleName("v-nav-button"); significationButton.addClickListener(e -> { //afficher les significations SignificationsMobileWindow w = new SignificationsMobileWindow(false); UI.getCurrent().addWindow(w); }); navbar.addComponent(significationButton); navbar.setComponentAlignment(significationButton, Alignment.MIDDLE_RIGHT); } addComponent(navbar); VerticalLayout globalLayout = new VerticalLayout(); //globalLayout.setSizeFull(); globalLayout.setSpacing(true); globalLayout.setMargin(true); globalLayout.setStyleName("v-scrollableelement"); List<Diplome> ldiplomes = MdwTouchkitUI.getCurrent().getEtudiant().getDiplomes(); if (ldiplomes != null && ldiplomes.size() > 0) { Panel diplomesPanel = new Panel( applicationContext.getMessage(NAME + ".table.diplomes", null, getLocale())); diplomesPanel.setStyleName("centertitle-panel"); diplomesPanel.addStyleName("v-colored-panel-caption"); VerticalLayout diplomesLayout = new VerticalLayout(); for (Diplome diplome : ldiplomes) { Panel panelEnCours = null; panelEnCours = new Panel(diplome.getAnnee()); panelEnCours.setStyleName("v-panel-caption-centertitle-panel"); HorizontalLayout noteLayout = new HorizontalLayout(); noteLayout.setSizeFull(); noteLayout.setSpacing(true); VerticalLayout libelleLayout = new VerticalLayout(); libelleLayout.setSizeFull(); Label libelleButton = new Label(diplome.getLib_web_vdi()); libelleButton.setHeight("100%"); libelleButton.setWidth("100%"); libelleButton.addStyleName("label-centre"); //Appel de la window contenant le dtail des notes if (diplome.getResultats() != null && diplome.getResultats().size() > 0) { libelleLayout.addComponent(new Label("")); } libelleLayout.addComponent(libelleButton); libelleLayout.setComponentAlignment(libelleButton, Alignment.MIDDLE_CENTER); HorizontalLayout notesessionLayout = new HorizontalLayout(); notesessionLayout.setSizeFull(); notesessionLayout.setSpacing(true); if (diplome.getResultats() != null && diplome.getResultats().size() > 0) { int i = 0; for (Resultat r : diplome.getResultats()) { i++; VerticalLayout resultatLayout = new VerticalLayout(); resultatLayout.setSizeFull(); Label session = new Label(r.getSession()); session.setStyleName("label-bold-with-bottom"); resultatLayout.addComponent(session); Label note = new Label(r.getNote()); resultatLayout.addComponent(note); Label resultat = new Label(r.getAdmission()); resultatLayout.addComponent(resultat); //Si c'est la dernire session if (i == diplome.getResultats().size()) { //On affiche les infos en gras note.setStyleName(ValoTheme.LABEL_BOLD); resultat.setStyleName(ValoTheme.LABEL_BOLD); } notesessionLayout.addComponent(resultatLayout); } } else { Label resultat = new Label("Aucun rsultat"); resultat.setStyleName(ValoTheme.LABEL_SMALL); notesessionLayout.addComponent(resultat); } noteLayout.addComponent(libelleLayout); noteLayout.addComponent(notesessionLayout); panelEnCours.setContent(noteLayout); diplomesLayout.addComponent(panelEnCours); } diplomesPanel.setContent(diplomesLayout); globalLayout.addComponent(diplomesPanel); } List<Etape> letapes = MdwTouchkitUI.getCurrent().getEtudiant().getEtapes(); if (letapes != null && letapes.size() > 0) { Panel elpsPanel = new Panel( applicationContext.getMessage(NAME + ".table.etapes", null, getLocale())); elpsPanel.setStyleName("centertitle-panel"); elpsPanel.addStyleName("v-colored-panel-caption"); VerticalLayout elpsLayout = new VerticalLayout(); for (Etape etape : letapes) { Panel panelEnCours = null; panelEnCours = new Panel(etape.getAnnee()); panelEnCours.setStyleName("v-panel-caption-centertitle-panel"); HorizontalLayout noteLayout = new HorizontalLayout(); noteLayout.setSizeFull(); noteLayout.setSpacing(true); VerticalLayout libelleLayout = new VerticalLayout(); libelleLayout.setSizeFull(); Button libelleButton = new Button(etape.getLibelle()); Utils.setButtonStyle(libelleButton); libelleButton.setHeight("100%"); libelleButton.setWidth("100%"); //Appel de la window contenant le dtail des notes prepareBoutonAppelDetailDesNotes(libelleButton, etape); if (etape.getResultats() != null && etape.getResultats().size() > 0) { libelleLayout.addComponent(new Label("")); } libelleLayout.addComponent(libelleButton); libelleLayout.setComponentAlignment(libelleButton, Alignment.MIDDLE_CENTER); HorizontalLayout notesessionLayout = new HorizontalLayout(); notesessionLayout.setSizeFull(); notesessionLayout.setSpacing(true); if (etape.getResultats() != null && etape.getResultats().size() > 0) { int i = 0; for (Resultat r : etape.getResultats()) { i++; VerticalLayout resultatLayout = new VerticalLayout(); resultatLayout.setSizeFull(); Label session = new Label(r.getSession()); session.setStyleName("label-bold-with-bottom"); resultatLayout.addComponent(session); Label note = new Label(r.getNote()); resultatLayout.addComponent(note); Label resultat = new Label(r.getAdmission()); resultatLayout.addComponent(resultat); //Si c'est la dernire session if (i == etape.getResultats().size()) { //On affiche les infos en gras note.setStyleName(ValoTheme.LABEL_BOLD); resultat.setStyleName(ValoTheme.LABEL_BOLD); } notesessionLayout.addComponent(resultatLayout); } } else { Label resultat = new Label("Aucun rsultat"); resultat.setStyleName(ValoTheme.LABEL_SMALL); notesessionLayout.addComponent(resultat); } noteLayout.addComponent(libelleLayout); noteLayout.addComponent(notesessionLayout); panelEnCours.setContent(noteLayout); elpsLayout.addComponent(panelEnCours); } elpsPanel.setContent(elpsLayout); globalLayout.addComponent(elpsPanel); } addComponent(globalLayout); setExpandRatio(globalLayout, 1); } }
From source file:fr.univlorraine.mondossierweb.views.NotesView.java
License:Apache License
/** * Initialise la vue/*from w w w.j a v a 2 s . c o m*/ */ @PostConstruct public void init() { //On vrifie le droit d'accder la vue if (UI.getCurrent() instanceof MainUI && (userController.isEnseignant() || userController.isEtudiant()) && MainUI.getCurrent() != null && MainUI.getCurrent().getEtudiant() != null) { LOG.debug(userController.getCurrentUserName() + " NotesView"); removeAllComponents(); /* Style */ setMargin(true); setSpacing(true); //Test si user enseignant et en vue Enseignant if (userController.isEnseignant() && MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { //On recupere les notes pour un enseignant etudiantController.renseigneNotesEtResultatsVueEnseignant(MainUI.getCurrent().getEtudiant()); } else { //On rcupre les notes pour un tudiant etudiantController.renseigneNotesEtResultats(MainUI.getCurrent().getEtudiant()); } /* Titre */ HorizontalLayout titleLayout = new HorizontalLayout(); titleLayout.setWidth("100%"); Label title = new Label(applicationContext.getMessage(NAME + ".title", null, getLocale())); title.addStyleName(ValoTheme.LABEL_H1); titleLayout.addComponent(title); titleLayout.setComponentAlignment(title, Alignment.MIDDLE_LEFT); //Test si on a des diplomes ou des etapes if ((MainUI.getCurrent().getEtudiant().getDiplomes() != null && MainUI.getCurrent().getEtudiant().getDiplomes().size() > 0) || (MainUI.getCurrent().getEtudiant().getEtapes() != null && MainUI.getCurrent().getEtudiant().getEtapes().size() > 0)) { Button pdfButton = new Button(); pdfButton.setStyleName(ValoTheme.BUTTON_BORDERLESS_COLORED); pdfButton.addStyleName("button-big-icon"); pdfButton.addStyleName("red-button-icon"); pdfButton.setIcon(FontAwesome.FILE_PDF_O); pdfButton.setDescription( applicationContext.getMessage(NAME + ".btn.pdf.description", null, getLocale())); if (PropertyUtils.isPushEnabled()) { MyFileDownloader fd = new MyFileDownloader(noteController.exportPdfResume()); fd.extend(pdfButton); } else { FileDownloader fd = new FileDownloader(noteController.exportPdfResume()); fd.setOverrideContentType(false); fd.extend(pdfButton); } titleLayout.addComponent(pdfButton); titleLayout.setComponentAlignment(pdfButton, Alignment.MIDDLE_RIGHT); } addComponent(titleLayout); VerticalLayout globalLayout = new VerticalLayout(); globalLayout.setSizeFull(); globalLayout.setSpacing(true); //Test si user enseignant if (userController.isEnseignant()) { Panel panelVue = new Panel(); HorizontalLayout vueLayout = new HorizontalLayout(); vueLayout.setMargin(true); vueLayout.setSpacing(true); vueLayout.setSizeFull(); Button changerVueButton = new Button( applicationContext.getMessage(NAME + ".button.vueEnseignant", null, getLocale())); changerVueButton.setStyleName(ValoTheme.BUTTON_PRIMARY); if (MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { changerVueButton.setStyleName(ValoTheme.BUTTON_FRIENDLY); changerVueButton.setCaption( applicationContext.getMessage(NAME + ".button.vueEtudiant", null, getLocale())); } //On change la variable vueEnseignantNotesEtResultats et on recr la vue en cours changerVueButton.addClickListener(e -> { etudiantController.changerVueNotesEtResultats(); init(); }); Label vueLabel = new Label( applicationContext.getMessage(NAME + ".label.vueEtudiant", null, getLocale())); if (MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { vueLabel.setValue( applicationContext.getMessage(NAME + ".label.vueEnseignant", null, getLocale())); } vueLabel.setContentMode(ContentMode.HTML); vueLabel.setStyleName(ValoTheme.LABEL_SMALL); vueLayout.addComponent(changerVueButton); vueLayout.setComponentAlignment(changerVueButton, Alignment.MIDDLE_CENTER); vueLayout.addComponent(vueLabel); vueLayout.setExpandRatio(vueLabel, 1); panelVue.setContent(vueLayout); globalLayout.addComponent(panelVue); } Panel panelNotesDiplomes = new Panel( applicationContext.getMessage(NAME + ".table.diplomes", null, getLocale())); //panelNotesDiplomes.addStyleName("small-font-element"); Table notesDiplomesTable = new Table(null, new BeanItemContainer<>(Diplome.class, MainUI.getCurrent().getEtudiant().getDiplomes())); notesDiplomesTable.setWidth("100%"); notesDiplomesTable.setVisibleColumns((Object[]) DIPLOMES_FIELDS_ORDER); for (String fieldName : DIPLOMES_FIELDS_ORDER) { notesDiplomesTable.setColumnHeader(fieldName, applicationContext.getMessage(NAME + ".table.diplomes." + fieldName, null, getLocale())); } notesDiplomesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.diplomes.session", null, getLocale()), new SessionColumnGenerator()); notesDiplomesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.diplomes.note", null, getLocale()), new NoteColumnGenerator()); notesDiplomesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.diplomes.resultat", null, getLocale()), new ResultatColumnGenerator()); if (MainUI.getCurrent().getEtudiant().isAfficherRang()) { notesDiplomesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.diplomes.mention", null, getLocale()), new MentionColumnGenerator()); } if (configController.isAffMentionEtudiant()) { notesDiplomesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.diplomes.rang", null, getLocale()), new RangColumnGenerator()); } notesDiplomesTable.setColumnCollapsingAllowed(true); notesDiplomesTable.setColumnReorderingAllowed(false); notesDiplomesTable.setSelectable(false); notesDiplomesTable.setImmediate(true); notesDiplomesTable.setStyleName("noscrollabletable"); notesDiplomesTable.setPageLength(notesDiplomesTable.getItemIds().size()); panelNotesDiplomes.setContent(notesDiplomesTable); globalLayout.addComponent(panelNotesDiplomes); Panel panelNotesEtapes = new Panel( applicationContext.getMessage(NAME + ".table.etapes", null, getLocale())); //panelNotesEtapes.addStyleName("small-font-element"); Table notesEtapesTable = new Table(null, new BeanItemContainer<>(Etape.class, MainUI.getCurrent().getEtudiant().getEtapes())); notesEtapesTable.setWidth("100%"); notesEtapesTable.setVisibleColumns((Object[]) ETAPES_FIELDS_ORDER); for (String fieldName : ETAPES_FIELDS_ORDER) { notesEtapesTable.setColumnHeader(fieldName, applicationContext.getMessage(NAME + ".table.etapes." + fieldName, null, getLocale())); } notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.codevers", null, getLocale()), new CodeEtapeColumnGenerator()); notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.libelle", null, getLocale()), new LibelleEtapeColumnGenerator()); notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.session", null, getLocale()), new SessionColumnGenerator()); notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.note", null, getLocale()), new NoteColumnGenerator()); notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.resultat", null, getLocale()), new ResultatColumnGenerator()); if (MainUI.getCurrent().getEtudiant().isAfficherRang()) { notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.mention", null, getLocale()), new MentionColumnGenerator()); } if (configController.isAffMentionEtudiant()) { notesEtapesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.etapes.rang", null, getLocale()), new RangColumnGenerator()); } notesEtapesTable.setColumnCollapsingAllowed(true); notesEtapesTable.setColumnReorderingAllowed(false); notesEtapesTable.setSelectable(false); notesEtapesTable.setImmediate(true); notesEtapesTable.setStyleName("noscrollabletable"); notesEtapesTable.setPageLength(notesEtapesTable.getItemIds().size()); panelNotesEtapes.setContent(notesEtapesTable); globalLayout.addComponent(panelNotesEtapes); if (MainUI.getCurrent().getEtudiant().isSignificationResultatsUtilisee()) { Panel panelSignificationResultats = new Panel( applicationContext.getMessage(NAME + ".info.significations.resultats", null, getLocale())); panelSignificationResultats.addStyleName("significationpanel"); panelSignificationResultats.setIcon(FontAwesome.INFO_CIRCLE); VerticalLayout significationLayout = new VerticalLayout(); significationLayout.setMargin(true); significationLayout.setSpacing(true); String grilleSignficationResultats = ""; //grilleSignficationResultats = significationResultats.toString().substring(1,significationResultats.toString().length()-1); Set<String> ss = MainUI.getCurrent().getEtudiant().getSignificationResultats().keySet(); for (String k : ss) { if (k != null && !k.equals("") && !k.equals(" ")) { grilleSignficationResultats = grilleSignficationResultats + "<b>" + k + "</b> : " + MainUI.getCurrent().getEtudiant().getSignificationResultats().get(k); grilleSignficationResultats = grilleSignficationResultats + "   "; } } Label mapSignificationLabel = new Label(grilleSignficationResultats); mapSignificationLabel.setContentMode(ContentMode.HTML); mapSignificationLabel.setStyleName(ValoTheme.LABEL_SMALL); significationLayout.addComponent(mapSignificationLabel); panelSignificationResultats.setContent(significationLayout); globalLayout.addComponent(panelSignificationResultats); } addComponent(globalLayout); } }
From source file:fr.univlorraine.mondossierweb.views.RechercheArborescenteView.java
License:Apache License
/** * Initialise la vue/* ww w. j a v a2 s .c o m*/ */ @PostConstruct public void init() { //On vrifie le droit d'accder la vue if (userController.isEnseignant()) { /* Style */ setMargin(false); setSpacing(false); setSizeFull(); if (listeBoutonFavoris != null) { listeBoutonFavoris.clear(); } else { listeBoutonFavoris = new LinkedList<ReferencedButton>(); } liste_types_favoris = new LinkedList<String>(); liste_types_favoris.add(Utils.CMP); liste_types_favoris.add(Utils.ELP); liste_types_favoris.add(Utils.VET); liste_types_inscrits = new LinkedList<String>(); liste_types_inscrits.add(Utils.ELP); liste_types_inscrits.add(Utils.VET); liste_types_deplier = new LinkedList<String>(); liste_types_deplier.add(Utils.ELP); liste_types_deplier.add(Utils.VET); recuperationDesfavoris(); HorizontalLayout btnLayout = new HorizontalLayout(); btnLayout.setMargin(false); btnLayout.setSpacing(false); btnLayout.setWidth("100%"); comboBoxAnneeUniv = new ComboBox(applicationContext.getMessage(NAME + ".anneeuniv", null, getLocale())); comboBoxAnneeUniv.setPageLength(5); comboBoxAnneeUniv.setTextInputAllowed(false); comboBoxAnneeUniv.setNullSelectionAllowed(false); //Initialisation de la liste des annes List<String> lanneeUniv = rechercheArborescenteController.recupererLesDernieresAnneeUniversitaire(); if (lanneeUniv != null && lanneeUniv.size() > 0) { for (String anneeUniv : lanneeUniv) { comboBoxAnneeUniv.addItem(anneeUniv); int anneenplusun = Integer.parseInt(anneeUniv) + 1; comboBoxAnneeUniv.setItemCaption(anneeUniv, anneeUniv + "/" + anneenplusun); } if (annee == null) { annee = etudiantController.getAnneeUnivEnCours(MainUI.getCurrent()); //annee = lanneeUniv.get(0); } } comboBoxAnneeUniv.setValue(annee); comboBoxAnneeUniv.setStyleName(ValoTheme.COMBOBOX_SMALL); comboBoxAnneeUniv.addValueChangeListener(e -> changerAnnee((String) comboBoxAnneeUniv.getValue())); reinitButton = new Button(); reinitButton.setDescription( applicationContext.getMessage(NAME + ".reinitbutton.description", null, getLocale())); reinitButton.addClickListener(e -> { initFromScratch(); }); reinitButton.setStyleName(ValoTheme.BUTTON_DANGER); reinitButton.setIcon(FontAwesome.TIMES); if (!StringUtils.hasText(code)) { reinitButton.setVisible(false); } labelLigneSelectionneeLabel = new Label(); labelLigneSelectionneeLabel .setValue(applicationContext.getMessage(NAME + ".ligneselectionnee", null, getLocale())); labelLigneSelectionneeLabel.addStyleName("label-align-right"); labelLigneSelectionneeLabel.setVisible(false); HorizontalLayout btnLeftLayout = new HorizontalLayout(); btnLeftLayout.setWidth("100%"); btnLeftLayout.setMargin(true); btnLeftLayout.addComponent(comboBoxAnneeUniv); btnLeftLayout.setComponentAlignment(comboBoxAnneeUniv, Alignment.MIDDLE_LEFT); /*btnLeftLayout.addComponent(reinitButton); btnLeftLayout.setComponentAlignment(reinitButton, Alignment.BOTTOM_RIGHT);*/ btnLeftLayout.addComponent(labelLigneSelectionneeLabel); btnLeftLayout.setComponentAlignment(labelLigneSelectionneeLabel, Alignment.MIDDLE_CENTER); btnLayout.addComponent(btnLeftLayout); ligneSelectionneeLabel = new Label(); //ligneSelectionneeLabel.setCaption(applicationContext.getMessage(NAME+".ligneselectionnee", null, getLocale())); ligneSelectionneeLabel.setVisible(false); elpLayout = new FormLayout(); elpLayout.setMargin(false); vetElpSelectionneLabel = new Label(); vetElpSelectionneLabel.setVisible(false); elpLayout.addComponent(vetElpSelectionneLabel); elpLayout.setVisible(false); VerticalLayout ligneLayout = new VerticalLayout(); ligneLayout.addComponent(ligneSelectionneeLabel); ligneLayout.addComponent(elpLayout); HorizontalLayout rightLayout = new HorizontalLayout(); rightLayout.setSizeFull(); rightLayout.setSpacing(true); rightLayout.setMargin(true); rightLayout.addComponent(ligneLayout); rightLayout.setComponentAlignment(ligneLayout, Alignment.MIDDLE_LEFT); rightLayout.addComponent(reinitButton); rightLayout.setComponentAlignment(reinitButton, Alignment.MIDDLE_RIGHT); rightLayout.setExpandRatio(ligneLayout, 1); btnLayout.addComponent(rightLayout); btnLayout.setComponentAlignment(rightLayout, Alignment.MIDDLE_LEFT); addComponent(btnLayout); if (code != null && type != null) { Label elementRecherche = new Label(code + " " + type); elementRecherche.addStyleName(ValoTheme.LABEL_H1); //addComponent(elementRecherche); } table = new TreeTable(); table.setSizeFull(); table.setStyleName("scrollabletable"); table.setSelectable(true); initComposantes(); //gestion du style pour les lignes en favori table.setCellStyleGenerator(new CellStyleGenerator() { @Override public String getStyle(final Table source, final Object itemId, final Object propertyId) { String style = null; if (propertyId == null && markedRows.contains(itemId)) { style = "marked"; } return style; } }); table.addItemClickListener(new ItemClickListener() { @Override public void itemClick(ItemClickEvent event) { selectionnerLigne(event.getItemId()); } }); //gestion du clic sur la fleche pour dplier une entre table.addExpandListener(new ExpandListener() { private static final long serialVersionUID = 8532342540008245348L; @Override public void nodeExpand(ExpandEvent event) { if (event != null && event.getItemId() != null && hc != null && hc.getItem(event.getItemId()) != null && hc.getItem(event.getItemId()).getItemProperty(TYPE_PROPERTY) != null) { selectionnerLigne(event.getItemId()); deplierNoeud((String) event.getItemId(), true); } } }); VerticalLayout tableVerticalLayout = new VerticalLayout(); tableVerticalLayout.setMargin(new MarginInfo(false, true, true, true)); tableVerticalLayout.setSizeFull(); tableVerticalLayout.addComponent(table); tableVerticalLayout.setExpandRatio(table, 1); addComponent(tableVerticalLayout); setExpandRatio(tableVerticalLayout, 1); } }
From source file:fr.univlorraine.mondossierweb.views.RechercheMobileView.java
License:Apache License
/** * Initialise la vue/*from w w w. j a va 2s . com*/ */ @PostConstruct public void init() { //On vrifie le droit d'accder la vue if (UI.getCurrent() instanceof MdwTouchkitUI && userController.isEnseignant()) { // On rinitialise la vue removeAllComponents(); // Style setSizeFull(); addStyleName("v-noscrollableelement"); //NAVBAR HorizontalLayout navbar = new HorizontalLayout(); navbar.setSizeFull(); navbar.setHeight("40px"); navbar.setStyleName("navigation-bar"); //Bouton retour returnButton = new Button(); returnButton.setIcon(FontAwesome.ARROW_LEFT); returnButton.setStyleName("v-nav-button"); returnButton.addClickListener(e -> { MdwTouchkitUI.getCurrent().backFromSearch(); }); navbar.addComponent(returnButton); navbar.setComponentAlignment(returnButton, Alignment.MIDDLE_LEFT); //Title Label labelTrombi = new Label(applicationContext.getMessage(NAME + ".title.label", null, getLocale())); labelTrombi.setStyleName("v-label-navbar"); navbar.addComponent(labelTrombi); navbar.setComponentAlignment(labelTrombi, Alignment.MIDDLE_CENTER); navbar.setExpandRatio(labelTrombi, 1); addComponent(navbar); //BOUTON DE RECHERCHE btnRecherche = new Button(); btnRecherche.setIcon(FontAwesome.SEARCH); btnRecherche.setStyleName(ValoTheme.BUTTON_PRIMARY); btnRecherche.addStyleName("v-popover-button"); btnRecherche.addStyleName("v-button-without-padding"); btnRecherche.setEnabled(true); btnRecherche.addClickListener(e -> search(false)); //CHAMP DE RECHERCHE champRechercheLayout = new HorizontalLayout(); champRechercheLayout.setWidth("100%"); mainVerticalLayout = new VerticalLayout(); mainVerticalLayout.setImmediate(true); mainVerticalLayout.setSizeFull(); //Init connexion ES, pour gain perf au premiere lettre tapes if (ElasticSearchService.initConnexion(true)) { //Cration du champ autoComplete champRecherche = new AutoComplete(); champRecherche.setWidth(100, Unit.PERCENTAGE); champRecherche.setEnabled(true); champRecherche.setImmediate(true); champRecherche.focus(); champRecherche.setTextChangeEventMode(TextChangeEventMode.EAGER); champRecherche.addTextChangeListener(new TextChangeListener() { @Override public void textChange(TextChangeEvent event) { /*if(event.getText()!=null){ resetButton.setIcon(FontAwesome.TIMES); }*/ champRecherche.showChoices(quickSearch(event.getText()), mainVerticalLayout, btnRecherche, true); } }); champRecherche.setImmediate(true); champRecherche.addShortcutListener( new ShortcutListener("Enter Shortcut", ShortcutAction.KeyCode.ENTER, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { //Si on tait sur une ligne propose sous le champ de recherche if (champRecherche.getSelectedItem() > 0) { //On remplie d'abord le champ avec la ligne slectionne champRecherche.setValue(champRecherche.getChoices() .getItem(champRecherche.getSelectedItem()).getItemProperty("lib") .getValue().toString()); } search(false); } } }); champRecherche.addShortcutListener( new ShortcutListener("Bottom Arrow", ShortcutAction.KeyCode.ARROW_DOWN, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { if (champRecherche.getChoices().getItemIds() != null) { champRecherche.getChoicesPopup().setVisible(true); champRecherche.getChoices().setValue(champRecherche.getNextItem()); } } } }); champRecherche.addShortcutListener( new ShortcutListener("Top Arrow", ShortcutAction.KeyCode.ARROW_UP, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { if (champRecherche.getChoices().getItemIds() != null) { champRecherche.getChoicesPopup().setVisible(true); Integer champSelectionne = champRecherche.getPreviousItem(); if (champSelectionne > 0) { champRecherche.getChoices().setValue(champSelectionne); } else { champRecherche.getChoices().setValue(null); } } } } }); champRechercheLayout.addComponent(champRecherche); champRechercheLayout.setComponentAlignment(champRecherche, Alignment.MIDDLE_LEFT); //BOUTON RESET champRecherche.addStyleName("textfield-resetable"); resetButton = new Button(); resetButton.setIcon(FontAwesome.TIMES); resetButton.setStyleName(ValoTheme.BUTTON_BORDERLESS); resetButton.addStyleName("v-popover-button"); resetButton.addStyleName("v-button-without-padding"); resetButton.addStyleName("btn-reset"); resetButton.addClickListener(e -> { champRecherche.setValue(""); //search1.setValue(""); resetButton.setIcon(FontAwesome.TIMES); champRecherche.focus(); }); champRechercheLayout.addComponent(resetButton); champRechercheLayout.setComponentAlignment(resetButton, Alignment.MIDDLE_LEFT); //Ajout du bouton de recherche au layout champRechercheLayout.addComponent(btnRecherche); mainVerticalLayout.addComponent(champRechercheLayout); mainVerticalLayout.setComponentAlignment(champRechercheLayout, Alignment.MIDDLE_LEFT); champRechercheLayout.setMargin(true); champRechercheLayout.setExpandRatio(champRecherche, 1); HorizontalLayout checkBoxVetLayout = new HorizontalLayout(); Label etapeLabel = new Label( applicationContext.getMessage(NAME + ".etapes.checkbox", null, getLocale())); etapeLabel.setStyleName(ValoTheme.LABEL_SMALL); checkBoxVetLayout.addComponent(etapeLabel); HorizontalLayout checkBoxElpLayout = new HorizontalLayout(); Label elpLabel = new Label( applicationContext.getMessage(NAME + ".elps.checkbox", null, getLocale())); elpLabel.setStyleName(ValoTheme.LABEL_SMALL); checkBoxElpLayout.addComponent(elpLabel); HorizontalLayout checkBoxEtuLayout = new HorizontalLayout(); Label etuLabel = new Label( applicationContext.getMessage(NAME + ".etudiants.checkbox", null, getLocale())); etuLabel.setStyleName(ValoTheme.LABEL_SMALL); checkBoxEtuLayout.addComponent(etuLabel); checkBoxVetLayout.setSizeFull(); checkBoxElpLayout.setSizeFull(); checkBoxEtuLayout.setSizeFull(); if (casesAcocherVet) { checkBoxVetLayout.setStyleName("layout-checkbox-checked"); etapeLabel.setStyleName(ValoTheme.LABEL_SMALL); } else { checkBoxVetLayout.setStyleName("layout-checkbox-unchecked"); etapeLabel.addStyleName("label-line-through"); } if (casesAcocherElp) { checkBoxElpLayout.setStyleName("layout-checkbox-checked"); elpLabel.setStyleName(ValoTheme.LABEL_SMALL); } else { checkBoxElpLayout.setStyleName("layout-checkbox-unchecked"); elpLabel.addStyleName("label-line-through"); } if (casesAcocherEtudiant) { checkBoxEtuLayout.setStyleName("layout-checkbox-checked"); etuLabel.setStyleName(ValoTheme.LABEL_SMALL); } else { checkBoxEtuLayout.setStyleName("layout-checkbox-unchecked"); etuLabel.addStyleName("label-line-through"); } checkBoxVetLayout.addListener(new LayoutClickListener() { public void layoutClick(LayoutClickEvent event) { if (casesAcocherVet) { casesAcocherVet = false; checkBoxVetLayout.setStyleName("layout-checkbox-unchecked"); etapeLabel.addStyleName("label-line-through"); } else { casesAcocherVet = true; checkBoxVetLayout.setStyleName("layout-checkbox-checked"); etapeLabel.setStyleName(ValoTheme.LABEL_SMALL); } tuneSearch(); } }); checkBoxElpLayout.addListener(new LayoutClickListener() { public void layoutClick(LayoutClickEvent event) { if (casesAcocherElp) { casesAcocherElp = false; checkBoxElpLayout.setStyleName("layout-checkbox-unchecked"); elpLabel.addStyleName("label-line-through"); } else { casesAcocherElp = true; checkBoxElpLayout.setStyleName("layout-checkbox-checked"); elpLabel.setStyleName(ValoTheme.LABEL_SMALL); } tuneSearch(); } }); checkBoxEtuLayout.addListener(new LayoutClickListener() { public void layoutClick(LayoutClickEvent event) { if (casesAcocherEtudiant) { casesAcocherEtudiant = false; checkBoxEtuLayout.setStyleName("layout-checkbox-unchecked"); etuLabel.addStyleName("label-line-through"); } else { casesAcocherEtudiant = true; checkBoxEtuLayout.setStyleName("layout-checkbox-checked"); etuLabel.setStyleName(ValoTheme.LABEL_SMALL); } tuneSearch(); } }); HorizontalLayout checkBoxLayout = new HorizontalLayout(); checkBoxLayout.setWidth("100%"); checkBoxLayout.setHeight("50px"); checkBoxLayout.setMargin(true); checkBoxLayout.setSpacing(true); checkBoxLayout.addComponent(checkBoxVetLayout); checkBoxLayout.addComponent(checkBoxElpLayout); checkBoxLayout.addComponent(checkBoxEtuLayout); mainVerticalLayout.addComponent(checkBoxLayout); //TABLE DE RESULTATS rrContainer = new HierarchicalContainer(); rrContainer.addContainerProperty("lib", String.class, ""); rrContainer.addContainerProperty("code", String.class, ""); rrContainer.addContainerProperty("type", String.class, ""); tableResultats = new TreeTable(); tableResultats.setWidth("100%"); tableResultats.setSelectable(false); tableResultats.setMultiSelect(false); tableResultats.setImmediate(true); columnHeaders = new String[FIELDS_ORDER.length]; for (int fieldIndex = 0; fieldIndex < FIELDS_ORDER.length; fieldIndex++) { columnHeaders[fieldIndex] = applicationContext .getMessage("result.table." + FIELDS_ORDER[fieldIndex], null, Locale.getDefault()); } tableResultats.addGeneratedColumn("type", new DisplayTypeColumnGenerator()); tableResultats.addGeneratedColumn("lib", new DisplayNameColumnGenerator()); tableResultats.setContainerDataSource(rrContainer); tableResultats.setVisibleColumns(FIELDS_ORDER); tableResultats.setStyleName("nohscrollabletable"); tableResultats.setColumnHeaders(columnHeaders); tableResultats.setColumnHeaderMode(Table.ColumnHeaderMode.HIDDEN); tableResultats.setColumnWidth("type", 100); /*mainVerticalLayout.addComponent(searchBoxFilter); mainVerticalLayout.setComponentAlignment(searchBoxFilter, Alignment.MIDDLE_RIGHT);*/ VerticalLayout tableVerticalLayout = new VerticalLayout(); tableVerticalLayout.setMargin(true); tableVerticalLayout.setSizeFull(); tableVerticalLayout.addComponent(tableResultats); mainVerticalLayout.addComponent(tableVerticalLayout); mainVerticalLayout.setExpandRatio(tableVerticalLayout, 1); tableResultats.setVisible(false); addComponent(mainVerticalLayout); setExpandRatio(mainVerticalLayout, 1); } else { //Message fonctionnalit indisponible addComponent( new Label(applicationContext.getMessage(NAME + ".indisponible.message", null, getLocale()), ContentMode.HTML)); } } }
From source file:fr.univlorraine.mondossierweb.views.RechercheRapideView.java
License:Apache License
/** * Initialise la vue/*w ww. ja v a2 s . c o m*/ */ @PostConstruct public void init() { //On vrifie le droit d'accder la vue if (userController.isEnseignant()) { /* Style */ setMargin(true); setSpacing(true); mainVerticalLayout = new VerticalLayout(); champRechercheLayout = new HorizontalLayout(); mainVerticalLayout.setImmediate(true); mainVerticalLayout.setSizeFull(); //BOUTON DE RECHERCHE btnRecherche = new Button( applicationContext.getMessage("buttonChercher.label", null, Locale.getDefault())); btnRecherche.setIcon(FontAwesome.SEARCH); btnRecherche.setEnabled(true); btnRecherche.addClickListener(e -> search(false)); //Init connexion ES, pour gain perf au premiere lettre tapes if (ElasticSearchService.initConnexion(true)) { //CHAMP DE RECHERCHE champRecherche = new AutoComplete(); champRecherche.setWidth(700, Unit.PIXELS); //540 champRecherche.setEnabled(true); champRecherche.setImmediate(true); champRecherche.focus(); champRecherche.setTextChangeEventMode(TextChangeEventMode.EAGER); champRecherche.addTextChangeListener(new TextChangeListener() { @Override public void textChange(TextChangeEvent event) { if (event.getText() != null) { resetButton.setIcon(FontAwesome.TIMES); } champRecherche.showChoices(quickSearch(event.getText()), mainVerticalLayout, btnRecherche, false); } }); champRecherche.setImmediate(true); champRecherche.addShortcutListener( new ShortcutListener("Enter Shortcut", ShortcutAction.KeyCode.ENTER, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { //Si on tait sur une ligne propose sous le champ de recherche if (champRecherche.getSelectedItem() > 0) { //On remplie d'abord le champ avec la ligne slectionne champRecherche.setValue(champRecherche.getChoices() .getItem(champRecherche.getSelectedItem()).getItemProperty("lib") .getValue().toString()); } search(false); } } }); champRecherche.addShortcutListener( new ShortcutListener("Bottom Arrow", ShortcutAction.KeyCode.ARROW_DOWN, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { if (champRecherche != null && champRecherche.getChoices() != null && champRecherche.getChoices().getItemIds() != null) { champRecherche.getChoicesPopup().setVisible(true); champRecherche.getChoices().setValue(champRecherche.getNextItem()); } } } }); champRecherche.addShortcutListener( new ShortcutListener("Top Arrow", ShortcutAction.KeyCode.ARROW_UP, null) { @Override public void handleAction(Object sender, Object target) { if (target == champRecherche) { if (champRecherche.getChoices().getItemIds() != null) { champRecherche.getChoicesPopup().setVisible(true); Integer champSelectionne = champRecherche.getPreviousItem(); if (champSelectionne > 0) { champRecherche.getChoices().setValue(champSelectionne); } else { champRecherche.getChoices().setValue(null); } } } } }); //champRecherche.addBlurListener(e -> champRecherche.getChoicesPopup().setVisible(false)); HorizontalLayout layoutBordure = new HorizontalLayout(); layoutBordure.setWidth("100px"); champRechercheLayout.addComponent(layoutBordure); champRechercheLayout.setComponentAlignment(layoutBordure, Alignment.MIDDLE_LEFT); /*champRechercheLayout.addComponent(search1); champRechercheLayout.setComponentAlignment(search1, Alignment.MIDDLE_LEFT);*/ champRechercheLayout.addComponent(champRecherche); champRechercheLayout.setComponentAlignment(champRecherche, Alignment.MIDDLE_LEFT); //BOUTON RESET champRecherche.addStyleName("textfield-resetable"); resetButton = new Button(); resetButton.setIcon(FontAwesome.TIMES); resetButton.setStyleName(ValoTheme.BUTTON_BORDERLESS); resetButton.addStyleName("btn-reset"); resetButton.addClickListener(e -> { champRecherche.setValue(""); //search1.setValue(""); resetButton.setIcon(FontAwesome.TIMES); champRecherche.focus(); }); champRechercheLayout.addComponent(resetButton); champRechercheLayout.setComponentAlignment(resetButton, Alignment.MIDDLE_LEFT); //Ajout du bouton de recherche au layout champRechercheLayout.addComponent(btnRecherche); mainVerticalLayout.addComponent(champRechercheLayout); mainVerticalLayout.setComponentAlignment(champRechercheLayout, Alignment.MIDDLE_LEFT); champRechercheLayout.setMargin(true); casesAcocherComposantes = new CheckBox("Composantes"); casesAcocherComposantes.setValue(true); casesAcocherComposantes.setStyleName(ValoTheme.CHECKBOX_SMALL); casesAcocherComposantes.addValueChangeListener(e -> tuneSearch()); casesAcocherVet = new CheckBox("Etapes"); casesAcocherVet.setValue(true); casesAcocherVet.setStyleName(ValoTheme.CHECKBOX_SMALL); casesAcocherVet.addValueChangeListener(e -> tuneSearch()); casesAcocherElp = new CheckBox("Elments pdagogiques"); casesAcocherElp.setValue(true); casesAcocherElp.setStyleName(ValoTheme.CHECKBOX_SMALL); casesAcocherElp.addValueChangeListener(e -> tuneSearch()); casesAcocherEtudiant = new CheckBox("Etudiants"); casesAcocherEtudiant.setValue(true); casesAcocherEtudiant.setStyleName(ValoTheme.CHECKBOX_SMALL); casesAcocherEtudiant.addValueChangeListener(e -> tuneSearch()); HorizontalLayout checkBoxLayout = new HorizontalLayout(); checkBoxLayout.setMargin(true); checkBoxLayout.setSpacing(true); checkBoxLayout.addComponent(casesAcocherComposantes); checkBoxLayout.addComponent(casesAcocherVet); checkBoxLayout.addComponent(casesAcocherElp); checkBoxLayout.addComponent(casesAcocherEtudiant); mainVerticalLayout.addComponent(checkBoxLayout); //TABLE DE RESULTATS rrContainer = new HierarchicalContainer(); rrContainer.addContainerProperty("lib", String.class, ""); rrContainer.addContainerProperty("code", String.class, ""); rrContainer.addContainerProperty("info", String.class, ""); rrContainer.addContainerProperty("type", String.class, ""); tableResultats = new TreeTable(); tableResultats.setSizeFull(); tableResultats.setSelectable(false); tableResultats.setMultiSelect(false); tableResultats.setImmediate(true); columnHeaders = new String[FIELDS_ORDER.length]; for (int fieldIndex = 0; fieldIndex < FIELDS_ORDER.length; fieldIndex++) { columnHeaders[fieldIndex] = applicationContext .getMessage("result.table." + FIELDS_ORDER[fieldIndex], null, Locale.getDefault()); } tableResultats.addGeneratedColumn("lib", new DisplayNameColumnGenerator()); tableResultats.addGeneratedColumn("type", new DisplayTypeColumnGenerator()); tableResultats.setContainerDataSource(rrContainer); tableResultats.setVisibleColumns(FIELDS_ORDER); tableResultats.setColumnHeaders(columnHeaders); /*mainVerticalLayout.addComponent(searchBoxFilter); mainVerticalLayout.setComponentAlignment(searchBoxFilter, Alignment.MIDDLE_RIGHT);*/ VerticalLayout tableVerticalLayout = new VerticalLayout(); tableVerticalLayout.setMargin(new MarginInfo(false, true, true, true)); tableVerticalLayout.setSizeFull(); tableVerticalLayout.addComponent(tableResultats); mainVerticalLayout.addComponent(tableVerticalLayout); mainVerticalLayout.setExpandRatio(tableVerticalLayout, 1); tableResultats.setVisible(false); addComponent(mainVerticalLayout); setSizeFull(); } else { //Message fonctionnalit indisponible addComponent( new Label(applicationContext.getMessage(NAME + ".indisponible.message", null, getLocale()), ContentMode.HTML)); } } }
From source file:fr.univlorraine.mondossierweb.views.windows.DetailGroupesWindow.java
License:Apache License
private void init() { /* Style */// w ww. jav a 2s . co m setWidth(80, Unit.PERCENTAGE); setHeight(95, Unit.PERCENTAGE); setModal(true); setResizable(false); /* Layout */ VerticalLayout layout = new VerticalLayout(); layout.setSizeFull(); layout.setMargin(true); layout.setSpacing(true); /* Titre */ setCaption(applicationContext.getMessage(NAME + ".title", null, getLocale())); //Sous titre avec l'anne HorizontalLayout titleLayout = new HorizontalLayout(); titleLayout.setSizeFull(); titleLayout.setHeight("20px"); Label labelAnneeUniv = new Label(); labelAnneeUniv.setValue(applicationContext.getMessage(NAME + ".label.anneeuniv", null, getLocale()) + " <b>" + annee + "</b>"); labelAnneeUniv.setContentMode(ContentMode.HTML); titleLayout.addComponent(labelAnneeUniv); titleLayout.setComponentAlignment(labelAnneeUniv, Alignment.MIDDLE_LEFT); if (StringUtils.hasText(vetLibelle)) { Label labelEtape = new Label(); labelEtape.setValue(applicationContext.getMessage(NAME + ".label.vet", null, getLocale()) + " : <b>" + vetLibelle + "</b>"); labelEtape.setContentMode(ContentMode.HTML); titleLayout.addComponent(labelEtape); titleLayout.setComponentAlignment(labelEtape, Alignment.MIDDLE_RIGHT); } layout.addComponent(titleLayout); Panel panelDetailGroupes = new Panel(elpLibelle); panelDetailGroupes.setSizeFull(); if (lgroupes != null && lgroupes.size() > 0) { TreeTable detailGroupesTable = new TreeTable(); detailGroupesTable.setSizeFull(); HierarchicalContainer hc = new HierarchicalContainer(); hc.addContainerProperty(ID_PROPERTY, String.class, ""); hc.addContainerProperty(CODE_COLLECTION_PROPERTY, String.class, ""); hc.addContainerProperty(CODE_GROUPE_PROPERTY, String.class, ""); hc.addContainerProperty(LIBELLE_GROUPE_PROPERTY, String.class, ""); hc.addContainerProperty(CAP_MAX_PROPERTY, String.class, ""); hc.addContainerProperty(CAP_INT_PROPERTY, String.class, ""); hc.addContainerProperty(NB_INSCRITS_PROPERTY, String.class, ""); detailGroupesTable.setContainerDataSource(hc); int id = 0; for (ElpDeCollection edc : lgroupes) { id++; for (CollectionDeGroupes cdg : edc.getListeCollection()) { id++; ObjetBaseCollectionGroupe obj = new ObjetBaseCollectionGroupe(); obj.setId("" + id); obj.setCod_coll(cdg.getCodCollection()); obj.setCap_max(""); obj.setCap_int(""); obj.setNb_inscrits(""); Item itemCollection = hc.addItem(obj.getId()); renseignerItem(itemCollection, obj); for (Groupe gpe : cdg.getListeGroupes()) { id++; ObjetBaseCollectionGroupe objgpe = new ObjetBaseCollectionGroupe(); objgpe.setId("" + id); objgpe.setCod_gpe(gpe.getCodGroupe()); objgpe.setLib_gpe(gpe.getLibGroupe()); objgpe.setCap_max("" + gpe.getCapMaxGpe()); objgpe.setCap_int("" + gpe.getCapIntGpe()); objgpe.setNb_inscrits("" + gpe.getNbInscrits()); Item i = hc.addItem(objgpe.getId()); renseignerItem(i, objgpe); detailGroupesTable.setParent(objgpe.getId(), obj.getId()); detailGroupesTable.setChildrenAllowed(objgpe.getId(), false); } detailGroupesTable.setCollapsed(obj.getId(), false); } } detailGroupesTable.addContainerProperty(ID_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(CODE_COLLECTION_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(CODE_GROUPE_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(LIBELLE_GROUPE_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(CAP_MAX_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(CAP_INT_PROPERTY, String.class, ""); detailGroupesTable.addContainerProperty(NB_INSCRITS_PROPERTY, String.class, ""); detailGroupesTable.setVisibleColumns(DETAIL_FIELDS_ORDER); detailGroupesTable.setColumnHeader(CODE_COLLECTION_PROPERTY, applicationContext.getMessage(NAME + ".table.codecollection", null, getLocale())); detailGroupesTable.setColumnHeader(CODE_GROUPE_PROPERTY, applicationContext.getMessage(NAME + ".table.codegroupe", null, getLocale())); detailGroupesTable.setColumnHeader(LIBELLE_GROUPE_PROPERTY, applicationContext.getMessage(NAME + ".table.libgroupe", null, getLocale())); detailGroupesTable.setColumnHeader(CAP_MAX_PROPERTY, applicationContext.getMessage(NAME + ".table.capmax", null, getLocale())); detailGroupesTable.setColumnHeader(CAP_INT_PROPERTY, applicationContext.getMessage(NAME + ".table.capint", null, getLocale())); detailGroupesTable.setColumnHeader(NB_INSCRITS_PROPERTY, applicationContext.getMessage(NAME + ".table.nbinscrits", null, getLocale())); detailGroupesTable.setColumnCollapsingAllowed(true); detailGroupesTable.setColumnReorderingAllowed(false); detailGroupesTable.setSelectable(false); detailGroupesTable.setImmediate(true); detailGroupesTable.addStyleName("scrollabletable"); panelDetailGroupes.setContent(detailGroupesTable); } layout.addComponent(panelDetailGroupes); Panel panelCollectionInfo = new Panel( applicationContext.getMessage(NAME + ".info.title", null, getLocale())); panelCollectionInfo.setIcon(FontAwesome.INFO_CIRCLE); panelCollectionInfo.addStyleName("significationpanel"); VerticalLayout significationLayout = new VerticalLayout(); significationLayout.setMargin(true); significationLayout.setSpacing(true); Label mapSignificationLabel = new Label( applicationContext.getMessage(NAME + ".collection.info", null, getLocale())); mapSignificationLabel.setStyleName(ValoTheme.LABEL_SMALL); mapSignificationLabel.setContentMode(ContentMode.HTML); significationLayout.addComponent(mapSignificationLabel); panelCollectionInfo.setContent(significationLayout); layout.addComponent(panelCollectionInfo); layout.setExpandRatio(panelDetailGroupes, 1); setContent(layout); /* Centre la fentre */ center(); }
From source file:fr.univlorraine.mondossierweb.views.windows.DetailInscriptionWindow.java
License:Apache License
private void init() { //On vrifie le droit d'accder la vue if ((userController.isEnseignant() || userController.isEtudiant()) && MainUI.getCurrent() != null && MainUI.getCurrent().getEtudiant() != null) { /* Style */ setWidth(80, Unit.PERCENTAGE);/* ww w. j a v a2s . c om*/ setHeight(95, Unit.PERCENTAGE); setModal(true); setResizable(false); //Test si user enseignant et en vue Enseignant if (userController.isEnseignant() && MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { //On recupere les notes pour un enseignant etudiantController.renseigneDetailNotesEtResultatsEnseignant(etape); } else { //On rcupre les notes pour un tudiant etudiantController.renseigneDetailNotesEtResultats(etape); } /* Layout */ VerticalLayout layout = new VerticalLayout(); layout.setSizeFull(); layout.setMargin(true); layout.setSpacing(true); /* Titre */ setCaption(applicationContext.getMessage(NAME + ".title", null, getLocale())); //Sous titre avec l'anne HorizontalLayout titleLayout = new HorizontalLayout(); titleLayout.setSizeFull(); titleLayout.setHeight("20px"); Label labelAnneeUniv = new Label( applicationContext.getMessage(NAME + ".label.anneeuniv", null, getLocale()) + " <b>" + etape.getAnnee() + "</b>"); labelAnneeUniv.setContentMode(ContentMode.HTML); titleLayout.addComponent(labelAnneeUniv); titleLayout.setComponentAlignment(labelAnneeUniv, Alignment.MIDDLE_CENTER); layout.addComponent(titleLayout); Panel panelDetailInscription = new Panel(etape.getLibelle()); panelDetailInscription.setSizeFull(); panelDetailInscription.addStyleName("small-font-element"); List<ElementPedagogique> lelp = MainUI.getCurrent().getEtudiant().getElementsPedagogiques(); if (lelp != null && lelp.size() > 0) { Table detailInscriptionTable = new Table(null, new BeanItemContainer<>(ElementPedagogique.class, lelp)); detailInscriptionTable.setSizeFull(); detailInscriptionTable.setVisibleColumns(new String[0]); detailInscriptionTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.code", null, getLocale()), new CodeElpColumnGenerator()); detailInscriptionTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.libelle", null, getLocale()), new LibelleElpColumnGenerator()); if (configController.isAffECTSEtudiant()) { detailInscriptionTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.ects", null, getLocale()), new ECTSColumnGenerator()); } detailInscriptionTable.setColumnCollapsingAllowed(true); detailInscriptionTable.setColumnReorderingAllowed(false); detailInscriptionTable.setSelectable(false); detailInscriptionTable.setImmediate(true); detailInscriptionTable.addStyleName("scrollabletable"); panelDetailInscription.setContent(detailInscriptionTable); } else { setHeight(30, Unit.PERCENTAGE); HorizontalLayout messageLayout = new HorizontalLayout(); messageLayout.setSpacing(true); messageLayout.setMargin(true); Label labelAucuneIp = new Label( applicationContext.getMessage(NAME + ".message.aucuneip", null, getLocale())); labelAucuneIp.setStyleName(ValoTheme.LABEL_BOLD); messageLayout.addComponent(labelAucuneIp); panelDetailInscription.setContent(messageLayout); } layout.addComponent(panelDetailInscription); layout.setExpandRatio(panelDetailInscription, 1); setContent(layout); /* Centre la fentre */ center(); } }
From source file:fr.univlorraine.mondossierweb.views.windows.DetailNotesWindow.java
License:Apache License
private void init() { //On vrifie le droit d'accder la vue if ((userController.isEnseignant() || userController.isEtudiant()) && MainUI.getCurrent() != null && MainUI.getCurrent().getEtudiant() != null) { /* Style */ setWidth(80, Unit.PERCENTAGE);/*from w w w . ja v a 2 s . co m*/ setHeight(95, Unit.PERCENTAGE); setModal(true); setResizable(false); //Test si user enseignant et en vue Enseignant if (userController.isEnseignant() && MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { //On recupere les notes pour un enseignant etudiantController.renseigneDetailNotesEtResultatsEnseignant(etape); } else { //On rcupre les notes pour un tudiant etudiantController.renseigneDetailNotesEtResultats(etape); } /* Layout */ VerticalLayout layout = new VerticalLayout(); layout.setSizeFull(); layout.setMargin(true); layout.setSpacing(true); /* Titre */ setCaption(applicationContext.getMessage(NAME + ".title", null, getLocale())); List<ElementPedagogique> lelp = MainUI.getCurrent().getEtudiant().getElementsPedagogiques(); //Sous titre avec l'anne HorizontalLayout titleLayout = new HorizontalLayout(); titleLayout.setSizeFull(); titleLayout.setHeight("20px"); Label messageLabel = new Label( applicationContext.getMessage(NAME + ".label.messageinfo", null, getLocale())); messageLabel.setContentMode(ContentMode.HTML); messageLabel.setStyleName(ValoTheme.LABEL_SMALL); titleLayout.addComponent(messageLabel); titleLayout.setExpandRatio(messageLabel, 1); titleLayout.setComponentAlignment(messageLabel, Alignment.MIDDLE_LEFT); //Test si user enseignant if (userController.isEnseignant() && lelp != null && lelp.size() > 0) { //Bouton pour afficher les filtres btnDisplayFiltres = new Button(); btnDisplayFiltres.setWidth("52px"); btnDisplayFiltres.setHeight("32px"); btnDisplayFiltres.setStyleName(ValoTheme.BUTTON_PRIMARY); if (MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { btnDisplayFiltres.setStyleName(ValoTheme.BUTTON_FRIENDLY); } btnDisplayFiltres.setIcon(FontAwesome.FILTER); btnDisplayFiltres.setDescription( applicationContext.getMessage(NAME + ".btn.displayFilters", null, getLocale())); btnDisplayFiltres.addClickListener(e -> { btnDisplayFiltres.setVisible(false); panelVue.setVisible(true); }); titleLayout.addComponent(btnDisplayFiltres); titleLayout.setComponentAlignment(btnDisplayFiltres, Alignment.MIDDLE_RIGHT); //titleLayout.setExpandRatio(btnDisplayFiltres, 1); btnDisplayFiltres.setVisible(true); } if (lelp != null && lelp.size() > 0 && configController.isPdfNotesActive()) { Button pdfButton = new Button(); pdfButton.setStyleName(ValoTheme.BUTTON_BORDERLESS_COLORED); pdfButton.addStyleName("button-icon"); pdfButton.addStyleName("red-button-icon"); pdfButton.setIcon(FontAwesome.FILE_PDF_O); pdfButton.setDescription( applicationContext.getMessage(NAME + ".btn.pdf.description", null, getLocale())); if (PropertyUtils.isPushEnabled()) { MyFileDownloader fd = new MyFileDownloader(noteController.exportPdfDetail(etape)); fd.extend(pdfButton); } else { FileDownloader fd = new FileDownloader(noteController.exportPdfDetail(etape)); fd.extend(pdfButton); } titleLayout.addComponent(pdfButton); titleLayout.setComponentAlignment(pdfButton, Alignment.MIDDLE_RIGHT); } layout.addComponent(titleLayout); //Test si user enseignant if (userController.isEnseignant() && lelp != null && lelp.size() > 0) { panelVue = new Panel(); HorizontalLayout vueLayout = new HorizontalLayout(); vueLayout.setMargin(true); vueLayout.setSpacing(true); vueLayout.setSizeFull(); Button changerVueButton = new Button( applicationContext.getMessage(NAME + ".button.vueEnseignant", null, getLocale())); changerVueButton.setStyleName(ValoTheme.BUTTON_PRIMARY); if (MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { changerVueButton.setStyleName(ValoTheme.BUTTON_FRIENDLY); changerVueButton.setCaption( applicationContext.getMessage(NAME + ".button.vueEtudiant", null, getLocale())); } //On change la variable vueEnseignantNotesEtResultats et on recr la vue en cours changerVueButton.addClickListener(e -> { etudiantController.changerVueNotesEtResultats(); init(); }); Label vueLabel = new Label( applicationContext.getMessage(NAME + ".label.vueEtudiant", null, getLocale())); if (MainUI.getCurrent().isVueEnseignantNotesEtResultats()) { vueLabel.setValue( applicationContext.getMessage(NAME + ".label.vueEnseignant", null, getLocale())); } vueLabel.setContentMode(ContentMode.HTML); vueLabel.setStyleName(ValoTheme.LABEL_SMALL); vueLayout.addComponent(changerVueButton); vueLayout.setComponentAlignment(changerVueButton, Alignment.MIDDLE_CENTER); vueLayout.addComponent(vueLabel); vueLayout.setExpandRatio(vueLabel, 1); panelVue.setContent(vueLayout); layout.addComponent(panelVue); panelVue.setVisible(false); } Panel panelDetailNotes = new Panel(etape.getLibelle() + " - " + applicationContext.getMessage(NAME + ".label.anneeuniv", null, getLocale()) + " " + etape.getAnnee()); panelDetailNotes.addStyleName("small-font-element"); panelDetailNotes.setSizeFull(); if (lelp != null && lelp.size() > 0) { Table detailNotesTable = new Table(null, new BeanItemContainer<>(ElementPedagogique.class, lelp)); detailNotesTable.setSizeFull(); detailNotesTable.setVisibleColumns(new String[0]); if (contientElpObtenusPrecedemment(lelp)) { detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.annee", null, getLocale()), new AnneeColumnGenerator()); } detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.code", null, getLocale()), new CodeElpColumnGenerator()); detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.libelle", null, getLocale()), new LibelleElpColumnGenerator()); detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.notesession1", null, getLocale()), new Session1ColumnGenerator()); detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.resultatsession1", null, getLocale()), new ResultatSession1ColumnGenerator()); detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.notesession2", null, getLocale()), new Session2ColumnGenerator()); detailNotesTable.addGeneratedColumn("resultatsession2", new ResultatSession2ColumnGenerator()); detailNotesTable.setColumnHeader("resultatsession2", applicationContext.getMessage(NAME + ".table.elp.resultatsession2", null, getLocale())); if (configController.isAffRangEtudiant() || etudiantController.isAfficherRangElpEpr()) { detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.rang", null, getLocale()), new RangColumnGenerator()); } if (configController.isAffECTSEtudiant()) { detailNotesTable.addGeneratedColumn( applicationContext.getMessage(NAME + ".table.elp.ects", null, getLocale()), new ECTSColumnGenerator()); } detailNotesTable.setColumnCollapsingAllowed(true); detailNotesTable.setColumnReorderingAllowed(false); detailNotesTable.setSelectable(false); detailNotesTable.setImmediate(true); detailNotesTable.addStyleName("scrollabletable"); panelDetailNotes.setContent(detailNotesTable); } else { setHeight(30, Unit.PERCENTAGE); HorizontalLayout messageLayout = new HorizontalLayout(); messageLayout.setSpacing(true); messageLayout.setMargin(true); Label labelAucunResultat = new Label( applicationContext.getMessage(NAME + ".message.aucuneresultat", null, getLocale())); labelAucunResultat.setStyleName(ValoTheme.LABEL_BOLD); messageLayout.addComponent(labelAucunResultat); panelDetailNotes.setContent(messageLayout); } layout.addComponent(panelDetailNotes); if (lelp != null && lelp.size() > 0 && MainUI.getCurrent().getEtudiant().isSignificationResultatsUtilisee()) { Panel panelSignificationResultats = new Panel( applicationContext.getMessage(NAME + ".info.significations.resultats", null, getLocale())); panelSignificationResultats.addStyleName("significationpanel"); panelSignificationResultats.addStyleName("small-font-element"); panelSignificationResultats.setIcon(FontAwesome.INFO_CIRCLE); VerticalLayout significationLayout = new VerticalLayout(); significationLayout.setMargin(true); significationLayout.setSpacing(true); String grilleSignficationResultats = ""; //grilleSignficationResultats = significationResultats.toString().substring(1,significationResultats.toString().length()-1); Set<String> ss = MainUI.getCurrent().getEtudiant().getSignificationResultats().keySet(); for (String k : ss) { if (k != null && !k.equals("") && !k.equals(" ")) { grilleSignficationResultats = grilleSignficationResultats + "<b>" + k + "</b> : " + MainUI.getCurrent().getEtudiant().getSignificationResultats().get(k); grilleSignficationResultats = grilleSignficationResultats + "   "; } } Label mapSignificationLabel = new Label(grilleSignficationResultats); mapSignificationLabel.setStyleName(ValoTheme.LABEL_SMALL); mapSignificationLabel.setContentMode(ContentMode.HTML); significationLayout.addComponent(mapSignificationLabel); panelSignificationResultats.setContent(significationLayout); layout.addComponent(panelSignificationResultats); } layout.setExpandRatio(panelDetailNotes, 1); setContent(layout); /* Centre la fentre */ center(); } }
From source file:fr.univlorraine.mondossierweb.views.windows.SignificationsMobileWindow.java
License:Apache License
/** * Cre une fentre//from w w w . j a va 2 s . co m */ public SignificationsMobileWindow(boolean afficherSignificationIndicateurProfondeur) { setWidth("95%"); setHeight("95%"); setCaption(applicationContext.getMessage("significationsWindow.title", null, getLocale())); setModal(true); setResizable(false); setClosable(false); setStyleName("v-popover-blank"); VerticalLayout layout = new VerticalLayout(); layout.setSizeFull(); setContent(layout); VerticalLayout panelLayout = new VerticalLayout(); panelLayout.setWidth("100%"); panelLayout.setStyleName("v-scrollableelement"); panelLayout.setSpacing(true); panelLayout.setMargin(true); if (MdwTouchkitUI.getCurrent().getEtudiant().isSignificationResultatsUtilisee()) { Panel panelSignificationResultats = new Panel(); panelSignificationResultats.setCaption( applicationContext.getMessage(NAME + ".info.significations.resultats", null, getLocale())); panelSignificationResultats.addStyleName("significationpanel"); panelSignificationResultats.setWidth("100%"); VerticalLayout significationLayout = new VerticalLayout(); significationLayout.setWidth("100%"); significationLayout.setMargin(true); significationLayout.setSpacing(true); Set<String> ss = MdwTouchkitUI.getCurrent().getEtudiant().getSignificationResultats().keySet(); for (String k : ss) { if (k != null && !k.equals("") && !k.equals(" ")) { HorizontalLayout signLayout = new HorizontalLayout(); signLayout.setSizeFull(); signLayout.setMargin(true); signLayout.setSpacing(true); Label codeLabel = new Label(k); codeLabel.setStyleName(ValoTheme.LABEL_BOLD); codeLabel.addStyleName("v-label-align-right"); signLayout.addComponent(codeLabel); Label valueLabel = new Label( "" + MdwTouchkitUI.getCurrent().getEtudiant().getSignificationResultats().get(k)); signLayout.addComponent(valueLabel); significationLayout.addComponent(signLayout); } } panelSignificationResultats.setContent(significationLayout); panelLayout.addComponent(panelSignificationResultats); } if (afficherSignificationIndicateurProfondeur) { Panel panelSignificationIndicateurs = new Panel(); panelSignificationIndicateurs.setCaption( applicationContext.getMessage(NAME + ".info.significations.indicateurs", null, getLocale())); panelSignificationIndicateurs.addStyleName("significationpanel"); panelSignificationIndicateurs.setWidth("100%"); VerticalLayout significationLayout = new VerticalLayout(); significationLayout.setMargin(true); significationLayout.setSpacing(true); significationLayout.setWidth("100%"); //1er NIVEAU HorizontalLayout levelLayout1 = new HorizontalLayout(); levelLayout1.setWidth("100%"); HorizontalLayout levelMainLayout1 = new HorizontalLayout(); levelMainLayout1.setWidth("100%"); levelMainLayout1.setSpacing(true); levelMainLayout1.setStyleName("level-indicator-layout"); int k = 0; for (int i = 0; i < 1; i++) { //Ajout d'un level k++; Label libLevelLayout = new Label(); libLevelLayout.setSizeFull(); libLevelLayout.setHeight("8px"); libLevelLayout.setStyleName("layout-level-green-indicator"); levelMainLayout1.addComponent(libLevelLayout); } //On pense avoir 7 level maxi for (int j = k; j < 8; j++) { Label libLevelSpaceLayout = new Label(); libLevelSpaceLayout.setSizeFull(); libLevelSpaceLayout.setHeight("8px"); levelMainLayout1.addComponent(libLevelSpaceLayout); } levelLayout1.addComponent(levelMainLayout1); levelLayout1.addComponent(new Label("1er niveau")); significationLayout.addComponent(levelLayout1); //2em NIVEAU HorizontalLayout levelLayout2 = new HorizontalLayout(); levelLayout2.setSizeFull(); HorizontalLayout levelMainLayout2 = new HorizontalLayout(); levelMainLayout2.setSizeFull(); levelMainLayout2.setSpacing(true); levelMainLayout2.setStyleName("level-indicator-layout"); k = 0; for (int i = 0; i < 2; i++) { //Ajout d'un level k++; Label libLevelLayout = new Label(); libLevelLayout.setSizeFull(); libLevelLayout.setHeight("8px"); libLevelLayout.setStyleName("layout-level-green-indicator"); levelMainLayout2.addComponent(libLevelLayout); } //On pense avoir 7 level maxi for (int j = k; j < 8; j++) { Label libLevelSpaceLayout = new Label(); libLevelSpaceLayout.setSizeFull(); libLevelSpaceLayout.setHeight("8px"); levelMainLayout2.addComponent(libLevelSpaceLayout); } levelLayout2.addComponent(levelMainLayout2); levelLayout2.addComponent(new Label("2em niveau")); significationLayout.addComponent(levelLayout2); //3em NIVEAU HorizontalLayout levelLayout3 = new HorizontalLayout(); levelLayout3.setSizeFull(); HorizontalLayout levelMainLayout3 = new HorizontalLayout(); levelMainLayout3.setSizeFull(); levelMainLayout3.setSpacing(true); levelMainLayout3.setStyleName("level-indicator-layout"); k = 0; for (int i = 0; i < 3; i++) { //Ajout d'un level k++; Label libLevelLayout = new Label(); libLevelLayout.setSizeFull(); libLevelLayout.setHeight("8px"); libLevelLayout.setStyleName("layout-level-green-indicator"); levelMainLayout3.addComponent(libLevelLayout); } //On pense avoir 7 level maxi for (int j = k; j < 8; j++) { Label libLevelSpaceLayout = new Label(); libLevelSpaceLayout.setSizeFull(); libLevelSpaceLayout.setHeight("8px"); levelMainLayout3.addComponent(libLevelSpaceLayout); } levelLayout3.addComponent(levelMainLayout3); levelLayout3.addComponent(new Label("3em niveau")); significationLayout.addComponent(levelLayout3); //4em NIVEAU HorizontalLayout levelLayout4 = new HorizontalLayout(); levelLayout4.setSizeFull(); HorizontalLayout levelMainLayout4 = new HorizontalLayout(); levelMainLayout4.setSizeFull(); levelMainLayout4.setSpacing(true); levelMainLayout4.setStyleName("level-indicator-layout"); k = 0; for (int i = 0; i < 4; i++) { //Ajout d'un level k++; Label libLevelLayout = new Label(); libLevelLayout.setSizeFull(); libLevelLayout.setHeight("8px"); libLevelLayout.setStyleName("layout-level-green-indicator"); levelMainLayout4.addComponent(libLevelLayout); } //On pense avoir 7 level maxi for (int j = k; j < 8; j++) { Label libLevelSpaceLayout = new Label(); libLevelSpaceLayout.setSizeFull(); libLevelSpaceLayout.setHeight("8px"); levelMainLayout4.addComponent(libLevelSpaceLayout); } levelLayout4.addComponent(levelMainLayout4); levelLayout4.addComponent(new Label("4em niveau")); significationLayout.addComponent(levelLayout4); //ETC HorizontalLayout levelLayoutEtc = new HorizontalLayout(); levelLayoutEtc.setSizeFull(); levelLayoutEtc.addComponent(new Label("...")); levelLayoutEtc.addComponent(new Label("")); significationLayout.addComponent(levelLayoutEtc); panelSignificationIndicateurs.setContent(significationLayout); panelLayout.addComponent(panelSignificationIndicateurs); } layout.addComponent(panelLayout); // close button HorizontalLayout bLayout = new HorizontalLayout(); bLayout.setSizeFull(); bLayout.setHeight("50px"); Button closeButton = new Button(); //closeButton.setCaption(applicationContext.getMessage("significationsWindow.btnFermer", null, getLocale())); closeButton.setStyleName(ValoTheme.BUTTON_PRIMARY); closeButton.addStyleName("v-popover-button"); closeButton.setIcon(FontAwesome.CHECK); closeButton.addClickListener(e -> { close(); }); bLayout.addComponent(closeButton); bLayout.setComponentAlignment(closeButton, Alignment.MIDDLE_CENTER); layout.addComponent(bLayout); layout.setExpandRatio(panelLayout, 1); }
From source file:gq.vaccum121.ui.LoginScreen.java
License:Apache License
private void initLayout() { FormLayout loginForm = new FormLayout(); loginForm.setSizeUndefined();//w w w . j av a 2 s. c o m userName = new TextField("Username"); passwordField = new PasswordField("Password"); login = new Button("Login"); loginForm.addComponent(userName); loginForm.addComponent(passwordField); loginForm.addComponent(login); login.addStyleName(ValoTheme.BUTTON_PRIMARY); login.setDisableOnClick(true); login.setClickShortcut(ShortcutAction.KeyCode.ENTER); login.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { login(); } }); VerticalLayout loginLayout = new VerticalLayout(); loginLayout.setSizeUndefined(); loginFailedLabel = new Label(); loginLayout.addComponent(loginFailedLabel); loginLayout.setComponentAlignment(loginFailedLabel, Alignment.BOTTOM_CENTER); loginFailedLabel.setSizeUndefined(); loginFailedLabel.addStyleName(ValoTheme.LABEL_FAILURE); loginFailedLabel.setVisible(false); loggedOutLabel = new Label("Good bye!"); loginLayout.addComponent(loggedOutLabel); loginLayout.setComponentAlignment(loggedOutLabel, Alignment.BOTTOM_CENTER); loggedOutLabel.setSizeUndefined(); loggedOutLabel.addStyleName(ValoTheme.LABEL_SUCCESS); loggedOutLabel.setVisible(false); loginLayout.addComponent(loginForm); loginLayout.setComponentAlignment(loginForm, Alignment.TOP_CENTER); VerticalLayout rootLayout = new VerticalLayout(loginLayout); rootLayout.setSizeFull(); rootLayout.setComponentAlignment(loginLayout, Alignment.MIDDLE_CENTER); setCompositionRoot(rootLayout); setSizeFull(); }