List of usage examples for org.apache.wicket.extensions.markup.html.repeater.data.table HeadersToolbar HeadersToolbar
public <T> HeadersToolbar(final DataTable<T, S> table, final ISortStateLocator<S> stateLocator)
From source file:an.dpr.manteniket.components.ManteniketDataTable.java
License:Apache License
/** * Constructor/*w w w. ja va 2 s.c om*/ * * @param id * component id * @param columns * list of columns * @param dataProvider * data provider * @param rowsPerPage * number of rows per page */ public ManteniketDataTable(final String id, final List<? extends IColumn<T, S>> columns, final ISortableDataProvider<T, S> dataProvider, final int rowsPerPage) { super(id, columns, dataProvider, rowsPerPage); addTopToolbar(new HeadersToolbar<S>(this, dataProvider)); addBottomToolbar(new NoRecordsToolbar(this)); //bootstrap addBottomToolbar(new BootstrapNavigationToolbar(this)); this.add(new TableBehavior().striped()); }
From source file:com.kenai.wicketgae.web.panels.person.list.ListPersonPanel.java
License:Apache License
public ListPersonPanel(final String id, final MainPage mainPage) { super(id);/*from www . j a va 2s .com*/ this.mainPage = mainPage; final PersonDataProvider dataProvider = new PersonDataProvider(); final IColumn<Person>[] columns = createColumns(); final DataTable<Person> table = new PersonDataTable("table", columns, dataProvider, ROWS_PER_PAGE); table.setOutputMarkupId(true); add(table); table.addTopToolbar(new HeadersToolbar(table, null)); table.addBottomToolbar(new AjaxNavigationToolbar(table)); }
From source file:com.locke.tricks.u.U.java
License:Apache License
@SuppressWarnings("unchecked") public U() {/*from w w w. j av a 2 s .c om*/ final IColumn<Utility>[] columns = new IColumn[2]; columns[0] = new PropertyColumn<Utility>(new Model<String>("Code"), "code", "code"); columns[1] = new PropertyColumn<Utility>(new Model<String>("Output"), "output", "output"); final DataTable<Utility> dataTable = new DataTable<Utility>("utilities", columns, this.utilitiesDataProvider, Integer.MAX_VALUE); dataTable.addTopToolbar(new HeadersToolbar(dataTable, new ISortStateLocator() { private ISortState sortState = new SingleSortState(); public ISortState getSortState() { return this.sortState; } public void setSortState(final ISortState state) { this.sortState = state; } })); add(dataTable); this.utilities.add(new Utility("Time.now().toString()") { @Override public String getOutput() { return Time.now().toString(); } }); this.utilities.add(new Utility("Duration.ONE_WEEK.toString()") { @Override public String getOutput() { return Duration.ONE_WEEK.toString(); } }); this.utilities.add(new Utility("Duration.ONE_WEEK.add(Duration.ONE_DAY).toString()") { @Override public String getOutput() { return Duration.ONE_WEEK.add(Duration.ONE_DAY).toString(); } }); this.utilities.add(new Utility("Time.now().add(Duration.ONE_WEEK).toString()") { @Override public String getOutput() { return Time.now().add(Duration.ONE_WEEK).toString(); } }); this.utilities.add(new Utility("Bytes.valueOf(\"512K\") + Bytes.megabytes(1.3)") { @Override public String getOutput() { return Bytes.bytes(Bytes.valueOf("512K").bytes() + Bytes.megabytes(1.3).bytes()).toString(); } }); this.utilities.add(new Utility("Parsing \'13 + 13\' using MetaPattern") { @Override public String getOutput() { final IntegerGroup a = new IntegerGroup(MetaPattern.DIGITS); final IntegerGroup b = new IntegerGroup(MetaPattern.DIGITS); final MetaPattern sum = new MetaPattern(new MetaPattern[] { a, MetaPattern.OPTIONAL_WHITESPACE, MetaPattern.PLUS, MetaPattern.OPTIONAL_WHITESPACE, b }); final Matcher matcher = sum.matcher("13 + 13"); if (matcher.matches()) { return Integer.toString(a.getInt(matcher) + b.getInt(matcher)); } return "Failed to match."; } }); }
From source file:com.norconex.commons.wicket.bootstrap.table.BootstrapDataTable.java
License:Apache License
protected void addToolbars(ISortableDataProvider<T, S> dataProvider) { addTopToolbar(new BootstrapNavigationToolbar(this, true)); addTopToolbar(new HeadersToolbar<S>(this, dataProvider)); addBottomToolbar(new NoRecordsToolbar(this)); addBottomToolbar(new BootstrapNavigationToolbar(this, false)); }
From source file:com.wt.dms.web.IndexManagerDataTable.java
License:Apache License
/** * Constructor//from w w w. ja v a2s . c om * * @param id * component id * @param columns * list of columns * @param dataProvider * data provider * @param rowsPerPage * number of rows per page */ public IndexManagerDataTable(final String id, final List<IColumn<T>> columns, final ISortableDataProvider<T> dataProvider, final int rowsPerPage) { super(id, columns, dataProvider, rowsPerPage); addTopToolbar(new HeadersToolbar(this, dataProvider)); addBottomToolbar(new NoRecordsToolbar(this)); /*addTopToolbar(new NavigationToolbar(this));*/ addBottomToolbar(new NavigationToolbar(this)); }
From source file:com.zh.snmp.snmpweb.components.ZhDataDable.java
License:Open Source License
/** * /*from ww w . ja v a 2 s.c o m*/ * @param id * @param columns * @param dataProvider * @param rowsPerPage */ public ZhDataDable(String id, IColumn<T>[] columns, ISortableDataProvider<T> dataProvider, int rowsPerPage) { super(id, columns, dataProvider, rowsPerPage); addTopToolbar(new ZhNavigationToolbar(this)); addTopToolbar(new HeadersToolbar(this, dataProvider)); addBottomToolbar(new NoRecordsToolbar(this)); }
From source file:de.alpharogroup.wicket.data.provider.examples.datatable.DataTablePanel.java
License:Apache License
public DataTablePanel(final String id) { super(id);//from w w w . j a va 2s.c o m final SortableFilterPersonDataProvider dataProvider = new SortableFilterPersonDataProvider( PersonDatabaseManager.getInstance().getPersons()) { private static final long serialVersionUID = 1L; @Override public List<Person> getData() { final List<Person> persons = PersonDatabaseManager.getInstance().getPersons(); setData(persons); return persons; } }; dataProvider.setSort("firstname", SortOrder.ASCENDING); final List<IColumn<Person, String>> columns = new ArrayList<>(); columns.add(new AbstractColumn<Person, String>(new Model<>("Actions")) { /** * The serialVersionUID */ private static final long serialVersionUID = 1L; /** * {@inheritDoc} */ @Override public void populateItem(final Item<ICellPopulator<Person>> cellItem, final String componentId, final IModel<Person> model) { final ActionPanel<Person> editActionPanel = new ActionPanel<Person>(componentId, model) { /** * The serialVersionUID */ private static final long serialVersionUID = 1L; /** * {@inheritDoc} */ @Override protected IModel<String> newActionLinkLabelModel() { return ResourceModelFactory.newResourceModel("global.main.button.edit.label"); } /** * {@inheritDoc} */ @Override protected void onAction(final AjaxRequestTarget target) { DataTablePanel.this.onEdit(target); } }; cellItem.add(editActionPanel); } }); columns.add(new PropertyColumn<Person, String>(Model.of("First name"), "firstname", "firstname")); columns.add(new PropertyColumn<Person, String>(Model.of("Last Name"), "lastname", "lastname") { private static final long serialVersionUID = 1L; @Override public String getCssClass() { return "last-name"; } }); columns.add(new PropertyColumn<Person, String>(Model.of("Date of birth"), "dateOfBirth", "dateOfBirth")); final DataTable<Person, String> tableWithFilterForm = new DataTable<>("tableWithFilterForm", columns, dataProvider, 10); tableWithFilterForm.setOutputMarkupId(true); final FilterForm<PersonFilter> filterForm = new FilterForm<>("filterForm", dataProvider); filterForm.add(new TextField<>("dateFrom", PropertyModel.of(dataProvider, "filterState.dateFrom"))); filterForm.add(new TextField<>("dateTo", PropertyModel.of(dataProvider, "filterState.dateTo"))); add(filterForm); final FilterToolbar filterToolbar = new FilterToolbar(tableWithFilterForm, filterForm); tableWithFilterForm.addTopToolbar(filterToolbar); tableWithFilterForm.addTopToolbar(new NavigationToolbar(tableWithFilterForm)); tableWithFilterForm.addTopToolbar(new HeadersToolbar<>(tableWithFilterForm, dataProvider)); filterForm.add(tableWithFilterForm); }
From source file:de.tudarmstadt.ukp.csniper.webapp.support.wicket.CustomDataTable.java
License:Apache License
/** * Constructor//from w w w. j a va 2 s. c o m * * @param id * component id * @param columns * list of columns * @param dataProvider * data provider * @param rowsPerPage * number of rows per page */ public CustomDataTable(final String id, final List<IColumn<T, String>> columns, final ISortableDataProvider<T, String> dataProvider, final int rowsPerPage) { super(id, columns, dataProvider, rowsPerPage); addTopToolbar(new ExtendedNavigationToolbar(this)); addTopToolbar(new HeadersToolbar(this, dataProvider)); addBottomToolbar(new NoRecordsToolbar(this)); }
From source file:net.databinder.components.hib.QueryPanel.java
License:Open Source License
/** * Creates a result table for the current query. * @return a result table, or an empty label if there is no current query *//*from w w w . j a v a 2s. co m*/ private Component getResultsTable() { if (Strings.isEmpty(query.getQuery())) { return new Label("results", ""); } else { IDataProvider dataProvider = new IDataProvider() { private static final long serialVersionUID = 1L; public void detach() { } public int size() { Session sess = Databinder.getHibernateSession(); Query query = sess.createQuery(getQuery()); return query.list().size(); } public String getQuery() { return QueryPanel.this.query.getQuery(); } public IModel model(Object object) { return new BoundCompoundPropertyModel(new HibernateObjectModel(object)); } public Iterator iterator(int first, int count) { Session sess = Databinder.getHibernateSession(); long start = System.nanoTime(); try { Query q = sess.createQuery(getQuery()); q.setFirstResult(first); q.setMaxResults(count); return q.iterate(); } finally { float nanoTime = ((System.nanoTime() - start) / 1000) / 1000.0f; setExecutionInfo("query executed in " + nanoTime + " ms: " + getQuery()); } } }; IColumn[] columns; Session sess = Databinder.getHibernateSession(); Query q = sess.createQuery(query.getQuery()); String[] aliases; Type[] returnTypes; try { aliases = q.getReturnAliases(); returnTypes = q.getReturnTypes(); } catch (NullPointerException e) { // thrown on updates return new Label("results", ""); } if (returnTypes.length != 1) { columns = new IColumn[returnTypes.length]; for (int i = 0; i < returnTypes.length; i++) { String alias = aliases == null || aliases.length <= i ? returnTypes[i].getName() : aliases[i]; final int index = i; columns[i] = new AbstractColumn(new Model(alias)) { private static final long serialVersionUID = 1L; public void populateItem(Item cellItem, String componentId, IModel rowModel) { Object[] objects = (Object[]) rowModel.getObject(); cellItem.add(new Label(componentId, new Model(objects[index] == null ? "" : objects[index].toString()))); } }; } } else { Type returnType = returnTypes[0]; if (returnType.isEntityType()) { Class clss = returnType.getReturnedClass(); ClassMetadata metadata = Databinder.getHibernateSessionFactory().getClassMetadata(clss); List<IColumn> cols = new ArrayList<IColumn>(); String idProp = metadata.getIdentifierPropertyName(); cols.add(new PropertyColumn(new Model(idProp), idProp)); String[] properties = metadata.getPropertyNames(); for (String prop : properties) { Type type = metadata.getPropertyType(prop); if (type.isCollectionType()) { // TODO: see if we could provide a link to the collection value } else { cols.add(new PropertyColumn(new Model(prop), prop)); } } columns = (IColumn[]) cols.toArray(new IColumn[cols.size()]); } else { String alias = aliases == null || aliases.length == 0 ? returnType.getName() : aliases[0]; columns = new IColumn[] { new AbstractColumn(new Model(alias)) { private static final long serialVersionUID = 1L; public void populateItem(Item cellItem, String componentId, IModel rowModel) { cellItem.add(new Label(componentId, rowModel)); } } }; } } DataTable dataTable = new DataTable("results", columns, dataProvider, 10); dataTable.addTopToolbar(new HeadersToolbar(dataTable, null)); dataTable.addBottomToolbar(new NavigationToolbar(dataTable)); dataTable.setOutputMarkupId(true); return dataTable; } }
From source file:net.fatlenny.datacitation.webapp.pages.DatasetCreationPage.java
License:Apache License
private void initializeDatatable(String selectedFile, String queryString) { if (selectedFile == null) { add(new Label("datatable", "Error populating data table.")); return;/* www.java2 s. co m*/ } try { TableModel tableModel; if (queryString.isEmpty()) { tableModel = citationDBService.loadDataset(selectedFile.toString()); } else { String pidIdentifier = UUID.randomUUID().toString(); PID pid = new DefaultPID.PIDBuilder(pidIdentifier).setName(pidIdentifier).build(); Revision revision = new DefaultRevision("HEAD"); Query query = new DefaultQuery.QueryBuilder(pid, queryString, selectedFile, revision).build(); tableModel = citationDBService.getQueryResult(query); } revision = tableModel.getMetaData().getRevision().getRevisionId(); List<IColumn> header = new ArrayList<>(); List<String> headerData = tableModel.getHeaderData(); for (int i = 0; i < headerData.size(); i++) { header.add(new PropertyColumn<>(new Model<>(headerData.get(i)), String.format("%s", i))); } List<String[]> rows = tableModel.getRowData(); ListDataProvider<String[]> dataProvider = new ListDataProvider<>(rows); DataTable<String, String> table = new DataTable("datatable", header, dataProvider, 15); table.addBottomToolbar(new NavigationToolbar(table)); table.addTopToolbar(new HeadersToolbar(table, null)); add(table); } catch (CitationDBException e) { error(e.getMessage()); add(new Label("datatable", "Error populating data table.")); } }