@Override public OrienteerDataTable<T, S> addCommand(Command<T> command) { commandsToolbar.addCommand(command); return this; }
@Override protected Item<T> newRowItem(final String id, final int index, final IModel<T> model) { return new MetaContextItem<T, Object>(id, index, model); }
@Override protected void onPrepareResults(OrienteerDataTable<ODocument, String> table, OClass oClass, IModel<DisplayMode> modeModel) { table.addCommand(createSelectCommand(table)); if (isMultiValue) { table.addCommand(createSelectAndSearchCommand(table, this)); } }
public OrienteerDataTable(String id, List<? extends IColumn<T, S>> columns, ISortableDataProvider<T, S> dataProvider, int rowsPerPage) { super(id, columns, dataProvider, rowsPerPage); addTopToolbar(commandsToolbar= new DataTableCommandsToolbar<T>(this)); addTopToolbar(headersToolbar = new OrienteerHeadersToolbar<>(this, dataProvider)); addBottomToolbar(navigationToolbar = new OrienteerNavigationToolbar(this)); addBottomToolbar(noRecordsToolbar = new NoRecordsToolbar(this)); setOutputMarkupPlaceholderTag(true); setItemReuseStrategy(ReuseIfModelsEqualStrategy.getInstance()); add(UpdateOnActionPerformedEventBehavior.INSTANCE_ALL_CONTINUE); }
@Override public void addFilterForm(FilterForm<OQueryModel<T>> filterForm) { Args.notNull(filterForm, "filterForm"); if (needAddFilterToolbar(filterForm)) { headersToolbar.setFilterForm(filterForm); } }
@Override public void populateItem(Item<ICellPopulator<OIndex<?>>> cellItem, String componentId, IModel<OIndex<?>> rowModel) { if(DisplayMode.EDIT.equals(getModeObject())) { super.populateItem(cellItem, componentId, rowModel); } else { cellItem.add(new OIndexViewPanel(componentId, rowModel)); } }
public IModel<String> getLabelModel(){ if(labelModel==null) { labelModel = newLabelModel(); } return labelModel; }
@Override public OrienteerDataTable<T, S> removeCommand(Command<T> command) { commandsToolbar.removeCommand(command); return this; }
public MetaContextItem(String id, int index, IModel<T> model) { super(id, index, model); setOutputMarkupId(true); }
@Override public final IModel<String> getDisplayModel() { return getLabelModel(); }
public void resetSelection() { checkboxColumn.resetSelection(); }
public String getNameProperty() { return getSortProperty(); }
@Override public String newCommandId() { return commandsToolbar.newCommandId(); }
public List<T> getSelected() { return checkboxColumn.getSelected(); }
public OEntityColumn(OProperty oProperty, boolean sortColumn, IModel<DisplayMode> modeModel) { super(sortColumn?resolveSortExpression(oProperty):null, oProperty, modeModel); }
@Override protected <V> AbstractMetaPanel<ODocument, OProperty, V> newMetaPanel( String componentId, IModel<OProperty> criteryModel, IModel<ODocument> rowModel) { return new ODocumentMetaPanel<V>(componentId, getModeModel(), rowModel, criteryModel) { @Override protected Component resolveComponent(String id, DisplayMode mode, OProperty property) { if (DisplayMode.VIEW.equals(mode) || property == null) return new LinkViewPanel(id, getEntityModel(), new ODocumentNameModel(getEntityModel(), getCriteryModel())); else return super.resolveComponent(id, mode, property); } }; }
private boolean needAddFilterToolbar(FilterForm<OQueryModel<T>> filterForm) { final String filterId = "filter"; for (IColumn<T, S> column : getColumns()) { if (column instanceof IFilteredColumn) { IFilteredColumn<T, S> filteredColumn = (IFilteredColumn<T, S>) column; Component filter = filteredColumn.getFilter(filterId, filterForm); if (filter != null) return true; } } return false; }
@Override protected <V> AbstractMetaPanel<OClass, String, V> newMetaPanel( String componentId, IModel<String> criteryModel, IModel<OClass> rowModel) { return new OClassMetaPanel<V>(componentId, getModeModel(), rowModel, criteryModel); }
@Override protected <V> AbstractMetaPanel<OProperty, String, V> newMetaPanel( String componentId, IModel<String> criteryModel, IModel<OProperty> rowModel) { return new OPropertyMetaPanel<V>(componentId, getModeModel(), rowModel, criteryModel); }
@SuppressWarnings("unchecked") @Override public void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) { cellItem.add(newMetaPanel(componentId, criteryModel, rowModel)); }