List of usage examples for org.apache.wicket.extensions.markup.html.repeater.data.table ISortableDataProvider size
long size();
From source file:com.evolveum.midpoint.web.page.admin.server.TaskWfChildPanel.java
License:Apache License
private void initLayout(final IModel<TaskDto> taskDtoModel) { changesModel = new PropertyModel<>(taskDtoModel, TaskDto.F_CHANGE_BEING_APPROVED); TaskChangesPanel changesPanel = new TaskChangesPanel(ID_CHANGES, changesModel); changesPanel.setOutputMarkupId(true); add(changesPanel);// w w w .j a va2 s. c o m final ItemApprovalHistoryPanel history = new ItemApprovalHistoryPanel(ID_HISTORY, new PropertyModel<WfContextType>(taskDtoModel, TaskDto.F_WORKFLOW_CONTEXT), UserProfileStorage.TableId.PAGE_TASK_HISTORY_PANEL, (int) parentPage.getItemsPerPage(UserProfileStorage.TableId.PAGE_TASK_HISTORY_PANEL)); history.setOutputMarkupId(true); add(history); add(WebComponentUtil.createHelp(ID_HISTORY_HELP)); WebMarkupContainer workItemsContainer = new WebMarkupContainer(ID_CURRENT_WORK_ITEMS_CONTAINER); final ISortableDataProvider<WorkItemDto, String> provider = new ListDataProvider(this, new PropertyModel<List<WorkItemDto>>(taskDtoModel, TaskDto.F_WORK_ITEMS)); final WorkItemsPanel workItemsPanel = new WorkItemsPanel(ID_CURRENT_WORK_ITEMS, provider, UserProfileStorage.TableId.PAGE_TASK_CURRENT_WORK_ITEMS_PANEL, (int) parentPage.getItemsPerPage(UserProfileStorage.TableId.PAGE_TASK_CURRENT_WORK_ITEMS_PANEL), WorkItemsPanel.View.ITEMS_FOR_PROCESS); workItemsPanel.setOutputMarkupId(true); workItemsContainer.add(workItemsPanel); workItemsContainer.setOutputMarkupId(true); workItemsContainer.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return provider.size() > 0; } }); workItemsContainer.add(WebComponentUtil.createHelp(ID_CURRENT_WORK_ITEMS_HELP)); add(workItemsContainer); final PropertyModel<List<ProcessInstanceDto>> relatedRequestsModel = new PropertyModel<>(taskDtoModel, TaskDto.F_WORKFLOW_REQUESTS); WebMarkupContainer relatedRequestsContainer = new WebMarkupContainer(ID_RELATED_REQUESTS_CONTAINER); relatedRequestsContainer.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return CollectionUtils.isNotEmpty(relatedRequestsModel.getObject()); } }); relatedRequestsContainer.setOutputMarkupId(true); add(relatedRequestsContainer); ISortableDataProvider<ProcessInstanceDto, String> requestsProvider = new ListDataProvider(this, relatedRequestsModel); relatedRequestsContainer.add(new ProcessInstancesPanel(ID_RELATED_REQUESTS, requestsProvider, null, 10, ProcessInstancesPanel.View.TASKS_FOR_PROCESS, null)); relatedRequestsContainer.add(WebComponentUtil.createHelp(ID_RELATED_REQUESTS_HELP)); add(new AjaxFallbackLink(ID_SHOW_PARENT) { public void onClick(AjaxRequestTarget target) { String oid = taskDtoModel.getObject().getParentTaskOid(); if (oid != null) { PageParameters parameters = new PageParameters(); parameters.add(OnePageParameterEncoder.PARAMETER, oid); setResponsePage(PageTaskEdit.class, parameters); } } }); add(WebComponentUtil.createHelp(ID_SHOW_PARENT_HELP)); }
From source file:org.artifactory.common.wicket.component.table.columns.checkbox.SelectAllCheckboxColumn.java
License:Open Source License
@SuppressWarnings({ "unchecked" })
private void selectAll(SortableTable<T> table, AjaxRequestTarget target) {
ISortableDataProvider<T> dataProvider = table.getSortableDataProvider();
Iterator<T> iterator = (Iterator<T>) dataProvider.iterator(0, dataProvider.size());
while (iterator.hasNext()) {
T rowObject = iterator.next();//from www . ja v a 2 s .co m
if (canChangeItemSelectionState(rowObject)) {
PropertyResolver.setValue(getExpression(), rowObject, isSelectAll(), null);
}
}
onSelectAll(iterator, target);
target.add(table);
}
From source file:org.cast.cwm.service.ResponseService.java
License:Open Source License
@Override public void setResponseSortOrder(IModel<? extends Prompt> mPrompt, IModel<Response> mResponse, Integer index) { // DataProvider for Responses for this Prompt. // It is assumed that the target Response is included in this list. ISortableDataProvider<Response, String> dataProvider = getResponseProviderForPrompt(mPrompt); dataProvider.getSortState().setPropertySortOrder("sortOrder", SortOrder.ASCENDING); if (index == null) index = (int) dataProvider.size() - 1; if (index < 0) throw new IllegalArgumentException("Index cannot be negative."); if (index >= (dataProvider.size())) throw new IndexOutOfBoundsException( "Index {" + index + "} exceeds the number of Responses {" + dataProvider.size() + "}."); Iterator<? extends Response> iterator = dataProvider.iterator(0, dataProvider.size()); int iteratorIndex = 0; boolean foundResponse = false; while (iterator.hasNext()) { Response r = iterator.next(); // Reached the target response if (r.equals(mResponse.getObject())) foundResponse = true;/*from www. ja v a 2 s. c o m*/ // Overwrite sortOrder; making room for insertion if necessary if (iteratorIndex >= index && !foundResponse) r.setSortOrder(iteratorIndex + 1); else r.setSortOrder(iteratorIndex); iteratorIndex++; } if (!foundResponse) throw new IllegalStateException("Unknown behavior - Response was not found in iterator."); mResponse.getObject().setSortOrder(index); cwmService.flushChanges(); }
From source file:org.hippoecm.frontend.editor.workflow.dialog.SelectableDocumentsView.java
License:Apache License
public SelectableDocumentsView(final String id, final IModel<String> message, final ISortableDataProvider<Node, String> provider, final IEditorManager editorManager) { super(id);/*www .j ava 2s .c o m*/ this.provider = provider; this.editorMgr = editorManager; setOutputMarkupId(true); add(new Label("message", message)); dataTable = new ListDataTable("datatable", getTableDefinition(), provider, new TableSelectionListener() { public void selectionChanged(IModel model) { } }, true, this); dataTable.add(CssClass.append(DocumentListColumn.DOCUMENT_LIST_CSS_CLASS)); dataTable.add(CssClass.append(new AbstractReadOnlyModel<String>() { @Override public String getObject() { return provider.size() > getPageSize() ? "hippo-paging" : ""; } })); add(dataTable); add(actionContainer = new WebMarkupContainer("actions")); add(CssClass.append("hippo-selectable-documents")); add(CssClass.append(new LoadableDetachableModel<String>() { @Override protected String load() { if (SelectableDocumentsView.this.provider.size() == 0) { return "hippo-empty"; } return ""; } })); AjaxLink selectAll = new AjaxLink("select-all") { @Override public void onClick(AjaxRequestTarget target) { selectedDocuments.clear(); ISortableDataProvider<Node, String> provider = SelectableDocumentsView.this.provider; Iterator<? extends Node> iter = provider.iterator(0, provider.size()); while (iter.hasNext()) { selectedDocuments.add(provider.model(iter.next())); } target.add(SelectableDocumentsView.this); } }; actionContainer.add(selectAll); AjaxLink selectNone = new AjaxLink("select-none") { @Override public void onClick(AjaxRequestTarget target) { selectedDocuments.clear(); target.add(SelectableDocumentsView.this); } }; actionContainer.add(selectNone); openButton = new AjaxLink("open") { @Override public void onClick(AjaxRequestTarget target) { openEditor(); } }; if (editorMgr == null) { openButton.setEnabled(false); } add(openButton); }
From source file:org.opensingular.form.wicket.mapper.masterdetail.MasterDetailBSDataTableBuilder.java
License:Apache License
@Override protected BSDataTable<T, S> newDatatable(String id, List<? extends IColumn<T, S>> columns, ISortableDataProvider<T, S> dataProvider) { return new BSDataTable<T, S>(id, columns, dataProvider) { @Override/*ww w .j a va2 s . co m*/ protected AbstractToolbar newNoRecordsToolbar() { if (isShowNoRecordsToolbar()) { return new MasterDetailNoRecordsToolbar(this); } else { return null; } } @Override protected AbstractToolbar newPaginationToolbar() { return new BSPaginationToolbar(this) { @Override protected BSPaginationPanel newPagination(String id, DataTable<?, ?> table) { return new BSPaginationPanel(id, table) { @Override protected NumberedPageLink newNumberedPageLink(ListItem<Long> item) { NumberedPageLink link = super.newNumberedPageLink(item); item.add($b.classAppender("has-error", $m.get(() -> (!SValidationFeedbackHandler .collectNestedErrors(new FeedbackFence(item)).isEmpty())))); SValidationFeedbackHandler.bindTo(new FeedbackFence(item)).addListener( (handler, target, container, baseInstances, oldErrors, newErrors) -> { if (target != null) target.add(item); }).setInstanceModels($m.get(() -> { final IDataProvider<SInstance> dataProvider = (IDataProvider<SInstance>) table .getDataProvider(); final long pageIndex = item.getModelObject(); final long first = pageIndex * table.getItemsPerPage(); final long count = Math.min(table.getItemsPerPage(), dataProvider.size() - first); final Iterator<? extends SInstance> it = dataProvider.iterator(first, count); final List<IModel<? extends SInstance>> list = Lists.newArrayList(); while (it.hasNext()) list.add(dataProvider.model(it.next())); return list; })); return link; } }; } }; } }; }