Class RichEditLine

A single-line editor that supports per-character color and text-decoration styling.

class RichEditLine
  : EditLine;

Usage without subclassing — set the styler delegate:

auto ed = new RichEditLine();
ed.styler = (dstring txt, uint defColor) {
    auto props = new CustomCharProps[txt.length];
    foreach (i, ref p; props) p = CustomCharProps(defColor);
    // highlight chars 0..3 in red
    foreach (i; 0 .. min(3, props.length)) props[i] = CustomCharProps(0xFFFF0000);
    return props;
};

Usage via subclassing — override drawTextLine:

class MyEdit : RichEditLine {
    override protected void drawTextLine(DrawBuf buf, FontRef fnt,
                                         int x, int y, dstring txt,
                                         uint color, int tabSz) { ... }
}

Constructors

NameDescription
this ()
this (ID, initialContent)

Fields

NameTypeDescription
styler CustomCharProps[] delegate(dstring, uint)Optional styling delegate. When non-null, called on every draw pass.
_backgroundDrawable Ref!(dcanvas.graphics.resources.Drawable)
checkChange Signal!(dcanvas.widgets.widget.OnCheckHandler)checked state change event listener (bool delegate(Widget, bool))
click Signal!(dcanvas.widgets.widget.OnClickHandler)on click event listener (bool delegate(Widget))
contentChange Signal!(dcanvas.widgets.editors.EditableContentChangeListener)Signal to emit when editor content is changed
doubleClick Signal!(dcanvas.widgets.widget.OnDoubleClickHandler)On double click event listener (bool delegate(Widget))
editorAction Signal!(dcanvas.widgets.editors.EditorActionHandler)
editorStateChange Signal!(dcanvas.widgets.editors.EditorStateListener)Signal to emit when editor cursor position or Insert/Replace mode is changed.
enterKey Signal!(dcanvas.widgets.editors.EnterKeyHandler)handle Enter key press inside line editor
focusChange Signal!(dcanvas.widgets.widget.OnFocusHandler)focus state change event listener (bool delegate(Widget, bool))
keyEvent Signal!(dcanvas.widgets.widget.OnKeyHandler)key event listener (bool delegate(Widget, KeyEvent)) - return true if event is processed by handler
keyToAction Listener!(dcanvas.widgets.widget.OnKeyActionHandler)action by key lookup handler
modifiedStateChange Signal!(dcanvas.widgets.editors.ModifiedStateListener)Modified state change listener (e.g. content has been saved, or first time modified after save)
mouseEvent Signal!(dcanvas.widgets.widget.OnMouseHandler)mouse event listener (bool delegate(Widget, MouseEvent)) - return true if event is processed by handler
onAction Signal!(dcanvas.widgets.widget.OnActionHandler)action handlers
previousXScrollPos intTo hold scrollpos.x toggling between normal and word wrap mode
splitChars immutable(dchar[])Characters at which content is split for word wrap mode
_acceleratorMap ActionMap
_action Action
_camelCasePartsAsWords bool
_caretBlingingInterval int
_caretBlinkingPhase bool
_caretBlinks bool
_caretColor uint
_caretColorReplace uint
_caretPos TextPosition
_caretTimerId ulong
_checkable bool
_checked bool
_children ObjectList!(dcanvas.widgets.widget.Widget)
_clickable bool
_clientRect Rectinner area, excluding additional controls like scrollbars
_colorIconBookmark uint
_colorIconBreakpoint uint
_colorIconError uint
_content EditableContent
_contentChanged boolwhen true, call measureVisibileText on next layout
_copyCurrentLineWhenNoSelection bool
_deselectAllWhenUnfocused bool
_fixedFont bool
_focusable bool
_focusGroup bool
_foldingPaneWidth uint
_foldingWidth int
_fullScrollableArea Rect
_hoverMousePosition Point
_hoverTextPosition TextPosition
_hoverTimeoutMillis long
_hoverTimer ulong
_hscrollbar ScrollBarhorizontal scrollbar control
_hscrollbarMode ScrollBarMode
_iconsPaneWidth uint
_iconsWidth int
_id stringwidget id
_insideChangeScrollbarVisibility bool
_lastBlinkStartTs long
_lastReportedModifiedState bool
_leftPaneBackgroundColor uint
_leftPaneBackgroundColor2 uint
_leftPaneBackgroundColor3 uint
_leftPaneLineNumberBackgroundColor uint
_leftPaneLineNumberBackgroundColorCurrentLine uint
_leftPaneLineNumberColor uint
_leftPaneLineNumberColorCurrentLine uint
_leftPaneLineNumberColorEdited uint
_leftPaneLineNumberColorSaved uint
_leftPaneWidth int
_lineHeight int
_lineNumbersWidth int
_matchingBracketHightlightColor uint
_maxFontSize int
_measuredHeight intheight measured by measure()
_measuredText dstring
_measuredTextSize Point
_measuredTextToSetWidgetSize Point
_measuredTextToSetWidgetSizeWidths int[]
_measuredTextWidths int[]
_measuredWidth intwidth measured by measure()
_minFontSize int
_modificationMarksPaneWidth uint
_modificationMarksWidth int
_needDraw booltrue to force redraw
_needLayout booltrue to force layout
_ownContent boolwhen ownContent is false, content should not be destroyed in editor destructor
_ownStyle Styleown copy of style - to override some of style properties, null of no properties overriden
_parent Widgetparent widget
_passwordChar dchar
_popupMenu MenuItem
_pos Rectcurrent widget position, set by layout()
_replaceMode bool
_scrollPos Point
_searchHighlightColorCurrent uint
_searchHighlightColorOther uint
_selectAllWhenFocusedWithTab bool
_selectionColorFocused uint
_selectionColorNormal uint
_selectionRange TextRange
_showFolding bool
_showIcons bool
_showLineNumbers bool
_showModificationMarks bool
_showTabPositionMarks bool
_spaceWidth int
_span LineSpan[]information about line span into several lines - in word wrap mode
_spanCache LineSpan[]
_state uintwidget state (set of flags from State enum)
_styleId stringstyle id to lookup style in theme
_tabOrder ushort
_textToHighlight dstring
_textToHighlightOptions uint
_textToSetWidgetSize dstring
_tooltipText UIString
_trackHover booldoes widget need to track mouse Hover
_visibility Visibilitywidget visibility: either Visible, Invisible, Gone
_visibleScrollableArea Rect
_vscrollbar ScrollBarvertical scrollbar control
_vscrollbarMode ScrollBarMode
_wantTabs bool
_window Windowwindow (to be used for top level widgets only!)
_wordWrap bool
caretHeightOffset int

Properties

NameTypeDescription
acceleratorMap[get] ActionMap
action[get, set] const(Action)action to emit on click
alignment[get] ubytereturns alignment (combined vertical and horizontal)
alignment[set] Widgetsets alignment (combined vertical and horizontal)
alpha[get] uintwidget drawing alpha value (0=opaque .. 255=transparent)
alpha[set] Widgetset widget drawing alpha value (0=opaque .. 255=transparent)
animating[get] boolreturns true is widget is being animated - need to call animate() and redraw
backgroundColor[get] uintreturns background color
backgroundColor[set] Widgetset background color for widget - override one from style
backgroundColor[set] Widgetset background color for widget - from string like "#5599CC" or "white"
backgroundDrawable[get, set] Ref!(dcanvas.graphics.resources.Drawable)background drawable
backgroundImageId[get, set] stringbackground image id
canCheck[get] bool
canClick[get] bool
canFocus[get] boolreturns true if widget is focusable and visible and enabled
caretPos[get] TextPositionreturns caret position
checkable[set] Widget
checkable[get] boolwhen true, control supports Checked state
checked[set] Widgetset checked state
checked[get] boolget checked state
childCount[get] intreturns number of children of this widget
clickable[set] Widget
clickable[get] boolwhen true, user can click this control, and get onClick listeners called
clientRect[get] Rectreturns client area rectangle
content[set] EditWidgetBaseset content object
content[get] EditableContenteditor content object
copyCurrentLineWhenNoSelection[get] boolwhen true allows copy / cut whole current line if there is no selection
copyCurrentLineWhenNoSelection[set] EditWidgetBase
currentLineRange[get] TextRangereturns range for line with cursor
enabled[set] Widgetchange enabled state
enabled[get] boolreturn true if state has State.Enabled flag set
focusable[set] Widget
focusable[get] boolwhether widget can be focused
focused[get] bool
focusGroup[set] Widgetset focus group flag for container widget
focusGroup[get] boolWhen focus group is set for some parent widget, focus from one of containing widgets can be moved using keyboard only to one of other widgets containing in it and cannot bypass bounds of focusGroup.
focusGroupFocused[set] Widget
focusGroupFocused[get] bool
focusRectColors[get] const(uint[])returns colors to draw focus rectangle (one for solid, two for vertical gradient) or null if no focus rect should be drawn for style
font[get] Ref!(dcanvas.graphics.fonts.Font)returns font set for widget using style or set manually
fontFace[get] stringreturns font face
fontFace[set] Widgetset font face for widget - override one from style
fontFamily[get] FontFamilyreturns font family
fontFamily[set] Widgetset font family for widget - override one from style
fontItalic[get] boolreturns font style (italic/normal)
fontItalic[set] Widgetset font style (italic/normal) for widget - override one from style
fontSize[get] intreturns font size in pixels
fontSize[set] Widgetset font size for widget - override one from style
fontWeight[get] ushortreturns font weight
fontWeight[set] Widgetset font weight for widget - override one from style
halign[get] Alignreturns vertical alignment
hasTooltip[get] boolreturns true if widget has tooltip to show
height[get] intreturns current height of widget in pixels
hscrollbar[set] ScrollBar
hscrollbar[get] ScrollBar
hscrollbarMode[set] ScrollBarMode
hscrollbarMode[get] ScrollBarModehorizontal scrollbar mode
id[set] Widgetset widget id
id[get] stringreturns widget id, null if not set
layoutHeight[get] intreturns layout height options (WRAP_CONTENT, FILL_PARENT, some constant value or percent but only for one widget in layout)
layoutHeight[set] Widgetsets layout height options (WRAP_CONTENT, FILL_PARENT, or some constant value)
layoutWeight[get] intreturns layout weight (while resizing to fill parent, widget will be resized proportionally to this value)
layoutWeight[set] Widgetsets layout weight (while resizing to fill parent, widget will be resized proportionally to this value)
layoutWidth[get] intreturns layout width options (WRAP_CONTENT, FILL_PARENT, some constant value or percent but only for one widget in layout)
layoutWidth[set] Widgetsets layout width options (WRAP_CONTENT, FILL_PARENT, or some constant value)
left[get] intreturns widget rectangle left position
margins[set] Widgetset margins for widget with the same value for left, top, right, bottom - override one from style
margins[set] Widgetset margins for widget - override one from style
margins[get] Rectget margins (between widget bounds and its background)
maxHeight[get] intreturns max height constraint (SIZE_UNSPECIFIED if no constraint set)
maxHeight[set] Widgetset max height constraint (SIZE_UNSPECIFIED for no constraint)
maxWidth[get] intreturns max width constraint (SIZE_UNSPECIFIED if no constraint set)
maxWidth[set] Widgetset max width constraint (SIZE_UNSPECIFIED for no constraint)
measuredHeight[get] intreturns measured height (calculated during measure() call)
measuredWidth[get] intreturns measured width (calculated during measure() call)
minHeight[get] intreturns min height constraint
minHeight[set] Widgetset max height constraint (0 for no constraint)
minWidth[get] intreturns min width constraint
minWidth[set] Widgetset max width constraint (0 for no constraint)
needDraw[get] boolreturns true if redraw is required for widget and its children
needLayout[get] boolreturns true if layout is required for widget and its children
ownStyle[get] Styleenforces widget's own style - allows override some of style properties
padding[set] Widgetset padding for widget to the same value for left, top, right, bottom - override one from style
padding[set] Widgetset padding for widget - override one from style
padding[get] Rectget padding (between background bounds and content of widget)
parent[get] Widgetreturns parent widget, null for top level widget
parent[set] Widgetsets parent for widget
passwordChar[set] EditLine
passwordChar[get] dcharpassword character - 0 for normal editor, some character, e.g. '*' to hide text by replacing all characters with this char
popupMenu[get] MenuItem
popupMenu[set] Widget
pos[get] Rectreturns widget rectangle
readOnly[get] boolreadonly flag (when true, user cannot change content of editor)
readOnly[set] EditWidgetBasesets readonly flag
replaceMode[get] boolreplace mode flag (when true, entered character replaces character under cursor)
replaceMode[set] EditWidgetBasesets replace mode flag
resetState[set] Widgetremove state flags (set of flags from State enum)
selectionRange[get] TextRangereturns current selection range
selectionRange[set] TextRangesets current selection range
setState[set] Widgetadd state flags (set of flags from State enum)
showCaretBlinking[get, set] boolwhen true, enables caret blinking, otherwise it's always visible
showFolding[get, set] boolwhen true, show folding controls at the left
showIcons[get, set] boolwhen true, show icons like bookmarks or breakpoints at the left
showLineNumbers[get, set] boolwhen true, line numbers are shown
showModificationMarks[get, set] boolwhen true, show modification marks for lines (whether line is unchanged/modified/modified_saved)
showTabPositionMarks[set] EditWidgetBase
showTabPositionMarks[get] boolwhen true shows mark on tab positions in beginning of line
smartIndents[get] booltrue if smart indents are enabled
smartIndents[set] EditWidgetBaseset smart indents enabled flag
smartIndentsAfterPaste[get] booltrue if smart indents are enabled
smartIndentsAfterPaste[set] EditWidgetBaseset smart indents enabled flag
state[set] Widgetset new widget state (set of flags from State enum)
state[get] uintwidget state (set of flags from State enum)
styleId[set] Widgetset widget style id
styleId[get] stringreturns widget style id, null if not set
supportsSmartIndents[get] booltrue if smart indents are supported
tabOrder[set] Widget
tabOrder[get] ushorttab order - hint for focus movement using Tab/Shift+Tab
tabSize[get] intreturns tab size (in number of spaces)
tabSize[set] EditWidgetBasesets tab size (in number of spaces)
text[get] dstringget widget text
text[set] Widgetset text
textColor[set] Widgetset text color for widget - from string like "#5599CC" or "white"
textColor[set] Widgetset text color (ARGB 32 bit value)
textColor[get] uintget text color (ARGB 32 bit value)
textFlags[get] uintget text flags (bit set of TextFlag enum values)
textFlags[set] Widgetset text flags (bit set of TextFlag enum values)
textToHighlight[get] dstringtext pattern to highlight - e.g. for search
textToSetWidgetSize[set] dstring
textToSetWidgetSize[get] dstring
tooltipText[get, set] dstringtooltip text - when not empty, widget will show tooltips automatically; for advanced tooltips - override hasTooltip and createTooltip
top[get] intreturns widget rectangle top position
trackHover[get] boolmouse movement processing flag (when true, widget will change Hover state while mouse is moving)
trackHover[set] Widgetset new trackHover flag value (when true, widget will change Hover state while mouse is moving)
useSpacesForTabs[get] boolwhen true, spaces will be inserted instead of tabs
useSpacesForTabs[set] EditWidgetBaseset new Tab key behavior flag: when true, spaces will be inserted instead of tabs
valign[get] Alignreturns horizontal alignment
visibility[get] Visibilityreturns widget visibility (Visible, Invisible, Gone)
visibility[set] Widgetsets widget visibility (Visible, Invisible, Gone)
visible[get] boolreturns true if this widget and all its parents are visible
vscrollbar[get] ScrollBar
vscrollbar[set] ScrollBar
vscrollbarMode[get] ScrollBarModevertical scrollbar mode
vscrollbarMode[set] ScrollBarMode
wantsKeyTracking[get] booloverride and return true to track key events even when not focused
wantTabs[get, set] boolwhen true, Tab / Shift+Tab presses are processed internally in widget (e.g. insert tab character) instead of focus change navigation.
width[get] intreturns current width of widget in pixels
window[set] Windowsets window (to be used for top level widget from Window implementation). TODO: hide it from API?
window[get] Windowreturns window (if widget or its parent is attached to window)
wordWrap[get, set] booltrue if word wrap mode is set
stateStyle[get] const(Style)returns style for current widget state
style[get, set] const(Style)accessor to style - by lookup in theme by styleId (if style id is not set, theme base style will be used).

Methods

NameDescription
addChild (item) adds child, returns added item
addChildren (items) adds child, returns added item
addOnCheckChangeListener (listener) helper function to add onCheckChangeListener in method chain
addOnClickListener (listener) helper function to add onClickListener in method chain
addOnFocusChangeListener (listener) helper function to add onFocusChangeListener in method chain
animate (interval) animates window; interval is time left from previous draw, in hnsecs (1/10000000 of second)
applyAlign (rc, sz) Applies alignment for content of size sz - set rectangle rc to aligned value of content inside of initial value of rc.
applyMargins (rc) Helper function: applies margins to rectangle
applyPadding (rc) Helper function: applies padding to rectangle
cancelLayout ()
cancelTimer (timerId) cancel timer - pass value returned from setTimer() as timerId parameter
canShowPopupMenu (x, y) returns true if widget can show popup (e.g. by mouse right click at point x,y)
child (index) returns child by index
childById (id, deepSearch) find child of specified type T by id, returns null if not found or cannot be converted to type T
childIndex (item) returns index of widget in child list, -1 if passed widget is not a child of this widget
clearSelection () clears selection (don't change text, just unselect)
compareId (id) compare widget id with specified value, returs true if matches
createTooltip (mouseX, mouseY, alignment, x, y) will be called from window once tooltip request timer expired; if null is returned, popup will not be shown; you can change alignment and position of popup here
dispatchAction (a) call to dispatch action
drawFocusRect (buf, rc) draws focus rectangle, if enabled in styles
executeInUiThread (runnable) execute delegate later in UI thread if this widget will be still available (can be used to modify UI from background thread, or just to postpone execution of action)
explode (str, splitChars) Divide (and conquer) text into words
fillHorizontal () sets layoutWidth=FILL_PARENT
fillParent () sets layoutWidth=FILL_PARENT and layoutHeight=FILL_PARENT
fillVertical () sets layoutHeight=FILL_PARENT
findFocusableChild (defaultOnly) searches children for first focusable item, returns null if not found
findWrapLine (textPos) Based on a TextPosition, finds which wrapLine it is on for its current line
findWrapPoint (text) Finds good visual wrapping point for string
focusGroupWidget () find nearest parent of this widget with focusGroup flag, returns topmost parent if no focusGroup flag set to any of parents.
fullContentSize () calculate full content size in pixels
fullContentSizeWithBorders () calculate full content size in pixels including widget borders / margins
getCursorType (x, y) returns mouse cursor type for widget
getRangeText (range) returns text for specified range (joined with LF when span over multiple lines)
getSelectedText () returns current selection text (joined with LF when span over multiple lines)
getSpan (lineNumber) Returns LineSpan for line based on actual line number
handleAction (a) override to handle specific actions
handleActionStateChanged () called when state of action assigned on widget is changed
handleActionStateRequest (a) override to handle specific actions state (e.g. change enabled state for supported actions)
handleMoveFocusUsingKeys (event)
insertChild (item, index) inserts child at given index, returns inserted item
invalidate () request redraw
isActionEnabled (action) override to change popup menu items state
isAZaz (ch)
isChild (item, deepSearch) returns true if item is child of this widget (when deepSearch == true - returns true if item is this widget or one of children inside children tree).
isPointInside (x, y) returns true if point is inside of this widget
isPointInside (pt)
layout (rc) Set widget rectangle to specified value and layout widget contents. (Step 2 of two phase layout).
lineSpanIterate (iterator) Simple way of iterating through span
makeRectVisible (rc, alignHorizontally, alignVertically)
measure (parentWidth, parentHeight) measure
measureWrappedText (text) Calls measureText for word wrap
minimumVisibleContentSize ()
onContentChange (content, operation, rangeBefore, rangeAfter, source)
onDraw (buf) draw content
onEvent (event) handle custom event
onHScroll (event) process horizontal scrollbar event
onKeyEvent (event) handle keys
onMenuItemAction (action)
onMouseEvent (event) process mouse event; return true if event is processed by widget.
onPopupMenuItem (item)
onScrollEvent (source, event) handle scroll event
onThemeChanged () handle theme change: e.g. reload some themed resources
onTimer (id) handle timer; return true to repeat timer event after next interval, false cancel timer
onVScroll (event) process vertical scrollbar event
removeAllChildren (destroyObj)
removeChild (child) removes child, returns removed item
removeChild (ID) removes child by ID, returns removed item
removeChild (index) removes child, returns removed item
replaceChild (newChild, oldChild) replace child with other child
replaceSelectionText (newText)
requestActionsUpdate (immediateUpdate) set action update request flag, will be cleared after redraw
requestLayout () request relayout of widget and its children
scheduleTooltip (delay, alignment, x, y) schedule tooltip
selectAll () Select whole text
setBoolProperty (name, value) set string property value, for ML loaders
setCaretPos (line, column, makeVisible, center) change caret position and ensure it is visible
setDefaultPopupMenu () sets default popup menu with copy/paste/cut/undo/redo
setDoubleProperty (name, value) set double property value, for ML loaders
setDstringProperty (name, value) set string property value, for ML loaders
setFocus (reason) sets focus to this widget or suitable focusable child, returns previously focused widget
setIntProperty (name, value) set int property value, for ML loaders
setRectProperty (name, value) set Rect property value, for ML loaders
setStringListValueListProperty (propName, values) StringListValue list values
setStringProperty (name, value) set string property value, for ML loaders
setTextToHighlight (pattern, textToHighlightOptions) set text to highlight -- e.g. for search
setTimer (intervalMillis) set new timer to call onTimer() after specified interval (for recurred notifications, return true from onTimer)
setUIStringListProperty (propName, values) UIString list values
setUistringProperty (name, value) set string property value, for ML loaders
showPopupMenu (x, y) shows popup at (x,y)
updateActionState (force) call to update state for action (if action is assigned for widget)
updateActionState (a, force, allowDefault) ask for update state of some action (unles force=true, checks window flag actionsUpdateRequested), returns true if action state is changed
updateStateFromAction (a) apply enabled, visibile and checked state for this widget from action's state
wordWrapRefresh () Override for EditBox
wrapLine (str, lineNumber) Divides up a string for word wrapping, sets info in span
wrapsUpTo (line) Returns number of visible wraps up to a line (not including the first wrapLines themselves)
drawContent (buf, fnt, rc) Override to customise what is drawn inside the content area. Called from onDraw after clipping and scroll offset have been set up.
drawTextLine (buf, fnt, x, y, txt, color, tabSz) Override to provide fully custom text rendering. Default implementation invokes the styler delegate when set, otherwise falls back to plain drawText.
applyPasswordChar (s)
calcLineWidth (s)
cancelHoverTimer ()
caretRect () returns cursor rectangle
checkIfNeededToChangeScrollbarVisibility ()
checkIfScrollbarsNeeded (needHScroll, needVScroll) override to determine if scrollbars are needed or not
clientToTextPos (pt)
correctCaretPos () when cursor position or selection is out of content bounds, fix it to nearest valid position
drawCaret (buf) draws caret
drawClient (buf)
drawExtendedArea (buf)
drawLeftPane (buf, rc, line)
drawLeftPaneFolding (buf, rc, line)
drawLeftPaneIcon (buf, rc, icon)
drawLeftPaneIcons (buf, rc, line)
drawLeftPaneLineNumbers (buf, rc, line)
drawLeftPaneModificationMarks (buf, rc, line)
drawLineBackground (buf, lineRect, visibleRect) override to custom highlight of line background
ensureCaretVisible (center)
findKeyAction (keyCode, flags) map key to action
getLeftPaneIconsPopupMenu (line)
handleCheckChange (checked) override to handle check changes
handleClick ()
handleClientRectLayout (rc) override to support modification of client rect after change, e.g. apply offset
handleDoubleClick ()
handleEditorStateChange () updates editorStateChange with recent position
handleFocusChange (focused, receivedFocusFromKeyboard) override to handle focus changes
handleFontChanged () override to handle font changes
handleLeftPaneFoldingMouseClick (event, rc, line)
handleLeftPaneIconsMouseClick (event, rc, line)
handleLeftPaneLineNumbersMouseClick (event, rc, line)
handleLeftPaneModificationMarksMouseClick (event, rc, line)
handleLeftPaneMouseClick (event, rc, line)
indentLine (src, back, cursorPos) change line indent
indentRange (back) indent / unindent range
lineCount () override for multiline editors
measuredContent (parentWidth, parentHeight, contentWidth, contentHeight) helper function for implement measure() when widget's content dimensions are known
measureTextToSetWidgetSize ()
measureVisibleText ()
multipleLinesSelected () returns true if one or more lines selected fully
onControlClick () Handle Ctrl + Left mouse click on text
onHover (pos)
onHoverTimeout (pt, pos) override to handle mouse hover timeout in text
onLeftPaneMouseClick (event)
processSmartIndent (operation)
removeRangeText (range)
removeSelectionTextIfSelected ()
selectLineByMouse (x, y, onSameLineOnly)
selectWordByMouse (x, y)
setWindowFocusedFlag (flg)
spaceBefore (pos)
spacesForTab (currentPos) generate string of spaces, to reach next tab position
startCaretBlinking ()
stopCaretBlinking ()
textPosToClient (p)
updateCaretPositionByMouse (x, y, selecting)
updateFontProps ()
updateHScrollBar () update horizontal scrollbar widget position
updateLeftPaneWidth () override to add custom items on left panel
updateMaxLineWidth ()
updateScrollBars () update scrollbar positions
updateSelectionAfterCursorMovement (oldCaretPos, selecting)
updateVScrollBar () update verticat scrollbar widget position
wordWrapMouseOffset (x, y) Used instead of using clientToTextPos for mouse input when in word wrap mode

Aliases

NameDescription
~this