public int getNumberOfItems() { return provider.size(); }
public void start(AbstractProvider<P, C> provider) { Iterator<C> iter = provider.iterator(0, provider.size()); while (iter.hasNext()) { C model = iter.next(); addModel(model, provider.getFieldElement(model)); } }
protected boolean canRemoveItem() { IFieldDescriptor field = helper.getField(); if (IEditor.Mode.EDIT != mode || field == null) { return false; } if (!field.isMultiple() && !field.getValidators().contains("optional")) { return false; } if (field.getValidators().contains("required") && provider.size() == 1) { return false; } return true; }
private AbstractProvider<P, C> getProvider(IModel<Node> model) { IFieldDescriptor field = helper.getField(); if (field != null) { ITemplateEngine engine = getTemplateEngine(); if (engine != null) { ITypeDescriptor subType = field.getTypeDescriptor(); AbstractProvider<P, C> provider = newProvider(field, subType, model); if (IEditor.Mode.EDIT == mode && provider.size() == 0 && (!field.isMultiple() || field.getValidators().contains("required")) && !field.getValidators().contains("optional") && isNotAbstractNodeType(subType.getType())) { provider.addNew(); } return provider; } else { log.warn("No engine found to display new model"); } } return null; }
provider = new PropertyValueProvider(field, null, itemModel); Iterator<? extends IModel> iter = provider.iterator(0, provider.size()); if (required && !iter.hasNext()) { violations.add(newViolation(new ModelPathElement(field, field.getPath(), 0),
boolean isLast = (model.getIndex() == provider.size() - 1); if (!canReorderItems()) { downLink.setVisible(false);
downLink.setVisible(false); boolean isLast = (index == provider.size() - 1); downLink.setEnabled(!isLast);