Example usage for com.vaadin.ui GridLayout setSpacing

List of usage examples for com.vaadin.ui GridLayout setSpacing

Introduction

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

Prototype

@Override
    public void setSpacing(boolean spacing) 

Source Link

Usage

From source file:org.agocontrol.site.viewlet.record.RecordFlowlet.java

License:Apache License

@Override
public void initialize() {
    entityManager = getSite().getSiteContext().getObject(EntityManager.class);

    final GridLayout gridLayout = new GridLayout(1, 2);
    gridLayout.setSizeFull();//from   ww w  .ja  v  a 2s .  co  m
    gridLayout.setMargin(false);
    gridLayout.setSpacing(true);
    gridLayout.setRowExpandRatio(1, 1f);
    setViewContent(gridLayout);

    recordEditor = new ValidatingEditor(AgoControlSiteFields.getFieldDescriptors(Record.class));
    recordEditor.setCaption("Record");
    recordEditor.addListener((ValidatingEditorStateListener) this);
    gridLayout.addComponent(recordEditor, 0, 0);

    final HorizontalLayout buttonLayout = new HorizontalLayout();
    buttonLayout.setSpacing(true);
    gridLayout.addComponent(buttonLayout, 0, 1);

    saveButton = new Button("Save");
    saveButton.setImmediate(true);
    buttonLayout.addComponent(saveButton);
    saveButton.addListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            recordEditor.commit();
            entityManager.getTransaction().begin();
            try {
                entity = entityManager.merge(entity);
                entityManager.persist(entity);
                entityManager.getTransaction().commit();
                entityManager.detach(entity);
            } catch (final Throwable t) {
                if (entityManager.getTransaction().isActive()) {
                    entityManager.getTransaction().rollback();
                }
                throw new RuntimeException("Failed to save entity: " + entity, t);
            }
        }
    });

    discardButton = new Button("Discard");
    discardButton.setImmediate(true);
    buttonLayout.addComponent(discardButton);
    discardButton.addListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            recordEditor.discard();
        }
    });

}

From source file:org.agocontrol.site.viewlet.record.RecordsFlowlet.java

License:Apache License

@Override
public void initialize() {
    final List<FieldDescriptor> fieldDescriptors = AgoControlSiteFields.getFieldDescriptors(Record.class);

    final List<FilterDescriptor> filterDefinitions = new ArrayList<FilterDescriptor>();

    final EntityManager entityManager = getSite().getSiteContext().getObject(EntityManager.class);
    container = new LazyEntityContainer<Record>(entityManager, true, false, false, Record.class, 50,
            new String[] { "created" }, new boolean[] { false }, "recordId");

    ContainerUtil.addContainerProperties(container, fieldDescriptors);

    final GridLayout gridLayout = new GridLayout(1, 2);
    gridLayout.setSizeFull();//w w  w  .j ava2s .  c  o m
    gridLayout.setMargin(false);
    gridLayout.setSpacing(true);
    gridLayout.setRowExpandRatio(1, 1f);
    setViewContent(gridLayout);

    final HorizontalLayout buttonLayout = new HorizontalLayout();
    buttonLayout.setSpacing(true);
    buttonLayout.setSizeUndefined();
    gridLayout.addComponent(buttonLayout, 0, 0);

    final Table table = new FormattingTable();
    grid = new Grid(table, container);
    grid.setFields(fieldDescriptors);
    grid.setFilters(filterDefinitions);

    table.setColumnCollapsed("recordId", true);
    table.setColumnCollapsed("modified", true);
    gridLayout.addComponent(grid, 0, 1);

    final Button addButton = getSite().getButton("add");
    buttonLayout.addComponent(addButton);
    addButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            final Record record = new Record();
            record.setCreated(new Date());
            record.setModified(record.getCreated());
            record.setOwner((Company) getSite().getSiteContext().getObject(Company.class));
            final RecordFlowlet recordView = getViewSheet().forward(RecordFlowlet.class);
            recordView.edit(record, true);
        }
    });

    final Button editButton = getSite().getButton("edit");
    buttonLayout.addComponent(editButton);
    editButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            final Record entity = container.getEntity(grid.getSelectedItemId());
            final RecordFlowlet recordView = getViewSheet().forward(RecordFlowlet.class);
            recordView.edit(entity, false);
        }
    });

    final Button removeButton = getSite().getButton("remove");
    buttonLayout.addComponent(removeButton);
    removeButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            container.removeItem(grid.getSelectedItemId());
            container.commit();
        }
    });

    final Company company = getSite().getSiteContext().getObject(Company.class);
    container.removeDefaultFilters();
    container.addDefaultFilter(new Compare.Equal("owner.companyId", company.getCompanyId()));

}

From source file:org.agocontrol.site.viewlet.recordset.RecordSetFlowlet.java

License:Apache License

@Override
public void initialize() {
    entityManager = getSite().getSiteContext().getObject(EntityManager.class);

    final GridLayout gridLayout = new GridLayout(1, 2);
    gridLayout.setSizeFull();//from  ww  w . j  av a 2  s  .  c o m
    gridLayout.setMargin(false);
    gridLayout.setSpacing(true);
    gridLayout.setRowExpandRatio(1, 1f);
    setViewContent(gridLayout);

    recordSetEditor = new ValidatingEditor(AgoControlSiteFields.getFieldDescriptors(RecordSet.class));
    recordSetEditor.setCaption("RecordSet");
    recordSetEditor.addListener((ValidatingEditorStateListener) this);
    gridLayout.addComponent(recordSetEditor, 0, 0);

    final HorizontalLayout buttonLayout = new HorizontalLayout();
    buttonLayout.setSpacing(true);
    gridLayout.addComponent(buttonLayout, 0, 1);

    saveButton = new Button("Save");
    saveButton.setImmediate(true);
    buttonLayout.addComponent(saveButton);
    saveButton.addListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            recordSetEditor.commit();
            entityManager.getTransaction().begin();
            try {
                entity = entityManager.merge(entity);
                entityManager.persist(entity);
                entityManager.getTransaction().commit();
                entityManager.detach(entity);
            } catch (final Throwable t) {
                if (entityManager.getTransaction().isActive()) {
                    entityManager.getTransaction().rollback();
                }
                throw new RuntimeException("Failed to save entity: " + entity, t);
            }
        }
    });

    discardButton = new Button("Discard");
    discardButton.setImmediate(true);
    buttonLayout.addComponent(discardButton);
    discardButton.addListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            recordSetEditor.discard();
        }
    });

}

From source file:org.agocontrol.site.viewlet.recordset.RecordSetsFlowlet.java

License:Apache License

@Override
public void initialize() {
    final List<FieldDescriptor> fieldDescriptors = AgoControlSiteFields.getFieldDescriptors(RecordSet.class);

    final List<FilterDescriptor> filterDefinitions = new ArrayList<FilterDescriptor>();

    final EntityManager entityManager = getSite().getSiteContext().getObject(EntityManager.class);
    container = new EntityContainer<RecordSet>(entityManager, true, true, false, RecordSet.class, 1000,
            new String[] { "name" }, new boolean[] { true }, "recordSetId");

    ContainerUtil.addContainerProperties(container, fieldDescriptors);

    final GridLayout gridLayout = new GridLayout(1, 2);
    gridLayout.setSizeFull();//from   w  ww .  ja  v  a  2 s. c om
    gridLayout.setMargin(false);
    gridLayout.setSpacing(true);
    gridLayout.setRowExpandRatio(1, 1f);
    setViewContent(gridLayout);

    final HorizontalLayout buttonLayout = new HorizontalLayout();
    buttonLayout.setSpacing(true);
    buttonLayout.setSizeUndefined();
    gridLayout.addComponent(buttonLayout, 0, 0);

    final Table table = new FormattingTable();
    grid = new Grid(table, container);
    grid.setFields(fieldDescriptors);
    grid.setFilters(filterDefinitions);

    table.setColumnCollapsed("created", true);
    table.setColumnCollapsed("modified", true);
    gridLayout.addComponent(grid, 0, 1);

    final Button addButton = getSite().getButton("add");
    buttonLayout.addComponent(addButton);
    addButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            final RecordSet recordSet = new RecordSet();
            recordSet.setCreated(new Date());
            recordSet.setModified(recordSet.getCreated());
            recordSet.setOwner((Company) getSite().getSiteContext().getObject(Company.class));
            final RecordSetFlowlet recordSetView = getViewSheet().forward(RecordSetFlowlet.class);
            recordSetView.edit(recordSet, true);
        }
    });

    final Button editButton = getSite().getButton("edit");
    buttonLayout.addComponent(editButton);
    editButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            final RecordSet entity = container.getEntity(grid.getSelectedItemId());
            final RecordSetFlowlet recordSetView = getViewSheet().forward(RecordSetFlowlet.class);
            recordSetView.edit(entity, false);
        }
    });

    final Button removeButton = getSite().getButton("remove");
    buttonLayout.addComponent(removeButton);
    removeButton.addClickListener(new ClickListener() {
        /** Serial version UID. */
        private static final long serialVersionUID = 1L;

        @Override
        public void buttonClick(final ClickEvent event) {
            container.removeItem(grid.getSelectedItemId());
            container.commit();
        }
    });

    final Company company = getSite().getSiteContext().getObject(Company.class);
    container.removeDefaultFilters();
    container.addDefaultFilter(new Compare.Equal("owner.companyId", company.getCompanyId()));
    grid.refresh();
}

From source file:org.apache.ace.target.management.ui.TargetManagementExtension.java

License:Apache License

public Component create(Map<String, Object> context) {
    GridLayout result = new GridLayout(1, 4);
    result.setCaption(CAPTION);//from w  w w .j  av a  2 s  .  c  om

    result.setMargin(true);
    result.setSpacing(true);
    result.setSizeFull();

    final StatefulTargetObject target = getRepositoryObjectFromContext(context);

    final CheckBox registerCB = new CheckBox("Registered?");
    registerCB.setImmediate(true);
    registerCB.setEnabled(!target.isRegistered());
    registerCB.setValue(Boolean.valueOf(target.isRegistered()));

    result.addComponent(registerCB);

    final CheckBox autoApproveCB = new CheckBox("Auto approve?");
    autoApproveCB.setImmediate(true);
    autoApproveCB.setEnabled(target.isRegistered());
    autoApproveCB.setValue(Boolean.valueOf(target.getAutoApprove()));

    result.addComponent(autoApproveCB);

    final Button approveButton = new Button("Approve changes");
    approveButton.setImmediate(true);
    approveButton.setEnabled(getApproveButtonEnabledState(target));

    result.addComponent(approveButton);

    // Add a spacer that fill the remainder of the available space...
    result.addComponent(new Label(" "));
    result.setRowExpandRatio(3, 1.0f);

    // Add all listeners...
    registerCB.addListener(new Button.ClickListener() {
        public void buttonClick(ClickEvent event) {
            if (event.getButton().booleanValue()) {
                target.register();
                registerCB.setEnabled(!target.isRegistered());
                autoApproveCB.setEnabled(target.isRegistered());
            }
        }
    });
    autoApproveCB.addListener(new Button.ClickListener() {
        public void buttonClick(ClickEvent event) {
            target.setAutoApprove(event.getButton().booleanValue());
            approveButton.setEnabled(getApproveButtonEnabledState(target));
        }
    });
    approveButton.addListener(new Button.ClickListener() {
        public void buttonClick(ClickEvent event) {
            target.approve();
            approveButton.setEnabled(getApproveButtonEnabledState(target));
        }
    });

    return result;
}

From source file:org.apache.ace.webui.vaadin.component.ConfirmationDialog.java

License:Apache License

/**
 * Adds all components to this dialog.//  w  w  w. j a va 2  s  .  c  o m
 * 
 * @param message
 *            the optional message to display, can be <code>null</code>;
 * @param buttonNames
 *            the names of the buttons to add, never <code>null</code> or empty.
 */
protected void addComponents(String message, String defaultButton, String... buttonNames) {
    if (message != null) {
        addComponent(new Label(message));
    }

    GridLayout gl = new GridLayout(buttonNames.length + 1, 1);
    gl.setSpacing(true);
    gl.setWidth("100%");

    gl.addComponent(new Label(" "));
    gl.setColumnExpandRatio(0, 1.0f);

    for (String buttonName : buttonNames) {
        Button button = new Button(buttonName, this);
        button.setData(buttonName);
        if (defaultButton != null && defaultButton.equals(buttonName)) {
            button.setStyleName(Reindeer.BUTTON_DEFAULT);
            button.setClickShortcut(KeyCode.ENTER);
            // Request focus in this window...
            button.focus();
        }
        gl.addComponent(button);
    }

    addComponent(gl);
}

From source file:org.azrul.langkuik.framework.webgui.SearchDataTableLayout.java

protected void createSearchPanel(final Class<C> classOfBean, final Configuration config,
        final Set<String> currentUserRoles, final EntityRight entityRight)
        throws UnsupportedOperationException, SecurityException, FieldGroup.BindException {
    final BeanFieldGroup fieldGroup = new BeanFieldGroup(classOfBean);
    final FindAnyEntityParameter searchQuery = (FindAnyEntityParameter) parameter;

    //collect all activechoices
    Map<com.vaadin.ui.ComboBox, ActiveChoiceTarget> activeChoicesWithFieldAsKey = new HashMap<>();
    Map<String, com.vaadin.ui.ComboBox> activeChoicesFieldWithHierarchyAsKey = new HashMap<>();

    BeanUtils beanUtils = new BeanUtils();
    Map<Integer, FieldContainer> fieldContainers = beanUtils.getOrderedFieldsByRank(classOfBean);

    final Map<Integer, com.vaadin.ui.Field> searchableFieldsByRank = new TreeMap<>();
    final Map<String, com.vaadin.ui.Field> searchableFieldsByName = new TreeMap<>();

    //Construct search form
    for (FieldContainer fieldContainer : fieldContainers.values()) {
        Field pojoField = fieldContainer.getPojoField();
        WebField webField = fieldContainer.getWebField();

        if (pojoField.isAnnotationPresent(org.hibernate.search.annotations.Field.class)) {
            if (webField.choices().length > 0) {
                //deal with choices

                com.vaadin.ui.ComboBox searchComboBox = new com.vaadin.ui.ComboBox(webField.name());

                searchComboBox.setImmediate(true);
                fieldGroup.bind(searchComboBox, pojoField.getName());
                for (Choice choice : webField.choices()) {
                    if (choice.value() == -1) {
                        searchComboBox.addItem(choice.textValue());
                        searchComboBox.setItemCaption(choice.textValue(), choice.display());
                    } else {
                        searchComboBox.addItem(choice.value());
                        searchComboBox.setItemCaption(choice.value(), choice.display());
                    }/*ww  w . j  ava 2 s  .  c o m*/
                }

                //allDataSearchForm.addComponent(searchComboBox);
                searchableFieldsByRank.put(webField.rank(), searchComboBox);
                searchableFieldsByName.put(pojoField.getName(), searchComboBox);
            } else if (webField.activeChoice().enumTree() != EmptyEnum.class) {
                //collect active choices - 
                com.vaadin.ui.ComboBox searchComboBox = new com.vaadin.ui.ComboBox(webField.name());
                searchComboBox.setImmediate(true);
                fieldGroup.bind(searchComboBox, pojoField.getName());
                String hierarchy = webField.activeChoice().hierarchy();
                Class<ActiveChoiceEnum> enumTree = (Class<ActiveChoiceEnum>) webField.activeChoice().enumTree();
                ActiveChoiceTarget activeChoiceTarget = ActiveChoiceUtils.build(enumTree, hierarchy);
                for (String choice : activeChoiceTarget.getSourceChoices()) {
                    searchComboBox.addItem(choice);
                    activeChoicesWithFieldAsKey.put(searchComboBox, activeChoiceTarget);
                    activeChoicesFieldWithHierarchyAsKey.put(hierarchy, searchComboBox);
                }
                searchableFieldsByRank.put(webField.rank(), searchComboBox);
                searchableFieldsByName.put(pojoField.getName(), searchComboBox);

            } else {
                com.vaadin.ui.Field searchField = fieldGroup.buildAndBind(webField.name(), pojoField.getName());
                if (pojoField.getType().equals(Date.class)) {
                    DateField dateField = (DateField) searchField;
                    dateField.setDateFormat(config.get("dateFormat"));
                    dateField.setWidth(100f, Sizeable.Unit.PIXELS);
                }

                //allDataSearchForm.addComponent(searchField);
                searchableFieldsByRank.put(webField.rank(), searchField);
                searchableFieldsByName.put(pojoField.getName(), searchField);
            }
        }

    }

    //build form
    int rowCount = (int) (Math.ceil(searchableFieldsByRank.size() / 2));
    rowCount = rowCount < 1 ? 1 : rowCount;
    GridLayout allDataSearchForm = new GridLayout(2, rowCount);
    allDataSearchForm.setSpacing(true);
    for (com.vaadin.ui.Field searchField : searchableFieldsByRank.values()) {
        allDataSearchForm.addComponent(searchField);
        searchField.setId(searchField.getCaption());
    }

    this.addComponent(allDataSearchForm);

    //deal with active choice
    for (final com.vaadin.ui.ComboBox sourceField : activeChoicesWithFieldAsKey.keySet()) {
        final ActiveChoiceTarget target = activeChoicesWithFieldAsKey.get(sourceField);
        final com.vaadin.ui.ComboBox targetField = activeChoicesFieldWithHierarchyAsKey
                .get(target.getTargetHierarchy());
        sourceField.addValueChangeListener(new Property.ValueChangeListener() {
            @Override
            public void valueChange(Property.ValueChangeEvent event) {
                List<String> targetValues = target.getTargets().get(sourceField.getValue());
                if (targetValues != null && !targetValues.isEmpty() && targetField != null) {
                    targetField.removeAllItems();
                    for (String targetValue : targetValues) {
                        targetField.addItem(targetValue);
                    }
                }
            }
        });

    }

    //search button
    Button searchBtn = new Button("Search", new Button.ClickListener() {

        @Override
        public void buttonClick(Button.ClickEvent event) {

            //reset previous searches
            searchQuery.getSearchTerms().clear();
            //read search terms from form
            try {
                for (Map.Entry<String, com.vaadin.ui.Field> entry : searchableFieldsByName.entrySet()) {
                    com.vaadin.ui.Field searchField = entry.getValue();
                    if (searchField.getValue() != null) {
                        if (searchField.getValue() instanceof String) {
                            String searchTerm = ((String) searchField.getValue()).trim();
                            if (!"".equals(searchTerm)) {
                                searchQuery.getSearchTerms().add(new SearchTerm(entry.getKey(),
                                        classOfBean.getDeclaredField(entry.getKey()), searchField.getValue()));
                            }
                        } else {
                            searchQuery.getSearchTerms().add(new SearchTerm(entry.getKey(),
                                    classOfBean.getDeclaredField(entry.getKey()), searchField.getValue()));
                        }
                    }
                }
            } catch (NoSuchFieldException | SecurityException ex) {
                Logger.getLogger(SearchDataTableLayout.class.getName()).log(Level.SEVERE, null, ex);
            }
            //do query
            Collection<C> allData = dao.runQuery(parameter, orderBy, asc, currentTableIndex, itemCountPerPage);
            if (allData.isEmpty()) {
                allData = new ArrayList<>();
                allData.add(dao.createNew());
            }
            bigTotal = dao.countQueryResult(parameter);
            itemContainer.setBeans(allData);
            itemContainer.refreshItems();
            table.setPageLength(itemCountPerPage);
            table.setPageLength(itemCountPerPage);
            currentTableIndex = 0;
            int lastPage = (int) Math.floor(bigTotal / itemCountPerPage);
            if (bigTotal % itemCountPerPage == 0) {
                lastPage--;
            }
            int currentUpdatedPage = currentTableIndex / itemCountPerPage;
            pageLabel.setCaption(" " + (currentUpdatedPage + 1) + " of " + (lastPage + 1) + " ");
        }
    });
    searchBtn.setId(searchBtn.getCaption());
    this.addComponent(searchBtn);
}

From source file:org.balisunrise.vaadin.components.user.UserPanel.java

License:Open Source License

private void init() {

    model = new CreateUserModel();
    BeanItem<CreateUserModel> item = new BeanItem<>(model);
    FieldGroup fg = new FieldGroup(item);

    nome = new TextField("Nome");
    nome.setWidth("100%");
    nome.setMaxLength(50);/*  w ww . java2s .  c  om*/
    fg.bind(nome, "nome");

    login = new TextField("Login");
    login.setWidth("100%");
    login.setMaxLength(32);
    fg.bind(login, "login");

    senha = new PasswordField("Senha");
    senha.setWidth("100%");
    senha.setMaxLength(32);
    fg.bind(senha, "senha");

    repita = new PasswordField("Repita a senha");
    repita.setWidth("100%");
    repita.setMaxLength(32);
    fg.bind(repita, "repita");

    GridLayout grid = new GridLayout(20, 1);
    grid.setWidth("100%");
    grid.setHeightUndefined();
    grid.setSpacing(true);

    grid.addComponent(nome, 0, 0, 9, 0);
    grid.addComponent(login, 10, 0, 19, 0);
    grid.setRows(2);
    grid.addComponent(senha, 0, 1, 9, 1);
    grid.addComponent(repita, 10, 1, 19, 1);

    addComponent(grid);
    setSpacing(true);

    repita.addBlurListener((e) -> {
        try {
            fg.commit();
            Notification.show("Changes committed!\n" + model.toString(), Notification.Type.TRAY_NOTIFICATION);
        } catch (final FieldGroup.CommitException ex) {
            Notification.show("Commit failed: " + ex.getCause().getMessage(),
                    Notification.Type.TRAY_NOTIFICATION);
        }
    });
}

From source file:org.bubblecloud.ilves.comment.CommentListComponent.java

License:Open Source License

public void refresh() {

    final String contextPath = VaadinService.getCurrentRequest().getContextPath();
    final Site site = Site.getCurrent();

    final Company company = site.getSiteContext().getObject(Company.class);
    final EntityManager entityManager = site.getSiteContext().getObject(EntityManager.class);

    final CriteriaBuilder builder = entityManager.getCriteriaBuilder();
    final CriteriaQuery<Comment> commentCriteriaQuery = builder.createQuery(Comment.class);
    final Root<Comment> commentRoot = commentCriteriaQuery.from(Comment.class);
    commentCriteriaQuery.where(builder.and(builder.equal(commentRoot.get("owner"), company),
            builder.equal(commentRoot.get("dataId"), contextPath)));
    commentCriteriaQuery.orderBy(builder.asc(commentRoot.get("created")));

    final TypedQuery<Comment> commentTypedQuery = entityManager.createQuery(commentCriteriaQuery);
    final List<Comment> commentList = commentTypedQuery.getResultList();

    final Panel panel = new Panel(site.localize("panel-comments"));
    setCompositionRoot(panel);/*from w w  w  .j  av a2  s.co m*/

    final GridLayout gridLayout = new GridLayout(3, commentList.size() + 1);
    panel.setContent(gridLayout);
    gridLayout.setSpacing(true);
    gridLayout.setMargin(true);
    gridLayout.setColumnExpandRatio(0, 0.0f);
    gridLayout.setColumnExpandRatio(1, 0.1f);
    gridLayout.setColumnExpandRatio(2, 0.9f);

    final Label authorHeaderLabel = new Label();
    authorHeaderLabel.setStyleName(ValoTheme.LABEL_BOLD);
    authorHeaderLabel.setValue(site.localize("column-header-author"));
    gridLayout.addComponent(authorHeaderLabel, 0, 0, 1, 0);

    final Label commentHeaderLabel = new Label();
    commentHeaderLabel.setStyleName(ValoTheme.LABEL_BOLD);
    commentHeaderLabel.setValue(site.localize("column-header-comment"));
    gridLayout.addComponent(commentHeaderLabel, 2, 0);

    for (int i = 0; i < commentList.size(); i++) {
        final Comment comment = commentList.get(i);

        final Link authorImageLink = GravatarUtil.getGravatarImageLink(comment.getAuthor().getEmailAddress());
        gridLayout.addComponent(authorImageLink, 0, i + 1);

        final Label authorLabel = new Label();
        final String authorName = comment.getAuthor().getFirstName();
        authorLabel.setValue(authorName);
        gridLayout.addComponent(authorLabel, 1, i + 1);

        final Label messageLabel = new Label();
        messageLabel.setValue(comment.getMessage());
        gridLayout.addComponent(messageLabel, 2, i + 1);
    }

}

From source file:org.bubblecloud.ilves.component.grid.Grid.java

License:Apache License

/**
 * Constructs the grid layout./*ww w. j av a 2s  .c  o  m*/
 * @param table the table
 * @param container the container
 * @param showFilters true if filters should be shown.
 */
private void construct(final Table table, final LazyQueryContainer container, final boolean showFilters) {
    this.table = table;

    table.setImmediate(true);
    table.setSelectable(true);
    table.setBuffered(false);
    table.setColumnCollapsingAllowed(true);
    table.setContainerDataSource(container);
    table.setSizeFull();

    if (showFilters) {
        final GridLayout layout = new GridLayout(1, 2);
        layout.setSpacing(true);
        layout.setRowExpandRatio(0, 0f);
        layout.setRowExpandRatio(1, 1f);

        filterLayout = new HorizontalLayout();
        ((HorizontalLayout) filterLayout).setSpacing(true);

        layout.addComponent(filterLayout, 0, 0);
        layout.addComponent(table, 0, 1);

        setCompositionRoot(layout);
        layout.setSizeFull();
        setSizeFull();
    } else {
        setCompositionRoot(table);
        setSizeFull();
    }
}