- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.layout.Region
-
- org.fxmisc.richtext.GenericStyledArea<PS,String,S>
-
- org.fxmisc.richtext.StyledTextArea<Collection<String>,Collection<String>>
-
- org.fxmisc.richtext.StyleClassedTextArea
-
- org.fxmisc.richtext.CodeArea
-
- com.iamsoft.util.ui.javafx.codearea.SimpleEditor
-
- All Implemented Interfaces:
javafx.css.Styleable
,javafx.event.EventTarget
,org.fxmisc.flowless.Virtualized
,org.fxmisc.richtext.ClipboardActions<Collection<String>,String,Collection<String>>
,org.fxmisc.richtext.EditActions<Collection<String>,String,Collection<String>>
,org.fxmisc.richtext.model.TwoDimensional
,org.fxmisc.richtext.NavigationActions<Collection<String>,String,Collection<String>>
,org.fxmisc.richtext.StyleActions<Collection<String>,Collection<String>>
,org.fxmisc.richtext.TextEditingArea<Collection<String>,String,Collection<String>>
,org.fxmisc.richtext.UndoActions
,org.fxmisc.richtext.ViewActions<Collection<String>,String,Collection<String>>
- Direct Known Subclasses:
SimpleCodeArea
public class SimpleEditor extends org.fxmisc.richtext.CodeArea
Editor with simple syntax highlighting capabilities.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
SimpleEditor.AggregatedEventStream
A stream which collects text changes and waits for the specified time interval before emitting the changes.static class
SimpleEditor.HighlightEntry
Represents a highlight entry used to set corresponding styles.static class
SimpleEditor.NavigationEntry
static class
SimpleEditor.PosToHighlightMapBuilder
Used for building position-to-highlight maps, which are used to apply highlights.
-
Field Summary
Fields Modifier and Type Field Description protected static double
DEFAULT_AGGREGATED_CHANGE_MILLIS
The default maximum duration (in milliseconds) to wait for any new text changes before forcing the propagation of the currently aggregated text changes, if any.protected static double
DEFAULT_PREVENT_MERGE_MILLIS
The default maximum duration (in milliseconds) after which undoable edit should be completed if there is no user input.protected static double
VISIBLE_PARAGRAPH_RANGE_UPDATE_DELAY
Used to delay the update of the visible paragraph range, so that updates will not be made more often than 25 times per second.
-
Constructor Summary
Constructors Constructor Description SimpleEditor()
SimpleEditor(double pPreventUndoMergeMillis)
SimpleEditor(double pPreventUndoMergeMillis, double pAggreagatedChangeMillis)
SimpleEditor(double pPreventUndoMergeMillis, double pAggregatedChangeMillis, javafx.beans.value.ObservableValue<Boolean> pSuppressAggregatedStream)
SimpleEditor(javafx.beans.value.ObservableValue<Boolean> pSuppressAggregatedStream)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static org.javatuples.Triplet<Integer,Integer,Integer>
aggregate(List<org.fxmisc.richtext.model.PlainTextChange> pChanges)
Triplet: offset, old length, new length.SimpleEditor.AggregatedEventStream
aggregatedMultiChanges()
Text changes are propagated not on every keystroke, but only if the user stops typing for a specified time interval, or the editor looses the focus.org.reactfx.EventStream<org.fxmisc.richtext.model.PlainTextChange>
aggregatedPlainChanges()
A stream, on top of stream, which merges multi-changes into a single change.protected void
applyChange(org.fxmisc.richtext.model.PlainTextChange pChange)
void
applyFoundHighlighting(NavigableMap<Integer,Integer> pHighlightMap)
void
applyHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pPosToHighlightMap)
Note that highlight entries should not be disjoint.void
clearFoundHighlighting()
void
clearRedoHistory()
void
clearStyles(int pStart, int pEnd, Collection<String> pStyles)
Remove specified styles from range.javafx.beans.property.ReadOnlyBooleanProperty
ctrlDownProperty()
protected void
edit(Runnable pEditOp)
Performs the specified edit operation, then selects the affected range and scroll, if needed, so that caret is visible.protected void
edit(Runnable pEditOp, boolean pSelect)
Performs the specified edit operation and scroll, if needed, so that caret is visible.protected void
edit(Runnable pEditOp, Consumer<javafx.scene.control.IndexRange> pRangeConsumer)
void
ensureVisible(int pStart, int pEnd)
void
ensureVisible(Map.Entry<Integer,Integer> pRange)
com.iamsoft.util.collections.model.DelegatingNavigableMapModel<Integer,Integer>
getFoundRangeMap()
int
getParagraphByOffset(int pCharOffset)
javafx.scene.control.IndexRange
getSafeVisibleParagraphRange()
Sometimes the visible paragraph range may not be calculated on time and may include non-existing lines.javafx.scene.control.IndexRange
getVisibleParagraphRange()
static boolean
isEmptyChange(List<org.fxmisc.richtext.model.PlainTextChange> pChanges)
boolean
isTyping()
protected void
logSpans(int pStart, org.fxmisc.richtext.model.StyleSpans<? extends Collection<?>> pSpans)
javafx.beans.value.ObservableValue<Integer>
mouseOverTextProperty()
void
overlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap)
void
overlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap, int pFromPos, int pToPos)
Note that highlight entries should not be disjoint.protected void
revertChange(org.fxmisc.richtext.model.PlainTextChange pChange)
void
selectAndScrollTo(Map.Entry<Integer,Integer> pRange)
void
setCtrlClickNavigation(NavigableMap<Integer,SimpleEditor.NavigationEntry> pNavMap, Collection<String> pLinkStyles)
javafx.beans.property.BooleanProperty
typingProperty()
void
updateFindHighlighting(NavigableMap<Integer,Integer> pFoundRangeMap)
protected void
updateVisibleParagraphRange()
javafx.beans.property.ObjectProperty<javafx.scene.control.IndexRange>
visibleParagraphRange()
-
Methods inherited from class org.fxmisc.richtext.CodeArea
selectWord, wordBreaksBackwards, wordBreaksForwards
-
Methods inherited from class org.fxmisc.richtext.StyleClassedTextArea
append, foldParagraphs, foldSelectedParagraphs, foldText, getAddFoldStyle, getFoldStyleCheck, getRemoveFoldStyle, insert, replace, setStyleClass, unfoldParagraphs, unfoldText
-
Methods inherited from class org.fxmisc.richtext.StyledTextArea
createStyledTextNode, createStyledTextNode
-
Methods inherited from class org.fxmisc.richtext.GenericStyledArea
addCaret, addSelection, allParToVisibleParIndex, autoHeightProperty, autoScrollOnDragDesiredProperty, beingUpdatedProperty, computePrefHeight, configurePlaceholder, contextMenuObjectProperty, contextMenuXOffsetProperty, contextMenuYOffsetProperty, createMultiChange, createMultiChange, displaceCaret, dispose, editableProperty, estimatedScrollXProperty, estimatedScrollYProperty, fold, foldParagraphs, foldSelectedParagraphs, getAbsolutePosition, getApplyParagraphStyle, getCaretBoundsOnScreen, getCaretSelectionBind, getCharacterBoundsOnScreen, getClassCssMetaData, getContent, getContextMenu, getContextMenuXOffset, getContextMenuYOffset, getCssMetaData, getCurrentLineEndInParargraph, getCurrentLineStartInParargraph, getDocument, getInitialParagraphStyle, getInitialTextStyle, getLocale, getOnInsideSelectionMousePressReleased, getOnNewSelectionDragFinished, getOnOutsideSelectionMousePressed, getOnSelectionDropped, getParagraphBoundsOnScreen, getParagraphGraphic, getParagraphInsertionStyle, getParagraphLinesCount, getParagraphs, getParagraphSelection, getParagraphStyleForInsertionAt, getPlaceholder, getSegOps, getStyleAtPosition, getStyleAtPosition, getStyleCodecs, getStyleOfChar, getStyleOfChar, getStyleRangeAtPosition, getStyleRangeAtPosition, getStyleSpans, getStyleSpans, getStyleSpans, getText, getText, getText, getTextInsertionStyle, getTextStyleForInsertionAt, getUndoManager, getViewportHeight, getVisibleParagraphBoundsOnScreen, getVisibleParagraphs, handleInputMethodEvent, hit, isAutoHeight, isAutoScrollOnDragDesired, isContextMenuPresent, isEditable, isLineHighlighterOn, isPreserveStyle, isWrapText, layoutChildren, lengthProperty, lineEnd, lineIndex, lineStart, mouseOverTextDelayProperty, multiPlainChanges, multiRichChanges, nextLine, nextPage, offsetToPosition, onInsideSelectionMousePressReleasedProperty, onNewSelectionDragFinishedProperty, onNewSelectionDragProperty, onOutsideSelectionMousePressedProperty, onSelectionDragProperty, onSelectionDroppedProperty, paragraphGraphicFactoryProperty, placeholderProperty, plainTextChanges, position, prevLine, prevPage, recreateParagraphGraphic, removeCaret, removeSelection, replace, replace, replaceText, requestFollowCaret, richChanges, scrollBy, scrollXBy, scrollXToPixel, scrollYBy, scrollYToPixel, setAutoHeight, setAutoScrollOnDragDesired, setContextMenu, setContextMenuXOffset, setContextMenuYOffset, setEditable, setLineHighlighterFill, setLineHighlighterOn, setLocale, setOnInsideSelectionMousePressReleased, setOnNewSelectionDragFinished, setOnOutsideSelectionMousePressed, setOnSelectionDropped, setParagraphInsertionStyle, setParagraphStyle, setPlaceholder, setPlaceholder, setStyle, setStyle, setStyle, setStyleCodecs, setStyleSpans, setStyleSpans, setTextInsertionStyle, setUndoManager, setWrapText, showParagraphAtBottom, showParagraphAtCenter, showParagraphAtTop, showParagraphInViewport, showParagraphRegion, subDocument, subDocument, textProperty, totalHeightEstimateProperty, totalWidthEstimateProperty, unfoldParagraphs, useInitialStyleForInsertionProperty, viewportDirtyEvents, visibleParToAllParIndex, wrapTextProperty
-
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isResizable, 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
getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, 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, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, 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, 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 org.fxmisc.richtext.EditActions
append, append, appendText, clear, deleteNextChar, deletePreviousChar, deleteText, deleteText, deleteText, insert, insert, insert, insertText, insertText, moveSelectedText, replace, replaceSelection, replaceSelection, replaceText
-
Methods inherited from interface org.fxmisc.richtext.NavigationActions
deselect, end, moveTo, moveTo, moveTo, moveTo, nextChar, paragraphEnd, paragraphStart, previousChar, selectAll, selectParagraph, start
-
Methods inherited from interface org.fxmisc.richtext.StyleActions
clearParagraphStyle, clearStyle, clearStyle, clearStyle, getStyleSpans, getStyleSpans, getUseInitialStyleForInsertion, setUseInitialStyleForInsertion
-
Methods inherited from interface org.fxmisc.richtext.TextEditingArea
anchorProperty, caretBoundsProperty, caretColumnProperty, caretPositionProperty, currentParagraphProperty, getAnchor, getCaretBounds, getCaretColumn, getCaretPosition, getCurrentParagraph, getLength, getParagraph, getParagraphLength, getParagraphSelection, getSelectedText, getSelection, getSelectionBounds, getShowCaret, getText, getText, isBeingUpdated, replace, replace, replace, replace, replaceText, replaceText, selectedTextProperty, selectionBoundsProperty, selectionProperty, selectRange, selectRange, setShowCaret, showCaretProperty, subDocument, subDocument
-
Methods inherited from interface org.fxmisc.richtext.UndoActions
isRedoAvailable, isUndoAvailable, redo, redoAvailableProperty, undo, undoAvailableProperty
-
Methods inherited from interface org.fxmisc.richtext.ViewActions
firstVisibleParToAllParIndex, getMouseOverTextDelay, getOnNewSelectionDrag, getOnSelectionDrag, getParagraphGraphicFactory, hideContextMenu, lastVisibleParToAllParIndex, selectLine, setMouseOverTextDelay, setOnNewSelectionDrag, setOnSelectionDrag, setParagraphGraphicFactory
-
-
-
-
Field Detail
-
DEFAULT_PREVENT_MERGE_MILLIS
protected static final double DEFAULT_PREVENT_MERGE_MILLIS
The default maximum duration (in milliseconds) after which undoable edit should be completed if there is no user input.- See Also:
- Constant Field Values
-
DEFAULT_AGGREGATED_CHANGE_MILLIS
protected static final double DEFAULT_AGGREGATED_CHANGE_MILLIS
The default maximum duration (in milliseconds) to wait for any new text changes before forcing the propagation of the currently aggregated text changes, if any.- See Also:
- Constant Field Values
-
VISIBLE_PARAGRAPH_RANGE_UPDATE_DELAY
protected static final double VISIBLE_PARAGRAPH_RANGE_UPDATE_DELAY
Used to delay the update of the visible paragraph range, so that updates will not be made more often than 25 times per second.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SimpleEditor
public SimpleEditor()
-
SimpleEditor
public SimpleEditor(double pPreventUndoMergeMillis)
-
SimpleEditor
public SimpleEditor(double pPreventUndoMergeMillis, double pAggreagatedChangeMillis)
-
SimpleEditor
public SimpleEditor(javafx.beans.value.ObservableValue<Boolean> pSuppressAggregatedStream)
-
SimpleEditor
public SimpleEditor(double pPreventUndoMergeMillis, double pAggregatedChangeMillis, javafx.beans.value.ObservableValue<Boolean> pSuppressAggregatedStream)
- Parameters:
pPreventUndoMergeMillis
- Specifies the time interval (in milliseconds) after which undoable edit should be completed if there is no user input.pAggregatedChangeMillis
- Specifies the maximum duration (in milliseconds) to wait for any new text changes before forcing the propagation of the currently aggregated text changes, if any.pSuppressAggregatedStream
- Used to suppress the aggregated stream. Note that all pending changes are emitted when the stream is suppressed.
-
-
Method Detail
-
visibleParagraphRange
public javafx.beans.property.ObjectProperty<javafx.scene.control.IndexRange> visibleParagraphRange()
-
getVisibleParagraphRange
public javafx.scene.control.IndexRange getVisibleParagraphRange()
-
typingProperty
public javafx.beans.property.BooleanProperty typingProperty()
-
isTyping
public boolean isTyping()
-
mouseOverTextProperty
public javafx.beans.value.ObservableValue<Integer> mouseOverTextProperty()
-
ctrlDownProperty
public javafx.beans.property.ReadOnlyBooleanProperty ctrlDownProperty()
-
getFoundRangeMap
public com.iamsoft.util.collections.model.DelegatingNavigableMapModel<Integer,Integer> getFoundRangeMap()
-
updateVisibleParagraphRange
protected void updateVisibleParagraphRange()
-
getSafeVisibleParagraphRange
public javafx.scene.control.IndexRange getSafeVisibleParagraphRange()
Sometimes the visible paragraph range may not be calculated on time and may include non-existing lines. In such cases this method can be used to get a valid paragraph range - one that doesn't include non-existing lines.- Returns:
- index range
-
aggregatedMultiChanges
public SimpleEditor.AggregatedEventStream aggregatedMultiChanges()
Text changes are propagated not on every keystroke, but only if the user stops typing for a specified time interval, or the editor looses the focus.- Returns:
- event stream
-
aggregatedPlainChanges
public org.reactfx.EventStream<org.fxmisc.richtext.model.PlainTextChange> aggregatedPlainChanges()
A stream, on top of stream, which merges multi-changes into a single change. The stream also meets the following requirement - if a new change is emitted, applying the change to the text that was in the editor prior that change, is equal to the current text in the editor.- Returns:
- event stream
- See Also:
aggregatedMultiChanges()
-
clearStyles
public void clearStyles(int pStart, int pEnd, Collection<String> pStyles)
Remove specified styles from range.
-
updateFindHighlighting
public void updateFindHighlighting(NavigableMap<Integer,Integer> pFoundRangeMap)
-
applyFoundHighlighting
public void applyFoundHighlighting(NavigableMap<Integer,Integer> pHighlightMap)
-
overlayHighlighting
public void overlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap, int pFromPos, int pToPos)
Note that highlight entries should not be disjoint.
-
overlayHighlighting
public void overlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap)
-
clearFoundHighlighting
public void clearFoundHighlighting()
-
applyChange
protected void applyChange(org.fxmisc.richtext.model.PlainTextChange pChange)
-
revertChange
protected void revertChange(org.fxmisc.richtext.model.PlainTextChange pChange)
-
applyHighlighting
public void applyHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pPosToHighlightMap)
Note that highlight entries should not be disjoint.
-
clearRedoHistory
public void clearRedoHistory()
-
edit
protected void edit(Runnable pEditOp)
Performs the specified edit operation, then selects the affected range and scroll, if needed, so that caret is visible.- Parameters:
pEditOp
- edit operation
-
edit
protected void edit(Runnable pEditOp, boolean pSelect)
Performs the specified edit operation and scroll, if needed, so that caret is visible.- Parameters:
pEditOp
- edit operationpSelect
- Iftrue
, the the affected range is selected.
-
edit
protected void edit(Runnable pEditOp, Consumer<javafx.scene.control.IndexRange> pRangeConsumer)
- Parameters:
pEditOp
- An edit operation to be performed.pRangeConsumer
- A range consumer, which will be notified about the affected range.
-
logSpans
protected void logSpans(int pStart, org.fxmisc.richtext.model.StyleSpans<? extends Collection<?>> pSpans)
-
getParagraphByOffset
public int getParagraphByOffset(int pCharOffset)
-
setCtrlClickNavigation
public void setCtrlClickNavigation(NavigableMap<Integer,SimpleEditor.NavigationEntry> pNavMap, Collection<String> pLinkStyles)
-
ensureVisible
public void ensureVisible(int pStart, int pEnd)
-
aggregate
public static org.javatuples.Triplet<Integer,Integer,Integer> aggregate(List<org.fxmisc.richtext.model.PlainTextChange> pChanges)
Triplet: offset, old length, new length.
-
isEmptyChange
public static boolean isEmptyChange(List<org.fxmisc.richtext.model.PlainTextChange> pChanges)
-
-