Example usage for com.vaadin.ui TreeGrid addCollapseListener

List of usage examples for com.vaadin.ui TreeGrid addCollapseListener

Introduction

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

Prototype

public Registration addCollapseListener(CollapseListener<T> listener) 

Source Link

Document

Adds a CollapseListener to this TreeGrid.

Usage

From source file:org.jpos.qi.minigl.AccountsView.java

License:Open Source License

@Override
public Grid createGrid() {
    TreeGrid<Account> tree = new TreeGrid();
    tree.setSizeFull();/*www  .  j a v  a 2  s. c o  m*/
    tree.setSelectionMode(Grid.SelectionMode.SINGLE);
    tree.addItemClickListener(event -> {
        //do nothing if it's root
        if (event.getItem().getRoot().getId() != event.getItem().getId()) {
            String url = getGeneralRoute() + "/" + getHelper().getItemId(event.getItem());
            getApp().getNavigator().navigateTo(url);
        }
    });
    tree.setItemCollapseAllowedProvider(account -> account.getParent() != null);
    tree.addExpandListener(listener -> {
        if (listener.getExpandedItem().getParent() != null)
            expandedItems.add(listener.getExpandedItem());
    });
    tree.addCollapseListener(listener -> expandedItems.remove(listener.getCollapsedItem()));
    return tree;
}