Class RichTextModel
public class RichTextModel extends StyledTextModel
StyledTextModel based on a collection of styled segments. This model is suitable for relatively small documents as it has neither disk storage backing nor storage of incremental changes.
- Since:
- 24
Nested Class Summary
Nested classes/interfaces declared in class jfx.incubator.scene.control.richtext.model.StyledTextModel
StyledTextModel.Listener
Property Summary
Properties declared in class jfx.incubator.scene.control.richtext.model.StyledTextModel
redoable, undoable
Constructor Summary
| Constructor | Description |
|---|---|
RichTextModel() |
Constructs the empty model. |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
protected void |
applyStyle |
Applies style to the specified text range within a single paragraph. |
RichParagraph |
getParagraph |
Returns a RichParagraph at the given model index. |
String |
getPlainText |
Returns the plain text string for the specified paragraph. |
StyleAttributeMap |
getStyleAttributeMap |
Returns the StyleAttributeMap of the character at the specified position's charIndex. |
protected void |
insertLineBreak |
Inserts a line break at the specified position. |
protected void |
insertParagraph |
Inserts a paragraph that contains a single Region. |
protected int |
insertTextSegment |
This method is called to insert a single styled text segment at the given position. |
final boolean |
isWritable() |
Indicates whether the model supports content modifications made via applyStyle(), replace(), undo(), redo() methods. |
protected void |
removeRange |
Removes the specified text range. |
protected void |
setParagraphStyle |
Replaces the paragraph styles in the specified paragraph. |
int |
size() |
Returns the number of paragraphs in the model. |
Methods declared in class jfx.incubator.scene.control.richtext.model.StyledTextModel
addListener, applyStyle, clamp, clearUndoRedo, export, exportParagraph, fireChangeEvent, fireStyleChangeEvent, getDataFormatHandler, getDocumentEnd, getEndOfParagraphTextPos, getMarker, getParagraphLength, getSupportedAttributes, getSupportedDataFormats, isRedoable, isUndoable, read, redo, redoableProperty, registerDataFormatHandler, removeDataFormatHandler, removeListener, replace, replace, undo, undoableProperty, write
Constructor Details
RichTextModel
public RichTextModel()
Method Details
isWritable
public final boolean isWritable()
StyledTextModelapplyStyle(), replace(), undo(), redo() methods. Note that even when this method returns false, the model itself may still update its content and fire the change events as a response, for example, to changes in its backing data storage.
- Specified by:
-
isWritablein classStyledTextModel - Returns:
- true if the model supports content modifications
size
public int size()
StyledTextModel- Specified by:
-
sizein classStyledTextModel - Returns:
- number of paragraphs
getPlainText
public String getPlainText(int index)
StyledTextModelindex is within the valid document range, since doing otherwise might result in an exception or undetermined behavior.- Specified by:
-
getPlainTextin classStyledTextModel - Parameters:
-
index- the paragraph index in the range (0...StyledTextModel.size()) - Returns:
- the non-null paragraph text string
getParagraph
public RichParagraph getParagraph(int index)
StyledTextModelRichParagraph at the given model index. The callers must ensure that the value of index is within the valid document range, since doing otherwise might result in an exception or undetermined behavior. This method makes no guarantees that the same paragraph instance will be returned for the same model index.
- Specified by:
-
getParagraphin classStyledTextModel - Parameters:
-
index- the paragraph index in the range (0...StyledTextModel.size()) - Returns:
- the instance of
RichParagraph
insertTextSegment
protected int insertTextSegment(int index, int offset, String text, StyleAttributeMap attrs)
StyledTextModel- Specified by:
-
insertTextSegmentin classStyledTextModel - Parameters:
-
index- the paragraph index -
offset- the insertion offset within the paragraph -
text- the text to insert -
attrs- the style attributes - Returns:
- the number of characters inserted
insertLineBreak
protected void insertLineBreak(int index, int offset)
StyledTextModel- Specified by:
-
insertLineBreakin classStyledTextModel - Parameters:
-
index- the model index -
offset- the text offset
removeRange
protected void removeRange(TextPos start, TextPos end)
StyledTextModelstart precedes end.- Specified by:
-
removeRangein classStyledTextModel - Parameters:
-
start- the start of the range to be removed -
end- the end of the range to be removed, expected to be greater than the start position
insertParagraph
protected void insertParagraph(int index, Supplier<Region> generator)
StyledTextModelRegion. The model should not cache or otherwise retain references to the created Regions, as they might be requested multiple times during the lifetime of the model, or by different views.
This method allows for embedding Controls that handle user input. In this case, the model should declare necessary properties and provide bidirectional bindings between the properties in the model and the corresponding properties in the control, as well as handle copy, paste, writing to and reading from I/O streams.
- Specified by:
-
insertParagraphin classStyledTextModel - Parameters:
-
index- model index -
generator- code that will be used to create a Node instance
setParagraphStyle
protected void setParagraphStyle(int index, StyleAttributeMap attrs)
StyledTextModel- Specified by:
-
setParagraphStylein classStyledTextModel - Parameters:
-
index- the paragraph index -
attrs- the paragraph attributes
applyStyle
protected void applyStyle(int index, int start, int end, StyleAttributeMap attrs, boolean merge)
StyledTextModelend argument may exceed the paragraph length, in which case the outcome should be the same as supplying the paragraph length value.- Specified by:
-
applyStylein classStyledTextModel - Parameters:
-
index- the paragraph index -
start- the start offset -
end- the end offset -
attrs- the character attributes -
merge- determines whether to merge with or overwrite the existing attributes
getStyleAttributeMap
public StyleAttributeMap getStyleAttributeMap(StyleResolver resolver, TextPos pos)
StyledTextModelStyleAttributeMap of the character at the specified position's charIndex. When at the end of the document, returns the attributes of the last character.- Specified by:
-
getStyleAttributeMapin classStyledTextModel - Parameters:
-
resolver- the style resolver -
pos- the text position - Returns:
- the style attributes, non-null
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.