Class EmailField

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
com.dlsc.gemsfx.EmailField
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget, javafx.scene.control.Skinnable

public class EmailField extends javafx.scene.control.Control
EmailField is a custom control for inputting and validating email addresses. It extends the base Control class and provides additional functionalities:

1. Automatic email domain suggestions to enhance user experience.
2. Email address format validation to ensure input validity.
3. Customizable properties to control the visibility of user interface elements, such as mail and validation icons, according to specific user interface requirements.

  • Property Summary

    Properties
    Type
    Property
    Description
    final javafx.beans.property.BooleanProperty
    Property for enabling or disabling the auto-completion of email domains.
    final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>>>
    Returns the property for the domain list cell factory.
    final javafx.beans.property.ListProperty<String>
     
    final javafx.beans.property.StringProperty
     
    final javafx.beans.property.StringProperty
    Property for changing the tooltip text, which is displayed when hovering over the invalid icon after email address validation fails.
    final javafx.beans.property.StringProperty
     
    final javafx.beans.property.BooleanProperty
     
    final javafx.beans.property.BooleanProperty
    Property for handling the mail icon visibility.
    final javafx.beans.property.BooleanProperty
    Property for handling the validation icon visibility.
    final javafx.beans.property.ReadOnlyBooleanProperty
     

    Properties inherited from class javafx.scene.control.Control

    contextMenu, skin, tooltip

    Properties inherited from class javafx.scene.layout.Region

    background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width

    Properties inherited from class javafx.scene.Parent

    needsLayout

    Properties 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_SIZE

    Fields inherited from class javafx.scene.Node

    BASELINE_OFFSET_SAME_AS_HEIGHT
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    EmailField(String emailAddress)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    final javafx.beans.property.BooleanProperty
    Property for enabling or disabling the auto-completion of email domains.
    protected javafx.scene.control.Skin<?>
     
    final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>>>
    Returns the property for the domain list cell factory.
    final javafx.beans.property.ListProperty<String>
     
    final javafx.beans.property.StringProperty
     
    final boolean
    Gets the value of the property autoDomainCompletionEnabled.
    static List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>>
     
    protected List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>>
     
    final javafx.collections.ObservableList<String>
    Gets the value of the property domainList.
    final javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>>
    Gets the value of the property domainListCellFactory.
    final org.controlsfx.control.textfield.CustomTextField
     
    final String
    Gets the value of the property emailAddress.
    final String
    Retrieves the tooltip text displayed when the email address validation fails and the user hovers over the invalid icon.
    final String
    Gets the value of the property promptText.
     
    final javafx.beans.property.StringProperty
    Property for changing the tooltip text, which is displayed when hovering over the invalid icon after email address validation fails.
    final boolean
    Gets the value of the property required.
    final boolean
    Returns true if the mail icon is visible, otherwise false.
    final boolean
    Returns true if the validation icon is visible, otherwise false.
    final boolean
    Gets the value of the property valid.
    final javafx.beans.property.StringProperty
     
    final javafx.beans.property.BooleanProperty
     
    final void
    setAutoDomainCompletionEnabled(boolean autoDomainCompletionEnabled)
    Sets the value of the property autoDomainCompletionEnabled.
    final void
    setDomainList(javafx.collections.ObservableList<String> domainList)
    Sets the value of the property domainList.
    final void
    setDomainListCellFactory(javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>> cellFactory)
    Sets the value of the property domainListCellFactory.
    final void
    setEmailAddress(String emailAddress)
    Sets the value of the property emailAddress.
    final void
    setInvalidText(String invalidText)
    Sets the tooltip text that appears when the user hovers over the icon indicating the email address is invalid.
    final void
    setPromptText(String promptText)
    Sets the value of the property promptText.
    final void
    setRequired(boolean required)
    Sets the value of the property required.
    final void
    setShowMailIcon(boolean showMailIcon)
    Sets the visibility of the mail icon.
    final void
    setShowValidationIcon(boolean showValidationIcon)
    Sets the visibility of the validation icon.
    final javafx.beans.property.BooleanProperty
    Property for handling the mail icon visibility.
    final javafx.beans.property.BooleanProperty
    Property for handling the validation icon visibility.
    final javafx.beans.property.ReadOnlyBooleanProperty
     

    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, tooltipProperty

    Methods 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, widthProperty

    Methods inherited from class javafx.scene.Parent

    getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds

    Methods 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, 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, visibleProperty

    Methods inherited from class java.lang.Object

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

    Methods inherited from interface javafx.css.Styleable

    getStyleableNode
  • Property Details

  • Constructor Details

    • EmailField

      public EmailField()
    • EmailField

      public EmailField(String emailAddress)
  • Method Details

    • createDefaultSkin

      protected javafx.scene.control.Skin<?> createDefaultSkin()
      Overrides:
      createDefaultSkin in class javafx.scene.control.Control
    • getUserAgentStylesheet

      public String getUserAgentStylesheet()
      Overrides:
      getUserAgentStylesheet in class javafx.scene.layout.Region
    • getEditor

      public final org.controlsfx.control.textfield.CustomTextField getEditor()
    • getDomainList

      public final javafx.collections.ObservableList<String> getDomainList()
      Gets the value of the property domainList.
      Property description:
    • domainListProperty

      public final javafx.beans.property.ListProperty<String> domainListProperty()
      See Also:
    • setDomainList

      public final void setDomainList(javafx.collections.ObservableList<String> domainList)
      Sets the value of the property domainList.
      Property description:
    • getAutoDomainCompletionEnabled

      public final boolean getAutoDomainCompletionEnabled()
      Gets the value of the property autoDomainCompletionEnabled.
      Property description:
      Property for enabling or disabling the auto-completion of email domains.
    • autoDomainCompletionEnabledProperty

      public final javafx.beans.property.BooleanProperty autoDomainCompletionEnabledProperty()
      Property for enabling or disabling the auto-completion of email domains.
      See Also:
    • setAutoDomainCompletionEnabled

      public final void setAutoDomainCompletionEnabled(boolean autoDomainCompletionEnabled)
      Sets the value of the property autoDomainCompletionEnabled.
      Property description:
      Property for enabling or disabling the auto-completion of email domains.
    • getDomainListCellFactory

      public final javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>> getDomainListCellFactory()
      Gets the value of the property domainListCellFactory.
      Property description:
      Returns the property for the domain list cell factory. This property can be used to customize the rendering of the domain suggestions in the ListView.
    • domainListCellFactoryProperty

      public final javafx.beans.property.ObjectProperty<javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>>> domainListCellFactoryProperty()
      Returns the property for the domain list cell factory. This property can be used to customize the rendering of the domain suggestions in the ListView.
      See Also:
    • setDomainListCellFactory

      public final void setDomainListCellFactory(javafx.util.Callback<javafx.scene.control.ListView<String>,javafx.scene.control.ListCell<String>> cellFactory)
      Sets the value of the property domainListCellFactory.
      Property description:
      Returns the property for the domain list cell factory. This property can be used to customize the rendering of the domain suggestions in the ListView.
    • isRequired

      public final boolean isRequired()
      Gets the value of the property required.
      Property description:
    • requiredProperty

      public final javafx.beans.property.BooleanProperty requiredProperty()
      See Also:
    • setRequired

      public final void setRequired(boolean required)
      Sets the value of the property required.
      Property description:
    • getPromptText

      public final String getPromptText()
      Gets the value of the property promptText.
      Property description:
    • promptTextProperty

      public final javafx.beans.property.StringProperty promptTextProperty()
      See Also:
    • setPromptText

      public final void setPromptText(String promptText)
      Sets the value of the property promptText.
      Property description:
    • getEmailAddress

      public final String getEmailAddress()
      Gets the value of the property emailAddress.
      Property description:
    • emailAddressProperty

      public final javafx.beans.property.StringProperty emailAddressProperty()
      See Also:
    • setEmailAddress

      public final void setEmailAddress(String emailAddress)
      Sets the value of the property emailAddress.
      Property description:
    • isValid

      public final boolean isValid()
      Gets the value of the property valid.
      Property description:
    • validProperty

      public final javafx.beans.property.ReadOnlyBooleanProperty validProperty()
      See Also:
    • getInvalidText

      public final String getInvalidText()
      Retrieves the tooltip text displayed when the email address validation fails and the user hovers over the invalid icon.
      Returns:
      Tooltip text for an invalid email address.
    • invalidTextProperty

      public final javafx.beans.property.StringProperty invalidTextProperty()
      Property for changing the tooltip text, which is displayed when hovering over the invalid icon after email address validation fails.
      See Also:
    • setInvalidText

      public final void setInvalidText(String invalidText)
      Sets the tooltip text that appears when the user hovers over the icon indicating the email address is invalid.
      Parameters:
      invalidText - The tooltip text to set for an invalid email address.
    • isShowMailIcon

      public final boolean isShowMailIcon()
      Returns true if the mail icon is visible, otherwise false.
      Returns:
      The mail icon visibility
    • showMailIconProperty

      public final javafx.beans.property.BooleanProperty showMailIconProperty()
      Property for handling the mail icon visibility.
      See Also:
    • setShowMailIcon

      public final void setShowMailIcon(boolean showMailIcon)
      Sets the visibility of the mail icon.
      Parameters:
      showMailIcon - true if the mail icon should be visible, otherwise false
    • isShowValidationIcon

      public final boolean isShowValidationIcon()
      Returns true if the validation icon is visible, otherwise false.
      Returns:
      The validation icon visibility
    • showValidationIconProperty

      public final javafx.beans.property.BooleanProperty showValidationIconProperty()
      Property for handling the validation icon visibility.
      See Also:
    • setShowValidationIcon

      public final void setShowValidationIcon(boolean showValidationIcon)
      Sets the visibility of the validation icon.
      Parameters:
      showValidationIcon - true if the validation icon should be visible, otherwise false
    • getControlCssMetaData

      protected List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>> getControlCssMetaData()
      Overrides:
      getControlCssMetaData in class javafx.scene.control.Control
    • getClassCssMetaData

      public static List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>> getClassCssMetaData()