public PeptidesTableLayout( final int validPep, final int totalPep, final String desc, final Map<Integer, PeptideBean> pepProtList, final String accession, final String expName) { // for peptides information (table) view MarginInfo m = new MarginInfo(false, false, true, false); this.setMargin(m); this.setSpacing(false); this.setWidth("100%"); final HorizontalLayout headerLayout = new HorizontalLayout(); headerLayout.setHeight("45px"); headerLayout.setSpacing(true); show = new ShowLabel(true); headerLayout.addComponent(show); headerLayout.setComponentAlignment(show, Alignment.BOTTOM_LEFT); stat = true; final Label pepLabel = new Label( "<h4 style='font-family:verdana;color:black;'>Peptides (" + validPep + ") " + desc + "</h4>"); // new Label("<h4 style='font-family:verdana;color:black;'>Peptides (" + validPep + "/" + // totalPep + ") " + desc + "</h4>"); pepLabel.setContentMode(Label.CONTENT_XHTML); pepLabel.setHeight("45px"); headerLayout.addComponent(pepLabel); headerLayout.setComponentAlignment(pepLabel, Alignment.TOP_RIGHT); this.addComponent(headerLayout); mainLayout = new VerticalLayout(); mainLayout.setWidth("100%"); this.addComponent(mainLayout); mainLayout.addComponent(pepTableLayout); mainLayout.setComponentAlignment(pepTableLayout, Alignment.MIDDLE_CENTER); Map<Integer, PeptideBean> vPepProtList = getValidatedList(pepProtList); vt = new PeptideTable(vPepProtList, null, false); pepTableLayout.addComponent(vt); if (trs != null) { PepSize = trs.getCurrentSize(); } vt.setHeight(PepSize); HorizontalLayout lowerLayout = new HorizontalLayout(); lowerLayout.setWidth("100%"); lowerLayout.setHeight("25px"); lowerLayout.setSpacing(false); // Panel toolbar = new Panel(lowerLayout); // toolbar.setStyleName(Reindeer.PANEL_LIGHT); // toolbar.setHeight("35px"); mainLayout.addComponent(lowerLayout); mainLayout.setComponentAlignment(lowerLayout, Alignment.TOP_CENTER); HorizontalLayout lowerLeftLayout = new HorizontalLayout(); lowerLayout.addComponent(lowerLeftLayout); lowerLeftLayout.setSpacing(true); lowerLeftLayout.setMargin(new MarginInfo(false, false, false, false)); lowerLayout.setComponentAlignment(lowerLeftLayout, Alignment.MIDDLE_LEFT); // lowerLayout.setExpandRatio(lowerLeftLayout, 0.4f); HorizontalLayout lowerRightLayout = new HorizontalLayout(); // lowerRightLayout.setSpacing(true); lowerRightLayout.setWidth("450px"); lowerLayout.addComponent(lowerRightLayout); lowerLayout.setComponentAlignment(lowerRightLayout, Alignment.BOTTOM_RIGHT); // lowerLayout.setExpandRatio(lowerRightLayout, 0.5f); final OptionGroup selectionType = new OptionGroup(); selectionType.setMultiSelect(true); selectionType.addItem("\t\tShow Validated Peptides Only"); selectionType.select("\t\tShow Validated Peptides Only"); selectionType.setHeight("15px"); lowerLeftLayout.addComponent(selectionType); lowerLeftLayout.setComponentAlignment(selectionType, Alignment.BOTTOM_LEFT); final TableResizeSet trs1 = new TableResizeSet(vt, PepSize); // resize tables lowerLeftLayout.addComponent(trs1); lowerLeftLayout.setComponentAlignment(trs1, Alignment.BOTTOM_LEFT); exportPepLayout.setWidth("300px"); lowerRightLayout.addComponent(exportPepLayout); lowerRightLayout.setComponentAlignment(exportPepLayout, Alignment.BOTTOM_RIGHT); mainLayout.setSpacing(true); headerLayout.addListener( new com.vaadin.event.LayoutEvents.LayoutClickListener() { @Override public void layoutClick(LayoutEvents.LayoutClickEvent event) { if (stat) { stat = false; show.updateIcon(false); mainLayout.setVisible(false); } else { stat = true; show.updateIcon(true); mainLayout.setVisible(true); } } }); selectionType.setImmediate(true); selectionType.addListener( new Property.ValueChangeListener() { @Override public void valueChange(Property.ValueChangeEvent event) { if (selectionType.isSelected("\t\tShow Validated Peptides Only")) { headerLayout.removeAllComponents(); headerLayout.addComponent(show); headerLayout.setComponentAlignment(show, Alignment.BOTTOM_LEFT); // Label pepLabel = new Label("<h4 style='font-family:verdana;color:black;'>Peptides // (" + validPep + ") " + desc + "</h4>"); pepLabel.setContentMode(Label.CONTENT_XHTML); pepLabel.setHeight("45px"); headerLayout.addComponent(pepLabel); headerLayout.setComponentAlignment(pepLabel, Alignment.TOP_RIGHT); // Map<Integer, PeptideBean> vPepProtList = getValidatedList(pepProtList); pepTableLayout.removeAllComponents(); // vt = new PeptideTable(vPepProtList, null); pepTableLayout.addComponent(vt); trs1.setTable(vt); vt.setHeight(pepTable.getHeight() + ""); } else { headerLayout.removeAllComponents(); headerLayout.addComponent(show); headerLayout.setComponentAlignment(show, Alignment.BOTTOM_LEFT); Label pepLabel = new Label( "<h4 style='font-family:verdana;color:black;'>Peptides (" + validPep + "/" + totalPep + ") " + desc + "</h4>"); pepLabel.setContentMode(Label.CONTENT_XHTML); headerLayout.addComponent(pepLabel); headerLayout.setComponentAlignment(pepLabel, Alignment.TOP_RIGHT); pepTableLayout.removeAllComponents(); pepTable = new PeptideTable(pepProtList, null, false); pepTableLayout.addComponent(pepTable); trs1.setTable(pepTable); pepTable.setHeight(vt.getHeight() + ""); } } }); }