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
andTreeTableCell
.- 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.-
Properties inherited from class javafx.scene.control.skin.CellSkinBase
cellSize
-
-
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
All Methods Instance Methods Abstract Methods Concrete Methods 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 Detail
-
tableColumn
public abstract ReadOnlyObjectProperty<? extends TableColumnBase<S,T>> tableColumnProperty
The TableColumnBase instance that is responsible for this Cell.- See Also:
getTableColumn()
-
-
Constructor Detail
-
TableCellSkinBase
public 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.- Parameters:
control
- The control that this skin should be installed onto.
-
-
Method Detail
-
tableColumnProperty
public abstract ReadOnlyObjectProperty<? extends TableColumnBase<S,T>> tableColumnProperty()
The TableColumnBase instance that is responsible for this Cell.- See Also:
getTableColumn()
-
getTableColumn
public final TableColumnBase<S,T> 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
-
-