Module javafx.controls
Package javafx.scene.control.skin

# Class ComboBoxPopupControl<T>

java.lang.Object
javafx.scene.control.SkinBase<ComboBoxBase<T>>
javafx.scene.control.skin.ComboBoxBaseSkin<T>
javafx.scene.control.skin.ComboBoxPopupControl<T>

Type Parameters:
  `T` - The type of the ComboBox-like control.

All Implemented Interfaces:
  `Skin<ComboBoxBase<T>>`

Direct Known Subclasses:
  `ColorPickerSkin`, `ComboBoxListViewSkin`, `DatePickerSkin`

    public abstract class ComboBoxPopupControl<T>
    extends ComboBoxBaseSkin<T>

An abstract class that extends the functionality of `ComboBoxBaseSkin` to include API related to showing ComboBox-like controls as popups.

Since:
  9

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `ComboBoxPopupControl​(ComboBoxBase<T> control)` | Creates a new instance of ComboBoxPopupControl, although note that this instance does not handle any behavior / input mappings - this needs to be handled appropriately by subclasses.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected abstract StringConverter<T>` | `getConverter()` | Subclasses are responsible for getting the converter.
  `protected abstract TextField` | `getEditor()` | Subclasses are responsible for getting the editor.
  `protected abstract Node` | `getPopupContent()` | This method should return the Node that will be displayed when the user clicks on the ComboBox 'button' area.
  `void` | `hide()` | This method will be called when the ComboBox popup should be hidden.
  `void` | `show()` | This method will be called when the ComboBox popup should be displayed.

  ### Methods inherited from class javafx.scene.control.skin.ComboBoxBaseSkin

  `computeBaselineOffset, computeMaxHeight, computeMaxWidth, computePrefHeight, computePrefWidth, getDisplayNode, layoutChildren`

  ### Methods inherited from class javafx.scene.control.SkinBase

  `computeMinHeight, computeMinWidth, consumeMouseEvents, dispose, executeAccessibleAction, getChildren, getClassCssMetaData, getCssMetaData, getNode, getSkinnable, layoutInArea, layoutInArea, layoutInArea, positionInArea, positionInArea, pseudoClassStateChanged, queryAccessibleAttribute, registerChangeListener, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, unregisterChangeListeners`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ComboBoxPopupControl

    public ComboBoxPopupControl​(ComboBoxBase<T> control)
    Creates a new instance of ComboBoxPopupControl, although note that this instance does not handle any behavior / input mappings - this needs to be handled appropriately by subclasses.
    Parameters:
      `control` - The control that this skin should be installed onto.

- ## Method Details

  - ### getPopupContent

    protected abstract Node getPopupContent()
    This method should return the Node that will be displayed when the user clicks on the ComboBox 'button' area.
    Returns:
      the Node that will be displayed when the user clicks on the ComboBox 'button' area

  - ### getEditor

    protected abstract TextField getEditor()
    Subclasses are responsible for getting the editor. This will be removed in FX 9 when the editor property is moved up to ComboBoxBase with JDK-8130354 Note: ComboBoxListViewSkin should return null if editable is false, even if the ComboBox does have an editor set.
    Returns:
      the editor

  - ### getConverter

    protected abstract StringConverter<T> getConverter()
    Subclasses are responsible for getting the converter. This will be removed in FX 9 when the converter property is moved up to ComboBoxBase with JDK-8130354.
    Returns:
      the string converter

  - ### show

    public void show()
    This method will be called when the ComboBox popup should be displayed. It is up to specific skin implementations to determine how this is handled.
    Specified by:
      `show` in class `ComboBoxBaseSkin<T>`

  - ### hide

    public void hide()
    This method will be called when the ComboBox popup should be hidden. It is up to specific skin implementations to determine how this is handled.
    Specified by:
      `hide` in class `ComboBoxBaseSkin<T>`