Interface FlexComponent
-
- All Superinterfaces:
com.vaadin.flow.component.HasComponents
,com.vaadin.flow.component.HasElement
,com.vaadin.flow.component.HasEnabled
,com.vaadin.flow.component.HasOrderedComponents
,com.vaadin.flow.component.HasSize
,com.vaadin.flow.component.HasStyle
,Serializable
- All Known Implementing Classes:
FlexLayout
,HorizontalLayout
,VerticalLayout
public interface FlexComponent extends com.vaadin.flow.component.HasOrderedComponents, com.vaadin.flow.component.HasStyle, com.vaadin.flow.component.HasSize
A component which implements Flexbox.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
FlexComponent.Alignment
Enum with the possible values for the component alignment inside the layout.static class
FlexComponent.JustifyContentMode
Enum with the possible values for the way the extra space inside the layout is distributed among the components.
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default void
expand(com.vaadin.flow.component.Component... componentsToExpand)
Expands the given components.default FlexComponent.Alignment
getAlignItems()
Gets the default alignment used by all components without individual alignments inside the layout.default FlexComponent.Alignment
getAlignSelf(com.vaadin.flow.component.HasElement container)
Gets the individual alignment of a given element container.default double
getFlexGrow(com.vaadin.flow.component.HasElement elementContainer)
Gets the flex grow property of a given element container.default FlexComponent.JustifyContentMode
getJustifyContentMode()
Gets the current justify content mode of the layout.default void
replace(com.vaadin.flow.component.Component oldComponent, com.vaadin.flow.component.Component newComponent)
default void
setAlignItems(FlexComponent.Alignment alignment)
Sets the default alignment to be used by all components without individual alignments inside the layout.default void
setAlignSelf(FlexComponent.Alignment alignment, com.vaadin.flow.component.HasElement... elementContainers)
Sets an alignment for individual element container inside the layout.default void
setFlexGrow(double flexGrow, com.vaadin.flow.component.HasElement... elementContainers)
Sets the flex grow property of the components inside the layout.default void
setJustifyContentMode(FlexComponent.JustifyContentMode justifyContentMode)
Sets theFlexComponent.JustifyContentMode
used by this layout.-
Methods inherited from interface com.vaadin.flow.component.HasComponents
add, add, add, addComponentAsFirst, addComponentAtIndex, remove, remove, removeAll
-
Methods inherited from interface com.vaadin.flow.component.HasOrderedComponents
getChildren, getComponentAt, getComponentCount, indexOf
-
Methods inherited from interface com.vaadin.flow.component.HasSize
getHeight, getHeightUnit, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getWidth, getWidthUnit, setHeight, setHeight, setHeightFull, setMaxHeight, setMaxHeight, setMaxWidth, setMaxWidth, setMinHeight, setMinHeight, setMinWidth, setMinWidth, setSizeFull, setSizeUndefined, setWidth, setWidth, setWidthFull
-
-
-
-
Method Detail
-
setAlignItems
default void setAlignItems(FlexComponent.Alignment alignment)
Sets the default alignment to be used by all components without individual alignments inside the layout. Individual components can be aligned by using thesetAlignSelf(Alignment, HasElement...)
method.It effectively sets the
"alignItems"
style value.The default alignment is
FlexComponent.Alignment.STRETCH
.- Parameters:
alignment
- the alignment to apply to the components. Settingnull
will reset the alignment to its default
-
getAlignItems
default FlexComponent.Alignment getAlignItems()
Gets the default alignment used by all components without individual alignments inside the layout.The default alignment is
FlexComponent.Alignment.STRETCH
.- Returns:
- the general alignment used by the layout, never
null
-
setAlignSelf
default void setAlignSelf(FlexComponent.Alignment alignment, com.vaadin.flow.component.HasElement... elementContainers)
Sets an alignment for individual element container inside the layout. This individual alignment for the element container overrides any alignment set at thesetAlignItems(Alignment)
.It effectively sets the
"alignSelf"
style value.The default alignment for individual components is
FlexComponent.Alignment.AUTO
.- Parameters:
alignment
- the individual alignment for the children components. Settingnull
will reset the alignment to its defaultelementContainers
- The element containers (components) to which the individual alignment should be set
-
getAlignSelf
default FlexComponent.Alignment getAlignSelf(com.vaadin.flow.component.HasElement container)
Gets the individual alignment of a given element container.The default alignment for individual element containers is
FlexComponent.Alignment.AUTO
.- Parameters:
container
- The element container (component) which individual layout should be read- Returns:
- the alignment of the container, never
null
-
setFlexGrow
default void setFlexGrow(double flexGrow, com.vaadin.flow.component.HasElement... elementContainers)
Sets the flex grow property of the components inside the layout. The flex grow property specifies what amount of the available space inside the layout the component should take up, proportionally to the other components.For example, if all components have a flex grow property value set to 1, the remaining space in the layout will be distributed equally to all components inside the layout. If you set a flex grow property of one component to 2, that component will take twice the available space as the other components, and so on.
Setting to flex grow property value 0 disables the expansion of the element container. Negative values are not allowed.
- Parameters:
flexGrow
- the proportion of the available space the element container should take upelementContainers
- the containers (components) to apply the flex grow property
-
getFlexGrow
default double getFlexGrow(com.vaadin.flow.component.HasElement elementContainer)
Gets the flex grow property of a given element container.- Parameters:
elementContainer
- the element container to read the flex grow property from- Returns:
- the flex grow property, or 0 if none was set
-
setJustifyContentMode
default void setJustifyContentMode(FlexComponent.JustifyContentMode justifyContentMode)
Sets theFlexComponent.JustifyContentMode
used by this layout.The default justify content mode is
FlexComponent.JustifyContentMode.START
.- Parameters:
justifyContentMode
- the justify content mode of the layout, nevernull
-
getJustifyContentMode
default FlexComponent.JustifyContentMode getJustifyContentMode()
Gets the current justify content mode of the layout.The default justify content mode is
FlexComponent.JustifyContentMode.START
.- Returns:
- the justify content mode used by the layout, never
null
-
expand
default void expand(com.vaadin.flow.component.Component... componentsToExpand)
Expands the given components.It effectively sets
1
as a flex grow property value for each component.- Parameters:
componentsToExpand
- components to expand
-
replace
default void replace(com.vaadin.flow.component.Component oldComponent, com.vaadin.flow.component.Component newComponent)
- Specified by:
replace
in interfacecom.vaadin.flow.component.HasOrderedComponents
-
-