List of usage examples for org.apache.wicket.extensions.markup.html.repeater.data.table DataTable addBottomToolbar
public void addBottomToolbar(final AbstractToolbar toolbar)
From source file:com.evolveum.midpoint.web.component.data.TablePanel.java
License:Apache License
private void initLayout(List<IColumn<T, String>> columns, int itemsPerPage, ISortableDataProvider provider) { DataTable<T, String> table = new SelectableDataTable<T>(ID_TABLE, columns, provider, itemsPerPage); table.setOutputMarkupId(true);/*from w w w . ja v a 2 s. c om*/ TableHeadersToolbar headers = new TableHeadersToolbar(table, provider); headers.setOutputMarkupId(true); table.addTopToolbar(headers); CountToolbar count = new CountToolbar(table); addVisibleBehaviour(count, showCount); table.addBottomToolbar(count); add(table); NavigatorPanel nb2 = new NavigatorPanel(ID_PAGING, table, showPagedPaging(provider)); addVisibleBehaviour(nb2, showPaging); add(nb2); }
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 va2s . c o m*/ 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:dk.teachus.frontend.components.list.ListPanel.java
License:Apache License
private DataTable<T> createDataTable(List<IColumn<T>> columns, ISortableDataProvider<T> dataProvider, FilterForm<T> form, TeachUsFilter<T> filterStateLocator) { DataTable<T> dataTable = new DataTable<T>("table", columns, dataProvider, 40); if (form != null && filterStateLocator != null) { dataTable.addTopToolbar(new FilterSubmitToolbar(dataTable, filterStateLocator)); dataTable.addTopToolbar(new FilterToolbar(dataTable, form, filterStateLocator)); }//from ww w. j a v a 2s.c o m dataTable.addTopToolbar(new AjaxFallbackHeadersToolbar(dataTable, dataProvider)); dataTable.addTopToolbar(createNavigationToolbar(dataTable)); dataTable.addBottomToolbar(createNavigationToolbar(dataTable)); return dataTable; }
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 2 s . 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;/*from www . j av a 2s. 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.")); } }
From source file:net.fatlenny.datacitation.webapp.pages.QueryPage.java
License:Apache License
public QueryPage(final PageParameters parameters) { super(parameters); StringValue selectedQueryPid = parameters.get(Constants.PID_PARAM); add(new BookmarkablePageLink<Void>("home", HomePage.class)); add(new FeedbackPanel("feedback")); if (selectedQueryPid.isEmpty()) { error("No query transmitted. Please go back and select a valid query."); LOG.error("Parameter 'selectedQueryPid' null or emtpy."); }/*from w w w .j a va 2s . com*/ Query query = citationDBService.getQueryById(selectedQueryPid.toString()); TableModel tableModel = citationDBService.getQueryResult(query); final TextArea<String> queryString = new TextArea<String>("queryString", Model.of(wrapLines(query.getQuery()))); queryString.setEnabled(false); add(queryString); 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); }
From source file:org.cast.cwm.admin.EventLog.java
License:Open Source License
public EventLog(final PageParameters params) { super(params); setPageTitle("Event Log"); addFilterForm();//from ww w . j a v a 2 s . com OrderingCriteriaBuilder builder = makeCriteriaBuilder(); SortableHibernateProvider<Event> eventsprovider = makeHibernateProvider(builder); List<IDataColumn<Event>> columns = makeColumns(); DataTable<Event, String> table = new DataTable<Event, String>("eventtable", columns, eventsprovider, 30); table.addTopToolbar(new HeadersToolbar<String>(table, eventsprovider)); table.addTopToolbar(new NavigationToolbar(table)); table.addBottomToolbar(new NavigationToolbar(table)); table.addBottomToolbar(new NoRecordsToolbar(table, new Model<String>("No events found"))); add(table); CSVDownload<Event> download = new CSVDownload<Event>(columns, eventsprovider); add(new ResourceLink<Object>("downloadLink", download)); }
From source file:org.cast.cwm.admin.UserContentLogPage.java
License:Open Source License
public UserContentLogPage(PageParameters parameters) { super(parameters); addFilterForm();/*w ww. j a v a 2 s . c om*/ AuditDataProvider<UserContent, DefaultRevisionEntity> provider = getDataProvider(); List<IDataColumn<AuditTriple<UserContent, DefaultRevisionEntity>>> columns = makeColumns(); // Annoying to have to make a new List here; DataTable should use <? extends IColumn>. ArrayList<IColumn<AuditTriple<UserContent, DefaultRevisionEntity>, String>> colList = new ArrayList<IColumn<AuditTriple<UserContent, DefaultRevisionEntity>, String>>( columns); DataTable<AuditTriple<UserContent, DefaultRevisionEntity>, String> table = new DataTable<AuditTriple<UserContent, DefaultRevisionEntity>, String>( "table", colList, provider, ITEMS_PER_PAGE); table.addTopToolbar(new HeadersToolbar<String>(table, provider)); table.addBottomToolbar(new NavigationToolbar(table)); table.addBottomToolbar(new NoRecordsToolbar(table, new Model<String>("No revisions found"))); add(table); CSVDownload<AuditTriple<UserContent, DefaultRevisionEntity>> download = new CSVDownload<AuditTriple<UserContent, DefaultRevisionEntity>>( columns, provider); add(new ResourceLink<Object>("downloadLink", download)); // Look for a configuration variable with site's URL, called either cwm.url or app.url. // If it is set, it is used to make URLs absolute in the downloaded file if (Application.get() instanceof CwmApplication) { IAppConfiguration config = CwmApplication.get().getConfiguration(); urlPrefix = config.getString("cwm.url", config.getString("app.url", "")); } }
From source file:org.dcache.webadmin.view.panels.alarms.DisplayPanel.java
License:Open Source License
public DisplayPanel(String id, final AlarmsPage parent) { super(id);/*from w ww .j a va2 s .com*/ List<IColumn<LogEntry, String>> columns = new ArrayList<>(); final AlarmTableProvider provider = parent.getWebadminApplication().getAlarmDisplayService() .getDataProvider(); addDeleteColumn(columns, provider); addCloseColumn(columns, provider); addAttributeColumns(columns); addNotesColumn(columns, provider); add(new Label("tableTitle", new PropertyModel<String>(provider, "tableTitle"))); DataTable<LogEntry, String> table = new DataTable<LogEntry, String>("alarms", columns, provider, 100) { private static final long serialVersionUID = -6574880701979145714L; protected Item<LogEntry> newRowItem(final String id, final int index, final IModel<LogEntry> model) { Item<LogEntry> item = super.newRowItem(id, index, model); if (provider.isAlarm() == null && model.getObject().isAlarm()) { item.add(AttributeModifier.replace("style", "color: #880000;")); } return item; } }; table.addBottomToolbar(new NavigationToolbar(table)); table.addTopToolbar(new HeadersToolbar(table, provider)); add(table); }
From source file:org.onexus.website.api.widgets.tableviewer.DataTablePanel.java
License:Apache License
public DataTablePanel(String id, final List<? extends IColumn<IEntityTable, String>> columns, final EntitiesRowProvider dataProvider, final long defaultRowsPerPage) { super(id);//from ww w .j av a2s.c o m this.dataProvider = dataProvider; indicator = new WebMarkupContainer("indicator"); indicator.setOutputMarkupId(true); indicator.add(new Image("loading", OnDomReadyPanel.LOADING_IMAGE)); add(indicator); DataTable<IEntityTable, String> resultTable = new DataTable<IEntityTable, String>("datatable", columns, dataProvider, defaultRowsPerPage); resultTable.setOutputMarkupId(true); resultTable.setVersioned(false); resultTable.addTopToolbar(new HeadersToolbar(resultTable, dataProvider)); resultTable.addBottomToolbar(new NoRecordsToolbar(resultTable)); resultTable.addBottomToolbar(new NavigationToolbar(resultTable)); add(resultTable); }