Module javafx.controls
Package javafx.scene.control.skin
Class VirtualContainerBase<C extends Control,I extends IndexedCell>
java.lang.Object
javafx.scene.control.SkinBase<C>
javafx.scene.control.skin.VirtualContainerBase<C,I>
- All Implemented Interfaces:
- Skin<C>
- Direct Known Subclasses:
- ListViewSkin,- TableViewSkinBase,- TreeViewSkin
public abstract class VirtualContainerBase<C extends Control,I extends IndexedCell> extends SkinBase<C>
Parent class to control skins whose contents are virtualized and scrollable.
 This class handles the interaction with the VirtualFlow class, which is the
 main class handling the virtualization of the contents of this container.
- Since:
- 9
- 
Constructor SummaryConstructors Constructor Description VirtualContainerBase(C control)
- 
Method SummaryModifier and Type Method Description protected VirtualFlow<I>createVirtualFlow()Create the virtualized container that handles the layout and scrolling of all the cells.voiddispose()Called by a Skinnable when the Skin is replaced on the Skinnable.protected abstract intgetItemCount()Returns the total number of items in this container, including those that are currently hidden because they are out of view.protected VirtualFlow<I>getVirtualFlow()Get the virtualized container.protected voidmarkItemCountDirty()Call this method to indicate that the item count should be updated on the next pulse.protected abstract voidupdateItemCount()This method is called when it is possible that the item count has changed (i.e.Methods declared in class javafx.scene.control.SkinBasecomputeBaselineOffset, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, consumeMouseEvents, executeAccessibleAction, getChildren, getClassCssMetaData, getCssMetaData, layoutChildren, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, queryAccessibleAttribute, registerChangeListener, registerInvalidationListener, registerListChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners, unregisterInvalidationListeners, unregisterListChangeListenersMethods declared in class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods declared in interface javafx.scene.control.SkingetNode, getSkinnable
- 
Constructor Details- 
VirtualContainerBase- Parameters:
- control- the control
 
 
- 
- 
Method Details- 
getItemCountprotected abstract int getItemCount()Returns the total number of items in this container, including those that are currently hidden because they are out of view.- Returns:
- the total number of items in this container
 
- 
updateItemCountprotected abstract void updateItemCount()This method is called when it is possible that the item count has changed (i.e. scrolling has occurred, the control has resized, etc). This method should recalculate the item count and store that for future use by thegetItemCount()method.
- 
createVirtualFlowCreate the virtualized container that handles the layout and scrolling of all the cells. This enables skin subclasses to provide a customVirtualFlowimplementation. If not overridden, this method intantiates a default VirtualFlow instance.- Returns:
- newly created VirtualFlow instance
- Since:
- 10
 
- 
disposepublic 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.Overridden to remove EventHandler. 
- 
getVirtualFlowGet the virtualized container. Subclasses can invoke this method to get the VirtualFlow instance.- Returns:
- the virtualized container
- Since:
- 10
 
- 
markItemCountDirtyprotected final void markItemCountDirty()Call this method to indicate that the item count should be updated on the next pulse.
 
-