Class RichTextArea
- All Implemented Interfaces:
Styleable
,EventTarget
,Skinnable
- Direct Known Subclasses:
CodeArea
The RichTextArea control has a number of features, including:
-
paragraph-oriented model
, up to ~2 billion rows - virtualized text cell flow
- support for text styling with an application stylesheet or
inline attributes
- support for multiple views connected to the same model
-
single selection
-
input map
which allows for easy behavior customization and extension
Creating a RichTextArea
The following example creates an editable control with the default RichTextModel
:
RichTextArea textArea = new RichTextArea();
The methods
appendText()
, insertText()
, replaceText()
, applyStyle()
,
setStyle()
, or clear()
can be used to modify text programmatically:
// create styles
StyleAttributeMap heading = StyleAttributeMap.builder().setBold(true).setUnderline(true).setFontSize(18).build();
StyleAttributeMap mono = StyleAttributeMap.builder().setFontFamily("Monospaced").build();
RichTextArea textArea = new RichTextArea();
// build the content
textArea.appendText("RichTextArea\n", heading);
textArea.appendText("Example:\nText is ", StyleAttributeMap.EMPTY);
textArea.appendText("monospaced.\n", mono);
Which results in the following visual representation:
A view-only information control requires a different model. The following example illustrates how to create a model that uses a stylesheet for styling:
SimpleViewOnlyStyledModel m = new SimpleViewOnlyStyledModel();
// add text segment using CSS style name (requires a stylesheet)
m.addWithStyleNames("RichTextArea ", "HEADER");
// add text segment using inline styles
m.addWithInlineStyle("Demo", "-fx-font-size:200%; -fx-font-weight:bold;");
// add newline
m.nl();
RichTextArea textArea = new RichTextArea(m);
Text Models
A number of standard models can be used with RichTextArea, each addressing a specific use case:
Model Class | Description |
---|---|
| Base class (abstract) |
├─ | Default model for RichTextArea |
├─ | Unstyled text model |
│ └─ | Default model for CodeArea |
└─ | Base class for a view-only model (abstract) |
└─ | In-memory view-only styled model |
Selection
The RichTextArea control maintains a single contiguous selection segment
as a part of the SelectionModel
. Additionally,
anchorPositionProperty()
and caretPositionProperty()
read-only properties
are derived from the selectionProperty()
for convenience.
Customizing
The RichTextArea control offers some degree of customization that does not require subclassing:- customizing key bindings with the
InputMap
- setting
leftDecorator
andrightDecorator
properties
- Since:
- 24
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Function tags serve as identifiers of methods that can be customized via theInputMap
. -
Property Summary
PropertiesTypePropertyDescriptionfinal ReadOnlyProperty
<TextPos> Tracks the selection anchor position within the document.final ObjectProperty
<Duration> Determines the caret blink period.final ReadOnlyProperty
<TextPos> Tracks the caret position within the document.final ObjectProperty
<Insets> Specifies the padding for the RichTextArea content.final BooleanProperty
This property controls whether caret will be displayed or not.final BooleanProperty
Indicates whether this RichTextArea can be edited by the user, provided the model is also writable.final BooleanProperty
Indicates whether the current paragraph will be visually highlighted.final ObjectProperty
<SideDecorator> Specifies the left-side paragraph decorator.final ObjectProperty
<StyledTextModel> Determines theStyledTextModel
to use with this RichTextArea.final ReadOnlyBooleanProperty
The property describes if it's currently possible to redo the latest change of the content that was undone.final ObjectProperty
<SideDecorator> Specifies the right-side paragraph decorator.final ReadOnlyProperty
<SelectionSegment> Tracks the current selection.final ReadOnlyBooleanProperty
The property describes if it's currently possible to undo the latest change of the content that was done.final BooleanProperty
Determines whether the preferred height is the same as the content height.final BooleanProperty
Determines whether the preferred width is the same as the content width.final BooleanProperty
Indicates whether text should be wrapped in this RichTextArea.Properties declared in class javafx.scene.control.Control
contextMenu, skin, tooltip
Properties declared in class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
Properties declared in class javafx.scene.Parent
needsLayout
Properties declared in 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
FieldsModifier and TypeFieldDescriptionprotected static final StyleHandlerRegistry
The style handler registry instance, made available for use by subclasses to add support for new style attributes.Fields declared in class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
Fields declared in class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
Constructor Summary
ConstructorsConstructorDescriptionCreates the instance with the in-memory modelRichTextModel
.RichTextArea
(StyledTextModel model) Creates the instance using the specified model. -
Method Summary
Modifier and TypeMethodDescriptionfinal ReadOnlyProperty
<TextPos> Tracks the selection anchor position within the document.final TextPos
appendText
(String text) Appends the styled text to the end of the document.final TextPos
appendText
(String text, StyleAttributeMap attrs) Appends the styled text to the end of the document.final TextPos
Appends the styled content to the end of the document.void
applyStyle
(TextPos start, TextPos end, StyleAttributeMap attrs) Applies the specified style to the selected range.void
When selection exists, deletes selected text.final ObjectProperty
<Duration> Determines the caret blink period.final ReadOnlyProperty
<TextPos> Tracks the caret position within the document.final void
clear()
Clears the document, creating an undo entry.final void
Clears existing selection, if any.final void
Clears the undo-redo stack of the underlying model.final ObjectProperty
<Insets> Specifies the padding for the RichTextArea content.void
copy()
When selection exists, copies the selected rich text to the clipboard in all the formats supported by the model.final void
copy
(DataFormat format) Copies the selected text in the specified format to the clipboard.protected RichTextAreaSkin
Create a new instance of the default skin for this control.void
cut()
Transfers the currently selected text to the clipboard, removing the current selection.void
delete()
When selection exists, deletes selected text.void
When selection exists, deletes selected paragraphs.void
Deletes text from the caret position to the start of the paragraph, ignoring existing selection.void
Deletes from the caret positon to the end of next word, ignoring existing selection.void
Deletes from the caret positon to the start of next word, ignoring existing selection.void
Deletes (multiple) empty paragraphs or text from the caret position to the start of the previous word, ignoring existing selection.void
deselect()
Clears the selected text range by moving anchor to the caret position.final BooleanProperty
This property controls whether caret will be displayed or not.final BooleanProperty
Indicates whether this RichTextArea can be edited by the user, provided the model is also writable.void
Provides audio and/or visual error feedback.final void
execute
(FunctionTag tag) Executes a function mapped to the specified function tag.final void
Executes the default function mapped to the specified tag.final void
extendSelection
(TextPos pos) Extends selection to the specified position.final StyleAttributeMap
ReturnsStyleAttributeMap
which contains character and paragraph attributes.final TextPos
Gets the value of theanchorPosition
property.final Duration
Gets the value of thecaretBlinkPeriod
property.final TextPos
Gets the value of thecaretPosition
property.static List
<CssMetaData<? extends Styleable, ?>> Gets theCssMetaData
associated with this class, which may include theCssMetaData
of its superclasses.final Insets
Gets the value of thecontentPadding
property.List
<CssMetaData<? extends Styleable, ?>> Gets the unmodifiable list of the control's CSS-styleable properties.final TextPos
Returns a TextPos corresponding to the end of the document.final InputMap
Returns the input map instance.final SideDecorator
Gets the value of theleftDecorator
property.final StyledTextModel
getModel()
Gets the value of themodel
property.final int
Returns the number of paragraphs in the model.final TextPos
getParagraphEnd
(int index) Returns a TextPos corresponding to the end of paragraph.final String
getPlainText
(int index) Returns the plain text at the specified paragraph index.final SideDecorator
Gets the value of therightDecorator
property.final SelectionSegment
Gets the value of theselection
property.Returns the style handler registry for this control.final TextPos
getTextPosition
(double screenX, double screenY) Finds a text position corresponding to the specified screen coordinates.final boolean
This convenience method returns true when a non-empty selection exists.final BooleanProperty
Indicates whether the current paragraph will be visually highlighted.void
Inserts a line break at the caret.void
Inserts a tab symbol at the caret.final TextPos
insertText
(TextPos pos, String text, StyleAttributeMap attrs) Inserts the styled text at the specified position.final TextPos
insertText
(TextPos pos, StyledInput in) Inserts the styled content at the specified position.final boolean
Gets the value of thedisplayCaret
property.final boolean
Gets the value of theeditable
property.final boolean
Gets the value of thehighlightCurrentParagraph
property.final boolean
Gets the value of theredoable
property.final boolean
Gets the value of theundoable
property.final boolean
Gets the value of theuseContentHeight
property.final boolean
Gets the value of theuseContentWidth
property.final boolean
Gets the value of thewrapText
property.final ObjectProperty
<SideDecorator> Specifies the left-side paragraph decorator.final ObjectProperty
<StyledTextModel> Determines theStyledTextModel
to use with this RichTextArea.void
Moves the caret to after the last character of the text, clearing an existing selection.void
Moves the caret to before the first character of the text, clearing an existing selection.void
moveDown()
Moves the caret one visual line down, clearing an existing selection.void
moveLeft()
Moves the caret left, clearing an existing selection range.void
Moves the caret to the end of the visual text line at caret, clearing an existing selection.void
Moves the caret to the start of the visual text line at caret, clearing an existing selection.void
Moves the caret to the end of the current paragraph, or, if already there, to the end of the next paragraph.void
Moves the caret to the end of the paragraph at caret, clearing an existing selection.void
Moves the caret to the start of the current paragraph, clearing an existing selection.void
Moves the caret to the start of the current paragraph, or, if already there, to the start of the previous paragraph.void
Moves the caret to the next symbol, clearing an existing selection.void
moveUp()
Moves the caret one visual line up, clearing an existing selection.void
Moves the caret to the beginning of previous word in a left-to-right setting (or the beginning of the next word in a right-to-left setting), clearing an existing selection.void
Moves the caret to the end of the next word, clearing an existing selection.void
Moves the caret to the start of next word, clearing an existing selection.void
Moves the caret to the beginning of previous word, clearing an existing selection.void
Moves the caret to the beginning of next word in a left-to-right setting (or the beginning of the previous word in a right-to-left setting), clearing an existing selection.void
pageDown()
Move caret one visual page down, clearing an existing selection.void
pageUp()
Move caret one visual page up, clearing an existing selection.void
paste()
Pastes the clipboard content at the caret, or, if selection exists, replacing the selected text.void
paste
(DataFormat format) Pastes the clipboard content at the caret, or, if selection exists, replacing the selected text.final void
Pastes the plain text clipboard content at the caret, or, if selection exists, replacing the selected text.final void
read
(InputStream in) Calls the model to replace the current document with the content read from the input stream.final void
read
(DataFormat f, InputStream in) Calls the model to replace the current document with the content read from the stream using the specifiedDataFormat
.void
redo()
If possible, redoes the last undone modification.final ReadOnlyBooleanProperty
The property describes if it's currently possible to redo the latest change of the content that was undone.final TextPos
replaceText
(TextPos start, TextPos end, String text, boolean allowUndo) Replaces the specified range with the new text.final TextPos
replaceText
(TextPos start, TextPos end, StyledInput in, boolean createUndo) Replaces the specified range with the new input.final ObjectProperty
<SideDecorator> Specifies the right-side paragraph decorator.final void
Moves both the caret and the anchor to the specified position, clearing any existing selection.final void
Selects the specified range and places the caret at the new position.void
Selects all the text in the document: the anchor is set at the document start, while the caret is positioned at the end of the document.void
Extends selection one visual text line down.final ReadOnlyProperty
<SelectionSegment> Tracks the current selection.void
Extends selection one symbol to the left.void
Extends selection one visible page down.void
Extends selection one visible page up.void
Selects the current paragraph.void
Extends selection to the end of the current paragraph, or, if already at the end, to the end of the next paragraph.void
Selects from the current position to the paragraph end.void
Selects from the current position to the paragraph start.void
Extends selection to the start of the current paragraph, or, if already at the start, to the start of the previous paragraph.void
Extends selection one symbol (or grapheme cluster) to the right.void
Extends selection to the end of the document.void
Extends selection to the start of the document.void
Extends selection to the end of the visual text line at caret.void
Extends selection to the start of the visual text line at caret.void
selectUp()
Extends selection one visual text line up.void
Selects a word at the caret position.void
Moves the caret to the beginning of previous word in a left-to-right setting, or to the beginning of the next word in a right-to-left setting.void
Extends selection to the end of the next word.void
Moves the caret to the start of the next word.void
Moves the caret to the beginning of previous word.void
Moves the caret to the beginning of next word in a left-to-right setting, or to the beginning of the previous word in a right-to-left setting.final void
setCaretBlinkPeriod
(Duration period) Sets the value of thecaretBlinkPeriod
property.final void
setContentPadding
(Insets value) Sets the value of thecontentPadding
property.final void
setDisplayCaret
(boolean on) Sets the value of thedisplayCaret
property.final void
setEditable
(boolean on) Sets the value of theeditable
property.final void
setHighlightCurrentParagraph
(boolean on) Sets the value of thehighlightCurrentParagraph
property.final void
Sets the value of theleftDecorator
property.final void
Sets the value of themodel
property.final void
Sets the value of therightDecorator
property.final void
setStyle
(TextPos start, TextPos end, StyleAttributeMap attrs) Sets the specified style to the selected range.final void
setUseContentHeight
(boolean on) Sets the value of theuseContentHeight
property.final void
setUseContentWidth
(boolean on) Sets the value of theuseContentWidth
property.final void
setWrapText
(boolean value) Sets the value of thewrapText
property.void
undo()
If possible, undoes the last modification.final ReadOnlyBooleanProperty
The property describes if it's currently possible to undo the latest change of the content that was done.final BooleanProperty
Determines whether the preferred height is the same as the content height.final BooleanProperty
Determines whether the preferred width is the same as the content width.protected void
Validates the model property value.final BooleanProperty
Indicates whether text should be wrapped in this RichTextArea.final void
write
(OutputStream out) Calls the model to write the current document to the output stream, using the highest priorityDataFormat
as determined by the model.final void
write
(DataFormat f, OutputStream out) Calls the model to writes the current document to the output stream using the specifiedDataFormat
.Methods declared in class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, getContextMenu, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
Methods declared in class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computePrefHeight, computePrefWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, 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 declared in class javafx.scene.Parent
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
Methods declared in 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, executeAccessibleAction, 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, lookup, 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, queryAccessibleAttribute, 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, visibleProperty
Methods declared in class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods declared in interface javafx.css.Styleable
getStyleableNode
-
Property Details
-
anchorPosition
Tracks the selection anchor position within the document. This read-only property is derived fromselection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- See Also:
-
caretBlinkPeriod
Determines the caret blink period. This property cannot be set tonull
.This property can be styled with CSS using
-fx-caret-blink-period
name.- Default value:
- 1000 ms
- See Also:
-
caretPosition
Tracks the caret position within the document. This read-only property is derived fromselection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- See Also:
-
contentPadding
Specifies the padding for the RichTextArea content. The content padding value can be null, which is treated as no padding.This property can be styled with CSS using
-fx-content-padding
name.- Default value:
- null
- See Also:
-
displayCaret
This property controls whether caret will be displayed or not.This property can be styled with CSS using
-fx-display-caret
name.- Default value:
- true
- See Also:
-
editable
Indicates whether this RichTextArea can be edited by the user, provided the model is also writable. Changing the value of this property with a view-only model or a null model has no effect.- Default value:
- true
- See Also:
-
highlightCurrentParagraph
Indicates whether the current paragraph will be visually highlighted.This property can be styled with CSS using
-fx-highlight-current-paragraph
name.- Default value:
- false
- See Also:
-
leftDecorator
Specifies the left-side paragraph decorator. The value can be null.- Default value:
- null
- See Also:
-
model
Determines theStyledTextModel
to use with this RichTextArea. The model can be null, which results in an empty, uneditable control.Note: Subclasses may impose additional restrictions on the type of the model they require.
- Default value:
- an instance of
RichTextModel
- See Also:
-
redoable
The property describes if it's currently possible to redo the latest change of the content that was undone.- Default value:
- false
- See Also:
-
rightDecorator
Specifies the right-side paragraph decorator. The value can be null.- Default value:
- null
- See Also:
-
selection
Tracks the current selection. TheSelectionSegment
consists of two values - the caret and the anchor positions which may get changed independently. This property allows for tracking the selection as an single entity. A null value for the selection segment causes both the caret and the anchor positions to become null.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- See Also:
-
undoable
The property describes if it's currently possible to undo the latest change of the content that was done.- Default value:
- false
- See Also:
-
useContentHeight
Determines whether the preferred height is the same as the content height. When set to true, the vertical scroll bar is disabled.This property can be styled with CSS using
-fx-use-content-height
name.- Default value:
- false
- See Also:
-
useContentWidth
Determines whether the preferred width is the same as the content width. When set to true, the horizontal scroll bar is disabled.This property can be styled with CSS using
-fx-use-content-width
name.- Default value:
- false
- See Also:
-
wrapText
Indicates whether text should be wrapped in this RichTextArea. If a run of text exceeds the width of theRichTextArea
, then this variable indicates whether the text should wrap onto another line. Setting this property totrue
hides the horizontal scroll bar.This property can be styled with CSS using
-fx-wrap-text
name.- Default value:
- false
- See Also:
-
-
Field Details
-
styleHandlerRegistry
The style handler registry instance, made available for use by subclasses to add support for new style attributes.
-
-
Constructor Details
-
RichTextArea
public RichTextArea()Creates the instance with the in-memory modelRichTextModel
. -
RichTextArea
Creates the instance using the specified model.Multiple RichTextArea instances can work off a single model.
- Parameters:
model
- the model
-
-
Method Details
-
anchorPositionProperty
Tracks the selection anchor position within the document. This read-only property is derived fromselection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- Returns:
- the anchor position property
- See Also:
-
getAnchorPosition
Gets the value of theanchorPosition
property.- Property description:
- Tracks the selection anchor position within the document. This read-only property is derived from
selection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment. - Default value:
- null
- Returns:
- the value of the
anchorPosition
property - See Also:
-
caretBlinkPeriodProperty
Determines the caret blink period. This property cannot be set tonull
.This property can be styled with CSS using
-fx-caret-blink-period
name.- Default value:
- 1000 ms
- Returns:
- the caret blink period property
- See Also:
-
setCaretBlinkPeriod
Sets the value of thecaretBlinkPeriod
property.- Property description:
- Determines the caret blink period. This property cannot be set to
null
.This property can be styled with CSS using
-fx-caret-blink-period
name. - Default value:
- 1000 ms
- Parameters:
period
- the value for thecaretBlinkPeriod
property- See Also:
-
getCaretBlinkPeriod
Gets the value of thecaretBlinkPeriod
property.- Property description:
- Determines the caret blink period. This property cannot be set to
null
.This property can be styled with CSS using
-fx-caret-blink-period
name. - Default value:
- 1000 ms
- Returns:
- the value of the
caretBlinkPeriod
property - See Also:
-
caretPositionProperty
Tracks the caret position within the document. This read-only property is derived fromselection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- Returns:
- the caret position property
- See Also:
-
getCaretPosition
Gets the value of thecaretPosition
property.- Property description:
- Tracks the caret position within the document. This read-only property is derived from
selection
property. The value can be null.Setting a
SelectionSegment
causes an update to both the anchor and the caret positions. A null selection segment results in both positions to become null, a non-null selection segment sets both to non-null values.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment. - Default value:
- null
- Returns:
- the value of the
caretPosition
property - See Also:
-
contentPaddingProperty
Specifies the padding for the RichTextArea content. The content padding value can be null, which is treated as no padding.This property can be styled with CSS using
-fx-content-padding
name.- Default value:
- null
- Returns:
- the content padding property
- See Also:
-
setContentPadding
Sets the value of thecontentPadding
property.- Property description:
- Specifies the padding for the RichTextArea content.
The content padding value can be null, which is treated as no padding.
This property can be styled with CSS using
-fx-content-padding
name. - Default value:
- null
- Parameters:
value
- the value for thecontentPadding
property- See Also:
-
getContentPadding
Gets the value of thecontentPadding
property.- Property description:
- Specifies the padding for the RichTextArea content.
The content padding value can be null, which is treated as no padding.
This property can be styled with CSS using
-fx-content-padding
name. - Default value:
- null
- Returns:
- the value of the
contentPadding
property - See Also:
-
displayCaretProperty
This property controls whether caret will be displayed or not.This property can be styled with CSS using
-fx-display-caret
name.- Default value:
- true
- Returns:
- the display caret property
- See Also:
-
setDisplayCaret
public final void setDisplayCaret(boolean on) Sets the value of thedisplayCaret
property.- Property description:
- This property controls whether caret will be displayed or not.
This property can be styled with CSS using
-fx-display-caret
name. - Default value:
- true
- Parameters:
on
- the value for thedisplayCaret
property- See Also:
-
isDisplayCaret
public final boolean isDisplayCaret()Gets the value of thedisplayCaret
property.- Property description:
- This property controls whether caret will be displayed or not.
This property can be styled with CSS using
-fx-display-caret
name. - Default value:
- true
- Returns:
- the value of the
displayCaret
property - See Also:
-
editableProperty
Indicates whether this RichTextArea can be edited by the user, provided the model is also writable. Changing the value of this property with a view-only model or a null model has no effect.- Default value:
- true
- Returns:
- the editable property
- See Also:
-
isEditable
public final boolean isEditable()Gets the value of theeditable
property.- Property description:
- Indicates whether this RichTextArea can be edited by the user, provided the model is also writable. Changing the value of this property with a view-only model or a null model has no effect.
- Default value:
- true
- Returns:
- the value of the
editable
property - See Also:
-
setEditable
public final void setEditable(boolean on) Sets the value of theeditable
property.- Property description:
- Indicates whether this RichTextArea can be edited by the user, provided the model is also writable. Changing the value of this property with a view-only model or a null model has no effect.
- Default value:
- true
- Parameters:
on
- the value for theeditable
property- See Also:
-
highlightCurrentParagraphProperty
Indicates whether the current paragraph will be visually highlighted.This property can be styled with CSS using
-fx-highlight-current-paragraph
name.- Default value:
- false
- Returns:
- the highlight current paragraph property
- See Also:
-
isHighlightCurrentParagraph
public final boolean isHighlightCurrentParagraph()Gets the value of thehighlightCurrentParagraph
property.- Property description:
- Indicates whether the current paragraph will be visually highlighted.
This property can be styled with CSS using
-fx-highlight-current-paragraph
name. - Default value:
- false
- Returns:
- the value of the
highlightCurrentParagraph
property - See Also:
-
setHighlightCurrentParagraph
public final void setHighlightCurrentParagraph(boolean on) Sets the value of thehighlightCurrentParagraph
property.- Property description:
- Indicates whether the current paragraph will be visually highlighted.
This property can be styled with CSS using
-fx-highlight-current-paragraph
name. - Default value:
- false
- Parameters:
on
- the value for thehighlightCurrentParagraph
property- See Also:
-
leftDecoratorProperty
Specifies the left-side paragraph decorator. The value can be null.- Default value:
- null
- Returns:
- the left decorator property
- See Also:
-
getLeftDecorator
Gets the value of theleftDecorator
property.- Property description:
- Specifies the left-side paragraph decorator. The value can be null.
- Default value:
- null
- Returns:
- the value of the
leftDecorator
property - See Also:
-
setLeftDecorator
Sets the value of theleftDecorator
property.- Property description:
- Specifies the left-side paragraph decorator. The value can be null.
- Default value:
- null
- Parameters:
d
- the value for theleftDecorator
property- See Also:
-
modelProperty
Determines theStyledTextModel
to use with this RichTextArea. The model can be null, which results in an empty, uneditable control.Note: Subclasses may impose additional restrictions on the type of the model they require.
- Default value:
- an instance of
RichTextModel
- Returns:
- the model property
- See Also:
-
setModel
Sets the value of themodel
property.- Property description:
- Determines the
StyledTextModel
to use with this RichTextArea. The model can be null, which results in an empty, uneditable control.Note: Subclasses may impose additional restrictions on the type of the model they require.
- Default value:
- an instance of
RichTextModel
- Parameters:
m
- the value for themodel
property- See Also:
-
getModel
Gets the value of themodel
property.- Property description:
- Determines the
StyledTextModel
to use with this RichTextArea. The model can be null, which results in an empty, uneditable control.Note: Subclasses may impose additional restrictions on the type of the model they require.
- Default value:
- an instance of
RichTextModel
- Returns:
- the value of the
model
property - See Also:
-
validateModel
Validates the model property value. The subclass should override this method if it restricts the type of model that is supported, and throw anIllegalArgumentException
if the model is not supported. Anull
value should always be acceptable and never generate an exception.- Parameters:
m
- the model (can be null)
-
redoableProperty
The property describes if it's currently possible to redo the latest change of the content that was undone.- Default value:
- false
- Returns:
- the read-only property
- See Also:
-
isRedoable
public final boolean isRedoable()Gets the value of theredoable
property.- Property description:
- The property describes if it's currently possible to redo the latest change of the content that was undone.
- Default value:
- false
- Returns:
- the value of the
redoable
property - See Also:
-
rightDecoratorProperty
Specifies the right-side paragraph decorator. The value can be null.- Default value:
- null
- Returns:
- the right decorator property
- See Also:
-
getRightDecorator
Gets the value of therightDecorator
property.- Property description:
- Specifies the right-side paragraph decorator. The value can be null.
- Default value:
- null
- Returns:
- the value of the
rightDecorator
property - See Also:
-
setRightDecorator
Sets the value of therightDecorator
property.- Property description:
- Specifies the right-side paragraph decorator. The value can be null.
- Default value:
- null
- Parameters:
d
- the value for therightDecorator
property- See Also:
-
selectionProperty
Tracks the current selection. TheSelectionSegment
consists of two values - the caret and the anchor positions which may get changed independently. This property allows for tracking the selection as an single entity. A null value for the selection segment causes both the caret and the anchor positions to become null.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment.- Default value:
- null
- Returns:
- the selection property
- See Also:
-
getSelection
Gets the value of theselection
property.- Property description:
- Tracks the current selection. The
SelectionSegment
consists of two values - the caret and the anchor positions which may get changed independently. This property allows for tracking the selection as an single entity. A null value for the selection segment causes both the caret and the anchor positions to become null.Note:
selectionProperty()
,anchorPositionProperty()
, andcaretPositionProperty()
are logically connected. When a change occurs, the anchor position is updated first, followed by the caret position, followed by the selection segment. - Default value:
- null
- Returns:
- the value of the
selection
property - See Also:
-
undoableProperty
The property describes if it's currently possible to undo the latest change of the content that was done.- Default value:
- false
- Returns:
- the read-only property
- See Also:
-
isUndoable
public final boolean isUndoable()Gets the value of theundoable
property.- Property description:
- The property describes if it's currently possible to undo the latest change of the content that was done.
- Default value:
- false
- Returns:
- the value of the
undoable
property - See Also:
-
useContentHeightProperty
Determines whether the preferred height is the same as the content height. When set to true, the vertical scroll bar is disabled.This property can be styled with CSS using
-fx-use-content-height
name.- Default value:
- false
- Returns:
- the use content height property
- See Also:
-
isUseContentHeight
public final boolean isUseContentHeight()Gets the value of theuseContentHeight
property.- Property description:
- Determines whether the preferred height is the same as the content height.
When set to true, the vertical scroll bar is disabled.
This property can be styled with CSS using
-fx-use-content-height
name. - Default value:
- false
- Returns:
- the value of the
useContentHeight
property - See Also:
-
setUseContentHeight
public final void setUseContentHeight(boolean on) Sets the value of theuseContentHeight
property.- Property description:
- Determines whether the preferred height is the same as the content height.
When set to true, the vertical scroll bar is disabled.
This property can be styled with CSS using
-fx-use-content-height
name. - Default value:
- false
- Parameters:
on
- the value for theuseContentHeight
property- See Also:
-
useContentWidthProperty
Determines whether the preferred width is the same as the content width. When set to true, the horizontal scroll bar is disabled.This property can be styled with CSS using
-fx-use-content-width
name.- Default value:
- false
- Returns:
- the use content width property
- See Also:
-
isUseContentWidth
public final boolean isUseContentWidth()Gets the value of theuseContentWidth
property.- Property description:
- Determines whether the preferred width is the same as the content width.
When set to true, the horizontal scroll bar is disabled.
This property can be styled with CSS using
-fx-use-content-width
name. - Default value:
- false
- Returns:
- the value of the
useContentWidth
property - See Also:
-
setUseContentWidth
public final void setUseContentWidth(boolean on) Sets the value of theuseContentWidth
property.- Property description:
- Determines whether the preferred width is the same as the content width.
When set to true, the horizontal scroll bar is disabled.
This property can be styled with CSS using
-fx-use-content-width
name. - Default value:
- false
- Parameters:
on
- the value for theuseContentWidth
property- See Also:
-
wrapTextProperty
Indicates whether text should be wrapped in this RichTextArea. If a run of text exceeds the width of theRichTextArea
, then this variable indicates whether the text should wrap onto another line. Setting this property totrue
hides the horizontal scroll bar.This property can be styled with CSS using
-fx-wrap-text
name.- Default value:
- false
- Returns:
- the wrap text property
- See Also:
-
isWrapText
public final boolean isWrapText()Gets the value of thewrapText
property.- Property description:
- Indicates whether text should be wrapped in this RichTextArea.
If a run of text exceeds the width of the
RichTextArea
, then this variable indicates whether the text should wrap onto another line. Setting this property totrue
hides the horizontal scroll bar.This property can be styled with CSS using
-fx-wrap-text
name. - Default value:
- false
- Returns:
- the value of the
wrapText
property - See Also:
-
setWrapText
public final void setWrapText(boolean value) Sets the value of thewrapText
property.- Property description:
- Indicates whether text should be wrapped in this RichTextArea.
If a run of text exceeds the width of the
RichTextArea
, then this variable indicates whether the text should wrap onto another line. Setting this property totrue
hides the horizontal scroll bar.This property can be styled with CSS using
-fx-wrap-text
name. - Default value:
- false
- Parameters:
value
- the value for thewrapText
property- See Also:
-
getClassCssMetaData
Gets theCssMetaData
associated with this class, which may include theCssMetaData
of its superclasses.- Returns:
- the
CssMetaData
-
getControlCssMetaData
Description copied from class:Control
Gets the unmodifiable list of the control's CSS-styleable properties.- Overrides:
getControlCssMetaData
in classControl
- Returns:
- the unmodifiable list of the control's CSS-styleable properties
-
appendText
Appends the styled text to the end of the document. Any embedded"\n"
or"\r\n"
sequences result in a new paragraph being added.It is up to the model to decide whether to accept all, some, or none of the
StyleAttribute
s.- Parameters:
text
- the text to appendattrs
- the style attributes- Returns:
- the text position at the end of the appended text, or null if editing is disabled
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
appendText
Appends the styled text to the end of the document. Any embedded"\n"
or"\r\n"
sequences result in a new paragraph being added.This convenience method is equivalent to calling
appendText(text, StyleAttributeMap.EMPTY);
- Parameters:
text
- the text to append- Returns:
- the text position at the end of the appended text, or null if editing is disabled
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
appendText
Appends the styled content to the end of the document. Any embedded"\n"
or"\r\n"
sequences result in a new paragraph being added.- Parameters:
in
- the input stream- Returns:
- the text position at the end of the appended text, or null if editing is disabled
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
applyStyle
Applies the specified style to the selected range. The specified attributes will be merged, overriding the existing ones. When applying paragraph attributes, the affected range might extend beyondstart
andend
to include whole paragraphs.- Parameters:
start
- the start of text rangeend
- the end of text rangeattrs
- the style attributes to apply- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
backspace
public void backspace()When selection exists, deletes selected text. Otherwise, deletes the character preceding the caret, possibly breaking up the grapheme clusters.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
clear
public final void clear()Clears the document, creating an undo entry.- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
clearSelection
public final void clearSelection()Clears existing selection, if any. This method is an alias forgetSelectionModel().clear()
. -
clearUndoRedo
public final void clearUndoRedo()Clears the undo-redo stack of the underlying model. This method does nothing if the model isnull
. -
copy
public void copy()When selection exists, copies the selected rich text to the clipboard in all the formats supported by the model.This method does nothing if the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
copy
Copies the selected text in the specified format to the clipboard. This method does nothing if no selection exists or when the data format is not supported by the model.- Parameters:
format
- the data format to use
-
cut
public void cut()Transfers the currently selected text to the clipboard, removing the current selection.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
delete
public void delete()When selection exists, deletes selected text. Otherwise, deletes the symbol at the caret. When the symbol at the caret is a grapheme cluster, deletes the whole cluster.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deleteParagraph
public void deleteParagraph()When selection exists, deletes selected paragraphs. Otherwise, deletes the paragraph at the caret.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deleteParagraphStart
public void deleteParagraphStart()Deletes text from the caret position to the start of the paragraph, ignoring existing selection.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deleteWordNextEnd
public void deleteWordNextEnd()Deletes from the caret positon to the end of next word, ignoring existing selection. When the caret is in an empty paragraph, deletes the paragraph.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deleteWordNextStart
public void deleteWordNextStart()Deletes from the caret positon to the start of next word, ignoring existing selection. When the caret is in an empty paragraph, deletes the paragraph.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deleteWordPrevious
public void deleteWordPrevious()Deletes (multiple) empty paragraphs or text from the caret position to the start of the previous word, ignoring existing selection.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
deselect
public void deselect()Clears the selected text range by moving anchor to the caret position.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
errorFeedback
public void errorFeedback()Provides audio and/or visual error feedback. The default implementation does nothing. This action can be changed by remapping the default behavior viaInputMap
.- See Also:
-
execute
Executes a function mapped to the specified function tag. This method does nothing if no function is mapped to the tag, or the function has been unbound.- Parameters:
tag
- the function tag
-
executeDefault
Executes the default function mapped to the specified tag. This method does nothing if no default mapping exists.- Parameters:
tag
- the function tag
-
extendSelection
Extends selection to the specified position. Internally, this method will normalized the position to be within the document boundaries. Calling this method produces the same result asselect(pos, pos)
if no prior selection exists. This method does nothing if the model is null.- Parameters:
pos
- the text position
-
getActiveStyleAttributeMap
ReturnsStyleAttributeMap
which contains character and paragraph attributes.When selection exists, returns the attributes at the first selected character.
When no selection exists, returns the attributes at the character which immediately precedes the caret. When at the beginning of the document, returns the attributes of the first character. If the model uses CSS styles, this method resolves individual attributes (bold, font size, etc.) for this instance of
RichTextArea
.- Returns:
- the non-null
StyleAttributeMap
instance
-
getDocumentEnd
Returns a TextPos corresponding to the end of the document. When the model is null, returnsTextPos.ZERO
.- Returns:
- the text position
-
getInputMap
-
getParagraphCount
public final int getParagraphCount()Returns the number of paragraphs in the model. This method returns 0 if the model isnull
.- Returns:
- the paragraph count
-
getParagraphEnd
Returns a TextPos corresponding to the end of paragraph. When the model is null, returnsTextPos.ZERO
.- Parameters:
index
- paragraph index- Returns:
- text position
-
getPlainText
Returns the plain text at the specified paragraph index. The value ofindex
must be between 0 (inclusive) and the value returned bygetParagraphCount()
(exclusive).- Parameters:
index
- the paragraph index- Returns:
- the non-null plain text string
- Throws:
IndexOutOfBoundsException
- if the index is outside of the range supported by the model
-
getStyleHandlerRegistry
Returns the style handler registry for this control. Applications should not normally call this method as it is intended for use by the skin subclasses.- Returns:
- the style handler registry
-
getTextPosition
Finds a text position corresponding to the specified screen coordinates. This method returnsnull
if the specified coordinates are outside of the content area.- Parameters:
screenX
- the screen x coordinatescreenY
- the screen y coordinate- Returns:
- the text position, or null
-
hasNonEmptySelection
public final boolean hasNonEmptySelection()This convenience method returns true when a non-empty selection exists.- Returns:
- true when an non-empty selection exists
-
insertLineBreak
public void insertLineBreak()Inserts a line break at the caret. If selection exists, first deletes the selected text.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
insertTab
public void insertTab()Inserts a tab symbol at the caret. If selection exists, first deletes the selected text.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
insertText
Inserts the styled text at the specified position. Any embedded"\n"
or"\r\n"
sequences result in a new paragraph being added.- Parameters:
pos
- the insert positiontext
- the text to inserattrs
- the style attributes- Returns:
- the text position at the end of the appended text, or null if editing is disabled
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
insertText
Inserts the styled content at the specified position.- Parameters:
pos
- the insert positionin
- the input stream- Returns:
- the text position at the end of the appended text, or null if editing is disabled
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
moveDocumentEnd
public void moveDocumentEnd()Moves the caret to after the last character of the text, clearing an existing selection.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveDocumentStart
public void moveDocumentStart()Moves the caret to before the first character of the text, clearing an existing selection.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveDown
public void moveDown()Moves the caret one visual line down, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveLeft
public void moveLeft()Moves the caret left, clearing an existing selection range.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveLineEnd
public void moveLineEnd()Moves the caret to the end of the visual text line at caret, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveLineStart
public void moveLineStart()Moves the caret to the start of the visual text line at caret, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveParagraphDown
public void moveParagraphDown()Moves the caret to the end of the current paragraph, or, if already there, to the end of the next paragraph.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveParagraphEnd
public void moveParagraphEnd()Moves the caret to the end of the paragraph at caret, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveParagraphStart
public void moveParagraphStart()Moves the caret to the start of the current paragraph, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveParagraphUp
public void moveParagraphUp()Moves the caret to the start of the current paragraph, or, if already there, to the start of the previous paragraph.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveRight
public void moveRight()Moves the caret to the next symbol, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveUp
public void moveUp()Moves the caret one visual line up, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveWordLeft
public void moveWordLeft()Moves the caret to the beginning of previous word in a left-to-right setting (or the beginning of the next word in a right-to-left setting), clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveWordNextEnd
public void moveWordNextEnd()Moves the caret to the end of the next word, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveWordNextStart
public void moveWordNextStart()Moves the caret to the start of next word, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveWordPrevious
public void moveWordPrevious()Moves the caret to the beginning of previous word, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
moveWordRight
public void moveWordRight()Moves the caret to the beginning of next word in a left-to-right setting (or the beginning of the previous word in a right-to-left setting), clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
pageDown
public void pageDown()Move caret one visual page down, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
pageUp
public void pageUp()Move caret one visual page up, clearing an existing selection.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
paste
public void paste()Pastes the clipboard content at the caret, or, if selection exists, replacing the selected text. This method clears the selection afterward. It is up to the model to pick the best data format to paste.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
paste
Pastes the clipboard content at the caret, or, if selection exists, replacing the selected text.This method does nothing if the control is not editable or the model is not writable, or the model is
null
, or if the specified format is not supported by the model.- Parameters:
format
- the data format to use
-
pastePlainText
public final void pastePlainText()Pastes the plain text clipboard content at the caret, or, if selection exists, replacing the selected text.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
read
Calls the model to replace the current document with the content read from the stream using the specifiedDataFormat
. Any existing content is discarded and undo/redo buffer is cleared.This method does not close the input stream. This method does nothing if the model is
null
.- Parameters:
f
- the data formatin
- the input stream- Throws:
IOException
- if an I/O error occursUnsupportedOperationException
- when the data format is not supported by the model
-
read
Calls the model to replace the current document with the content read from the input stream. The model picks the bestDataFormat
to use based on priority. Any existing content is discarded and undo/redo buffer is cleared.This method does not close the input stream. This method does nothing if the model is
null
.- Parameters:
in
- the input stream- Throws:
IOException
- if an I/O error occursUnsupportedOperationException
- when the data format is not supported by the model
-
redo
public void redo()If possible, redoes the last undone modification. IfisRedoable()
returns false, then calling this method has no effect.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
replaceText
Replaces the specified range with the new text.- Parameters:
start
- the start text positionend
- the end text positiontext
- the input textallowUndo
- when true, creates an undo-redo entry- Returns:
- the new caret position at the end of inserted text, or null if the change cannot be made
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
replaceText
Replaces the specified range with the new input.- Parameters:
start
- the start text positionend
- the end text positionin
- the input streamcreateUndo
- when true, creates an undo-redo entry- Returns:
- the new caret position at the end of inserted text, or null if the change cannot be made
- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
select
Moves both the caret and the anchor to the specified position, clearing any existing selection. This method is equivalent toselect(pos, pos)
.- Parameters:
pos
- the text position
-
select
Selects the specified range and places the caret at the new position. Both positions will be internally clamped to be within the document boundaries. This method does nothing if the model is null.- Parameters:
anchor
- the new selection anchor positioncaret
- the new caret position
-
selectAll
public void selectAll()Selects all the text in the document: the anchor is set at the document start, while the caret is positioned at the end of the document.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectDown
public void selectDown()Extends selection one visual text line down.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectLeft
public void selectLeft()Extends selection one symbol to the left.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectPageDown
public void selectPageDown()Extends selection one visible page down.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectPageUp
public void selectPageUp()Extends selection one visible page up.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectParagraph
public void selectParagraph()Selects the current paragraph.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectParagraphDown
public void selectParagraphDown()Extends selection to the end of the current paragraph, or, if already at the end, to the end of the next paragraph.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectParagraphEnd
public void selectParagraphEnd()Selects from the current position to the paragraph end.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectParagraphStart
public void selectParagraphStart()Selects from the current position to the paragraph start.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectParagraphUp
public void selectParagraphUp()Extends selection to the start of the current paragraph, or, if already at the start, to the start of the previous paragraph.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectRight
public void selectRight()Extends selection one symbol (or grapheme cluster) to the right.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectToDocumentEnd
public void selectToDocumentEnd()Extends selection to the end of the document.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectToDocumentStart
public void selectToDocumentStart()Extends selection to the start of the document.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectToLineEnd
public void selectToLineEnd()Extends selection to the end of the visual text line at caret.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectToLineStart
public void selectToLineStart()Extends selection to the start of the visual text line at caret.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectUp
public void selectUp()Extends selection one visual text line up.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWord
public void selectWord()Selects a word at the caret position.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWordLeft
public void selectWordLeft()Moves the caret to the beginning of previous word in a left-to-right setting, or to the beginning of the next word in a right-to-left setting. This does not cause the selection to be cleared. Rather, the anchor stays put and the caretPosition is moved to the beginning of next word.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWordNextEnd
public void selectWordNextEnd()Extends selection to the end of the next word.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWordNextStart
public void selectWordNextStart()Moves the caret to the start of the next word. This does not cause the selection to be cleared. Rather, the anchor stays put and the caretPosition is moved to the beginning of next word.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWordPrevious
public void selectWordPrevious()Moves the caret to the beginning of previous word. This does not cause the selection to be cleared. Rather, the anchor stays put and the caretPosition is moved to the beginning of previous word.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
selectWordRight
public void selectWordRight()Moves the caret to the beginning of next word in a left-to-right setting, or to the beginning of the previous word in a right-to-left setting. This does not cause the selection to be cleared. Rather, the anchor stays put and the caretPosition is moved to the beginning of next word.This method does nothing when the caret position is
null
.This action can be changed by remapping the default behavior via
InputMap
.- See Also:
-
setStyle
Sets the specified style to the selected range. All the existing attributes in the selected range will be cleared. When setting the paragraph attributes, the affected range might be wider than one specified.- Parameters:
start
- the start of text rangeend
- the end of text rangeattrs
- the style attributes to set- Throws:
NullPointerException
- if the model isnull
UnsupportedOperationException
- if the model is notwritable
-
undo
public void undo()If possible, undoes the last modification. IfisUndoable()
returns false, then calling this method has no effect.This method does nothing if the control is not editable or the model is not writable, or the model or the caret position is
null
. This action can be changed by remapping the default behavior viaInputMap
.- See Also:
-
write
Calls the model to writes the current document to the output stream using the specifiedDataFormat
.This method does not close the output stream. This method does nothing if the model is
null
.- Parameters:
f
- the data formatout
- the output stream- Throws:
IOException
- if an I/O error occursUnsupportedOperationException
- when the data format is not supported by the model
-
write
Calls the model to write the current document to the output stream, using the highest priorityDataFormat
as determined by the model.This method does not close the output stream. This method does nothing if the model is
null
.- Parameters:
out
- the output stream- Throws:
IOException
- if an I/O error occursUnsupportedOperationException
- when no suitable data format can be found
-
createDefaultSkin
Description copied from class:Control
Create a new instance of the default skin for this control. This is called to create a skin for the control if no skin is provided via CSS-fx-skin
or set explicitly in a sub-class withsetSkin(...)
.- Overrides:
createDefaultSkin
in classControl
- Returns:
- new instance of default skin for this control. If null then the control will have no skin unless one is provided by css.
-