com.holonplatform.vaadin.flow.components

## Interface Composable

- All Known Subinterfaces:
    PropertyInputForm, PropertyViewForm

      public interface Composable

  An object which supports a `Composable.Composer`, which can be used to compose a set of elements on the content layout.

  The available elements to compose can be obtained from the `ComponentGroup` provided to the composer `Composable.Composer.compose(HasElement, ComponentGroup)` method.

  Since:
    5.2.0

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static interface` | `Composable.Composer<C extends com.vaadin.flow.component.HasElement,E extends HasComponent,G extends ComponentGroup<E>>` Provides the elements composition strategy on the content layout.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `static <C extends com.vaadin.flow.component.HasComponents,E extends HasComponent,G extends ComponentGroup<E>> Composable.Composer<C,E,G>` | `componentContainerComposer()` Create a `Composable.Composer` which uses a `HasComponents` component as composition layout and adds the group elements components to the layout in the order they are returned from the group.
    `void` | `compose()` Compose the elements on the content layout, using the configured `Composable.Composer`.

- - ### Method Detail

    - #### compose

          void compose()

      Compose the elements on the content layout, using the configured `Composable.Composer`.
      Throws:
        `IllegalStateException` - If a `Composable.Composer` is not available

    - #### componentContainerComposer

          static <C extends com.vaadin.flow.component.HasComponents,E extends HasComponent,G extends ComponentGroup<E>> Composable.Composer<C,E,G> componentContainerComposer()

      Create a `Composable.Composer` which uses a `HasComponents` component as composition layout and adds the group elements components to the layout in the order they are returned from the group.
      Type Parameters:
        `C` - HasComponents type
        `E` - Elements type
        `G` - Elements group type
      Returns:
        A new `Composable.Composer` using a `HasComponent` compostion layout

Copyright © 2020 The Holon Platform. All rights reserved.