- 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.CodeAreaEditor with simple syntax highlighting capabilities.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classSimpleEditor.AggregatedEventStreamA stream which collects text changes and waits for the specified time interval before emitting the changes.static classSimpleEditor.HighlightEntryRepresents a highlight entry used to set corresponding styles.static classSimpleEditor.NavigationEntrystatic classSimpleEditor.PosToHighlightMapBuilderUsed for building position-to-highlight maps, which are used to apply highlights.
-
Field Summary
Fields Modifier and Type Field Description protected static doubleDEFAULT_AGGREGATED_CHANGE_MILLISThe 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 doubleDEFAULT_PREVENT_MERGE_MILLISThe default maximum duration (in milliseconds) after which undoable edit should be completed if there is no user input.protected static doubleVISIBLE_PARAGRAPH_RANGE_UPDATE_DELAYUsed 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.AggregatedEventStreamaggregatedMultiChanges()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 voidapplyChange(org.fxmisc.richtext.model.PlainTextChange pChange)voidapplyFoundHighlighting(NavigableMap<Integer,Integer> pHighlightMap)voidapplyHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pPosToHighlightMap)Note that highlight entries should not be disjoint.voidclearFoundHighlighting()voidclearRedoHistory()voidclearStyles(int pStart, int pEnd, Collection<String> pStyles)Remove specified styles from range.javafx.beans.property.ReadOnlyBooleanPropertyctrlDownProperty()protected voidedit(Runnable pEditOp)Performs the specified edit operation, then selects the affected range and scroll, if needed, so that caret is visible.protected voidedit(Runnable pEditOp, boolean pSelect)Performs the specified edit operation and scroll, if needed, so that caret is visible.protected voidedit(Runnable pEditOp, Consumer<javafx.scene.control.IndexRange> pRangeConsumer)voidensureVisible(int pStart, int pEnd)voidensureVisible(Map.Entry<Integer,Integer> pRange)com.iamsoft.util.collections.model.DelegatingNavigableMapModel<Integer,Integer>getFoundRangeMap()intgetParagraphByOffset(int pCharOffset)javafx.scene.control.IndexRangegetSafeVisibleParagraphRange()Sometimes the visible paragraph range may not be calculated on time and may include non-existing lines.javafx.scene.control.IndexRangegetVisibleParagraphRange()static booleanisEmptyChange(List<org.fxmisc.richtext.model.PlainTextChange> pChanges)booleanisTyping()protected voidlogSpans(int pStart, org.fxmisc.richtext.model.StyleSpans<? extends Collection<?>> pSpans)javafx.beans.value.ObservableValue<Integer>mouseOverTextProperty()voidoverlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap)voidoverlayHighlighting(NavigableMap<Integer,SimpleEditor.HighlightEntry> pHighlightMap, int pFromPos, int pToPos)Note that highlight entries should not be disjoint.protected voidrevertChange(org.fxmisc.richtext.model.PlainTextChange pChange)voidselectAndScrollTo(Map.Entry<Integer,Integer> pRange)voidsetCtrlClickNavigation(NavigableMap<Integer,SimpleEditor.NavigationEntry> pNavMap, Collection<String> pLinkStyles)javafx.beans.property.BooleanPropertytypingProperty()voidupdateFindHighlighting(NavigableMap<Integer,Integer> pFoundRangeMap)protected voidupdateVisibleParagraphRange()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)
-
-