Interface ThemableLayout
- All Superinterfaces:
HasElement
,Serializable
- All Known Implementing Classes:
HorizontalLayout
,VerticalLayout
VerticalLayout
and HorizontalLayout
related
to dynamic theme adjustment.
Note: Dynamic adjustment have effect only if the corresponding component theme supports it.
- Author:
- Vaadin Ltd.
-
Method Summary
Modifier and TypeMethodDescriptiondefault BoxSizing
Gets the box-sizing defined for the layout, orBoxSizing.UNDEFINED
if none was defined on the server-side.default String
Gets the spacing between the components inside the layout.default ThemeList
Gets the set of the theme names applied to the corresponding element intheme
attribute.default boolean
isMargin()
Shows ifmargin
theme setting is applied to the component.default boolean
Shows ifpadding
theme setting is applied to the component.default boolean
Shows ifspacing
setting is applied to the component, either by setting thespacing
theme or by setting thegap
style.default boolean
isWrap()
Gets whether items will wrap to new lines/columns when they exceed the layout's boundaries.default void
setBoxSizing
(BoxSizing boxSizing) Sets thebox-sizing
CSS property of the layout.default void
setMargin
(boolean margin) Togglesmargin
theme setting for the element.default void
setPadding
(boolean padding) Togglespadding
theme setting for the element.default void
setSpacing
(boolean spacing) Togglesspacing
theme setting for the element.default void
setSpacing
(float spacing, Unit unit) Sets the spacing between the components inside the layout.default void
setSpacing
(String spacing) Sets the spacing between the components inside the layout.default void
setWrap
(boolean wrap) Sets whether items should wrap to new lines/columns when they exceed the layout's boundaries.Methods inherited from interface com.vaadin.flow.component.HasElement
getElement
-
Method Details
-
setMargin
default void setMargin(boolean margin) Togglesmargin
theme setting for the element. If a theme supports this attribute, it will apply or remove margin to the element.- Parameters:
margin
- addsmargin
theme setting iftrue
or removes it iffalse
-
isMargin
default boolean isMargin()Shows ifmargin
theme setting is applied to the component.- Returns:
true
if theme setting is applied,false
otherwise
-
setPadding
default void setPadding(boolean padding) Togglespadding
theme setting for the element. If a theme supports this attribute, it will apply or remove padding to the element.- Parameters:
padding
- addspadding
theme setting iftrue
or removes it iffalse
-
isPadding
default boolean isPadding()Shows ifpadding
theme setting is applied to the component.- Returns:
true
if theme setting is applied,false
otherwise
-
setSpacing
default void setSpacing(boolean spacing) Togglesspacing
theme setting for the element. If a theme supports this attribute, it will apply or remove spacing to the element.This method adds medium spacing to the component theme, to set other options, use
getThemeList()
. List of options possible:- spacing-xs
- spacing-s
- spacing
- spacing-l
- spacing-xl
- Parameters:
spacing
- addsspacing
theme setting iftrue
or removes it iffalse
-
isSpacing
default boolean isSpacing()Shows ifspacing
setting is applied to the component, either by setting thespacing
theme or by setting thegap
style.- Returns:
true
if theme setting is applied,false
otherwise
-
setSpacing
Sets the spacing between the components inside the layout.- Parameters:
spacing
- the spacing between the components. The value must be a valid CSS length, i.e. must provide a unit (e.g. "1px", "1rem", "1%") for values other than 0.
-
setSpacing
Sets the spacing between the components inside the layout.- Parameters:
spacing
- the spacing between the componentsunit
- the unit of the spacing value
-
getSpacing
Gets the spacing between the components inside the layout.The value returned is the value set by
setSpacing(String)
orsetSpacing(float, Unit)
. If the spacing was set usingsetSpacing(boolean)
, this method will returnnull
. On this case, useisSpacing()
instead.- Returns:
- the spacing between the components
-
setWrap
default void setWrap(boolean wrap) Sets whether items should wrap to new lines/columns when they exceed the layout's boundaries. When enabled, items maintain their size and create new rows or columns as needed, depending on the layout's orientation.When disabled, items will be compressed to fit within a single row/column.
- Parameters:
wrap
- true to enable wrapping, false to force items into a single row/column
-
isWrap
default boolean isWrap()Gets whether items will wrap to new lines/columns when they exceed the layout's boundaries.When wrapping is enabled, items maintain their defined dimensions by creating new rows or columns as needed. When disabled, items may be compressed to fit within the available space.
- Returns:
- true if wrapping is enabled, false if items are forced into a single row/column
- See Also:
-
getThemeList
Gets the set of the theme names applied to the corresponding element intheme
attribute. The set returned can be modified to add or remove the theme names, changes to the set will be reflected in the attribute value.Despite the name implying a list being returned, the return type is actually a
Set
since the in-browser return value behaves like aSet
in Java.- Returns:
- a list of theme names, never
null
-
setBoxSizing
Sets thebox-sizing
CSS property of the layout.- Parameters:
boxSizing
- the box-sizing of the layout.null
is interpreted asBoxSizing.UNDEFINED
- See Also:
-
getBoxSizing
Gets the box-sizing defined for the layout, orBoxSizing.UNDEFINED
if none was defined on the server-side.- Returns:
- the box-sizing, never
null
- See Also:
-