Class TitledBorder
java.lang.Object
vaadinx.swing.border.AbstractBorder
vaadinx.swing.border.TitledBorder
- All Implemented Interfaces:
Serializable, Border
Port of
TitledBorder. Wraps an inner border
and adds a title label floating at the top edge.
CSS rendering is split in two: the border part lands via the
inside border's own AbstractBorder.applyCss(Element) (LineBorder →
border, EmptyBorder → padding, etc.). The title
text is written as data-emul-border-title on the element, and
the ::before pseudo-element rule is auto-injected once per UI
by BorderCss.ensureTitledBorderStyleInjected(UI).
The injection is idempotent — sentinel data
on the UI gates duplicate writes — and survives even when applyCss is
called outside a UI context (no-op then; lands on the next applyCss
once a UI is current).
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intprotected Borderstatic final intstatic final intstatic final intTitle justification constants — identical values to JDK.static final intTitle positioning constants — identical values to JDK.protected static final intInternal padding used by JDK between the title and border line.static final intstatic final intstatic final intprotected static final intprotected static final intprotected Stringprotected Colorprotected Fontprotected intprotected intstatic final intstatic final int -
Constructor Summary
ConstructorsConstructorDescriptionTitledBorder(String title) TitledBorder(Border border) TitledBorder(Border border, String title) TitledBorder(Border border, String title, int titleJustification, int titlePosition) TitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont) TitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont, Color titleColor) -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyCss(com.vaadin.flow.dom.Element element) Write this border's CSS onto the target element.getTitle()intintbooleanvoidvoidvoidsetTitleColor(Color titleColor) voidsetTitleFont(Font titleFont) voidsetTitleJustification(int titleJustification) voidsetTitlePosition(int titlePosition) Methods inherited from class AbstractBorder
clearBorderCss, getBorderInsets, paintBorder
-
Field Details
-
DEFAULT_POSITION
public static final int DEFAULT_POSITIONTitle positioning constants — identical values to JDK.- See Also:
-
ABOVE_TOP
public static final int ABOVE_TOP- See Also:
-
TOP
public static final int TOP- See Also:
-
BELOW_TOP
public static final int BELOW_TOP- See Also:
-
ABOVE_BOTTOM
public static final int ABOVE_BOTTOM- See Also:
-
BOTTOM
public static final int BOTTOM- See Also:
-
BELOW_BOTTOM
public static final int BELOW_BOTTOM- See Also:
-
DEFAULT_JUSTIFICATION
public static final int DEFAULT_JUSTIFICATIONTitle justification constants — identical values to JDK.- See Also:
-
LEFT
public static final int LEFT- See Also:
-
CENTER
public static final int CENTER- See Also:
-
RIGHT
public static final int RIGHT- See Also:
-
LEADING
public static final int LEADING- See Also:
-
TRAILING
public static final int TRAILING- See Also:
-
EDGE_SPACING
protected static final int EDGE_SPACINGInternal padding used by JDK between the title and border line.- See Also:
-
TEXT_SPACING
protected static final int TEXT_SPACING- See Also:
-
TEXT_INSET_H
protected static final int TEXT_INSET_H- See Also:
-
title
-
border
-
titlePosition
protected int titlePosition -
titleJustification
protected int titleJustification -
titleFont
-
titleColor
-
-
Constructor Details
-
TitledBorder
-
TitledBorder
-
TitledBorder
-
TitledBorder
-
TitledBorder
-
TitledBorder
-
-
Method Details
-
getTitle
-
setTitle
-
getBorder
-
setBorder
-
getTitlePosition
public int getTitlePosition() -
setTitlePosition
public void setTitlePosition(int titlePosition) -
getTitleJustification
public int getTitleJustification() -
setTitleJustification
public void setTitleJustification(int titleJustification) -
getTitleFont
-
setTitleFont
-
getTitleColor
-
setTitleColor
-
getBorderInsets
- Specified by:
getBorderInsetsin interfaceBorder- Overrides:
getBorderInsetsin classAbstractBorder
-
isBorderOpaque
public boolean isBorderOpaque()- Specified by:
isBorderOpaquein interfaceBorder- Overrides:
isBorderOpaquein classAbstractBorder
-
applyCss
public void applyCss(com.vaadin.flow.dom.Element element) Description copied from class:AbstractBorderWrite this border's CSS onto the target element. Called byJComponent.setBorder(Border). Concrete border classes override to emit the CSS that represents them (padding for EmptyBorder,borderfor LineBorder, per-side for MatteBorder, …). The base implementation clears any previously-installed border CSS viaAbstractBorder.clearBorderCss(Element)and writes nothing, which is the honest behaviour for a user-authored custom AbstractBorder that didn't override this hook.Typical override:
clearBorderCss(e); set("border", …);. Always clear first so a previous border's keys don't linger.- Overrides:
applyCssin classAbstractBorder
-