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>>tableColumnThe 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 Controlchildrenlist, as well as the necessary input mappings for handling key, mouse, etc events. -
Method Summary
Modifier and Type Method Description protected doublecomputePrefWidth(double height, double topInset, double rightInset, double bottomInset, double leftInset)Calculates the preferred width of thisSkinBase.voiddispose()Called by a Skinnable when the Skin is replaced on the Skinnable.TableColumnBase<S,T>getTableColumn()Gets the value of the property tableColumn.protected voidlayoutChildren(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, getCssMetaDataMethods inherited from class javafx.scene.control.skin.LabeledSkinBase
computeBaselineOffset, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, layoutLabelInArea, layoutLabelInArea, queryAccessibleAttribute, updateChildrenMethods 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 Controlchildrenlist, 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:
layoutChildrenin 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:
computePrefWidthin 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
-