Search in sources :

Example 1 with EyeColor

use of org.dominokit.domino.datatable.client.views.model.EyeColor in project domino-ui-demo by DominoKit.

the class DataTableViewImpl method advancedPagination.

@SampleMethod
private void advancedPagination() {
    // page size
    AdvancedPaginationPlugin<Contact> advancedPagination = new AdvancedPaginationPlugin<>(10);
    TableConfig<Contact> tableConfig = new TableConfig<>();
    tableConfig.addColumn(ColumnConfig.<Contact>create("id", "#").textAlign("right").asHeader().sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getIndex() + 1 + ""))).addColumn(ColumnConfig.<Contact>create("status", "Status").textAlign("center").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().isActive()) {
            return Style.of(Icons.ALL.check_circle()).setColor(Color.GREEN_DARKEN_3.getHex()).element();
        } else {
            return Style.of(Icons.ALL.highlight_off()).setColor(Color.RED_DARKEN_3.getHex()).element();
        }
    })).addColumn(ColumnConfig.<Contact>create("firstName", "First name").sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getName()))).addColumn(ColumnConfig.<Contact>create("gender", "Gender").setCellRenderer(cell -> ContactUiUtils.getGenderElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("eyeColor", "Eye color").setCellRenderer(cell -> ContactUiUtils.getEyeColorElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("balance", "Balance").sortable().setCellRenderer(cellInfo -> ContactUiUtils.getBalanceElement(cellInfo.getRecord()))).addColumn(ColumnConfig.<Contact>create("email", "Email").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getEmail()))).addColumn(ColumnConfig.<Contact>create("phone", "Phone").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getPhone()))).addColumn(ColumnConfig.<Contact>create("badges", "Badges").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().getAge() < 35) {
            return Badge.create("Young").setBackground(ColorScheme.GREEN.color()).element();
        }
        return TextNode.of("");
    }));
    tableConfig.addPlugin(new SortPlugin<>()).addPlugin(new HeaderBarPlugin<Contact>("Demo table", "this a sample table with all features").addActionElement(new HeaderBarPlugin.ClearSearch<>()).addActionElement(new HeaderBarPlugin.SearchTableAction<>())).addPlugin(advancedPagination);
    LocalListDataStore<Contact> localListDataStore = new LocalListDataStore<>();
    localListDataStore.setRecordsSorter(new ContactSorter());
    localListDataStore.setSearchFilter(new ContactSearchFilter());
    localListDataStore.setPagination(advancedPagination.getPagination());
    DataTable<Contact> table = new DataTable<>(tableConfig, localListDataStore);
    element.appendChild(Card.create("ADVANCED PAGINATION", "Advanced pagination plugin allows navigation through pages from a dropdown list").setCollapsible().appendChild(new TableStyleActions(table)).appendChild(table).element());
    contactListParseHandlers.add(contacts -> {
        localListDataStore.setData(subList(contacts, 0, 100));
        table.load();
    });
}
Also used : SampleClass(org.dominokit.domino.SampleClass) JsonResource(org.dominokit.domino.datatable.client.views.JsonResource) SampleMethod(org.dominokit.domino.SampleMethod) SelectionPlugin(org.dominokit.domino.ui.datatable.plugins.SelectionPlugin) UiView(org.dominokit.domino.api.client.annotations.UiView) Date(java.util.Date) CodeCard(org.dominokit.domino.componentcase.client.ui.views.CodeCard) DoubleBox(org.dominokit.domino.ui.forms.DoubleBox) Style(org.dominokit.domino.ui.style.Style) TreeGridSample(org.dominokit.domino.datatable.client.views.model.TreeGridSample) Paragraph(org.dominokit.domino.ui.Typography.Paragraph) Random(java.util.Random) HTMLTableCellElement(elemental2.dom.HTMLTableCellElement) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) Notification(org.dominokit.domino.ui.notifications.Notification) Icon(org.dominokit.domino.ui.icons.Icon) EmailBox(org.dominokit.domino.ui.forms.EmailBox) HTMLElement(elemental2.dom.HTMLElement) TextHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.TextHeaderFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) Card(org.dominokit.domino.ui.cards.Card) ResourceException(com.google.gwt.resources.client.ResourceException) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) TextResource(com.google.gwt.resources.client.TextResource) BaseDemoView(org.dominokit.domino.componentcase.client.ui.views.BaseDemoView) DominoElement(org.dominokit.domino.ui.utils.DominoElement) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) BooleanHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.BooleanHeaderFilter) Collectors(java.util.stream.Collectors) SortPlugin(org.dominokit.domino.ui.datatable.plugins.SortPlugin) List(java.util.List) Select(org.dominokit.domino.ui.forms.Select) Color(org.dominokit.domino.ui.style.Color) Unit.px(org.dominokit.domino.ui.style.Unit.px) ColumnHeaderFilterPlugin(org.dominokit.domino.ui.datatable.plugins.ColumnHeaderFilterPlugin) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) Optional(java.util.Optional) GroupingPlugin(org.dominokit.domino.ui.datatable.plugins.GroupingPlugin) CheckBox(org.dominokit.domino.ui.forms.CheckBox) ContactList(org.dominokit.domino.datatable.client.views.model.ContactList) EyeColor(org.dominokit.domino.datatable.client.views.model.EyeColor) DatatableProxy(org.dominokit.domino.datatable.client.presenters.DatatableProxy) Icons(org.dominokit.domino.ui.icons.Icons) ColumnConfig(org.dominokit.domino.ui.datatable.ColumnConfig) RowCell(org.dominokit.domino.ui.datatable.RowCell) TreeGridPlugin(org.dominokit.domino.ui.datatable.plugins.TreeGridPlugin) Elements.a(org.jboss.elemento.Elements.a) Elements.td(org.jboss.elemento.Elements.td) Badge(org.dominokit.domino.ui.badges.Badge) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) DoubleHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.DoubleHeaderFilter) DatatableView(org.dominokit.domino.datatable.client.views.DatatableView) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) DataTable(org.dominokit.domino.ui.datatable.DataTable) ArrayList(java.util.ArrayList) BlockHeader(org.dominokit.domino.ui.header.BlockHeader) LinkToSourceCode(org.dominokit.domino.componentcase.client.ui.views.LinkToSourceCode) Elements.div(org.jboss.elemento.Elements.div) SelectHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.SelectHeaderFilter) Gender(org.dominokit.domino.datatable.client.views.model.Gender) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) SelectOption(org.dominokit.domino.ui.forms.SelectOption) TextNode(org.dominokit.domino.ui.utils.TextNode) TextBox(org.dominokit.domino.ui.forms.TextBox) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) CellRenderer(org.dominokit.domino.ui.datatable.CellRenderer) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) ResourceCallback(com.google.gwt.resources.client.ResourceCallback) ColorScheme(org.dominokit.domino.ui.style.ColorScheme) EnumHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.EnumHeaderFilter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) DomGlobal(elemental2.dom.DomGlobal) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) HTMLDivElement(elemental2.dom.HTMLDivElement) FieldStyle(org.dominokit.domino.ui.forms.FieldStyle) TelephoneBox(org.dominokit.domino.ui.forms.TelephoneBox) Comparator(java.util.Comparator) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Collections(java.util.Collections) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) DataTable(org.dominokit.domino.ui.datatable.DataTable) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) SampleMethod(org.dominokit.domino.SampleMethod)

Example 2 with EyeColor

use of org.dominokit.domino.datatable.client.views.model.EyeColor in project domino-ui-demo by DominoKit.

the class DataTableViewImpl method topPanelPlugin.

@SampleMethod
private void topPanelPlugin() {
    ContactsTopPanel<Contact> topPanel = new ContactsTopPanel<>();
    TableConfig<Contact> tableConfig = new TableConfig<>();
    tableConfig.setFixed(true).addColumn(ColumnConfig.<Contact>create("id", "#").sortable().styleCell(cellElement -> Style.of(cellElement).setCssProperty("vertical-align", "middle")).textAlign("right").asHeader().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getIndex() + 1 + ""))).addColumn(ColumnConfig.<Contact>create("status", "Status").textAlign("center").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().isActive()) {
            return Style.of(Icons.ALL.check_circle().element()).setColor(Color.GREEN_DARKEN_3.getHex()).element();
        } else {
            return Style.of(Icons.ALL.highlight_off().element()).setColor(Color.RED_DARKEN_3.getHex()).element();
        }
    })).addColumn(ColumnConfig.<Contact>create("firstName", "First name").sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getName())).setWidth("200px")).addColumn(ColumnConfig.<Contact>create("gender", "Gender").setCellRenderer(cell -> ContactUiUtils.getGenderElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("eyeColor", "Eye color").styleHeader(head -> Style.of(head).setWidth("100px")).setCellRenderer(cell -> ContactUiUtils.getEyeColorElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("balance", "Balance").sortable().setCellRenderer(cellInfo -> ContactUiUtils.getBalanceElement(cellInfo.getRecord())).setWidth("250px")).addColumn(ColumnConfig.<Contact>create("email", "Email").setWidth("300px").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getEmail()))).addColumn(ColumnConfig.<Contact>create("phone", "Phone").setWidth("150px").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getPhone()))).addColumn(ColumnConfig.<Contact>create("badges", "Badges").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().getAge() < 35) {
            return Badge.create("Young").setBackground(ColorScheme.GREEN.color()).element();
        }
        return TextNode.of("");
    })).addPlugin(new BodyScrollPlugin<>()).addPlugin(new TopPanelPlugin<Contact>() {

        @Override
        public HTMLElement element() {
            return topPanel.element();
        }

        @Override
        public void handleEvent(TableEvent event) {
            if (TableDataUpdatedEvent.DATA_UPDATED.equals(event.getType())) {
                topPanel.update((TableDataUpdatedEvent<Contact>) event);
            }
        }
    }).addPlugin(new HeaderBarPlugin<Contact>("Demo table", "this a sample table with all features").addActionElement(new HeaderBarPlugin.SearchTableAction<>())).addPlugin(new SortPlugin<>());
    LocalListScrollingDataSource<Contact> scrollingDataSource = new LocalListScrollingDataSource<Contact>(10).setSearchFilter(new ContactSearchFilter()).setRecordsSorter(new ContactSorter());
    DataTable<Contact> table = new DataTable<>(tableConfig, scrollingDataSource);
    element.appendChild(Card.create("TOP PANEL PLUGIN", "A simple panel that listens to datatable events and update its content accordingly.").setCollapsible().appendChild(new TableStyleActions(table)).appendChild(table).element());
    contactListParseHandlers.add(contacts -> {
        List<Contact> data = subList(contacts, 0, 100);
        scrollingDataSource.setData(data);
        table.load();
        topPanel.update(data);
    });
}
Also used : SampleClass(org.dominokit.domino.SampleClass) JsonResource(org.dominokit.domino.datatable.client.views.JsonResource) SampleMethod(org.dominokit.domino.SampleMethod) SelectionPlugin(org.dominokit.domino.ui.datatable.plugins.SelectionPlugin) UiView(org.dominokit.domino.api.client.annotations.UiView) Date(java.util.Date) CodeCard(org.dominokit.domino.componentcase.client.ui.views.CodeCard) DoubleBox(org.dominokit.domino.ui.forms.DoubleBox) Style(org.dominokit.domino.ui.style.Style) TreeGridSample(org.dominokit.domino.datatable.client.views.model.TreeGridSample) Paragraph(org.dominokit.domino.ui.Typography.Paragraph) Random(java.util.Random) HTMLTableCellElement(elemental2.dom.HTMLTableCellElement) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) Notification(org.dominokit.domino.ui.notifications.Notification) Icon(org.dominokit.domino.ui.icons.Icon) EmailBox(org.dominokit.domino.ui.forms.EmailBox) HTMLElement(elemental2.dom.HTMLElement) TextHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.TextHeaderFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) Card(org.dominokit.domino.ui.cards.Card) ResourceException(com.google.gwt.resources.client.ResourceException) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) TextResource(com.google.gwt.resources.client.TextResource) BaseDemoView(org.dominokit.domino.componentcase.client.ui.views.BaseDemoView) DominoElement(org.dominokit.domino.ui.utils.DominoElement) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) BooleanHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.BooleanHeaderFilter) Collectors(java.util.stream.Collectors) SortPlugin(org.dominokit.domino.ui.datatable.plugins.SortPlugin) List(java.util.List) Select(org.dominokit.domino.ui.forms.Select) Color(org.dominokit.domino.ui.style.Color) Unit.px(org.dominokit.domino.ui.style.Unit.px) ColumnHeaderFilterPlugin(org.dominokit.domino.ui.datatable.plugins.ColumnHeaderFilterPlugin) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) Optional(java.util.Optional) GroupingPlugin(org.dominokit.domino.ui.datatable.plugins.GroupingPlugin) CheckBox(org.dominokit.domino.ui.forms.CheckBox) ContactList(org.dominokit.domino.datatable.client.views.model.ContactList) EyeColor(org.dominokit.domino.datatable.client.views.model.EyeColor) DatatableProxy(org.dominokit.domino.datatable.client.presenters.DatatableProxy) Icons(org.dominokit.domino.ui.icons.Icons) ColumnConfig(org.dominokit.domino.ui.datatable.ColumnConfig) RowCell(org.dominokit.domino.ui.datatable.RowCell) TreeGridPlugin(org.dominokit.domino.ui.datatable.plugins.TreeGridPlugin) Elements.a(org.jboss.elemento.Elements.a) Elements.td(org.jboss.elemento.Elements.td) Badge(org.dominokit.domino.ui.badges.Badge) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) DoubleHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.DoubleHeaderFilter) DatatableView(org.dominokit.domino.datatable.client.views.DatatableView) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) DataTable(org.dominokit.domino.ui.datatable.DataTable) ArrayList(java.util.ArrayList) BlockHeader(org.dominokit.domino.ui.header.BlockHeader) LinkToSourceCode(org.dominokit.domino.componentcase.client.ui.views.LinkToSourceCode) Elements.div(org.jboss.elemento.Elements.div) SelectHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.SelectHeaderFilter) Gender(org.dominokit.domino.datatable.client.views.model.Gender) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) SelectOption(org.dominokit.domino.ui.forms.SelectOption) TextNode(org.dominokit.domino.ui.utils.TextNode) TextBox(org.dominokit.domino.ui.forms.TextBox) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) CellRenderer(org.dominokit.domino.ui.datatable.CellRenderer) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) ResourceCallback(com.google.gwt.resources.client.ResourceCallback) ColorScheme(org.dominokit.domino.ui.style.ColorScheme) EnumHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.EnumHeaderFilter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) DomGlobal(elemental2.dom.DomGlobal) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) HTMLDivElement(elemental2.dom.HTMLDivElement) FieldStyle(org.dominokit.domino.ui.forms.FieldStyle) TelephoneBox(org.dominokit.domino.ui.forms.TelephoneBox) Comparator(java.util.Comparator) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Collections(java.util.Collections) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) DataTable(org.dominokit.domino.ui.datatable.DataTable) HTMLElement(elemental2.dom.HTMLElement) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) SampleMethod(org.dominokit.domino.SampleMethod)

Example 3 with EyeColor

use of org.dominokit.domino.datatable.client.views.model.EyeColor in project domino-ui-demo by DominoKit.

the class DataTableViewImpl method sortAndSearch.

@SampleMethod
private void sortAndSearch() {
    TableConfig<Contact> tableConfig = new TableConfig<>();
    tableConfig.addColumn(ColumnConfig.<Contact>create("id", "#").textAlign("right").asHeader().sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getIndex() + 1 + ""))).addColumn(ColumnConfig.<Contact>create("status", "Status").textAlign("center").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().isActive()) {
            return Style.of(Icons.ALL.check_circle()).setColor(Color.GREEN_DARKEN_3.getHex()).element();
        } else {
            return Style.of(Icons.ALL.highlight_off()).setColor(Color.RED_DARKEN_3.getHex()).element();
        }
    })).addColumn(ColumnConfig.<Contact>create("firstName", "First name").sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getName()))).addColumn(ColumnConfig.<Contact>create("gender", "Gender").setCellRenderer(cell -> ContactUiUtils.getGenderElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("eyeColor", "Eye color").setCellRenderer(cell -> ContactUiUtils.getEyeColorElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("balance", "Balance").sortable().setCellRenderer(cellInfo -> ContactUiUtils.getBalanceElement(cellInfo.getRecord()))).addColumn(ColumnConfig.<Contact>create("email", "Email").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getEmail()))).addColumn(ColumnConfig.<Contact>create("phone", "Phone").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getPhone()))).addColumn(ColumnConfig.<Contact>create("badges", "Badges").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().getAge() < 35) {
            return Badge.create("Young").setBackground(ColorScheme.GREEN.color()).element();
        }
        return TextNode.of("");
    }));
    ColumnHeaderFilterPlugin<Contact> contactColumnHeaderFilterPlugin = ColumnHeaderFilterPlugin.<Contact>create();
    tableConfig.addPlugin(new SortPlugin<>()).addPlugin(new HeaderBarPlugin<Contact>("Demo table", "this a sample table with all features").addActionElement(new HeaderBarPlugin.ClearSearch<>()).addActionElement(new HeaderBarPlugin.SearchTableAction<>()).addActionElement(dataTable -> Icons.ALL.filter_menu_outline_mdi().clickable().addClickListener(evt -> contactColumnHeaderFilterPlugin.getFiltersRowElement().toggleDisplay()).element())).addPlugin(contactColumnHeaderFilterPlugin.addHeaderFilter("firstName", TextHeaderFilter.<Contact>create()).addHeaderFilter("email", TextHeaderFilter.<Contact>create()).addHeaderFilter("phone", TextHeaderFilter.<Contact>create()).addHeaderFilter("status", BooleanHeaderFilter.<Contact>create("Active", "Inactive", "Both")).addHeaderFilter("gender", EnumHeaderFilter.<Contact, Gender>create(Gender.values())).addHeaderFilter("balance", DoubleHeaderFilter.<Contact>create()).addHeaderFilter("eyeColor", SelectHeaderFilter.<Contact>create().appendChild(SelectOption.create("blue", "Blue")).appendChild(SelectOption.create("brown", "Brown")).appendChild(SelectOption.create("green", "Green"))));
    LocalListDataStore<Contact> listStore = new LocalListDataStore<>();
    listStore.setRecordsSorter(new ContactSorter());
    listStore.setSearchFilter(new ContactSearchFilter());
    DataTable<Contact> table = new DataTable<>(tableConfig, listStore);
    element.appendChild(Card.create("SORT PLUGIN & SEARCH HEADER ACTION", "Allows the table to fire events useful for datasource to sort and search the data").setCollapsible().appendChild(new TableStyleActions(table)).appendChild(table).element());
    contactListParseHandlers.add(contacts -> {
        listStore.setData(subList(contacts));
        table.load();
    });
}
Also used : SampleClass(org.dominokit.domino.SampleClass) JsonResource(org.dominokit.domino.datatable.client.views.JsonResource) SampleMethod(org.dominokit.domino.SampleMethod) SelectionPlugin(org.dominokit.domino.ui.datatable.plugins.SelectionPlugin) UiView(org.dominokit.domino.api.client.annotations.UiView) Date(java.util.Date) CodeCard(org.dominokit.domino.componentcase.client.ui.views.CodeCard) DoubleBox(org.dominokit.domino.ui.forms.DoubleBox) Style(org.dominokit.domino.ui.style.Style) TreeGridSample(org.dominokit.domino.datatable.client.views.model.TreeGridSample) Paragraph(org.dominokit.domino.ui.Typography.Paragraph) Random(java.util.Random) HTMLTableCellElement(elemental2.dom.HTMLTableCellElement) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) Notification(org.dominokit.domino.ui.notifications.Notification) Icon(org.dominokit.domino.ui.icons.Icon) EmailBox(org.dominokit.domino.ui.forms.EmailBox) HTMLElement(elemental2.dom.HTMLElement) TextHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.TextHeaderFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) Card(org.dominokit.domino.ui.cards.Card) ResourceException(com.google.gwt.resources.client.ResourceException) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) TextResource(com.google.gwt.resources.client.TextResource) BaseDemoView(org.dominokit.domino.componentcase.client.ui.views.BaseDemoView) DominoElement(org.dominokit.domino.ui.utils.DominoElement) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) BooleanHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.BooleanHeaderFilter) Collectors(java.util.stream.Collectors) SortPlugin(org.dominokit.domino.ui.datatable.plugins.SortPlugin) List(java.util.List) Select(org.dominokit.domino.ui.forms.Select) Color(org.dominokit.domino.ui.style.Color) Unit.px(org.dominokit.domino.ui.style.Unit.px) ColumnHeaderFilterPlugin(org.dominokit.domino.ui.datatable.plugins.ColumnHeaderFilterPlugin) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) Optional(java.util.Optional) GroupingPlugin(org.dominokit.domino.ui.datatable.plugins.GroupingPlugin) CheckBox(org.dominokit.domino.ui.forms.CheckBox) ContactList(org.dominokit.domino.datatable.client.views.model.ContactList) EyeColor(org.dominokit.domino.datatable.client.views.model.EyeColor) DatatableProxy(org.dominokit.domino.datatable.client.presenters.DatatableProxy) Icons(org.dominokit.domino.ui.icons.Icons) ColumnConfig(org.dominokit.domino.ui.datatable.ColumnConfig) RowCell(org.dominokit.domino.ui.datatable.RowCell) TreeGridPlugin(org.dominokit.domino.ui.datatable.plugins.TreeGridPlugin) Elements.a(org.jboss.elemento.Elements.a) Elements.td(org.jboss.elemento.Elements.td) Badge(org.dominokit.domino.ui.badges.Badge) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) DoubleHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.DoubleHeaderFilter) DatatableView(org.dominokit.domino.datatable.client.views.DatatableView) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) DataTable(org.dominokit.domino.ui.datatable.DataTable) ArrayList(java.util.ArrayList) BlockHeader(org.dominokit.domino.ui.header.BlockHeader) LinkToSourceCode(org.dominokit.domino.componentcase.client.ui.views.LinkToSourceCode) Elements.div(org.jboss.elemento.Elements.div) SelectHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.SelectHeaderFilter) Gender(org.dominokit.domino.datatable.client.views.model.Gender) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) SelectOption(org.dominokit.domino.ui.forms.SelectOption) TextNode(org.dominokit.domino.ui.utils.TextNode) TextBox(org.dominokit.domino.ui.forms.TextBox) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) CellRenderer(org.dominokit.domino.ui.datatable.CellRenderer) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) ResourceCallback(com.google.gwt.resources.client.ResourceCallback) ColorScheme(org.dominokit.domino.ui.style.ColorScheme) EnumHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.EnumHeaderFilter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) DomGlobal(elemental2.dom.DomGlobal) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) HTMLDivElement(elemental2.dom.HTMLDivElement) FieldStyle(org.dominokit.domino.ui.forms.FieldStyle) TelephoneBox(org.dominokit.domino.ui.forms.TelephoneBox) Comparator(java.util.Comparator) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Collections(java.util.Collections) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) DataTable(org.dominokit.domino.ui.datatable.DataTable) Gender(org.dominokit.domino.datatable.client.views.model.Gender) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) SampleMethod(org.dominokit.domino.SampleMethod)

Example 4 with EyeColor

use of org.dominokit.domino.datatable.client.views.model.EyeColor in project domino-ui-demo by DominoKit.

the class DataTableViewImpl method allInOne.

@SampleMethod
private void allInOne() {
    ContactsTopPanel<Contact> topPanel = new ContactsTopPanel<>();
    ScrollingPaginationPlugin<Contact> scrollingPaginationPlugin = new ScrollingPaginationPlugin<>(10, 5);
    TableConfig<Contact> tableConfig = new TableConfig<>();
    tableConfig.addColumn(ColumnConfig.<Contact>create("id", "#").sortable().styleCell(cellElement -> Style.of(cellElement).setCssProperty("vertical-align", "middle")).textAlign("right").asHeader().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getIndex() + 1 + "")).setWidth("70px")).addColumn(ColumnConfig.<Contact>create("status", "Status").setWidth("80px").textAlign("center").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().isActive()) {
            return Style.of(Icons.ALL.check_circle().element()).setColor(Color.GREEN_DARKEN_3.getHex()).element();
        } else {
            return Style.of(Icons.ALL.highlight_off().element()).setColor(Color.RED_DARKEN_3.getHex()).element();
        }
    })).addColumn(ColumnConfig.<Contact>create("firstName", "First name").sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getName())).setWidth("200px")).addColumn(ColumnConfig.<Contact>create("gender", "Gender").setWidth("100px").setCellRenderer(cell -> ContactUiUtils.getGenderElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("eyeColor", "Eye color").styleHeader(head -> Style.of(head).setWidth("100px")).setCellRenderer(cell -> ContactUiUtils.getEyeColorElement(cell.getRecord())).textAlign("center").maxWidth("120px")).addColumn(ColumnConfig.<Contact>create("balance", "Balance").sortable().setCellRenderer(cellInfo -> ContactUiUtils.getBalanceElement(cellInfo.getRecord())).setWidth("200px")).addColumn(ColumnConfig.<Contact>create("email", "Email").setWidth("250px").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getEmail()))).addColumn(ColumnConfig.<Contact>create("phone", "Phone").setWidth("200px").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getPhone()))).addColumn(ColumnConfig.<Contact>create("badges", "Badges").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().getAge() < 35) {
            return Badge.create("Young").setBackground(ColorScheme.GREEN.color()).element();
        }
        return TextNode.of("");
    })).addPlugin(scrollingPaginationPlugin).addPlugin(new TopPanelPlugin<Contact>() {

        @Override
        public HTMLElement element() {
            return topPanel.element();
        }

        @Override
        public void handleEvent(TableEvent event) {
            if (TableDataUpdatedEvent.DATA_UPDATED.equals(event.getType())) {
                topPanel.update((TableDataUpdatedEvent<Contact>) event);
            }
        }
    }).addPlugin(new HeaderBarPlugin<Contact>("Demo table", "this a sample table with all features").addActionElement(dataTable -> {
        Icon selectInactiveIcon = Icons.ALL.highlight_off().clickable().setTooltip("Select Inactive").addClickListener(evt -> dataTable.getRows().forEach(item -> {
            if (!item.getRecord().isActive()) {
                item.select();
            } else {
                item.deselect();
            }
        }));
        return a().add(selectInactiveIcon).element();
    }).addActionElement(dataTable -> {
        Icon selectInactiveIcon = Icons.ALL.check_circle().clickable().setTooltip("Select Active").addClickListener(evt -> dataTable.getRows().forEach(tableRow -> {
            if (tableRow.getRecord().isActive()) {
                tableRow.select();
            } else {
                tableRow.deselect();
            }
        }));
        return a().add(selectInactiveIcon).element();
    }).addActionElement(new HeaderBarPlugin.ClearSearch<>()).addActionElement(new HeaderBarPlugin.SearchTableAction<>()).addActionElement(new HeaderBarPlugin.ShowHideColumnsAction<>())).addPlugin(new RecordDetailsPlugin<>(cell -> new ContactDetails(cell).element())).addPlugin(new SelectionPlugin<>(ColorScheme.BLUE)).addPlugin(new RowMarkerPlugin<>(cellInfo -> ContactUiUtils.getBalanceColor(cellInfo.getRecord()))).addPlugin(new SortPlugin<>()).addPlugin(ColumnHeaderFilterPlugin.<Contact>create().addHeaderFilter("firstName", TextHeaderFilter.<Contact>create()).addHeaderFilter("email", TextHeaderFilter.<Contact>create()).addHeaderFilter("phone", TextHeaderFilter.<Contact>create()).addHeaderFilter("status", BooleanHeaderFilter.<Contact>create("Active", "Inactive", "Both")).addHeaderFilter("gender", EnumHeaderFilter.<Contact, Gender>create(Gender.values())).addHeaderFilter("balance", DoubleHeaderFilter.<Contact>create()).addHeaderFilter("eyeColor", SelectHeaderFilter.<Contact>create().appendChild(SelectOption.create("blue", "Blue")).appendChild(SelectOption.create("brown", "Brown")).appendChild(SelectOption.create("green", "Green")))).addPlugin(new GroupingPlugin<>(tableRow -> tableRow.getRecord().getGender().toString(), cellInfo -> {
        DominoElement.of(cellInfo.getElement()).style().setCssProperty("border-bottom", "1px solid #afafaf").setPadding(px.of(5)).addCss(ColorScheme.INDIGO.lighten_5().getBackground());
        return TextNode.of(cellInfo.getRecord().getGender().getLabel());
    }));
    LocalListDataStore<Contact> localListDataSource = new LocalListDataStore<Contact>().setSearchFilter(new ContactSearchFilter()).setRecordsSorter(new ContactSorter()).setPagination(scrollingPaginationPlugin.getPagination());
    DataTable<Contact> table = new DataTable<>(tableConfig, localListDataSource);
    element.appendChild(Card.create("ALL IN ONE", "Try all plugins and feature works together.").setCollapsible().appendChild(new TableStyleActions(table)).appendChild(table).element());
    contactListParseHandlers.add(contacts -> {
        List<Contact> data = subList(contacts, 0, 100);
        localListDataSource.setData(data);
        table.load();
        topPanel.update(data);
    });
}
Also used : SampleClass(org.dominokit.domino.SampleClass) JsonResource(org.dominokit.domino.datatable.client.views.JsonResource) SampleMethod(org.dominokit.domino.SampleMethod) SelectionPlugin(org.dominokit.domino.ui.datatable.plugins.SelectionPlugin) UiView(org.dominokit.domino.api.client.annotations.UiView) Date(java.util.Date) CodeCard(org.dominokit.domino.componentcase.client.ui.views.CodeCard) DoubleBox(org.dominokit.domino.ui.forms.DoubleBox) Style(org.dominokit.domino.ui.style.Style) TreeGridSample(org.dominokit.domino.datatable.client.views.model.TreeGridSample) Paragraph(org.dominokit.domino.ui.Typography.Paragraph) Random(java.util.Random) HTMLTableCellElement(elemental2.dom.HTMLTableCellElement) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) Notification(org.dominokit.domino.ui.notifications.Notification) Icon(org.dominokit.domino.ui.icons.Icon) EmailBox(org.dominokit.domino.ui.forms.EmailBox) HTMLElement(elemental2.dom.HTMLElement) TextHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.TextHeaderFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) Card(org.dominokit.domino.ui.cards.Card) ResourceException(com.google.gwt.resources.client.ResourceException) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) TextResource(com.google.gwt.resources.client.TextResource) BaseDemoView(org.dominokit.domino.componentcase.client.ui.views.BaseDemoView) DominoElement(org.dominokit.domino.ui.utils.DominoElement) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) BooleanHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.BooleanHeaderFilter) Collectors(java.util.stream.Collectors) SortPlugin(org.dominokit.domino.ui.datatable.plugins.SortPlugin) List(java.util.List) Select(org.dominokit.domino.ui.forms.Select) Color(org.dominokit.domino.ui.style.Color) Unit.px(org.dominokit.domino.ui.style.Unit.px) ColumnHeaderFilterPlugin(org.dominokit.domino.ui.datatable.plugins.ColumnHeaderFilterPlugin) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) Optional(java.util.Optional) GroupingPlugin(org.dominokit.domino.ui.datatable.plugins.GroupingPlugin) CheckBox(org.dominokit.domino.ui.forms.CheckBox) ContactList(org.dominokit.domino.datatable.client.views.model.ContactList) EyeColor(org.dominokit.domino.datatable.client.views.model.EyeColor) DatatableProxy(org.dominokit.domino.datatable.client.presenters.DatatableProxy) Icons(org.dominokit.domino.ui.icons.Icons) ColumnConfig(org.dominokit.domino.ui.datatable.ColumnConfig) RowCell(org.dominokit.domino.ui.datatable.RowCell) TreeGridPlugin(org.dominokit.domino.ui.datatable.plugins.TreeGridPlugin) Elements.a(org.jboss.elemento.Elements.a) Elements.td(org.jboss.elemento.Elements.td) Badge(org.dominokit.domino.ui.badges.Badge) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) DoubleHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.DoubleHeaderFilter) DatatableView(org.dominokit.domino.datatable.client.views.DatatableView) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) DataTable(org.dominokit.domino.ui.datatable.DataTable) ArrayList(java.util.ArrayList) BlockHeader(org.dominokit.domino.ui.header.BlockHeader) LinkToSourceCode(org.dominokit.domino.componentcase.client.ui.views.LinkToSourceCode) Elements.div(org.jboss.elemento.Elements.div) SelectHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.SelectHeaderFilter) Gender(org.dominokit.domino.datatable.client.views.model.Gender) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) SelectOption(org.dominokit.domino.ui.forms.SelectOption) TextNode(org.dominokit.domino.ui.utils.TextNode) TextBox(org.dominokit.domino.ui.forms.TextBox) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) CellRenderer(org.dominokit.domino.ui.datatable.CellRenderer) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) ResourceCallback(com.google.gwt.resources.client.ResourceCallback) ColorScheme(org.dominokit.domino.ui.style.ColorScheme) EnumHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.EnumHeaderFilter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) DomGlobal(elemental2.dom.DomGlobal) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) HTMLDivElement(elemental2.dom.HTMLDivElement) FieldStyle(org.dominokit.domino.ui.forms.FieldStyle) TelephoneBox(org.dominokit.domino.ui.forms.TelephoneBox) Comparator(java.util.Comparator) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Collections(java.util.Collections) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) DataTable(org.dominokit.domino.ui.datatable.DataTable) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Contact(org.dominokit.domino.datatable.client.views.model.Contact) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) Icon(org.dominokit.domino.ui.icons.Icon) SampleMethod(org.dominokit.domino.SampleMethod)

Example 5 with EyeColor

use of org.dominokit.domino.datatable.client.views.model.EyeColor in project domino-ui-demo by DominoKit.

the class DataTableViewImpl method simplePagination.

@SampleMethod
private void simplePagination() {
    // page size
    SimplePaginationPlugin<Contact> simplePaginationPlugin = new SimplePaginationPlugin<>(10);
    TableConfig<Contact> tableConfig = new TableConfig<>();
    tableConfig.addColumn(ColumnConfig.<Contact>create("id", "#").textAlign("right").asHeader().sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getIndex() + 1 + ""))).addColumn(ColumnConfig.<Contact>create("status", "Status").textAlign("center").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().isActive()) {
            return Style.of(Icons.ALL.check_circle()).setColor(Color.GREEN_DARKEN_3.getHex()).element();
        } else {
            return Style.of(Icons.ALL.highlight_off()).setColor(Color.RED_DARKEN_3.getHex()).element();
        }
    })).addColumn(ColumnConfig.<Contact>create("firstName", "First name").sortable().setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getName()))).addColumn(ColumnConfig.<Contact>create("gender", "Gender").setCellRenderer(cell -> ContactUiUtils.getGenderElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("eyeColor", "Eye color").setCellRenderer(cell -> ContactUiUtils.getEyeColorElement(cell.getRecord())).textAlign("center")).addColumn(ColumnConfig.<Contact>create("balance", "Balance").sortable().setCellRenderer(cellInfo -> ContactUiUtils.getBalanceElement(cellInfo.getRecord()))).addColumn(ColumnConfig.<Contact>create("email", "Email").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getEmail()))).addColumn(ColumnConfig.<Contact>create("phone", "Phone").setCellRenderer(cell -> TextNode.of(cell.getTableRow().getRecord().getPhone()))).addColumn(ColumnConfig.<Contact>create("badges", "Badges").setCellRenderer(cell -> {
        if (cell.getTableRow().getRecord().getAge() < 35) {
            return Badge.create("Young").setBackground(ColorScheme.GREEN.color()).element();
        }
        return TextNode.of("");
    }));
    tableConfig.addPlugin(new SortPlugin<>()).addPlugin(new HeaderBarPlugin<Contact>("Demo table", "this a sample table with all features").addActionElement(new HeaderBarPlugin.ClearSearch<>()).addActionElement(new HeaderBarPlugin.SearchTableAction<>())).addPlugin(simplePaginationPlugin);
    LocalListDataStore<Contact> localListDataStore = new LocalListDataStore<>();
    localListDataStore.setRecordsSorter(new ContactSorter());
    localListDataStore.setSearchFilter(new ContactSearchFilter());
    localListDataStore.setPagination(simplePaginationPlugin.getSimplePagination());
    DataTable<Contact> table = new DataTable<>(tableConfig, localListDataStore);
    element.appendChild(Card.create("SIMPLE PAGINATION", "Simple pagination plugin allows the table to fire pagination events helpful for the datasource").setCollapsible().appendChild(new TableStyleActions(table)).appendChild(table).element());
    contactListParseHandlers.add(contacts -> {
        localListDataStore.setData(subList(contacts, 0, 100));
        table.load();
    });
}
Also used : SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) SampleClass(org.dominokit.domino.SampleClass) JsonResource(org.dominokit.domino.datatable.client.views.JsonResource) SampleMethod(org.dominokit.domino.SampleMethod) SelectionPlugin(org.dominokit.domino.ui.datatable.plugins.SelectionPlugin) UiView(org.dominokit.domino.api.client.annotations.UiView) Date(java.util.Date) CodeCard(org.dominokit.domino.componentcase.client.ui.views.CodeCard) DoubleBox(org.dominokit.domino.ui.forms.DoubleBox) Style(org.dominokit.domino.ui.style.Style) TreeGridSample(org.dominokit.domino.datatable.client.views.model.TreeGridSample) Paragraph(org.dominokit.domino.ui.Typography.Paragraph) Random(java.util.Random) HTMLTableCellElement(elemental2.dom.HTMLTableCellElement) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) Notification(org.dominokit.domino.ui.notifications.Notification) Icon(org.dominokit.domino.ui.icons.Icon) EmailBox(org.dominokit.domino.ui.forms.EmailBox) HTMLElement(elemental2.dom.HTMLElement) TextHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.TextHeaderFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) SimplePaginationPlugin(org.dominokit.domino.ui.datatable.plugins.SimplePaginationPlugin) Card(org.dominokit.domino.ui.cards.Card) ResourceException(com.google.gwt.resources.client.ResourceException) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) TextResource(com.google.gwt.resources.client.TextResource) BaseDemoView(org.dominokit.domino.componentcase.client.ui.views.BaseDemoView) DominoElement(org.dominokit.domino.ui.utils.DominoElement) RecordDetailsPlugin(org.dominokit.domino.ui.datatable.plugins.RecordDetailsPlugin) BooleanHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.BooleanHeaderFilter) Collectors(java.util.stream.Collectors) SortPlugin(org.dominokit.domino.ui.datatable.plugins.SortPlugin) List(java.util.List) Select(org.dominokit.domino.ui.forms.Select) Color(org.dominokit.domino.ui.style.Color) Unit.px(org.dominokit.domino.ui.style.Unit.px) ColumnHeaderFilterPlugin(org.dominokit.domino.ui.datatable.plugins.ColumnHeaderFilterPlugin) ScrollingPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.ScrollingPaginationPlugin) Optional(java.util.Optional) GroupingPlugin(org.dominokit.domino.ui.datatable.plugins.GroupingPlugin) CheckBox(org.dominokit.domino.ui.forms.CheckBox) ContactList(org.dominokit.domino.datatable.client.views.model.ContactList) EyeColor(org.dominokit.domino.datatable.client.views.model.EyeColor) DatatableProxy(org.dominokit.domino.datatable.client.presenters.DatatableProxy) Icons(org.dominokit.domino.ui.icons.Icons) ColumnConfig(org.dominokit.domino.ui.datatable.ColumnConfig) RowCell(org.dominokit.domino.ui.datatable.RowCell) TreeGridPlugin(org.dominokit.domino.ui.datatable.plugins.TreeGridPlugin) Elements.a(org.jboss.elemento.Elements.a) Elements.td(org.jboss.elemento.Elements.td) Badge(org.dominokit.domino.ui.badges.Badge) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TopPanelPlugin(org.dominokit.domino.ui.datatable.plugins.TopPanelPlugin) DoubleHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.DoubleHeaderFilter) DatatableView(org.dominokit.domino.datatable.client.views.DatatableView) AdvancedPaginationPlugin(org.dominokit.domino.ui.datatable.plugins.AdvancedPaginationPlugin) TableEvent(org.dominokit.domino.ui.datatable.events.TableEvent) DataTable(org.dominokit.domino.ui.datatable.DataTable) ArrayList(java.util.ArrayList) BlockHeader(org.dominokit.domino.ui.header.BlockHeader) LinkToSourceCode(org.dominokit.domino.componentcase.client.ui.views.LinkToSourceCode) Elements.div(org.jboss.elemento.Elements.div) SelectHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.SelectHeaderFilter) Gender(org.dominokit.domino.datatable.client.views.model.Gender) BodyScrollPlugin(org.dominokit.domino.ui.datatable.plugins.BodyScrollPlugin) SelectOption(org.dominokit.domino.ui.forms.SelectOption) TextNode(org.dominokit.domino.ui.utils.TextNode) TextBox(org.dominokit.domino.ui.forms.TextBox) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) CellRenderer(org.dominokit.domino.ui.datatable.CellRenderer) LocalListScrollingDataSource(org.dominokit.domino.ui.datatable.store.LocalListScrollingDataSource) ResourceCallback(com.google.gwt.resources.client.ResourceCallback) ColorScheme(org.dominokit.domino.ui.style.ColorScheme) EnumHeaderFilter(org.dominokit.domino.ui.datatable.plugins.filter.header.EnumHeaderFilter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) DomGlobal(elemental2.dom.DomGlobal) TableDataUpdatedEvent(org.dominokit.domino.ui.datatable.events.TableDataUpdatedEvent) HTMLDivElement(elemental2.dom.HTMLDivElement) FieldStyle(org.dominokit.domino.ui.forms.FieldStyle) TelephoneBox(org.dominokit.domino.ui.forms.TelephoneBox) Comparator(java.util.Comparator) RowMarkerPlugin(org.dominokit.domino.ui.datatable.plugins.RowMarkerPlugin) Collections(java.util.Collections) ContactSearchFilter(org.dominokit.domino.datatable.client.views.model.ContactSearchFilter) HeaderBarPlugin(org.dominokit.domino.ui.datatable.plugins.HeaderBarPlugin) DataTable(org.dominokit.domino.ui.datatable.DataTable) ContactSorter(org.dominokit.domino.datatable.client.views.model.ContactSorter) Contact(org.dominokit.domino.datatable.client.views.model.Contact) LocalListDataStore(org.dominokit.domino.ui.datatable.store.LocalListDataStore) TableConfig(org.dominokit.domino.ui.datatable.TableConfig) SampleMethod(org.dominokit.domino.SampleMethod)

Aggregations

ResourceCallback (com.google.gwt.resources.client.ResourceCallback)10 ResourceException (com.google.gwt.resources.client.ResourceException)10 TextResource (com.google.gwt.resources.client.TextResource)10 DomGlobal (elemental2.dom.DomGlobal)10 HTMLDivElement (elemental2.dom.HTMLDivElement)10 HTMLElement (elemental2.dom.HTMLElement)10 HTMLTableCellElement (elemental2.dom.HTMLTableCellElement)10 ArrayList (java.util.ArrayList)10 Collections (java.util.Collections)10 Comparator (java.util.Comparator)10 Date (java.util.Date)10 List (java.util.List)10 Optional (java.util.Optional)10 Random (java.util.Random)10 Collectors (java.util.stream.Collectors)10 SampleClass (org.dominokit.domino.SampleClass)10 SampleMethod (org.dominokit.domino.SampleMethod)10 UiView (org.dominokit.domino.api.client.annotations.UiView)10 BaseDemoView (org.dominokit.domino.componentcase.client.ui.views.BaseDemoView)10 CodeCard (org.dominokit.domino.componentcase.client.ui.views.CodeCard)10