@Override public void writeLayout(final XmlWriter writer, final RadContainer radContainer) { FormLayout layout = (FormLayout) radContainer.getLayout(); for(int i=1; i<=layout.getRowCount(); i++) { RowSpec rowSpec = layout.getRowSpec(i); writer.startElement(UIFormXmlConstants.ELEMENT_ROWSPEC); try { writer.addAttribute(UIFormXmlConstants.ATTRIBUTE_VALUE, FormLayoutUtils.getEncodedSpec(rowSpec)); } finally { writer.endElement(); } } for(int i=1; i<=layout.getColumnCount(); i++) { ColumnSpec columnSpec = layout.getColumnSpec(i); writer.startElement(UIFormXmlConstants.ELEMENT_COLSPEC); try { writer.addAttribute(UIFormXmlConstants.ATTRIBUTE_VALUE, FormLayoutUtils.getEncodedSpec(columnSpec)); } finally { writer.endElement(); } } writeGroups(writer, UIFormXmlConstants.ELEMENT_ROWGROUP, layout.getRowGroups()); writeGroups(writer, UIFormXmlConstants.ELEMENT_COLGROUP, layout.getColumnGroups()); }
@Override public void generateContainerLayout(final LwContainer component, final FormSourceCodeGenerator generator, final String variable) { FormLayout layout = (FormLayout) component.getLayout(); generator.startMethodCall(variable, "setLayout"); generator.startConstructor(FormLayout.class.getName()); generator.push(FormLayoutUtils.getEncodedColumnSpecs(layout)); generator.push(FormLayoutUtils.getEncodedRowSpecs(layout)); generator.endConstructor(); generator.endMethod(); generateGroups(generator, variable, "setRowGroups", layout.getRowGroups()); generateGroups(generator, variable, "setColumnGroups", layout.getColumnGroups()); }