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() + "");
            }
          }
        });
  }