@Override public void loadComponent() { assignXmlDescriptor(resultComponent, element); assignFrame(resultComponent); loadEnable(resultComponent, element); loadVisible(resultComponent, element); loadEditable(resultComponent, element); loadValidators(resultComponent, element); loadSettingsEnabled(resultComponent, element); loadAlign(resultComponent, element); loadStyleName(resultComponent, element); loadHeight(resultComponent, element); loadWidth(resultComponent, element); loadIcon(resultComponent, element); loadCaption(resultComponent, element); loadDescription(resultComponent, element); loadContextHelp(resultComponent, element); loadTabIndex(resultComponent, element); loadSortable(resultComponent, element); loadReorderingAllowed(resultComponent, element); loadColumnControlVisible(resultComponent, element); loadAggregatable(resultComponent, element); loadAggregationStyle(resultComponent, element);
protected void createButtonsPanel(T table, Element element) { panelElement = element.element("buttonsPanel"); if (panelElement != null) { ButtonsPanelLoader loader = (ButtonsPanelLoader) getLoader(panelElement, ButtonsPanel.NAME); loader.createComponent(); ButtonsPanel panel = loader.getResultComponent(); table.setButtonsPanel(panel); buttonsPanelLoader = loader; } }
protected Table.Column loadColumn(Element element, MetaClass metaClass) { String id = element.attributeValue("id"); MetaPropertyPath metaPropertyPath = getMetadataTools().resolveMetaPropertyPath(metaClass, id); loadCaption(column, element); loadDescription(column, element); StringUtils.capitalize(categoryAttribute.getName()); } else { MetaClass propertyMetaClass = getMetadataTools().getPropertyEnclosingMetaClass(mpp); columnCaption = getMessageTools().getPropertyCaption(propertyMetaClass, propertyName); if (i > -1) className = className.substring(i + 1); columnCaption = getMessages().getMessage(declaringClass, className + "." + id); column.setType(metaPropertyPath.getRangeJavaClass()); String width = loadThemeString(element.attributeValue("width")); if (!StringUtils.isBlank(width)) { if (StringUtils.endsWith(width, "px")) { column.setFormatter(loadFormatter(element)); loadAggregation(column, element); loadMaxTextLength(column, element); loadCaptionAsHtml(column, element);
protected void addDynamicAttributes(Table component, MetaClass metaClass, Datasource ds, CollectionLoader collectionLoader, List<Table.Column> availableColumns) { if (getMetadataTools().isPersistent(metaClass)) { String windowId = getWindowId(context); getDynamicAttributesGuiTools().getAttributesToShowOnTheScreen(metaClass, windowId, component.getId()); if (CollectionUtils.isNotEmpty(attributesToShow)) { ClientConfig clientConfig = getConfiguration().getConfig(ClientConfig.class); column.setMaxTextLength(clientConfig.getDynamicAttributesTableColumnMaxTextLength()); getDynamicAttributesGuiTools().listenDynamicAttributesChanges(ds);
protected void loadValidators(Table component, Table.Column column) { List<Element> validatorElements = column.getXmlDescriptor().elements("validator"); if (!validatorElements.isEmpty()) { for (Element validatorElement : validatorElements) { Field.Validator validator = loadValidator(validatorElement); if (validator != null) { component.addValidator(column, validator); } } } else if (column.isEditable()) { if (!(column.getId() instanceof MetaPropertyPath)) { throw new GuiDevelopmentException(String.format("Column '%s' has editable=true, but there is no " + "property of an entity with this id", column.getId()), context.getCurrentFrameId()); } MetaPropertyPath propertyPath = (MetaPropertyPath) column.getId(); Field.Validator validator = getDefaultValidator(propertyPath.getMetaProperty()); if (validator != null) { component.addValidator(column, validator); } } }