com.holonplatform.vaadin.flow.components

## Interface PropertyInputForm

- All Superinterfaces:
    BoundComponentGroup<com.holonplatform.core.property.Property<?>,Input<?>>, ComponentGroup<Input<?>>, Composable, HasComponent, com.vaadin.flow.component.HasElement, HasPropertySet<com.holonplatform.core.property.Property<?>>, PropertyInputGroup, Serializable, Validatable, ValueComponent<com.holonplatform.core.property.PropertyBox>, ValueHolder<com.holonplatform.core.property.PropertyBox,GroupValueChangeEvent<com.holonplatform.core.property.PropertyBox,com.holonplatform.core.property.Property<?>,Input<?>,PropertyInputGroup>>

      public interface PropertyInputForm
      extends PropertyInputGroup, ValueComponent<com.holonplatform.core.property.PropertyBox>, Composable

  A `PropertyInputGroup` which provides an UI component to display the group elements, which can be composed using a `Composer`.

  The group elements `Composer` can be configured using the `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` builder method.

  Since:
    5.2.0
  See Also:
    `PropertyInputGroup`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.flow.components.BoundComponentGroup

      `BoundComponentGroup.Binding<P,C extends HasComponent>`

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.flow.components.ValueHolder

      `ValueHolder.ValueChangeEvent<V>, ValueHolder.ValueChangeListener<V,E extends ValueHolder.ValueChangeEvent<V>>`

    - ### Nested classes/interfaces inherited from interface com.holonplatform.vaadin.flow.components.Composable

      `Composable.Composer<C extends com.vaadin.flow.component.HasElement,E extends HasComponent,G extends ComponentGroup<E>>`

  - ### Method Summary

    All Methods Static Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `static <C extends com.vaadin.flow.component.Component,P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<C>` | `builder(C content, Iterable<P> properties)` Get a builder to create a `PropertyInputForm` using given property set.
    `static <C extends com.vaadin.flow.component.Component> PropertyInputFormBuilder<C>` | `builder(C content, com.holonplatform.core.property.Property<?>... properties)` Get a builder to create a `PropertyInputForm` using given property set.
    `static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.formlayout.FormLayout>` | `formLayout(Iterable<P> properties)` Get a builder to create a `PropertyInputForm` using given property set and a `FormLayout` as content layout.
    `static PropertyInputFormBuilder<com.vaadin.flow.component.formlayout.FormLayout>` | `formLayout(com.holonplatform.core.property.Property<?>... properties)` Get a builder to create a `PropertyInputForm` using given property set and a `FormLayout` as content layout.
    `static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.HorizontalLayout>` | `horizontalLayout(Iterable<P> properties)` Get a builder to create a `PropertyInputForm` using given property set and a `HorizontalLayout` as content layout.
    `static PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.HorizontalLayout>` | `horizontalLayout(com.holonplatform.core.property.Property<?>... properties)` Get a builder to create a `PropertyInputForm` using given property set and a `HorizontalLayout` as content layout.
    `static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.VerticalLayout>` | `verticalLayout(Iterable<P> properties)` Get a builder to create a `PropertyInputForm` using given property set and a `VerticalLayout` as content layout.
    `static PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.VerticalLayout>` | `verticalLayout(com.holonplatform.core.property.Property<?>... properties)` Get a builder to create a `PropertyInputForm` using given property set and a `VerticalLayout` as content layout.

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.PropertyInputGroup

      `builder, builder, getInput, getValue, getValue, getValueIfValid, refresh, refresh, requireInput, setEnabled, setReadOnly, setValue, setValue, validate`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.BoundComponentGroup

      `getBindings, getElement, requireElement`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.ComponentGroup

      `getComponents, getElements`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.HasPropertySet

      `getProperties, hasProperty`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.ValueHolder

      `addValueChangeListener, clear, getEmptyValue, getValueIfPresent, isEmpty`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.Validatable

      `adapt, adapt, adapt, adapt, adapt, isValid`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.ValueComponent

      `getValue, hasValueChangeMode`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.HasComponent

      `create, getComponent, getElement, hasEnabled, hasLabel, hasSize, hasStyle, hasValidation, isVisible, setVisible`

    - ### Methods inherited from interface com.holonplatform.vaadin.flow.components.Composable

      `componentContainerComposer, compose`

- - ### Method Detail

    - #### builder

          static <C extends com.vaadin.flow.component.Component,P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<C> builder(C content,
                                                                                                                                                        Iterable<P> properties)

      Get a builder to create a `PropertyInputForm` using given property set.
      Type Parameters:
        `C` - Form content element type
        `P` - Property type
      Parameters:
        `content` - The form content, where the `Input`s will be composed using the configured `Composer` (not null)
        `properties` - The property set (not null)
      Returns:
        A new `PropertyInputFormBuilder`

    - #### builder

          static <C extends com.vaadin.flow.component.Component> PropertyInputFormBuilder<C> builder(C content,
                                                                                                     com.holonplatform.core.property.Property<?>... properties)

      Get a builder to create a `PropertyInputForm` using given property set.
      Type Parameters:
        `C` - Form content element type
      Parameters:
        `content` - The form content, where the `Input`s will be composed using the configured `Composer` (not null)
        `properties` - The property set (not null)
      Returns:
        A new `PropertyInputFormBuilder`

    - #### formLayout

          static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.formlayout.FormLayout> formLayout(Iterable<P> properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `FormLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Type Parameters:
        `P` - Property type
      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

    - #### formLayout

          static PropertyInputFormBuilder<com.vaadin.flow.component.formlayout.FormLayout> formLayout(com.holonplatform.core.property.Property<?>... properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `FormLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

    - #### verticalLayout

          static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.VerticalLayout> verticalLayout(Iterable<P> properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `VerticalLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Type Parameters:
        `P` - Property type
      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

    - #### verticalLayout

          static PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.VerticalLayout> verticalLayout(com.holonplatform.core.property.Property<?>... properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `VerticalLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

    - #### horizontalLayout

          static <P extends com.holonplatform.core.property.Property> PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.HorizontalLayout> horizontalLayout(Iterable<P> properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `HorizontalLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Type Parameters:
        `P` - Property type
      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

    - #### horizontalLayout

          static PropertyInputFormBuilder<com.vaadin.flow.component.orderedlayout.HorizontalLayout> horizontalLayout(com.holonplatform.core.property.Property<?>... properties)

      Get a builder to create a `PropertyInputForm` using given property set and a `HorizontalLayout` as content layout.

      A default composer is configured using `Composable.componentContainerComposer()`. Use `ComposableConfigurator.composer(com.holonplatform.vaadin.flow.components.Composable.Composer)` to provide a custom components composer.

      Parameters:
        `properties` - The property set (not null)
      Returns:
        A `PropertyInputForm` builder

Copyright © 2019 The Holon Platform. All rights reserved.