Module javafx.controls
Package javafx.scene.control.skin
Class TableCellSkinBase<S,T,C extends IndexedCell<T>>
java.lang.Object
javafx.scene.control.SkinBase<C>
javafx.scene.control.skin.LabeledSkinBase<C>
javafx.scene.control.skin.CellSkinBase<C>
javafx.scene.control.skin.TableCellSkinBase<S,T,C>
- Type Parameters:
S
- The type of the UI control (e.g. the type of the 'row').T
- The type of the content in the cell, based on itsTableColumnBase
.
- All Implemented Interfaces:
Skin<C>
- Direct Known Subclasses:
TableCellSkin
,TreeTableCellSkin
public abstract class TableCellSkinBase<S,T,C extends IndexedCell<T>> extends CellSkinBase<C>
Base skin for table cell controls, for example:
TableCell
and TreeTableCell
.- Since:
- 9
- See Also:
TableCell
,TreeTableCell
-
Property Summary
Properties Type Property Description abstract ReadOnlyObjectProperty<? extends TableColumnBase<S,T>>
tableColumn
The TableColumnBase instance that is responsible for this Cell. -
Constructor Summary
Constructors Constructor Description TableCellSkinBase(C control)
Creates a new TableCellSkinBase instance, installing the necessary child nodes into the Controlchildren
list, as well as the necessary input mappings for handling key, mouse, etc events. -
Method Summary
Modifier and Type Method Description protected double
computePrefWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)
Calculates the preferred width of thisSkinBase
.void
dispose()
Called by a Skinnable when the Skin is replaced on the Skinnable.TableColumnBase<S,T>
getTableColumn()
Gets the value of the property tableColumn.protected void
layoutChildren(double x, double y, double w, double h)
The Layout algorithm works like this: - Get the labeled w/h, graphic w/h, text w/h - Compute content w/h based on graphicVPos, graphicHPos, graphicTextGap, and graphic w/h and text w/h - (Note that the text content has been pre-truncated where necessary) - compute content x/y based on content w/h and labeled w/h and the labeled's hpos and vpos - position the graphic and textabstract ReadOnlyObjectProperty<? extends TableColumnBase<S,T>>
tableColumnProperty()
The TableColumnBase instance that is responsible for this Cell.Methods inherited from class javafx.scene.control.skin.CellSkinBase
cellSizeProperty, getCellSize, getClassCssMetaData, getCssMetaData
Methods inherited from class javafx.scene.control.skin.LabeledSkinBase
computeBaselineOffset, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, layoutLabelInArea, layoutLabelInArea, queryAccessibleAttribute, updateChildren
Methods inherited from class javafx.scene.control.SkinBase
consumeMouseEvents, executeAccessibleAction, getChildren, getNode, getSkinnable, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, registerChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners
-
Property Details
-
tableColumn
The TableColumnBase instance that is responsible for this Cell.- See Also:
getTableColumn()
-
-
Constructor Details
-
TableCellSkinBase
Creates a new TableCellSkinBase instance, installing the necessary child nodes into the Controlchildren
list, as well as the necessary input mappings for handling key, mouse, etc events.- Parameters:
control
- The control that this skin should be installed onto.
-
-
Method Details
-
tableColumnProperty
The TableColumnBase instance that is responsible for this Cell.- See Also:
getTableColumn()
-
getTableColumn
Gets the value of the property tableColumn.- Property description:
- The TableColumnBase instance that is responsible for this Cell.
-
dispose
public void dispose()Called by a Skinnable when the Skin is replaced on the Skinnable. This method allows a Skin to implement any logic necessary to clean up itself after the Skin is no longer needed. It may be used to release native resources. The methodsSkin.getSkinnable()
andSkin.getNode()
should return null following a call to dispose. Calling dispose twice has no effect. -
layoutChildren
protected void layoutChildren(double x, double y, double w, double h)The Layout algorithm works like this: - Get the labeled w/h, graphic w/h, text w/h - Compute content w/h based on graphicVPos, graphicHPos, graphicTextGap, and graphic w/h and text w/h - (Note that the text content has been pre-truncated where necessary) - compute content x/y based on content w/h and labeled w/h and the labeled's hpos and vpos - position the graphic and text- Overrides:
layoutChildren
in classLabeledSkinBase<C extends IndexedCell<T>>
- Parameters:
x
- the x positiony
- the y positionw
- the widthh
- the height
-
computePrefWidth
protected double computePrefWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)Calculates the preferred width of thisSkinBase
. The default implementation calculates this width as the width of the area occupied by its managed children when they are positioned at their current positions at their preferred widths.- Overrides:
computePrefWidth
in classLabeledSkinBase<C extends IndexedCell<T>>
- Parameters:
height
- the height that should be used if preferred width depends on ittopInset
- the pixel snapped top insetrightInset
- the pixel snapped right insetbottomInset
- the pixel snapped bottom insetleftInset
- the pixel snapped left inset- Returns:
- the calculated preferred width
-