Class SearchField<T>
- Type Parameters:
T- the type of objects to work on
- All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget, javafx.scene.control.Skinnable
- Direct Known Subclasses:
TagsField
The search field requires proper configuration to work correctly:
- Suggestion Provider - a callback that returns a collection of items for a given search field suggestion request. The suggestion provider is invoked asynchronously via JavaFX concurrency API (service invalid input: '&' task). The suggestion provider gets invoked slightly delayed whenever the user types some text into the field. If the user types again the current search gets cancelled and a new search gets initiated. As long as the user types fast enough the actual search will not be performed.
- Converter - the converter is used to convert the items found in the suggestions list to text. This is just a standard StringConverter instance (only the toString() method needs to be implemented).
- Cell Factory - a standard list cell factory / callback used for the ListView instance shown in the popup that presents the suggested items. The default cell factory should be sufficient for most use cases. It simply displays the name of the items via the help of the string converter. However, it also underlines the text match in the name.
- Matcher - a function taking two arguments that will be applied to the suggested items to find "perfect matches" for the given search text (entered by the user). The function takes an item and the search text as input and returns a boolean. The first perfect match found will be used to autocomplete the text of the search field.
- New Item Producer - a callback that returns a new item instance of the type supported by the search field. This callback is used if the field is configured to create items "on-the-fly", meaning the typed text does not match anything in the suggested list of items.
- Comparator - a standard comparator used to perform a first sorting of the suggested items. However, internally the field wraps this comparator to place some items higher up in the dropdown list as they are better matches for the current search text.
The history manager is disabled by default, but it can be enabled using the setHistoryManager(HistoryManager) method.
We have implemented a local history manager, StringHistoryManager, which uses the Java Preferences API to store history records.
You can enable it via the setHistoryManager(HistoryManager) method.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn event type used by theSearchFieldto indicate the start and end of searching operations.static classA custom list cell implementation that is capable of underlining the part of the text that matches the user-typed search text.static interfaceRepresents a suggestion fetch request. -
Property Summary
PropertiesTypePropertyDescriptionfinal javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the user commits to a value.final javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the user presses the Enter key.final javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the field losses its focus.final javafx.beans.property.BooleanPropertyReturns the BooleanProperty that indicates if text should auto-commit when the field loses focus.final javafx.beans.property.ReadOnlyStringPropertyA read-only property containing the automatically completed text.final javafx.beans.property.DoublePropertyDefines the gap (in pixels) between the user typed text and the autocompleted text.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Stores a node that will be shown on the field's right side whenever a search is ongoing.final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>>> A cell factory that can be used by a list view to visualize the list of suggestions.final javafx.beans.property.ObjectProperty<Comparator<T>> A comparator used to sort the list of suggestions.final javafx.beans.property.ObjectProperty<javafx.util.StringConverter<T>> A converter for turning the objects returned by the suggestion provider into text.final javafx.beans.property.ReadOnlyStringPropertyA read-only property containing the concatenation of the regular text of the text field and the autocompleted text.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Stores a node that will be shown on the field's right-hand side whenever the field is idle.final javafx.beans.property.BooleanPropertyDetermines whether to hide the popup window when there are no choices available in the suggestion list.final javafx.beans.property.BooleanPropertyHides the popup window with the suggestion list if the list only contains a single elements.final javafx.beans.property.ObjectProperty<HistoryManager<String>> The history manager that is used to manage the history of the SearchField.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Returns the property representing the history placeholder node.final javafx.beans.property.ObjectProperty<javafx.scene.Node> A custom node that can be shown on the left-hand side of the field.final javafx.beans.property.ObjectProperty<BiFunction<T, String, Boolean>> The function that is used to determine the first item in the suggestion list that is a good match for auto selection.A callback used for creating a new object on-the-fly if no item matches the search text.final javafx.beans.property.ReadOnlyBooleanPropertyDetermines if the selected item has been created on-the-fly via thenewItemProducer.A callback that gets invoked when the user has committed to the selected value.final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> An event handler that can be used to get informed whenever the field finishes a search.final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> An event handler that can be used to get informed whenever the field starts a search.final javafx.beans.property.ObjectProperty<javafx.scene.Node> The placeholder UI when no suggestions have been returned by the suggestion provider.final javafx.beans.property.StringPropertyA convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g.final javafx.beans.property.ObjectProperty<javafx.scene.Node> A custom node that can be shown on the right-hand side of the field.final javafx.beans.property.ReadOnlyBooleanPropertyA flag indicating whether the asynchronous search is currently in progress.final javafx.beans.property.ObjectProperty<T> Contains the currently selected item.final javafx.beans.property.BooleanPropertyDetermines if the field will show an icon on the right-hand side which indicates that the field is a search field.final javafx.beans.property.ObjectProperty<javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>>> A callback used for looking up a list of suggestions for the current search text.final javafx.beans.property.StringPropertyA convenience property bound to the editor's text property.Properties inherited from class javafx.scene.control.Control
contextMenu, skin, tooltipProperties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties inherited from class javafx.scene.Parent
needsLayoutProperties inherited from class javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible -
Field Summary
Fields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZEFields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the user commits to a value.final javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the user presses the Enter key.final javafx.beans.property.BooleanPropertyDetermines whether the text of the text field should be added to the history when the field losses its focus.final javafx.beans.property.BooleanPropertyReturns the BooleanProperty that indicates if text should auto-commit when the field loses focus.final javafx.beans.property.ReadOnlyStringPropertyA read-only property containing the automatically completed text.final javafx.beans.property.DoublePropertyDefines the gap (in pixels) between the user typed text and the autocompleted text.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Stores a node that will be shown on the field's right side whenever a search is ongoing.final voidcancel()Cancels the current search in progress.final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>>> A cell factory that can be used by a list view to visualize the list of suggestions.voidclear()Convenience method to invoke clear() on the text field.voidcommit()Makes the field commit to the currently selected item and updates the field to show the full text provided by the converter for the item.final javafx.beans.property.ObjectProperty<Comparator<T>> A comparator used to sort the list of suggestions.final javafx.beans.property.ObjectProperty<javafx.util.StringConverter<T>> A converter for turning the objects returned by the suggestion provider into text.protected javafx.scene.control.Skin<?> final javafx.beans.property.ReadOnlyStringPropertyA read-only property containing the concatenation of the regular text of the text field and the autocompleted text.final StringGets the value of theautoCompletedTextproperty.final doubleGets the value of theautoCompletionGapproperty.final javafx.scene.NodeGets the value of thebusyGraphicproperty.Gets the value of thecellFactoryproperty.static List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> final Comparator<T> Gets the value of thecomparatorproperty.protected List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> final javafx.util.StringConverter<T> Gets the value of theconverterproperty.final javafx.scene.control.TextFieldReturns the text field control used for editing the text.final StringGets the value of thefullTextproperty.final javafx.scene.NodeGets the value of thegraphicproperty.final HistoryManager<String> Gets the value of thehistoryManagerproperty.final javafx.scene.NodeGets the value of thehistoryPlaceholderproperty.final javafx.scene.NodegetLeft()Gets the value of theleftproperty.final BiFunction<T, String, Boolean> Gets the value of thematcherproperty.Gets the value of thenewItemProducerproperty.Gets the value of theonCommitproperty.final javafx.event.EventHandler<SearchField.SearchEvent> Gets the value of theonSearchFinishedproperty.final javafx.event.EventHandler<SearchField.SearchEvent> Gets the value of theonSearchStartedproperty.final javafx.scene.NodeGets the value of theplaceholderproperty.final SearchFieldPopup<T> getPopup()final StringGets the value of thepromptTextproperty.final javafx.scene.NodegetRight()Gets the value of therightproperty.final TGets the value of theselectedItemproperty.final javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>> Gets the value of thesuggestionProviderproperty.final javafx.collections.ObservableList<T> Returns a read-only (unmodifiable) list of the current suggestions.final StringgetText()Gets the value of thetextproperty.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Stores a node that will be shown on the field's right-hand side whenever the field is idle.final javafx.beans.property.BooleanPropertyDetermines whether to hide the popup window when there are no choices available in the suggestion list.final javafx.beans.property.BooleanPropertyHides the popup window with the suggestion list if the list only contains a single elements.final javafx.beans.property.ObjectProperty<HistoryManager<String>> The history manager that is used to manage the history of the SearchField.final javafx.beans.property.ObjectProperty<javafx.scene.Node> Returns the property representing the history placeholder node.final booleanGets the value of theaddingItemToHistoryOnCommitproperty.final booleanGets the value of theaddingItemToHistoryOnEnterproperty.final booleanGets the value of theaddingItemToHistoryOnFocusLostproperty.final booleanChecks if the auto-commit on focus lost feature is enabled.final booleanGets the value of thehidePopupWithNoChoiceproperty.final booleanGets the value of thehidePopupWithSingleChoiceproperty.final booleanGets the value of thenewItemproperty.final booleanGets the value of thesearchingproperty.final booleanGets the value of theshowSearchIconproperty.final javafx.beans.property.ObjectProperty<javafx.scene.Node> A custom node that can be shown on the left-hand side of the field.final javafx.beans.property.ObjectProperty<BiFunction<T, String, Boolean>> The function that is used to determine the first item in the suggestion list that is a good match for auto selection.A callback used for creating a new object on-the-fly if no item matches the search text.final javafx.beans.property.ReadOnlyBooleanPropertyDetermines if the selected item has been created on-the-fly via thenewItemProducer.A callback that gets invoked when the user has committed to the selected value.final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> An event handler that can be used to get informed whenever the field finishes a search.final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> An event handler that can be used to get informed whenever the field starts a search.final javafx.beans.property.ObjectProperty<javafx.scene.Node> The placeholder UI when no suggestions have been returned by the suggestion provider.final javafx.beans.property.StringPropertyA convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g.final javafx.beans.property.ObjectProperty<javafx.scene.Node> A custom node that can be shown on the right-hand side of the field.final javafx.beans.property.ReadOnlyBooleanPropertyA flag indicating whether the asynchronous search is currently in progress.voidSelects the given item and sets the editor's text to the string provided by the converter for the item.final javafx.beans.property.ObjectProperty<T> Contains the currently selected item.final voidsetAddingItemToHistoryOnCommit(boolean addingItemToHistoryOnCommit) Sets the value of theaddingItemToHistoryOnCommitproperty.final voidsetAddingItemToHistoryOnEnter(boolean addingItemToHistoryOnEnter) Sets the value of theaddingItemToHistoryOnEnterproperty.final voidsetAddingItemToHistoryOnFocusLost(boolean addingItemToHistoryOnFocusLost) Sets the value of theaddingItemToHistoryOnFocusLostproperty.final voidsetAutoCommitOnFocusLost(boolean value) Sets the value of the autoCommitOnFocusLost property.final voidsetAutoCompletionGap(double autoCompletionGap) Sets the value of theautoCompletionGapproperty.final voidsetBusyGraphic(javafx.scene.Node busyGraphic) Sets the value of thebusyGraphicproperty.final voidsetCellFactory(javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>> cellFactory) Sets the value of thecellFactoryproperty.final voidsetComparator(Comparator<T> comparator) Sets the value of thecomparatorproperty.final voidsetConverter(javafx.util.StringConverter<T> converter) Sets the value of theconverterproperty.final voidsetGraphic(javafx.scene.Node graphic) Sets the value of thegraphicproperty.final voidsetHidePopupWithNoChoice(boolean hidePopupWithNoChoice) Sets the value of thehidePopupWithNoChoiceproperty.final voidsetHidePopupWithSingleChoice(boolean hidePopupWithSingleChoice) Sets the value of thehidePopupWithSingleChoiceproperty.final voidsetHistoryManager(HistoryManager<String> historyManager) Sets the value of thehistoryManagerproperty.final voidsetHistoryPlaceholder(javafx.scene.Node historyPlaceholder) Sets the value of thehistoryPlaceholderproperty.final voidsetLeft(javafx.scene.Node left) Sets the value of theleftproperty.final voidsetMatcher(BiFunction<T, String, Boolean> matcher) Sets the value of thematcherproperty.final voidsetNewItemProducer(javafx.util.Callback<String, T> newItemProducer) Sets the value of thenewItemProducerproperty.voidsetOnCommit(Consumer<T> onCommit) Sets the value of theonCommitproperty.final voidsetOnSearchFinished(javafx.event.EventHandler<SearchField.SearchEvent> value) Sets the value of theonSearchFinishedproperty.final voidsetOnSearchStarted(javafx.event.EventHandler<SearchField.SearchEvent> value) Sets the value of theonSearchStartedproperty.final voidsetPlaceholder(javafx.scene.Node value) Sets the value of theplaceholderproperty.final voidsetPromptText(String promptText) Sets the value of thepromptTextproperty.final voidsetRight(javafx.scene.Node right) Sets the value of therightproperty.final voidsetSelectedItem(T selectedItem) Sets the value of theselectedItemproperty.final voidsetShowSearchIcon(boolean showSearchIcon) Sets the value of theshowSearchIconproperty.final voidsetSuggestionProvider(javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>> suggestionProvider) Sets the value of thesuggestionProviderproperty.final voidSets the value of thetextproperty.final javafx.beans.property.BooleanPropertyDetermines if the field will show an icon on the right-hand side which indicates that the field is a search field.final javafx.beans.property.ObjectProperty<javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>>> A callback used for looking up a list of suggestions for the current search text.final javafx.beans.property.StringPropertyA convenience property bound to the editor's text property.protected voidupdate(Collection<T> newSuggestions) Updates the control with the newly found list of suggestions.Methods inherited from class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipPropertyMethods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthPropertyMethods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isFocusVisible, isFocusWithin, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, requestFocusTraversal, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visiblePropertyMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.css.Styleable
getStyleableNode
-
Property Details
-
onCommit
A callback that gets invoked when the user has committed to the selected value. "Committing" means that the user has hit the ENTER key, or the RIGHT arrow, or the field has lost its focus. Or the user has clicked on one of the suggestions in the popup window.- See Also:
-
onSearchStarted
public final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> onSearchStartedPropertyAn event handler that can be used to get informed whenever the field starts a search. This event gets fired often while the user is still typing as the search gets reset with every keystroke.- See Also:
-
onSearchFinished
public final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> onSearchFinishedPropertyAn event handler that can be used to get informed whenever the field finishes a search.- See Also:
-
graphic
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> graphicPropertyStores a node that will be shown on the field's right-hand side whenever the field is idle.- See Also:
-
busyGraphic
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> busyGraphicPropertyStores a node that will be shown on the field's right side whenever a search is ongoing.- See Also:
-
hidePopupWithSingleChoice
public final javafx.beans.property.BooleanProperty hidePopupWithSingleChoicePropertyHides the popup window with the suggestion list if the list only contains a single elements. The default is "false".CSS:
-fx-hide-popup-with-single-choice: true|false— default:false- See Also:
-
hidePopupWithNoChoice
public final javafx.beans.property.BooleanProperty hidePopupWithNoChoicePropertyDetermines whether to hide the popup window when there are no choices available in the suggestion list. The default value is "false", indicating that the popup does not hide automatically under this condition.CSS:
-fx-hide-popup-with-no-choice: true|false— default:false- See Also:
-
searching
public final javafx.beans.property.ReadOnlyBooleanProperty searchingPropertyA flag indicating whether the asynchronous search is currently in progress. This flag can be used to animate something that expresses that the search is ongoing.- See Also:
-
newItem
public final javafx.beans.property.ReadOnlyBooleanProperty newItemPropertyDetermines if the selected item has been created on-the-fly via thenewItemProducer. This will only ever happen if a new item producer has been specified.- See Also:
-
cellFactory
-
comparator
A comparator used to sort the list of suggestions. The field will try to find a first best match inside the sorted list. Internally the control uses an "inner" comparator to ensure that suggestions appear based on the entered text, which means that a perfect match will always show up first and then the suggests that "start" with the search string.- See Also:
-
newItemProducer
-
autoCompletionGap
public final javafx.beans.property.DoubleProperty autoCompletionGapPropertyDefines the gap (in pixels) between the user typed text and the autocompleted text.CSS:
-fx-auto-completion-gap: <number>— default:1- See Also:
-
fullText
public final javafx.beans.property.ReadOnlyStringProperty fullTextPropertyA read-only property containing the concatenation of the regular text of the text field and the autocompleted text.- See Also:
-
text
public final javafx.beans.property.StringProperty textPropertyA convenience property bound to the editor's text property.- See Also:
-
promptText
public final javafx.beans.property.StringProperty promptTextPropertyA convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g. "Search ...").- See Also:
-
autoCompletedText
public final javafx.beans.property.ReadOnlyStringProperty autoCompletedTextPropertyA read-only property containing the automatically completed text. This property is completely managed by the control.- See Also:
-
matcher
The function that is used to determine the first item in the suggestion list that is a good match for auto selection. This is normally the case if the text provided by the converter for an item starts with exactly the text typed by the user. Auto selection will cause the field to automatically complete the text typed by the user with the name of the match.- See Also:
-
selectedItem
Contains the currently selected item.- See Also:
-
suggestionProvider
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>>> suggestionProviderPropertyA callback used for looking up a list of suggestions for the current search text.- See Also:
-
converter
A converter for turning the objects returned by the suggestion provider into text.- See Also:
-
placeholder
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> placeholderPropertyThe placeholder UI when no suggestions have been returned by the suggestion provider.- See Also:
-
autoCommitOnFocusLost
public final javafx.beans.property.BooleanProperty autoCommitOnFocusLostPropertyReturns the BooleanProperty that indicates if text should auto-commit when the field loses focus. The property is lazy-initialized and defaults to true, enabling auto-commit by default.CSS:
-fx-auto-commit-on-focus-lost: true|false— default:true- See Also:
-
left
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> leftPropertyA custom node that can be shown on the left-hand side of the field.- See Also:
-
right
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> rightPropertyA custom node that can be shown on the right-hand side of the field.- See Also:
-
showSearchIcon
public final javafx.beans.property.BooleanProperty showSearchIconPropertyDetermines if the field will show an icon on the right-hand side which indicates that the field is a search field.CSS:
-fx-show-search-icon: true|false— default:true- See Also:
-
historyPlaceholder
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> historyPlaceholderPropertyReturns the property representing the history placeholder node.- See Also:
-
addingItemToHistoryOnEnter
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnEnterPropertyDetermines whether the text of the text field should be added to the history when the user presses the Enter key.CSS:
-fx-adding-item-to-history-on-enter: true|false— default:true- See Also:
-
addingItemToHistoryOnFocusLost
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnFocusLostPropertyDetermines whether the text of the text field should be added to the history when the field losses its focus.CSS:
-fx-adding-item-to-history-on-focus-lost: true|false— default:true- See Also:
-
addingItemToHistoryOnCommit
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnCommitPropertyDetermines whether the text of the text field should be added to the history when the user commits to a value.CSS:
-fx-adding-item-to-history-on-commit: true|false— default:true- See Also:
-
historyManager
The history manager that is used to manage the history of the SearchField.If its value is null, the history feature will not be enabled, which means only the magnifying glass icon will be displayed, and the dropdown arrow next to the magnifying glass will not be shown.
If its value is not null, the history feature will be enabled, meaning that both the magnifying glass icon and the dropdown arrow will be displayed. Clicking the magnifying glass icon button will display the history popup.
To enable the history feature, you need to set an instance of
HistoryManager. Typically, you would use an instance ofStringHistoryManager, which is an implementation ofHistoryManagerthat manages string-type history records.- See Also:
-
-
Constructor Details
-
SearchField
public SearchField()Constructs a new spotlight field. The field will set defaults for the matcher, the converter, the cell factory, and the comparator. It will not set a default for the "new item" producer.The history manager is initialized with default values.
- See Also:
-
-
Method Details
-
commit
public void commit()Makes the field commit to the currently selected item and updates the field to show the full text provided by the converter for the item. This method can be called multiple times. For a single event when the user explicitly commits to a value use theonCommitProperty(). -
getOnCommit
Gets the value of theonCommitproperty.- Property description:
- A callback that gets invoked when the user has committed to the selected value. "Committing" means that the user has hit the ENTER key, or the RIGHT arrow, or the field has lost its focus. Or the user has clicked on one of the suggestions in the popup window.
- Returns:
- the value of the
onCommitproperty - See Also:
-
onCommitProperty
A callback that gets invoked when the user has committed to the selected value. "Committing" means that the user has hit the ENTER key, or the RIGHT arrow, or the field has lost its focus. Or the user has clicked on one of the suggestions in the popup window.- Returns:
- the commit handler
- See Also:
-
setOnCommit
Sets the value of theonCommitproperty.- Property description:
- A callback that gets invoked when the user has committed to the selected value. "Committing" means that the user has hit the ENTER key, or the RIGHT arrow, or the field has lost its focus. Or the user has clicked on one of the suggestions in the popup window.
- Parameters:
onCommit- the value for theonCommitproperty- See Also:
-
onSearchStartedProperty
public final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> onSearchStartedProperty()An event handler that can be used to get informed whenever the field starts a search. This event gets fired often while the user is still typing as the search gets reset with every keystroke.- Returns:
- the "search started" event handler
- See Also:
-
setOnSearchStarted
Sets the value of theonSearchStartedproperty.- Property description:
- An event handler that can be used to get informed whenever the field starts a search. This event gets fired often while the user is still typing as the search gets reset with every keystroke.
- Parameters:
value- the value for theonSearchStartedproperty- See Also:
-
getOnSearchStarted
Gets the value of theonSearchStartedproperty.- Property description:
- An event handler that can be used to get informed whenever the field starts a search. This event gets fired often while the user is still typing as the search gets reset with every keystroke.
- Returns:
- the value of the
onSearchStartedproperty - See Also:
-
onSearchFinishedProperty
public final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<SearchField.SearchEvent>> onSearchFinishedProperty()An event handler that can be used to get informed whenever the field finishes a search.- Returns:
- the "search finished" event handler
- See Also:
-
setOnSearchFinished
Sets the value of theonSearchFinishedproperty.- Property description:
- An event handler that can be used to get informed whenever the field finishes a search.
- Parameters:
value- the value for theonSearchFinishedproperty- See Also:
-
getOnSearchFinished
Gets the value of theonSearchFinishedproperty.- Property description:
- An event handler that can be used to get informed whenever the field finishes a search.
- Returns:
- the value of the
onSearchFinishedproperty - See Also:
-
getGraphic
public final javafx.scene.Node getGraphic()Gets the value of thegraphicproperty.- Property description:
- Stores a node that will be shown on the field's right-hand side whenever the field is idle.
- Returns:
- the value of the
graphicproperty - See Also:
-
graphicProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> graphicProperty()Stores a node that will be shown on the field's right-hand side whenever the field is idle.- Returns:
- the field's graphic
- See Also:
-
setGraphic
public final void setGraphic(javafx.scene.Node graphic) Sets the value of thegraphicproperty.- Property description:
- Stores a node that will be shown on the field's right-hand side whenever the field is idle.
- Parameters:
graphic- the value for thegraphicproperty- See Also:
-
getBusyGraphic
public final javafx.scene.Node getBusyGraphic()Gets the value of thebusyGraphicproperty.- Property description:
- Stores a node that will be shown on the field's right side whenever a search is ongoing.
- Returns:
- the value of the
busyGraphicproperty - See Also:
-
busyGraphicProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> busyGraphicProperty()Stores a node that will be shown on the field's right side whenever a search is ongoing.- Returns:
- the busy graphic
- See Also:
-
setBusyGraphic
public final void setBusyGraphic(javafx.scene.Node busyGraphic) Sets the value of thebusyGraphicproperty.- Property description:
- Stores a node that will be shown on the field's right side whenever a search is ongoing.
- Parameters:
busyGraphic- the value for thebusyGraphicproperty- See Also:
-
isSearching
public final boolean isSearching()Gets the value of thesearchingproperty.- Property description:
- A flag indicating whether the asynchronous search is currently in progress. This flag can be used to animate something that expresses that the search is ongoing.
- Returns:
- the value of the
searchingproperty - See Also:
-
isHidePopupWithSingleChoice
public final boolean isHidePopupWithSingleChoice()Gets the value of thehidePopupWithSingleChoiceproperty.- Property description:
- Hides the popup window with the suggestion list if the list only contains a single
elements. The default is "false".
CSS:
-fx-hide-popup-with-single-choice: true|false— default:false - Returns:
- the value of the
hidePopupWithSingleChoiceproperty - See Also:
-
hidePopupWithSingleChoiceProperty
public final javafx.beans.property.BooleanProperty hidePopupWithSingleChoiceProperty()Hides the popup window with the suggestion list if the list only contains a single elements. The default is "false".CSS:
-fx-hide-popup-with-single-choice: true|false— default:false- Returns:
- true if the popup showing the list of suggestions will not appear if only a single choice is available
- See Also:
-
setHidePopupWithSingleChoice
public final void setHidePopupWithSingleChoice(boolean hidePopupWithSingleChoice) Sets the value of thehidePopupWithSingleChoiceproperty.- Property description:
- Hides the popup window with the suggestion list if the list only contains a single
elements. The default is "false".
CSS:
-fx-hide-popup-with-single-choice: true|false— default:false - Parameters:
hidePopupWithSingleChoice- the value for thehidePopupWithSingleChoiceproperty- See Also:
-
isHidePopupWithNoChoice
public final boolean isHidePopupWithNoChoice()Gets the value of thehidePopupWithNoChoiceproperty.- Property description:
- Determines whether to hide the popup window when there are no choices available in the suggestion list.
The default value is "false", indicating that the popup does not hide automatically under this condition.
CSS:
-fx-hide-popup-with-no-choice: true|false— default:false - Returns:
- the value of the
hidePopupWithNoChoiceproperty - See Also:
-
hidePopupWithNoChoiceProperty
public final javafx.beans.property.BooleanProperty hidePopupWithNoChoiceProperty()Determines whether to hide the popup window when there are no choices available in the suggestion list. The default value is "false", indicating that the popup does not hide automatically under this condition.CSS:
-fx-hide-popup-with-no-choice: true|false— default:false- Returns:
- true if the popup should not be shown when there are no suggestions to display.
- See Also:
-
setHidePopupWithNoChoice
public final void setHidePopupWithNoChoice(boolean hidePopupWithNoChoice) Sets the value of thehidePopupWithNoChoiceproperty.- Property description:
- Determines whether to hide the popup window when there are no choices available in the suggestion list.
The default value is "false", indicating that the popup does not hide automatically under this condition.
CSS:
-fx-hide-popup-with-no-choice: true|false— default:false - Parameters:
hidePopupWithNoChoice- the value for thehidePopupWithNoChoiceproperty- See Also:
-
searchingProperty
public final javafx.beans.property.ReadOnlyBooleanProperty searchingProperty()A flag indicating whether the asynchronous search is currently in progress. This flag can be used to animate something that expresses that the search is ongoing.- Returns:
- true if the search is currently in progress
- See Also:
-
getEditor
public final javafx.scene.control.TextField getEditor()Returns the text field control used for editing the text.- Returns:
- the text field editor control
-
select
Selects the given item and sets the editor's text to the string provided by the converter for the item.- Parameters:
item- the selected item
-
cancel
public final void cancel()Cancels the current search in progress. -
update
Updates the control with the newly found list of suggestions. The suggestions are provided by a background search service.- Parameters:
newSuggestions- the new suggestions to use for the field
-
createDefaultSkin
protected javafx.scene.control.Skin<?> createDefaultSkin()- Overrides:
createDefaultSkinin classjavafx.scene.control.Control
-
getUserAgentStylesheet
- Overrides:
getUserAgentStylesheetin classjavafx.scene.layout.Region
-
clear
public void clear()Convenience method to invoke clear() on the text field. -
getSuggestions
Returns a read-only (unmodifiable) list of the current suggestions.- Returns:
- the list of suggestions
- See Also:
-
isNewItem
public final boolean isNewItem()Gets the value of thenewItemproperty.- Property description:
- Determines if the selected item has been created on-the-fly via the
newItemProducer. This will only ever happen if a new item producer has been specified. - Returns:
- the value of the
newItemproperty - See Also:
-
newItemProperty
public final javafx.beans.property.ReadOnlyBooleanProperty newItemProperty()Determines if the selected item has been created on-the-fly via thenewItemProducer. This will only ever happen if a new item producer has been specified.- Returns:
- true if the selected item was not part of the suggestion list and has been created on-the-fly
- See Also:
-
getCellFactory
public final javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>> getCellFactory()Gets the value of thecellFactoryproperty.- Property description:
- A cell factory that can be used by a list view to visualize the list of suggestions.
- Returns:
- the value of the
cellFactoryproperty - See Also:
-
cellFactoryProperty
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>>> cellFactoryProperty()A cell factory that can be used by a list view to visualize the list of suggestions.- Returns:
- the cell factory used by the suggestion list view
- See Also:
-
setCellFactory
public final void setCellFactory(javafx.util.Callback<javafx.scene.control.ListView<T>, javafx.scene.control.ListCell<T>> cellFactory) Sets the value of thecellFactoryproperty.- Property description:
- A cell factory that can be used by a list view to visualize the list of suggestions.
- Parameters:
cellFactory- the value for thecellFactoryproperty- See Also:
-
getComparator
Gets the value of thecomparatorproperty.- Property description:
- A comparator used to sort the list of suggestions. The field will try to find a first best match inside the sorted list. Internally the control uses an "inner" comparator to ensure that suggestions appear based on the entered text, which means that a perfect match will always show up first and then the suggests that "start" with the search string.
- Returns:
- the value of the
comparatorproperty - See Also:
-
comparatorProperty
A comparator used to sort the list of suggestions. The field will try to find a first best match inside the sorted list. Internally the control uses an "inner" comparator to ensure that suggestions appear based on the entered text, which means that a perfect match will always show up first and then the suggests that "start" with the search string.- Returns:
- the sorting comparator used for the suggestions list
- See Also:
-
setComparator
Sets the value of thecomparatorproperty.- Property description:
- A comparator used to sort the list of suggestions. The field will try to find a first best match inside the sorted list. Internally the control uses an "inner" comparator to ensure that suggestions appear based on the entered text, which means that a perfect match will always show up first and then the suggests that "start" with the search string.
- Parameters:
comparator- the value for thecomparatorproperty- See Also:
-
getNewItemProducer
-
newItemProducerProperty
-
setNewItemProducer
Sets the value of thenewItemProducerproperty.- Property description:
- A callback used for creating a new object on-the-fly if no item matches the search text.
- Parameters:
newItemProducer- the value for thenewItemProducerproperty- See Also:
-
getAutoCompletionGap
public final double getAutoCompletionGap()Gets the value of theautoCompletionGapproperty.- Property description:
- Defines the gap (in pixels) between the user typed text and the autocompleted text.
CSS:
-fx-auto-completion-gap: <number>— default:1 - Returns:
- the value of the
autoCompletionGapproperty - See Also:
-
autoCompletionGapProperty
public final javafx.beans.property.DoubleProperty autoCompletionGapProperty()Defines the gap (in pixels) between the user typed text and the autocompleted text.CSS:
-fx-auto-completion-gap: <number>— default:1- Returns:
- the gap (in pixels) between the user typed text and the autocompleted text
- See Also:
-
setAutoCompletionGap
public final void setAutoCompletionGap(double autoCompletionGap) Sets the value of theautoCompletionGapproperty.- Property description:
- Defines the gap (in pixels) between the user typed text and the autocompleted text.
CSS:
-fx-auto-completion-gap: <number>— default:1 - Parameters:
autoCompletionGap- the value for theautoCompletionGapproperty- See Also:
-
getFullText
Gets the value of thefullTextproperty.- Property description:
- A read-only property containing the concatenation of the regular text of the text field and the autocompleted text.
- Returns:
- the value of the
fullTextproperty - See Also:
-
fullTextProperty
public final javafx.beans.property.ReadOnlyStringProperty fullTextProperty()A read-only property containing the concatenation of the regular text of the text field and the autocompleted text.- Returns:
- the full text shown by the text field
- See Also:
-
getText
Gets the value of thetextproperty.- Property description:
- A convenience property bound to the editor's text property.
- Returns:
- the value of the
textproperty - See Also:
-
textProperty
public final javafx.beans.property.StringProperty textProperty()A convenience property bound to the editor's text property.- Returns:
- the text shown by the field
- See Also:
-
setText
Sets the value of thetextproperty.- Property description:
- A convenience property bound to the editor's text property.
- Parameters:
text- the value for thetextproperty- See Also:
-
getPromptText
Gets the value of thepromptTextproperty.- Property description:
- A convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g. "Search ...").
- Returns:
- the value of the
promptTextproperty - See Also:
-
promptTextProperty
public final javafx.beans.property.StringProperty promptTextProperty()A convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g. "Search ...").- Returns:
- the prompt text
- See Also:
-
setPromptText
Sets the value of thepromptTextproperty.- Property description:
- A convenience property to set the prompt text shown by the text field when no text has been entered yet (e.g. "Search ...").
- Parameters:
promptText- the value for thepromptTextproperty- See Also:
-
getAutoCompletedText
Gets the value of theautoCompletedTextproperty.- Property description:
- A read-only property containing the automatically completed text. This property is completely managed by the control.
- Returns:
- the value of the
autoCompletedTextproperty - See Also:
-
autoCompletedTextProperty
public final javafx.beans.property.ReadOnlyStringProperty autoCompletedTextProperty()A read-only property containing the automatically completed text. This property is completely managed by the control.- Returns:
- the auto-completed text (e.g. "ates" after the user entered "United St" in a country search field).
- See Also:
-
getMatcher
Gets the value of thematcherproperty.- Property description:
- The function that is used to determine the first item in the suggestion list that is a good match for auto selection. This is normally the case if the text provided by the converter for an item starts with exactly the text typed by the user. Auto selection will cause the field to automatically complete the text typed by the user with the name of the match.
- Returns:
- the value of the
matcherproperty - See Also:
-
matcherProperty
The function that is used to determine the first item in the suggestion list that is a good match for auto selection. This is normally the case if the text provided by the converter for an item starts with exactly the text typed by the user. Auto selection will cause the field to automatically complete the text typed by the user with the name of the match.- Returns:
- the function used for determining the best match in the suggestion list
- See Also:
-
setMatcher
Sets the value of thematcherproperty.- Property description:
- The function that is used to determine the first item in the suggestion list that is a good match for auto selection. This is normally the case if the text provided by the converter for an item starts with exactly the text typed by the user. Auto selection will cause the field to automatically complete the text typed by the user with the name of the match.
- Parameters:
matcher- the value for thematcherproperty- See Also:
-
selectedItemProperty
Contains the currently selected item.- Returns:
- the selected item
- See Also:
-
getSelectedItem
Gets the value of theselectedItemproperty.- Property description:
- Contains the currently selected item.
- Returns:
- the value of the
selectedItemproperty - See Also:
-
setSelectedItem
Sets the value of theselectedItemproperty.- Property description:
- Contains the currently selected item.
- Parameters:
selectedItem- the value for theselectedItemproperty- See Also:
-
getSuggestionProvider
public final javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>> getSuggestionProvider()Gets the value of thesuggestionProviderproperty.- Property description:
- A callback used for looking up a list of suggestions for the current search text.
- Returns:
- the value of the
suggestionProviderproperty - See Also:
-
suggestionProviderProperty
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>>> suggestionProviderProperty()A callback used for looking up a list of suggestions for the current search text.- Returns:
- #getSuggestions
- See Also:
-
setSuggestionProvider
public final void setSuggestionProvider(javafx.util.Callback<SearchField.SearchFieldSuggestionRequest, Collection<T>> suggestionProvider) Sets the value of thesuggestionProviderproperty.- Property description:
- A callback used for looking up a list of suggestions for the current search text.
- Parameters:
suggestionProvider- the value for thesuggestionProviderproperty- See Also:
-
getConverter
Gets the value of theconverterproperty.- Property description:
- A converter for turning the objects returned by the suggestion provider into text.
- Returns:
- the value of the
converterproperty - See Also:
-
converterProperty
public final javafx.beans.property.ObjectProperty<javafx.util.StringConverter<T>> converterProperty()A converter for turning the objects returned by the suggestion provider into text.- Returns:
- the converter for turning the objects returned by the suggestion provider into text
- See Also:
-
setConverter
Sets the value of theconverterproperty.- Property description:
- A converter for turning the objects returned by the suggestion provider into text.
- Parameters:
converter- the value for theconverterproperty- See Also:
-
placeholderProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> placeholderProperty()The placeholder UI when no suggestions have been returned by the suggestion provider.- Returns:
- the placeholder property for the list view of the auto suggest popup
- See Also:
-
setPlaceholder
public final void setPlaceholder(javafx.scene.Node value) Sets the value of theplaceholderproperty.- Property description:
- The placeholder UI when no suggestions have been returned by the suggestion provider.
- Parameters:
value- the value for theplaceholderproperty- See Also:
-
getPlaceholder
public final javafx.scene.Node getPlaceholder()Gets the value of theplaceholderproperty.- Property description:
- The placeholder UI when no suggestions have been returned by the suggestion provider.
- Returns:
- the value of the
placeholderproperty - See Also:
-
autoCommitOnFocusLostProperty
public final javafx.beans.property.BooleanProperty autoCommitOnFocusLostProperty()Returns the BooleanProperty that indicates if text should auto-commit when the field loses focus. The property is lazy-initialized and defaults to true, enabling auto-commit by default.CSS:
-fx-auto-commit-on-focus-lost: true|false— default:true- Returns:
- the BooleanProperty for autoCommitOnFocusLost.
- See Also:
-
isAutoCommitOnFocusLost
public final boolean isAutoCommitOnFocusLost()Checks if the auto-commit on focus lost feature is enabled.- Returns:
- true if auto-commit on focus lost is enabled, false otherwise.
-
setAutoCommitOnFocusLost
public final void setAutoCommitOnFocusLost(boolean value) Sets the value of the autoCommitOnFocusLost property.- Parameters:
value- if true, enables auto-commit on focus lost; if false, disables it.
-
getLeft
public final javafx.scene.Node getLeft()Gets the value of theleftproperty.- Property description:
- A custom node that can be shown on the left-hand side of the field.
- Returns:
- the value of the
leftproperty - See Also:
-
leftProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> leftProperty()A custom node that can be shown on the left-hand side of the field.- Returns:
- a custom node for the left-hand side (e.g. "clear" button)
- See Also:
-
setLeft
public final void setLeft(javafx.scene.Node left) Sets the value of theleftproperty.- Property description:
- A custom node that can be shown on the left-hand side of the field.
- Parameters:
left- the value for theleftproperty- See Also:
-
getRight
public final javafx.scene.Node getRight()Gets the value of therightproperty.- Property description:
- A custom node that can be shown on the right-hand side of the field.
- Returns:
- the value of the
rightproperty - See Also:
-
rightProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> rightProperty()A custom node that can be shown on the right-hand side of the field.- Returns:
- a custom node for the right-hand side (e.g. "clear" button)
- See Also:
-
setRight
public final void setRight(javafx.scene.Node right) Sets the value of therightproperty.- Property description:
- A custom node that can be shown on the right-hand side of the field.
- Parameters:
right- the value for therightproperty- See Also:
-
isShowSearchIcon
public final boolean isShowSearchIcon()Gets the value of theshowSearchIconproperty.- Property description:
- Determines if the field will show an icon on the right-hand side which indicates
that the field is a search field.
CSS:
-fx-show-search-icon: true|false— default:true - Returns:
- the value of the
showSearchIconproperty - See Also:
-
showSearchIconProperty
public final javafx.beans.property.BooleanProperty showSearchIconProperty()Determines if the field will show an icon on the right-hand side which indicates that the field is a search field.CSS:
-fx-show-search-icon: true|false— default:true- Returns:
- true if a search icon will be shown
- See Also:
-
setShowSearchIcon
public final void setShowSearchIcon(boolean showSearchIcon) Sets the value of theshowSearchIconproperty.- Property description:
- Determines if the field will show an icon on the right-hand side which indicates
that the field is a search field.
CSS:
-fx-show-search-icon: true|false— default:true - Parameters:
showSearchIcon- the value for theshowSearchIconproperty- See Also:
-
historyPlaceholderProperty
public final javafx.beans.property.ObjectProperty<javafx.scene.Node> historyPlaceholderProperty()Returns the property representing the history placeholder node.- Returns:
- the property representing the history placeholder node
- See Also:
-
getHistoryPlaceholder
public final javafx.scene.Node getHistoryPlaceholder()Gets the value of thehistoryPlaceholderproperty.- Property description:
- Returns the property representing the history placeholder node.
- Returns:
- the value of the
historyPlaceholderproperty - See Also:
-
setHistoryPlaceholder
public final void setHistoryPlaceholder(javafx.scene.Node historyPlaceholder) Sets the value of thehistoryPlaceholderproperty.- Property description:
- Returns the property representing the history placeholder node.
- Parameters:
historyPlaceholder- the value for thehistoryPlaceholderproperty- See Also:
-
addingItemToHistoryOnEnterProperty
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnEnterProperty()Determines whether the text of the text field should be added to the history when the user presses the Enter key.CSS:
-fx-adding-item-to-history-on-enter: true|false— default:true- Returns:
- true if the text should be added to the history on Enter, false otherwise
- See Also:
-
isAddingItemToHistoryOnEnter
public final boolean isAddingItemToHistoryOnEnter()Gets the value of theaddingItemToHistoryOnEnterproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the user presses the Enter key.
CSS:
-fx-adding-item-to-history-on-enter: true|false— default:true - Returns:
- the value of the
addingItemToHistoryOnEnterproperty - See Also:
-
setAddingItemToHistoryOnEnter
public final void setAddingItemToHistoryOnEnter(boolean addingItemToHistoryOnEnter) Sets the value of theaddingItemToHistoryOnEnterproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the user presses the Enter key.
CSS:
-fx-adding-item-to-history-on-enter: true|false— default:true - Parameters:
addingItemToHistoryOnEnter- the value for theaddingItemToHistoryOnEnterproperty- See Also:
-
addingItemToHistoryOnFocusLostProperty
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnFocusLostProperty()Determines whether the text of the text field should be added to the history when the field losses its focus.CSS:
-fx-adding-item-to-history-on-focus-lost: true|false— default:true- Returns:
- true if the text should be added to the history on focus lost, false otherwise
- See Also:
-
isAddingItemToHistoryOnFocusLost
public final boolean isAddingItemToHistoryOnFocusLost()Gets the value of theaddingItemToHistoryOnFocusLostproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the field losses its focus.
CSS:
-fx-adding-item-to-history-on-focus-lost: true|false— default:true - Returns:
- the value of the
addingItemToHistoryOnFocusLostproperty - See Also:
-
setAddingItemToHistoryOnFocusLost
public final void setAddingItemToHistoryOnFocusLost(boolean addingItemToHistoryOnFocusLost) Sets the value of theaddingItemToHistoryOnFocusLostproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the field losses its focus.
CSS:
-fx-adding-item-to-history-on-focus-lost: true|false— default:true - Parameters:
addingItemToHistoryOnFocusLost- the value for theaddingItemToHistoryOnFocusLostproperty- See Also:
-
addingItemToHistoryOnCommitProperty
public final javafx.beans.property.BooleanProperty addingItemToHistoryOnCommitProperty()Determines whether the text of the text field should be added to the history when the user commits to a value.CSS:
-fx-adding-item-to-history-on-commit: true|false— default:true- Returns:
- true if the text should be added to the history on commit, false otherwise
- See Also:
-
isAddingItemToHistoryOnCommit
public final boolean isAddingItemToHistoryOnCommit()Gets the value of theaddingItemToHistoryOnCommitproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the user commits to a value.
CSS:
-fx-adding-item-to-history-on-commit: true|false— default:true - Returns:
- the value of the
addingItemToHistoryOnCommitproperty - See Also:
-
setAddingItemToHistoryOnCommit
public final void setAddingItemToHistoryOnCommit(boolean addingItemToHistoryOnCommit) Sets the value of theaddingItemToHistoryOnCommitproperty.- Property description:
- Determines whether the text of the text field should be added to the history when the user commits to a value.
CSS:
-fx-adding-item-to-history-on-commit: true|false— default:true - Parameters:
addingItemToHistoryOnCommit- the value for theaddingItemToHistoryOnCommitproperty- See Also:
-
historyManagerProperty
The history manager that is used to manage the history of the SearchField.If its value is null, the history feature will not be enabled, which means only the magnifying glass icon will be displayed, and the dropdown arrow next to the magnifying glass will not be shown.
If its value is not null, the history feature will be enabled, meaning that both the magnifying glass icon and the dropdown arrow will be displayed. Clicking the magnifying glass icon button will display the history popup.
To enable the history feature, you need to set an instance of
HistoryManager. Typically, you would use an instance ofStringHistoryManager, which is an implementation ofHistoryManagerthat manages string-type history records.- Returns:
- the property representing the history manager
- See Also:
-
getHistoryManager
Gets the value of thehistoryManagerproperty.- Property description:
- The history manager that is used to manage the history of the SearchField.
If its value is null, the history feature will not be enabled, which means only the magnifying glass icon will be displayed, and the dropdown arrow next to the magnifying glass will not be shown.
If its value is not null, the history feature will be enabled, meaning that both the magnifying glass icon and the dropdown arrow will be displayed. Clicking the magnifying glass icon button will display the history popup.
To enable the history feature, you need to set an instance of
HistoryManager. Typically, you would use an instance ofStringHistoryManager, which is an implementation ofHistoryManagerthat manages string-type history records. - Returns:
- the value of the
historyManagerproperty - See Also:
-
setHistoryManager
Sets the value of thehistoryManagerproperty.- Property description:
- The history manager that is used to manage the history of the SearchField.
If its value is null, the history feature will not be enabled, which means only the magnifying glass icon will be displayed, and the dropdown arrow next to the magnifying glass will not be shown.
If its value is not null, the history feature will be enabled, meaning that both the magnifying glass icon and the dropdown arrow will be displayed. Clicking the magnifying glass icon button will display the history popup.
To enable the history feature, you need to set an instance of
HistoryManager. Typically, you would use an instance ofStringHistoryManager, which is an implementation ofHistoryManagerthat manages string-type history records. - Parameters:
historyManager- the value for thehistoryManagerproperty- See Also:
-
getPopup
-
getControlCssMetaData
- Overrides:
getControlCssMetaDatain classjavafx.scene.control.Control
-
getClassCssMetaData
-