/** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ package com.liferay.dynamic.data.mapping.type.grid.internal; import com.liferay.dynamic.data.mapping.annotations.DDMForm; import com.liferay.dynamic.data.mapping.annotations.DDMFormField; import com.liferay.dynamic.data.mapping.annotations.DDMFormLayout; import com.liferay.dynamic.data.mapping.annotations.DDMFormLayoutColumn; import com.liferay.dynamic.data.mapping.annotations.DDMFormLayoutPage; import com.liferay.dynamic.data.mapping.annotations.DDMFormLayoutRow; import com.liferay.dynamic.data.mapping.annotations.DDMFormRule; import com.liferay.dynamic.data.mapping.form.field.type.DefaultDDMFormFieldTypeSettings; import com.liferay.dynamic.data.mapping.model.DDMFormFieldOptions; import com.liferay.dynamic.data.mapping.model.DDMFormFieldValidation; import com.liferay.dynamic.data.mapping.model.LocalizedValue; /** * @author Pedro Queiroz */ @DDMForm( rules = { @DDMFormRule( actions = { "setVisible('predefinedValue', false)", "setVisible('repeatable', false)", "setVisible('repeatable', false)", "setVisible('validation', false)" }, condition = "TRUE" ) } ) @DDMFormLayout( paginationMode = com.liferay.dynamic.data.mapping.model.DDMFormLayout.TABBED_MODE, value = { @DDMFormLayoutPage( title = "basic", value = { @DDMFormLayoutRow( { @DDMFormLayoutColumn( size = 12, value = { "label", "tip", "required", "predefinedValue", "rows", "columns" } ) } ) } ), @DDMFormLayoutPage( title = "properties", value = { @DDMFormLayoutRow( { @DDMFormLayoutColumn( size = 12, value = { "visibilityExpression", "showLabel", "repeatable", "fieldNamespace", "indexType", "localizable", "readOnly", "dataType", "type", "name", "validation" } ) } ) } ) } ) public interface GridDDMFormFieldTypeSettings extends DefaultDDMFormFieldTypeSettings { @DDMFormField( dataType = "ddm-options", label = "%columns", required = true, type = "options" ) public DDMFormFieldOptions columns(); @DDMFormField @Override public LocalizedValue predefinedValue(); @DDMFormField @Override public boolean repeatable(); @DDMFormField( dataType = "ddm-options", label = "%rows", required = true, type = "options" ) public DDMFormFieldOptions rows(); @DDMFormField @Override public DDMFormFieldValidation validation(); }