protected void addFieldsToFieldGroup(FieldGroup newRuntimeFieldGroup, List<FieldGroup.FieldConfig> fields) { int rowsPerColumn; int propertiesCount = rds.getPropertiesFilteredByCategory().size(); if (StringUtils.isNotBlank(cols)) { if (propertiesCount % Integer.parseInt(cols) == 0) { rowsPerColumn = propertiesCount / Integer.parseInt(cols); } else { rowsPerColumn = propertiesCount / Integer.parseInt(cols) + 1; } } else if (StringUtils.isNotBlank(rows)) { rowsPerColumn = Integer.parseInt(rows); } else { rowsPerColumn = propertiesCount; } int columnNo = 0; int fieldsCount = 0; for (FieldGroup.FieldConfig field : fields) { fieldsCount++; newRuntimeFieldGroup.addField(field, columnNo); if (fieldsCount % rowsPerColumn == 0) { columnNo++; newRuntimeFieldGroup.setColumns(columnNo + 1); } } }
protected List<FieldGroup.FieldConfig> createFieldsForAttributes(FieldGroup newRuntimeFieldGroup) { @SuppressWarnings("unchecked") Collection<DynamicAttributesMetaProperty> metaProperties = rds.getPropertiesFilteredByCategory(); List<FieldGroup.FieldConfig> fields = new ArrayList<>(metaProperties.size()); for (DynamicAttributesMetaProperty property : metaProperties) { FieldGroup.FieldConfig field = newRuntimeFieldGroup.createField(property.getName()); field.setProperty(property.getName()); CategoryAttribute attribute = property.getAttribute(); if (attribute != null) { field.setCaption(attribute.getLocaleName()); if (StringUtils.isNotBlank(attribute.getWidth())) { field.setWidth(attribute.getWidth()); } else { field.setWidth(fieldWidth); } } else { field.setCaption(property.getName()); field.setWidth(fieldWidth); } fields.add(field); } return fields; }