reckfellENGINE

CodeEdit

Source-text editor with line markers, folding and extensible code completion.

On this page
class CodeEditReckfellSharpInherits TextEdit

CodeEdit extends TextEdit with line numbers, bookmarks, breakpoint/execution markers, folding, indentation rules and a code-completion interface. The control itself does not compile code, connect a debugger or perform language-semantic analysis; the application supplies those services. Configure syntax highlighting through the inherited SyntaxHighlighter.

API lines and columns are zero-based; displayed line numbers start at one. A new CodeEdit uses left-to-right direction. Enable LineFolding to fold lines; GuttersDrawFoldGutter separately shows folding buttons. Hidden lines remain in Text and in saved file contents.

Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.

Constructors1

CodeEditConstructor
# CodeEdit
C#
public CodeEdit();

Creates a code-editor control; add it to a parent with AddChild. Inherits TextEdit, defaults to LTR and disabled folding. Construction does not open a file or connect a compiler/debugger.

Properties22

AutoBraceCompletionEnabledProperty
# AutoBraceCompletionEnabled
C#
public bool AutoBraceCompletionEnabled { get; set; }

Allows automatic closing-key insertion on user opening-key input and paired handling for Backspace/completion confirmation. Configure AutoBraceCompletionPairs. Does not append brackets for every programmatic Text assignment or InsertText call.

AutoBraceCompletionHighlightMatchingProperty
# AutoBraceCompletionHighlightMatching
C#
public bool AutoBraceCompletionHighlightMatching { get; set; }

Allows visual highlighting of matching braces. Independent of automatic insertion; does not edit Text or validate the whole program.

AutoBraceCompletionPairsProperty
# AutoBraceCompletionPairs
C#
public Reckfell.Collections.Dictionary AutoBraceCompletionPairs { get; set; }

Maps opening keys to closing keys; both are nonempty strings of symbol/punctuation characters. The setter replaces the set; the getter creates a new Dictionary whose mutation does not change rules. Use AddAutoBraceCompletionPair to add one pair. Does not automatically configure string/comment delimiters.

CodeCompletionEnabledProperty
# CodeCompletionEnabled
C#
public bool CodeCompletionEnabled { get; set; }

Enables built-in completion requests during input and through the query shortcut. Does not supply candidates: handle CodeCompletionRequested, add options and call UpdateCodeCompletionOptions. false does not prohibit direct RequestCodeCompletion calls or guarantee closing an active list; use CancelCodeCompletion to close it.

CodeCompletionPrefixesProperty
# CodeCompletionPrefixes
C#
public Reckfell.Collections.Array<string> CodeCompletionPrefixes { get; set; }

Characters allowing completion requests after them, such as a dot. The setter takes only the first code point of each nonempty string, deduplicates and replaces the set. Supply single-character strings. The getter returns a new array; mutating it does not change settings. Result order does not define candidate priority.

DelimiterCommentsProperty
# DelimiterComments
C#
public Reckfell.Collections.Array<string> DelimiterComments { get; set; }

Replaces only the comment rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddCommentDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

DelimiterStringsProperty
# DelimiterStrings
C#
public Reckfell.Collections.Array<string> DelimiterStrings { get; set; }

Replaces only the string rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddStringDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

GuttersDrawBookmarksProperty
# GuttersDrawBookmarks
C#
public bool GuttersDrawBookmarks { get; set; }

Shows bookmarks in the shared main gutter. Does not create bookmarks or clear them when disabled.

GuttersDrawBreakpointsGutterProperty
# GuttersDrawBreakpointsGutter
C#
public bool GuttersDrawBreakpointsGutter { get; set; }

Shows breakpoint markers in the shared main gutter and enables its clickability for these actions. Does not create breakpoints or connect a debugger. Hiding does not clear markers.

GuttersDrawExecutingLinesProperty
# GuttersDrawExecutingLines
C#
public bool GuttersDrawExecutingLines { get; set; }

Shows execution markers in the shared main gutter. Does not automatically determine the executing line or clear flags when disabled.

GuttersDrawFoldGutterProperty
# GuttersDrawFoldGutter
C#
public bool GuttersDrawFoldGutter { get; set; }

Shows the folding-button gutter. Does not enable LineFolding or fold lines by itself. May change available text width.

GuttersDrawLineNumbersProperty
# GuttersDrawLineNumbers
C#
public bool GuttersDrawLineNumbers { get; set; }

Shows logical line numbers starting at one. API indexing remains zero-based; wrapped parts do not become new logical lines. Does not change Text.

GuttersLineNumbersMinDigitsProperty
# GuttersLineNumbersMinDigits
C#
public int GuttersLineNumbersMinDigits { get; set; }

Minimum displayed line-number width in digits; use a nonnegative value. The field expands when the final line number needs more digits. Neither a maximum line count nor a change to API indexing.

GuttersZeroPadLineNumbersProperty
# GuttersZeroPadLineNumbers
C#
public bool GuttersZeroPadLineNumbers { get; set; }

Pads displayed line numbers with leading zeroes instead of spaces to the current field width. GuttersLineNumbersMinDigits sets the minimum digit count; document text is unchanged.

IndentAutomaticProperty
# IndentAutomatic
C#
public bool IndentAutomatic { get; set; }

Allows automatic indentation on newline input using the current line and IndentAutomaticPrefixes. Does not format the entire document or use a compiler to repair C# structure.

IndentAutomaticPrefixesProperty
# IndentAutomaticPrefixes
C#
public Reckfell.Collections.Array<string> IndentAutomaticPrefixes { get; set; }

Characters triggering an additional automatic indentation level. Supply nonempty single-character strings: only each first code point is stored. Assignment replaces the set; the getter returns a new array whose mutation does not change settings.

IndentSizeProperty
# IndentSize
C#
public int IndentSize { get; set; }

Positive indentation step width. The setter also sets inherited TabSize; space indentation uses this many spaces per step. Assignment does not convert existing text: use ConvertIndent.

IndentUseSpacesProperty
# IndentUseSpaces
C#
public bool IndentUseSpaces { get; set; }

Chooses spaces rather than tabs for new indentation. Does not replace existing characters or format the file; ConvertIndent separately converts leading indentation.

LineFoldingProperty
# LineFolding
C#
public bool LineFolding { get; set; }

Allows logical-line folding. Defaults to false. Disabling reveals all lines; enabling does not fold anything by itself. GuttersDrawFoldGutter separately controls folding icons. Text remains in the document.

LineLengthGuidelinesProperty
# LineLengthGuidelines
C#
public Reckfell.Collections.Array<int> LineLengthGuidelines { get; set; }

Columns for vertical line-length guides. Visual aids rather than an input limit or automatic wrapping. The array is shared; mutating a returned array does not itself request redraw: reassign the property or call QueueRedraw.

SymbolLookupOnClickProperty
# SymbolLookupOnClick
C#
public bool SymbolLookupOnClick { get; set; }

Enables lookup requests through a Ctrl/Cmd-modified click. The application validates the current word through SymbolValidate and SetSymbolLookupWordAsValid, then handles SymbolLookup. Does not provide a symbol index or perform navigation. The setter clears the previously validated word.

SymbolTooltipOnHoverProperty
# SymbolTooltipOnHover
C#
public bool SymbolTooltipOnHover { get; set; }

Allows a delayed SymbolHovered request when hovering over a word. Does not supply tooltip content; the application prepares it. false stops the pending timer rather than disabling your own symbol provider.

Methods119

AddAutoBraceCompletionPairvoid
# AddAutoBraceCompletionPair
C#
public void AddAutoBraceCompletionPair(string startKey, string endKey);

Adds a pair of nonempty symbol keys, including multi-character keys. An existing opening key cannot be added again; replace the full AutoBraceCompletionPairs mapping to change it. Longer keys are checked before shorter ones. Does not itself edit text or enable automatic insertion.

Parameters
NameTypeDefault
startKeystring—
endKeystring—
startKey

Exact nonempty opening symbol key.

endKey

Closing symbol key; an empty end is allowed for delimiters and forces line-only mode, but not for brace pairs.

AddCodeCompletionOption3 overloads
# AddCodeCompletionOption · 1/3
C#
public void AddCodeCompletionOption(CodeEdit.CodeCompletionKind type, string displayText, string insertText, Color? textColor = default, Resource icon = null, Variant value = default, int location = 1024);

Stages one candidate for the next batch without immediately opening the list. After staging the complete batch, call UpdateCodeCompletionOptions. displayText is shown to the user; insertText is inserted on confirmation; use nonempty strings. type and location describe presentation and ranking rather than executable code. Prefer the Variant value overload: legacy Nullable<Variant> overloads convert null to integer zero rather than nil.

Parameters
NameTypeDefault
typeCodeEdit.CodeCompletionKind—
displayTextstring—
insertTextstring—
textColorColor?default
iconResourcenull
valueVariantdefault
locationint1024
type

CodeCompletionKind category for option presentation.

displayText

Nonempty option label in the list.

insertText

Nonempty text inserted on confirmation; may differ from the label.

textColor

Option text color; null uses the default white.

icon

Icon resource or null; an existing resource remains shared.

value

Additional default_value record value; a Color may supply a color swatch. Variant? overloads replace null with integer zero.

location

CodeCompletionLocation value/mask for ranking. Not a line number or column.

# AddCodeCompletionOption · 2/3
C#
public void AddCodeCompletionOption(CodeEdit.CodeCompletionKind type, string displayText, string insertText, Color? textColor, Resource icon, Variant? value);

Stages one candidate for the next batch without immediately opening the list. After staging the complete batch, call UpdateCodeCompletionOptions. displayText is shown to the user; insertText is inserted on confirmation; use nonempty strings. type and location describe presentation and ranking rather than executable code. Prefer the Variant value overload: legacy Nullable<Variant> overloads convert null to integer zero rather than nil.

Parameters
NameTypeDefault
typeCodeEdit.CodeCompletionKind—
displayTextstring—
insertTextstring—
textColorColor?—
iconResource—
valueVariant?—
type

CodeCompletionKind category for option presentation.

displayText

Nonempty option label in the list.

insertText

Nonempty text inserted on confirmation; may differ from the label.

textColor

Option text color; null uses the default white.

icon

Icon resource or null; an existing resource remains shared.

value

Additional default_value record value; a Color may supply a color swatch. Variant? overloads replace null with integer zero.

# AddCodeCompletionOption · 3/3
C#
public void AddCodeCompletionOption(CodeEdit.CodeCompletionKind type, string displayText, string insertText, Color? textColor, Resource icon, Variant? value, int location);

Stages one candidate for the next batch without immediately opening the list. After staging the complete batch, call UpdateCodeCompletionOptions. displayText is shown to the user; insertText is inserted on confirmation; use nonempty strings. type and location describe presentation and ranking rather than executable code. Prefer the Variant value overload: legacy Nullable<Variant> overloads convert null to integer zero rather than nil.

Parameters
NameTypeDefault
typeCodeEdit.CodeCompletionKind—
displayTextstring—
insertTextstring—
textColorColor?—
iconResource—
valueVariant?—
locationint—
type

CodeCompletionKind category for option presentation.

displayText

Nonempty option label in the list.

insertText

Nonempty text inserted on confirmation; may differ from the label.

textColor

Option text color; null uses the default white.

icon

Icon resource or null; an existing resource remains shared.

value

Additional default_value record value; a Color may supply a color swatch. Variant? overloads replace null with integer zero.

location

CodeCompletionLocation value/mask for ranking. Not a line number or column.

AddCommentDelimitervoid
# AddCommentDelimiter
C#
public void AddCommentDelimiter(string startKey, string endKey, bool lineOnly = false);

Adds a comment delimiter rule for internal editor recognition. startKey is a nonempty symbol key; endKey is a symbol key or empty string, with an empty end forcing lineOnly. Affects commands, folding and context rather than SyntaxHighlighter colors. Check that the same startKey is absent before adding.

Parameters
NameTypeDefault
startKeystring—
endKeystring—
lineOnlyboolfalse
startKey

Exact nonempty opening symbol key.

endKey

Closing symbol key; an empty end is allowed for delimiters and forces line-only mode, but not for brace pairs.

lineOnly

Restrict the region to one logical line.

AddStringDelimitervoid
# AddStringDelimiter
C#
public void AddStringDelimiter(string startKey, string endKey, bool lineOnly = false);

Adds a string delimiter rule for internal editor recognition. startKey is a nonempty symbol key; endKey is a symbol key or empty string, with an empty end forcing lineOnly. Affects commands, folding and context rather than SyntaxHighlighter colors. Check that the same startKey is absent before adding.

Parameters
NameTypeDefault
startKeystring—
endKeystring—
lineOnlyboolfalse
startKey

Exact nonempty opening symbol key.

endKey

Closing symbol key; an empty end is allowed for delimiters and forces line-only mode, but not for brace pairs.

lineOnly

Restrict the region to one logical line.

CanFoldLinebool
# CanFoldLine
C#
public bool CanFoldLine(int line);

Tests whether a line can currently fold: requires LineFolding, a nonempty visible header and a suitable block. An already folded header returns false; test IsLineFolded separately. Boundaries use indentation and configured string/comment delimiters or regions rather than a C# compiler AST.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

Returns bool

Tests whether a line can currently fold: requires LineFolding, a nonempty visible header and a suitable block. An already folded header returns false; test IsLineFolded separately. Boundaries use indentation and configured string/comment delimiters or regions rather than a C# compiler AST.

CancelCodeCompletionvoid
# CancelCodeCompletion
C#
public void CancelCodeCompletion();

Deactivates the completion list and resets forced-display mode. Does not roll back text edits and is not Undo. Does not clear options staged through AddCodeCompletionOption for the next update.

ClearBookmarkedLinesvoid
# ClearBookmarkedLines
C#
public void ClearBookmarkedLines();

Clears all bookmarks while retaining breakpoint and execution markers. Does not delete document lines.

ClearBreakpointedLinesvoid
# ClearBreakpointedLines
C#
public void ClearBreakpointedLines();

Clears all breakpoint markers. Emits BreakpointToggled for each currently marked line; repeating with an empty set emits none. Retains other marker types.

ClearCommentDelimitersvoid
# ClearCommentDelimiters
C#
public void ClearCommentDelimiters();

Removes all comment rules while retaining the other type. Does not remove matching document text or clear an independent SyntaxHighlighter’s rules.

ClearExecutingLinesvoid
# ClearExecutingLines
C#
public void ClearExecutingLines();

Clears all execution markers while retaining bookmarks and breakpoints. Does not affect program execution.

ClearStringDelimitersvoid
# ClearStringDelimiters
C#
public void ClearStringDelimiters();

Removes all string rules while retaining the other type. Does not remove matching document text or clear an independent SyntaxHighlighter’s rules.

ConfirmCodeCompletionvoid
# ConfirmCodeCompletion
C#
public void ConfirmCodeCompletion(bool replace = false);

Confirms the selected candidate when Editable and the list is active. The built-in implementation applies insert_text at carets in one Undo group: replace true replaces the current section including the remainder to the right, while false attempts to merge matching text to the right. Does not replace the whole document. Then closes the list; a final prefix character may start another request. _ConfirmCodeCompletion replaces insertion after Editable and active-list checks.

Parameters
NameTypeDefault
replaceboolfalse
replace

Replace the remainder of the current section to the right; false attempts to merge matching text.

ConvertIndentvoid
# ConvertIndent
C#
public void ConvertIndent(int fromLine = -1, int toLine = -1);

Converts leading indentation in an inclusive range according to IndentUseSpaces/IndentSize. A negative fromLine means the first line; a negative toLine means the last. Skips lines fully classified as string regions; requires Editable. Converting spaces to tabs retains incomplete space groups. Groups changes for Undo; not a full code formatter.

Parameters
NameTypeDefault
fromLineint-1
toLineint-1
fromLine

First included line; a negative value means zero.

toLine

Last included line; a negative value means document end.

CreateCodeRegionvoid
# CreateCodeRegion
C#
public void CreateCodeRegion();

Surrounds selected line ranges with region markers, attempts folding and selects the first region name for renaming. Requires a selection and a configured single-line comment with an empty end. Inserts two lines per range and removes secondary carets. The direct method does not check Editable: check it before calling. Grouped for Undo.

DeleteLinesvoid
# DeleteLines
C#
public void DeleteLines();

Deletes entire selection/caret lines, then clears selections. Deleting the only line leaves an empty one-line document. One Undo group. A direct call does not check Editable; this does not merely delete selected characters.

DoIndentvoid
# DoIndent
C#
public void DoIndent();

Calls IndentLines when a selection exists. Otherwise inserts a tab or enough spaces to reach the next indentation step at carets. Requires Editable; an undoable edit command rather than a setting change.

DuplicateLinesvoid
# DuplicateLines
C#
public void DuplicateLines();

Duplicates entire selection/caret line ranges before the originals, adding line separators. Unlike DuplicateSelection, is not limited to selected characters. One Undo group; the direct method does not check Editable.

DuplicateSelectionvoid
# DuplicateSelection
C#
public void DuplicateSelection();

Duplicates selected text before its start; at carets without selections, duplicates the whole line before the current one. Adjusts positions, unfolds affected blocks and groups changes for Undo. The direct method does not check Editable.

FoldAllLinesvoid
# FoldAllLines
C#
public void FoldAllLines();

Traverses the document top to bottom and folds available headers. Once an outer block folds, its hidden nested headers are not processed separately. Requires LineFolding; retains text but may move carets.

FoldLinevoid
# FoldLine
C#
public void FoldLine(int line);

Hides block lines after a header when CanFoldLine is true. Carets in the hidden area collapse to the header end; selections may shrink. Does not delete text or reduce GetLineCount. Does nothing when LineFolding is disabled.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

GetAutoBraceCompletionCloseKeystring
# GetAutoBraceCompletionCloseKey
C#
public string GetAutoBraceCompletionCloseKey(string openKey);

Returns the closing key for an exact opening key, or an empty string when absent. Does not insert it.

Parameters
NameTypeDefault
openKeystring—
openKey

Exact opening key in pair settings.

Returns string

Returns the closing key for an exact opening key, or an empty string when absent. Does not insert it.

GetAutoBraceCompletionPairsReckfell.Collections.Dictionary
# GetAutoBraceCompletionPairs
C#
public Reckfell.Collections.Dictionary GetAutoBraceCompletionPairs();

Maps opening keys to closing keys; both are nonempty strings of symbol/punctuation characters. The setter replaces the set; the getter creates a new Dictionary whose mutation does not change rules. Use AddAutoBraceCompletionPair to add one pair. Does not automatically configure string/comment delimiters.

Returns Reckfell.Collections.Dictionary

Maps opening keys to closing keys; both are nonempty strings of symbol/punctuation characters. The setter replaces the set; the getter creates a new Dictionary whose mutation does not change rules. Use AddAutoBraceCompletionPair to add one pair. Does not automatically configure string/comment delimiters.

GetAutoIndentPrefixesReckfell.Collections.Array<string>
# GetAutoIndentPrefixes
C#
public Reckfell.Collections.Array<string> GetAutoIndentPrefixes();

Characters triggering an additional automatic indentation level. Supply nonempty single-character strings: only each first code point is stored. Assignment replaces the set; the getter returns a new array whose mutation does not change settings.

Returns Reckfell.Collections.Array<string>

Characters triggering an additional automatic indentation level. Supply nonempty single-character strings: only each first code point is stored. Assignment replaces the set; the getter returns a new array whose mutation does not change settings.

GetBookmarkedLinesint[]
# GetBookmarkedLines
C#
public int[] GetBookmarkedLines();

Returns a new int[] of bookmarked line indices in ascending order. A snapshot: mutating the array does not change bookmarks. Reread indices after text edits.

Returns int[]

Returns a new int[] of bookmarked line indices in ascending order. A snapshot: mutating the array does not change bookmarks. Reread indices after text edits.

GetBreakpointedLinesint[]
# GetBreakpointedLines
C#
public int[] GetBreakpointedLines();

Returns a new int[] of breakpoint line indices in ascending order. Mutating the array does not change the editor. Indices shift when lines are inserted or removed; they are not persistent identifiers.

Returns int[]

Returns a new int[] of breakpoint line indices in ascending order. Mutating the array does not change the editor. Indices shift when lines are inserted or removed; they are not persistent identifiers.

GetCodeCompletionOptionReckfell.Collections.Dictionary
# GetCodeCompletionOption
C#
public Reckfell.Collections.Dictionary GetCodeCompletionOption(int index);

Returns a new Dictionary record at an index in the current filtered list. Returns an empty record when inactive; validate bounds when active. Keys: kind, display_text, insert_text, font_color, icon, location, default_value. A snapshot rather than an editable option reference; resources and nested values may be shared.

Parameters
NameTypeDefault
indexint—
index

Zero-based index in the current active filtered list.

Returns Reckfell.Collections.Dictionary

Returns a new Dictionary record at an index in the current filtered list. Returns an empty record when inactive; validate bounds when active. Keys: kind, display_text, insert_text, font_color, icon, location, default_value. A snapshot rather than an editable option reference; resources and nested values may be shared.

GetCodeCompletionOptionsReckfell.Collections.Array<Reckfell.Collections.Dictionary>
# GetCodeCompletionOptions
C#
public Reckfell.Collections.Array<Reckfell.Collections.Dictionary> GetCodeCompletionOptions();

Returns the active list’s current filtered options, or an empty Array<Dictionary> when inactive. Each record contains kind, display_text, insert_text, font_color, icon, location, default_value. Containers are newly created: mutating them does not update the list. icon resources and nested default_value objects may retain shared references; this is not a deep copy.

Returns Reckfell.Collections.Array<Reckfell.Collections.Dictionary>

Returns the active list’s current filtered options, or an empty Array<Dictionary> when inactive. Each record contains kind, display_text, insert_text, font_color, icon, location, default_value. Containers are newly created: mutating them does not update the list. icon resources and nested default_value objects may retain shared references; this is not a deep copy.

GetCodeCompletionPrefixesReckfell.Collections.Array<string>
# GetCodeCompletionPrefixes
C#
public Reckfell.Collections.Array<string> GetCodeCompletionPrefixes();

Characters allowing completion requests after them, such as a dot. The setter takes only the first code point of each nonempty string, deduplicates and replaces the set. Supply single-character strings. The getter returns a new array; mutating it does not change settings. Result order does not define candidate priority.

Returns Reckfell.Collections.Array<string>

Characters allowing completion requests after them, such as a dot. The setter takes only the first code point of each nonempty string, deduplicates and replaces the set. Supply single-character strings. The getter returns a new array; mutating it does not change settings. Result order does not define candidate priority.

GetCodeCompletionSelectedIndexint
# GetCodeCompletionSelectedIndex
C#
public int GetCodeCompletionSelectedIndex();

Returns the selected index in the active filtered list, or -1 when inactive. Not a source-candidate ID: filtering and updates can change ordering.

Returns int

Returns the selected index in the active filtered list, or -1 when inactive. Not a source-candidate ID: filtering and updates can change ordering.

GetCodeRegionEndTagstring
# GetCodeRegionEndTag
C#
public string GetCodeRegionEndTag();

Returns the end tag name without the comment prefix.

Returns string

Returns the end tag name without the comment prefix.

GetCodeRegionStartTagstring
# GetCodeRegionStartTag
C#
public string GetCodeRegionStartTag();

Returns the start tag name without the comment prefix rather than the entire marker line.

Returns string

Returns the start tag name without the comment prefix rather than the entire marker line.

GetCommentDelimitersReckfell.Collections.Array<string>
# GetCommentDelimiters
C#
public Reckfell.Collections.Array<string> GetCommentDelimiters();

Replaces only the comment rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddCommentDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

Returns Reckfell.Collections.Array<string>

Replaces only the comment rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddCommentDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

GetDelimiterEndKeystring
# GetDelimiterEndKey
C#
public string GetDelimiterEndKey(int delimiterIndex);

Returns the closing key at a current combined delimiter-set index. An empty string may represent a line-only delimiter with no explicit end.

Parameters
NameTypeDefault
delimiterIndexint—
delimiterIndex

Current combined rule-set index obtained from IsInString/IsInComment.

Returns string

Returns the closing key at a current combined delimiter-set index. An empty string may represent a line-only delimiter with no explicit end.

GetDelimiterEndPositionVector2
# GetDelimiterEndPosition
C#
public Vector2 GetDelimiterEndPosition(int line, int column);

Returns a region end boundary as Vector2: X column after the closing key, Y line. A line-only region without a closing key can use line length plus one. An unfound end returns (-1, -1); check it before computing a range. These are not screen pixels.

Parameters
NameTypeDefault
lineint—
columnint—
line

Zero-based existing logical line index.

column

Unicode code-point column; -1 in IsInString/IsInComment requests whole-line coverage.

Returns Vector2

Returns a region end boundary as Vector2: X column after the closing key, Y line. A line-only region without a closing key can use line length plus one. An unfound end returns (-1, -1); check it before computing a range. These are not screen pixels.

GetDelimiterStartKeystring
# GetDelimiterStartKey
C#
public string GetDelimiterStartKey(int delimiterIndex);

Returns the opening key at a current index in the combined string/comment delimiter set. Obtain indices from IsInString/IsInComment; rule changes can invalidate them.

Parameters
NameTypeDefault
delimiterIndexint—
delimiterIndex

Current combined rule-set index obtained from IsInString/IsInComment.

Returns string

Returns the opening key at a current index in the combined string/comment delimiter set. Obtain indices from IsInString/IsInComment; rule changes can invalidate them.

GetDelimiterStartPositionVector2
# GetDelimiterStartPosition
C#
public Vector2 GetDelimiterStartPosition(int line, int column);

Returns a recognized region’s start as Vector2: X column, Y line, (-1, -1) when absent. This is an internal cache boundary: X is the opening key’s start plus one code point, not necessarily the first content character for a multi-character key. Do not use X directly as a content-slice boundary without accounting for key length.

Parameters
NameTypeDefault
lineint—
columnint—
line

Zero-based existing logical line index.

column

Unicode code-point column; -1 in IsInString/IsInComment requests whole-line coverage.

Returns Vector2

Returns a recognized region’s start as Vector2: X column, Y line, (-1, -1) when absent. This is an internal cache boundary: X is the opening key’s start plus one code point, not necessarily the first content character for a multi-character key. Do not use X directly as a content-slice boundary without accounting for key length.

GetExecutingLinesint[]
# GetExecutingLines
C#
public int[] GetExecutingLines();

Returns a new int[] of execution-marker line indices in ascending order. May contain multiple indices. Mutating the array does not change the editor.

Returns int[]

Returns a new int[] of execution-marker line indices in ascending order. May contain multiple indices. Mutating the array does not change the editor.

GetFoldedLinesReckfell.Collections.Array<int>
# GetFoldedLines
C#
public Reckfell.Collections.Array<int> GetFoldedLines();

Returns a new Array<int> of visible folded-header indices in ascending order. Hidden nested headers are excluded. Mutating the array does not change folding; use FoldLine/UnfoldLine.

Returns Reckfell.Collections.Array<int>

Returns a new Array<int> of visible folded-header indices in ascending order. Hidden nested headers are excluded. Mutating the array does not change folding; use FoldLine/UnfoldLine.

GetIndentSizeint
# GetIndentSize
C#
public int GetIndentSize();

Positive indentation step width. The setter also sets inherited TabSize; space indentation uses this many spaces per step. Assignment does not convert existing text: use ConvertIndent.

Returns int

Positive indentation step width. The setter also sets inherited TabSize; space indentation uses this many spaces per step. Assignment does not convert existing text: use ConvertIndent.

GetLineLengthGuidelinesReckfell.Collections.Array<int>
# GetLineLengthGuidelines
C#
public Reckfell.Collections.Array<int> GetLineLengthGuidelines();

Columns for vertical line-length guides. Visual aids rather than an input limit or automatic wrapping. The array is shared; mutating a returned array does not itself request redraw: reassign the property or call QueueRedraw.

Returns Reckfell.Collections.Array<int>

Columns for vertical line-length guides. Visual aids rather than an input limit or automatic wrapping. The array is shared; mutating a returned array does not itself request redraw: reassign the property or call QueueRedraw.

GetLineNumbersMinDigitsint
# GetLineNumbersMinDigits
C#
public int GetLineNumbersMinDigits();

Minimum displayed line-number width in digits; use a nonnegative value. The field expands when the final line number needs more digits. Neither a maximum line count nor a change to API indexing.

Returns int

Minimum displayed line-number width in digits; use a nonnegative value. The field expands when the final line number needs more digits. Neither a maximum line count nor a change to API indexing.

GetStringDelimitersReckfell.Collections.Array<string>
# GetStringDelimiters
C#
public Reckfell.Collections.Array<string> GetStringDelimiters();

Replaces only the string rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddStringDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

Returns Reckfell.Collections.Array<string>

Replaces only the string rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddStringDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

GetTextForCodeCompletionstring
# GetTextForCodeCompletion
C#
public string GetTextForCodeCompletion();

Returns the entire text with a U+FFFF marker at caret 0. Context for the application’s analyzer rather than a completion result; Text is unchanged. Columns use Unicode code points. Do not save the service marker in a source file.

Returns string

Returns the entire text with a U+FFFF marker at caret 0. Context for the application’s analyzer rather than a completion result; Text is unchanged. Columns use Unicode code points. Do not save the service marker in a source file.

GetTextForSymbolLookupstring
# GetTextForSymbolLookup
C#
public string GetTextForSymbolLookup();

Returns the entire text with U+FFFF at the mouse position rather than the text caret. Returns an empty string when the mouse does not hit text. Provides symbol-resolution context; does not find a definition or open a file.

Returns string

Returns the entire text with U+FFFF at the mouse position rather than the text caret. Returns an empty string when the mouse does not hit text. Provides symbol-resolution context; does not find a definition or open a file.

GetTextWithCursorCharstring
# GetTextWithCursorChar
C#
public string GetTextWithCursorChar(int line, int column);

Returns the entire text with a service U+FFFF at the supplied position without changing Text or the caret. Supply an existing line and a Unicode code-point column from zero through line length. A context snapshot for an analyzer rather than a move or insertion command.

Parameters
NameTypeDefault
lineint—
columnint—
line

Zero-based logical line in the current document.

column

Zero-based column in Unicode code points.

Returns string

Returns the entire text with a service U+FFFF at the supplied position without changing Text or the caret. Supply an existing line and a Unicode code-point column from zero through line length. A context snapshot for an analyzer rather than a move or insertion command.

HasAutoBraceCompletionCloseKeybool
# HasAutoBraceCompletionCloseKey
C#
public bool HasAutoBraceCompletionCloseKey(string closeKey);

Tests whether at least one pair has this exact closing key. Does not check document brace balance.

Parameters
NameTypeDefault
closeKeystring—
closeKey

Exact closing key in pair settings.

Returns bool

Tests whether at least one pair has this exact closing key. Does not check document brace balance.

HasAutoBraceCompletionOpenKeybool
# HasAutoBraceCompletionOpenKey
C#
public bool HasAutoBraceCompletionOpenKey(string openKey);

Tests exact opening-key membership in pair settings rather than searching the document.

Parameters
NameTypeDefault
openKeystring—
openKey

Exact opening key in pair settings.

Returns bool

Tests exact opening-key membership in pair settings rather than searching the document.

HasCommentDelimiterbool
# HasCommentDelimiter
C#
public bool HasCommentDelimiter(string startKey);

Tests exact startKey membership among comment rules rather than searching document text.

Parameters
NameTypeDefault
startKeystring—
startKey

Exact nonempty opening symbol key.

Returns bool

Tests exact startKey membership among comment rules rather than searching document text.

HasStringDelimiterbool
# HasStringDelimiter
C#
public bool HasStringDelimiter(string startKey);

Tests exact startKey membership among string rules rather than searching document text.

Parameters
NameTypeDefault
startKeystring—
startKey

Exact nonempty opening symbol key.

Returns bool

Tests exact startKey membership among string rules rather than searching document text.

IndentLinesvoid
# IndentLines
C#
public void IndentLines();

Increases leading indentation of selection/caret lines. Skips completely empty lines; spaces align to the next step, tabs add one tab. Requires Editable and groups changes for Undo.

IsAutoBraceCompletionEnabledbool
# IsAutoBraceCompletionEnabled
C#
public bool IsAutoBraceCompletionEnabled();

Allows automatic closing-key insertion on user opening-key input and paired handling for Backspace/completion confirmation. Configure AutoBraceCompletionPairs. Does not append brackets for every programmatic Text assignment or InsertText call.

Returns bool

Allows automatic closing-key insertion on user opening-key input and paired handling for Backspace/completion confirmation. Configure AutoBraceCompletionPairs. Does not append brackets for every programmatic Text assignment or InsertText call.

IsAutoIndentEnabledbool
# IsAutoIndentEnabled
C#
public bool IsAutoIndentEnabled();

Allows automatic indentation on newline input using the current line and IndentAutomaticPrefixes. Does not format the entire document or use a compiler to repair C# structure.

Returns bool

Allows automatic indentation on newline input using the current line and IndentAutomaticPrefixes. Does not format the entire document or use a compiler to repair C# structure.

IsCodeCompletionEnabledbool
# IsCodeCompletionEnabled
C#
public bool IsCodeCompletionEnabled();

Enables built-in completion requests during input and through the query shortcut. Does not supply candidates: handle CodeCompletionRequested, add options and call UpdateCodeCompletionOptions. false does not prohibit direct RequestCodeCompletion calls or guarantee closing an active list; use CancelCodeCompletion to close it.

Returns bool

Enables built-in completion requests during input and through the query shortcut. Does not supply candidates: handle CodeCompletionRequested, add options and call UpdateCodeCompletionOptions. false does not prohibit direct RequestCodeCompletion calls or guarantee closing an active list; use CancelCodeCompletion to close it.

IsDrawLineNumbersEnabledbool
# IsDrawLineNumbersEnabled
C#
public bool IsDrawLineNumbersEnabled();

Shows logical line numbers starting at one. API indexing remains zero-based; wrapped parts do not become new logical lines. Does not change Text.

Returns bool

Shows logical line numbers starting at one. API indexing remains zero-based; wrapped parts do not become new logical lines. Does not change Text.

IsDrawingBookmarksGutterbool
# IsDrawingBookmarksGutter
C#
public bool IsDrawingBookmarksGutter();

Shows bookmarks in the shared main gutter. Does not create bookmarks or clear them when disabled.

Returns bool

Shows bookmarks in the shared main gutter. Does not create bookmarks or clear them when disabled.

IsDrawingBreakpointsGutterbool
# IsDrawingBreakpointsGutter
C#
public bool IsDrawingBreakpointsGutter();

Shows breakpoint markers in the shared main gutter and enables its clickability for these actions. Does not create breakpoints or connect a debugger. Hiding does not clear markers.

Returns bool

Shows breakpoint markers in the shared main gutter and enables its clickability for these actions. Does not create breakpoints or connect a debugger. Hiding does not clear markers.

IsDrawingExecutingLinesGutterbool
# IsDrawingExecutingLinesGutter
C#
public bool IsDrawingExecutingLinesGutter();

Shows execution markers in the shared main gutter. Does not automatically determine the executing line or clear flags when disabled.

Returns bool

Shows execution markers in the shared main gutter. Does not automatically determine the executing line or clear flags when disabled.

IsDrawingFoldGutterbool
# IsDrawingFoldGutter
C#
public bool IsDrawingFoldGutter();

Shows the folding-button gutter. Does not enable LineFolding or fold lines by itself. May change available text width.

Returns bool

Shows the folding-button gutter. Does not enable LineFolding or fold lines by itself. May change available text width.

IsHighlightMatchingBracesEnabledbool
# IsHighlightMatchingBracesEnabled
C#
public bool IsHighlightMatchingBracesEnabled();

Allows visual highlighting of matching braces. Independent of automatic insertion; does not edit Text or validate the whole program.

Returns bool

Allows visual highlighting of matching braces. Independent of automatic insertion; does not edit Text or validate the whole program.

IsInCommentint
# IsInComment
C#
public int IsInComment(int line, int column = -1);

Returns a matching rule index in the combined delimiter set, or -1. column -1 tests whole-line coverage excluding edge whitespace rather than the presence of any fragment. Supply a Unicode code-point column for a specific position. Not a bool; compare the result with -1.

Parameters
NameTypeDefault
lineint—
columnint-1
line

Zero-based existing logical line index.

column

Unicode code-point column; -1 in IsInString/IsInComment requests whole-line coverage.

Returns int

Returns a matching rule index in the combined delimiter set, or -1. column -1 tests whole-line coverage excluding edge whitespace rather than the presence of any fragment. Supply a Unicode code-point column for a specific position. Not a bool; compare the result with -1.

IsInStringint
# IsInString
C#
public int IsInString(int line, int column = -1);

Returns a matching rule index in the combined delimiter set, or -1. column -1 tests whole-line coverage excluding edge whitespace rather than the presence of any fragment. Supply a Unicode code-point column for a specific position. Not a bool; compare the result with -1.

Parameters
NameTypeDefault
lineint—
columnint-1
line

Zero-based existing logical line index.

column

Unicode code-point column; -1 in IsInString/IsInComment requests whole-line coverage.

Returns int

Returns a matching rule index in the combined delimiter set, or -1. column -1 tests whole-line coverage excluding edge whitespace rather than the presence of any fragment. Supply a Unicode code-point column for a specific position. Not a bool; compare the result with -1.

IsIndentUsingSpacesbool
# IsIndentUsingSpaces
C#
public bool IsIndentUsingSpaces();

Chooses spaces rather than tabs for new indentation. Does not replace existing characters or format the file; ConvertIndent separately converts leading indentation.

Returns bool

Chooses spaces rather than tabs for new indentation. Does not replace existing characters or format the file; ConvertIndent separately converts leading indentation.

IsLineBookmarkedbool
# IsLineBookmarked
C#
public bool IsLineBookmarked(int line);

Tests an existing line’s bookmark flag independently of gutter visibility.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

Returns bool

Tests an existing line’s bookmark flag independently of gutter visibility.

IsLineBreakpointedbool
# IsLineBreakpointed
C#
public bool IsLineBreakpointed(int line);

Tests an existing line’s breakpoint marker. Does not confirm debugger attachment or that execution can stop on that line.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

Returns bool

Tests an existing line’s breakpoint marker. Does not confirm debugger attachment or that execution can stop on that line.

IsLineCodeRegionEndbool
# IsLineCodeRegionEnd
C#
public bool IsLineCodeRegionEnd(int line);

Tests the configured region-end token after trimming edge whitespace; does not validate whole-document pairing or nesting.

Parameters
NameTypeDefault
lineint—
line

Zero-based existing logical line index.

Returns bool

Tests the configured region-end token after trimming edge whitespace; does not validate whole-document pairing or nesting.

IsLineCodeRegionStartbool
# IsLineCodeRegionStart
C#
public bool IsLineCodeRegionStart(int line);

Tests whether the edge-trimmed line begins with the configured region-start token. A line classified inside a string is excluded. Recognizing one marker does not guarantee a matching end.

Parameters
NameTypeDefault
lineint—
line

Zero-based existing logical line index.

Returns bool

Tests whether the edge-trimmed line begins with the configured region-start token. A line classified inside a string is excluded. Recognizing one marker does not guarantee a matching end.

IsLineExecutingbool
# IsLineExecuting
C#
public bool IsLineExecuting(int line);

Tests an existing line’s execution marker rather than querying the actual VM/debugger state.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

Returns bool

Tests an existing line’s execution marker rather than querying the actual VM/debugger state.

IsLineFoldedbool
# IsLineFolded
C#
public bool IsLineFolded(int line);

true for a visible header immediately followed by a hidden line. Returns false for a hidden body line: not a general line-visibility test.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

Returns bool

true for a visible header immediately followed by a hidden line. Returns false for a hidden body line: not a general line-visibility test.

IsLineFoldingEnabledbool
# IsLineFoldingEnabled
C#
public bool IsLineFoldingEnabled();

Allows logical-line folding. Defaults to false. Disabling reveals all lines; enabling does not fold anything by itself. GuttersDrawFoldGutter separately controls folding icons. Text remains in the document.

Returns bool

Allows logical-line folding. Defaults to false. Disabling reveals all lines; enabling does not fold anything by itself. GuttersDrawFoldGutter separately controls folding icons. Text remains in the document.

IsLineNumbersZeroPaddedbool
# IsLineNumbersZeroPadded
C#
public bool IsLineNumbersZeroPadded();

Pads displayed line numbers with leading zeroes instead of spaces to the current field width. GuttersLineNumbersMinDigits sets the minimum digit count; document text is unchanged.

Returns bool

Pads displayed line numbers with leading zeroes instead of spaces to the current field width. GuttersLineNumbersMinDigits sets the minimum digit count; document text is unchanged.

IsSymbolLookupOnClickEnabledbool
# IsSymbolLookupOnClickEnabled
C#
public bool IsSymbolLookupOnClickEnabled();

Enables lookup requests through a Ctrl/Cmd-modified click. The application validates the current word through SymbolValidate and SetSymbolLookupWordAsValid, then handles SymbolLookup. Does not provide a symbol index or perform navigation. The setter clears the previously validated word.

Returns bool

Enables lookup requests through a Ctrl/Cmd-modified click. The application validates the current word through SymbolValidate and SetSymbolLookupWordAsValid, then handles SymbolLookup. Does not provide a symbol index or perform navigation. The setter clears the previously validated word.

IsSymbolTooltipOnHoverEnabledbool
# IsSymbolTooltipOnHoverEnabled
C#
public bool IsSymbolTooltipOnHoverEnabled();

Allows a delayed SymbolHovered request when hovering over a word. Does not supply tooltip content; the application prepares it. false stops the pending timer rather than disabling your own symbol provider.

Returns bool

Allows a delayed SymbolHovered request when hovering over a word. Does not supply tooltip content; the application prepares it. false stops the pending timer rather than disabling your own symbol provider.

JoinLinesvoid
# JoinLines
C#
public void JoinLines(string lineEnding = " ");

Joins each affected line to its successor, removing edge whitespace at the join. Inserts lineEnding between nonempty parts; newlines in it are forbidden. Without selection, joins the caret line to the next; a range can include the successor of the last selected line. One Undo group; the direct method does not check Editable.

Parameters
NameTypeDefault
lineEndingstring" "
lineEnding

Separator between nonempty parts, a space by default; must contain no newline.

MoveLinesDownvoid
# MoveLinesDown
C#
public void MoveLinesDown();

Moves line ranges one line downward, adjusting carets/selections and unfolding blocks. A range at document end does not move. One Undo group; a direct call does not check Editable.

MoveLinesUpvoid
# MoveLinesUp
C#
public void MoveLinesUp();

Moves selection/caret line ranges one line upward, unfolding affected blocks. A range at document start stays in place. Grouped for Undo. A direct call does not check Editable; enforce it in your command handler.

RemoveCommentDelimitervoid
# RemoveCommentDelimiter
C#
public void RemoveCommentDelimiter(string startKey);

Removes a comment rule by exact startKey and updates recognition caches. Does not edit document text; remaining rule indices may change.

Parameters
NameTypeDefault
startKeystring—
startKey

Exact nonempty opening symbol key.

RemoveStringDelimitervoid
# RemoveStringDelimiter
C#
public void RemoveStringDelimiter(string startKey);

Removes a string rule by exact startKey and updates recognition caches. Does not edit document text; remaining rule indices may change.

Parameters
NameTypeDefault
startKeystring—
startKey

Exact nonempty opening symbol key.

RequestCodeCompletionvoid
# RequestCodeCompletion
C#
public void RequestCodeCompletion(bool force = false);

Requests candidates through CodeCompletionRequested for a suitable caret-0 context. force bypasses the ordinary context check but not the guard for an already active homogeneous FilePath/EntityPath/Signal list. Does not create candidates or insert text. Overriding _RequestCodeCompletion replaces the default request and event. A direct call does not test CodeCompletionEnabled.

Parameters
NameTypeDefault
forceboolfalse
force

Relax request/display context checks; does not guarantee candidates or a visible list.

SetAutoBraceCompletionEnabledvoid
# SetAutoBraceCompletionEnabled
C#
public void SetAutoBraceCompletionEnabled(bool enable);

Allows automatic closing-key insertion on user opening-key input and paired handling for Backspace/completion confirmation. Configure AutoBraceCompletionPairs. Does not append brackets for every programmatic Text assignment or InsertText call.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described setting; existing text is not automatically converted.

SetAutoBraceCompletionPairsvoid
# SetAutoBraceCompletionPairs
C#
public void SetAutoBraceCompletionPairs(Reckfell.Collections.Dictionary pairs);

Maps opening keys to closing keys; both are nonempty strings of symbol/punctuation characters. The setter replaces the set; the getter creates a new Dictionary whose mutation does not change rules. Use AddAutoBraceCompletionPair to add one pair. Does not automatically configure string/comment delimiters.

Parameters
NameTypeDefault
pairsReckfell.Collections.Dictionary—
pairs

Dictionary mapping a nonempty opening key to a nonempty closing key.

SetAutoIndentEnabledvoid
# SetAutoIndentEnabled
C#
public void SetAutoIndentEnabled(bool enable);

Allows automatic indentation on newline input using the current line and IndentAutomaticPrefixes. Does not format the entire document or use a compiler to repair C# structure.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described setting; existing text is not automatically converted.

SetAutoIndentPrefixesvoid
# SetAutoIndentPrefixes
C#
public void SetAutoIndentPrefixes(Reckfell.Collections.Array<string> prefixes);

Characters triggering an additional automatic indentation level. Supply nonempty single-character strings: only each first code point is stored. Assignment replaces the set; the getter returns a new array whose mutation does not change settings.

Parameters
NameTypeDefault
prefixesReckfell.Collections.Array<string>—
prefixes

Nonempty single-character strings; only the first code point is used.

SetCodeCompletionEnabledvoid
# SetCodeCompletionEnabled
C#
public void SetCodeCompletionEnabled(bool enable);

Enables built-in completion requests during input and through the query shortcut. Does not supply candidates: handle CodeCompletionRequested, add options and call UpdateCodeCompletionOptions. false does not prohibit direct RequestCodeCompletion calls or guarantee closing an active list; use CancelCodeCompletion to close it.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described interaction path; the application supplies the data source.

SetCodeCompletionPrefixesvoid
# SetCodeCompletionPrefixes
C#
public void SetCodeCompletionPrefixes(Reckfell.Collections.Array<string> prefixes);

Characters allowing completion requests after them, such as a dot. The setter takes only the first code point of each nonempty string, deduplicates and replaces the set. Supply single-character strings. The getter returns a new array; mutating it does not change settings. Result order does not define candidate priority.

Parameters
NameTypeDefault
prefixesReckfell.Collections.Array<string>—
prefixes

Nonempty single-character strings; only the first code point of each is stored.

SetCodeCompletionSelectedIndexvoid
# SetCodeCompletionSelectedIndex
C#
public void SetCodeCompletionSelectedIndex(int index);

Selects a valid index in the active filtered list. Does nothing when inactive; -1 is not a close command. Does not insert text: call ConfirmCodeCompletion to confirm.

Parameters
NameTypeDefault
indexint—
index

Zero-based index in the current active filtered list.

SetCodeHintvoid
# SetCodeHint
C#
public void SetCodeHint(string codeHint);

Sets a separate text hint, such as a function signature; an empty string hides it. Does not add a completion option or analyze a function. A pair of U+FFFF markers in a line highlights the span between them; markers are not drawn. Document text is unchanged.

Parameters
NameTypeDefault
codeHintstring—
codeHint

Hint text; an empty string hides it.

SetCodeHintDrawBelowvoid
# SetCodeHintDrawBelow
C#
public void SetCodeHintDrawBelow(bool drawBelow);

Positions the SetCodeHint hint below the current line rather than above. Does not itself set hint text or open completion options.

Parameters
NameTypeDefault
drawBelowbool—
drawBelow

true below the current line; false above.

SetCodeRegionTagsvoid
# SetCodeRegionTags
C#
public void SetCodeRegionTags(string start = "region", string end = "endregion");

Sets distinct nonempty region start/end tag names, such as region/endregion. Actual markers concatenate a single-line comment prefix and the tag without adding a space. Configure such a comment first through AddCommentDelimiter with an empty end. Does not rewrite existing document markers.

Parameters
NameTypeDefault
startstring"region"
endstring"endregion"
start

Nonempty start tag without the comment prefix; must differ from end.

end

Nonempty end tag without the comment prefix.

SetCommentDelimitersvoid
# SetCommentDelimiters
C#
public void SetCommentDelimiters(Reckfell.Collections.Array<string> commentDelimiters);

Replaces only the comment rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddCommentDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

Parameters
NameTypeDefault
commentDelimitersReckfell.Collections.Array<string>—
commentDelimiters

“start end” or “start” entries replacing comment rules.

SetDrawBookmarksGuttervoid
# SetDrawBookmarksGutter
C#
public void SetDrawBookmarksGutter(bool enable);

Shows bookmarks in the shared main gutter. Does not create bookmarks or clear them when disabled.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetDrawBreakpointsGuttervoid
# SetDrawBreakpointsGutter
C#
public void SetDrawBreakpointsGutter(bool enable);

Shows breakpoint markers in the shared main gutter and enables its clickability for these actions. Does not create breakpoints or connect a debugger. Hiding does not clear markers.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetDrawExecutingLinesGuttervoid
# SetDrawExecutingLinesGutter
C#
public void SetDrawExecutingLinesGutter(bool enable);

Shows execution markers in the shared main gutter. Does not automatically determine the executing line or clear flags when disabled.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetDrawFoldGuttervoid
# SetDrawFoldGutter
C#
public void SetDrawFoldGutter(bool enable);

Shows the folding-button gutter. Does not enable LineFolding or fold lines by itself. May change available text width.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetDrawLineNumbersvoid
# SetDrawLineNumbers
C#
public void SetDrawLineNumbers(bool enable);

Shows logical line numbers starting at one. API indexing remains zero-based; wrapped parts do not become new logical lines. Does not change Text.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetHighlightMatchingBracesEnabledvoid
# SetHighlightMatchingBracesEnabled
C#
public void SetHighlightMatchingBracesEnabled(bool enable);

Allows visual highlighting of matching braces. Independent of automatic insertion; does not edit Text or validate the whole program.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described setting; existing text is not automatically converted.

SetIndentSizevoid
# SetIndentSize
C#
public void SetIndentSize(int size);

Positive indentation step width. The setter also sets inherited TabSize; space indentation uses this many spaces per step. Assignment does not convert existing text: use ConvertIndent.

Parameters
NameTypeDefault
sizeint—
size

Positive indentation step width; also sets TabSize.

SetIndentUsingSpacesvoid
# SetIndentUsingSpaces
C#
public void SetIndentUsingSpaces(bool useSpaces);

Chooses spaces rather than tabs for new indentation. Does not replace existing characters or format the file; ConvertIndent separately converts leading indentation.

Parameters
NameTypeDefault
useSpacesbool—
useSpaces

Use spaces rather than tabs for new indentation.

SetLineAsBookmarkedvoid
# SetLineAsBookmarked
C#
public void SetLineAsBookmarked(int line, bool bookmarked);

Sets or clears a line bookmark while retaining breakpoint and execution markers. Does not move the caret, edit text or create a bookmark file. GuttersDrawBookmarks separately enables its icon.

Parameters
NameTypeDefault
lineint—
bookmarkedbool—
line

Existing logical line index from 0 through GetLineCount() - 1.

bookmarked

Set the bookmark; false clears it.

SetLineAsBreakpointvoid
# SetLineAsBreakpoint
C#
public void SetLineAsBreakpoint(int line, bool breakpointed);

Sets or clears a line’s breakpoint marker. Every call emits BreakpointToggled, even when the state is unchanged. For idempotent synchronization, compare IsLineBreakpointed first. This is UI state; configure actual program suspension through your debugger.

Parameters
NameTypeDefault
lineint—
breakpointedbool—
line

Existing logical line index from 0 through GetLineCount() - 1.

breakpointed

Set the marker; false clears it.

SetLineAsExecutingvoid
# SetLineAsExecuting
C#
public void SetLineAsExecuting(int line, bool executing);

Sets or clears a visual execution marker. Multiple lines may be marked; does not run, suspend or step code. The application manages state and clearing. GuttersDrawExecutingLines separately enables the icon.

Parameters
NameTypeDefault
lineint—
executingbool—
line

Existing logical line index from 0 through GetLineCount() - 1.

executing

Set the execution marker; false clears it.

SetLineFoldingEnabledvoid
# SetLineFoldingEnabled
C#
public void SetLineFoldingEnabled(bool enabled);

Allows logical-line folding. Defaults to false. Disabling reveals all lines; enabling does not fold anything by itself. GuttersDrawFoldGutter separately controls folding icons. Text remains in the document.

Parameters
NameTypeDefault
enabledbool—
enabled

Enable the described display or folding setting.

SetLineLengthGuidelinesvoid
# SetLineLengthGuidelines
C#
public void SetLineLengthGuidelines(Reckfell.Collections.Array<int> guidelineColumns);

Columns for vertical line-length guides. Visual aids rather than an input limit or automatic wrapping. The array is shared; mutating a returned array does not itself request redraw: reassign the property or call QueueRedraw.

Parameters
NameTypeDefault
guidelineColumnsReckfell.Collections.Array<int>—
guidelineColumns

Array of visual guide columns; retained by shared reference.

SetLineNumbersMinDigitsvoid
# SetLineNumbersMinDigits
C#
public void SetLineNumbersMinDigits(int count);

Minimum displayed line-number width in digits; use a nonnegative value. The field expands when the final line number needs more digits. Neither a maximum line count nor a change to API indexing.

Parameters
NameTypeDefault
countint—
count

Nonnegative minimum line-number width in digits.

SetLineNumbersZeroPaddedvoid
# SetLineNumbersZeroPadded
C#
public void SetLineNumbersZeroPadded(bool enable);

Pads displayed line numbers with leading zeroes instead of spaces to the current field width. GuttersLineNumbersMinDigits sets the minimum digit count; document text is unchanged.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described display or folding setting.

SetStringDelimitersvoid
# SetStringDelimiters
C#
public void SetStringDelimiters(Reckfell.Collections.Array<string> stringDelimiters);

Replaces only the string rules using strings formatted as “start end”, or “start” for an empty end. The getter returns a new array. Serialization does not preserve lineOnly with a nonempty closing key: use AddStringDelimiter explicitly for such a rule rather than round-tripping the array. Does not configure syntax colors.

Parameters
NameTypeDefault
stringDelimitersReckfell.Collections.Array<string>—
stringDelimiters

“start end” or “start” entries replacing string rules.

SetSymbolLookupOnClickEnabledvoid
# SetSymbolLookupOnClickEnabled
C#
public void SetSymbolLookupOnClickEnabled(bool enable);

Enables lookup requests through a Ctrl/Cmd-modified click. The application validates the current word through SymbolValidate and SetSymbolLookupWordAsValid, then handles SymbolLookup. Does not provide a symbol index or perform navigation. The setter clears the previously validated word.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described interaction path; the application supplies the data source.

SetSymbolLookupWordAsValidvoid
# SetSymbolLookupWordAsValid
C#
public void SetSymbolLookupWordAsValid(bool valid);

Accepts or rejects the current pending SymbolValidate word and consumes that pending state. true enables its lookup highlighting/navigation; false clears it. Supplies neither a symbol name nor a definition address: respond to the current request, preferably in its handler.

Parameters
NameTypeDefault
validbool—
valid

Accept the current pending word; false rejects it.

SetSymbolTooltipOnHoverEnabledvoid
# SetSymbolTooltipOnHoverEnabled
C#
public void SetSymbolTooltipOnHoverEnabled(bool enable);

Allows a delayed SymbolHovered request when hovering over a word. Does not supply tooltip content; the application prepares it. false stops the pending timer rather than disabling your own symbol provider.

Parameters
NameTypeDefault
enablebool—
enable

Enable the described interaction path; the application supplies the data source.

ToggleFoldableLinevoid
# ToggleFoldableLine
C#
public void ToggleFoldableLine(int line);

Unfolds a folded header or attempts to fold an eligible line. For a hidden body line this is not equivalent to UnfoldLine: call UnfoldLine explicitly. Does not edit text.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

ToggleFoldableLinesAtCaretsvoid
# ToggleFoldableLinesAtCarets
C#
public void ToggleFoldableLinesAtCarets();

Toggles folding at caret lines in document order. Multiple carets on one header toggle it once. Folding may merge carets or exclude affected carets from further processing.

UnfoldAllLinesvoid
# UnfoldAllLines
C#
public void UnfoldAllLines();

Reveals all hidden blocks while retaining text and the LineFolding setting. Does not restore caret positions previously moved by folding.

UnfoldLinevoid
# UnfoldLine
C#
public void UnfoldLine(int line);

Reveals the contiguous hidden block after the supplied header; a hidden body line may be supplied to locate its header. Nested folds in the revealed area are also cleared: prior nested-fold state is not preserved. Text is unchanged.

Parameters
NameTypeDefault
lineint—
line

Existing logical line index from 0 through GetLineCount() - 1.

UnindentLinesvoid
# UnindentLines
C#
public void UnindentLines();

Reduces indentation of selection/caret lines by removing a leading tab or spaces back to the previous step. Requires Editable; groups edits for Undo. Does not remove arbitrary spaces inside code.

UpdateCodeCompletionOptionsvoid
# UpdateCodeCompletionOptions
C#
public void UpdateCodeCompletionOptions(bool force);

Replaces the source candidate set with the staged AddCodeCompletionOption queue, clears that queue and filters for the current caret-0 context. Calling again without new candidates submits an empty batch. force relaxes some automatic-display conditions but does not guarantee a visible list with unsuitable context or no matches. Use _FilterCodeCompletionCandidates for a custom filter.

Parameters
NameTypeDefault
forcebool—
force

Relax request/display context checks; does not guarantee candidates or a visible list.

_ConfirmCodeCompletionvoid
# _ConfirmCodeCompletion
C#
public virtual void _ConfirmCodeCompletion(bool replace);

Overrides selected-option insertion after Editable and active-list checks. Obtain the selected record, perform edits and required Undo grouping, then call CancelCodeCompletion as appropriate. Default insertion and closing do not continue automatically. The base C# method is empty; calling ConfirmCodeCompletion from the handler recurses.

Parameters
NameTypeDefault
replacebool—
replace

Replace the remainder of the current section to the right; false attempts to merge matching text.

_FilterCodeCompletionCandidatesReckfell.Collections.Array<Reckfell.Collections.Dictionary>
# _FilterCodeCompletionCandidates
C#
public virtual Reckfell.Collections.Array<Reckfell.Collections.Dictionary> _FilterCodeCompletionCandidates(Reckfell.Collections.Array<Reckfell.Collections.Dictionary> candidates);

Replaces built-in filtering and ranking: return records with the complete GetCodeCompletionOption key set in the required order. An empty result closes the list. The base C# method does not run the default filter. This path resets the completion base: do not assume default confirmation removes a typed prefix as the built-in filter does; use _ConfirmCodeCompletion for custom insertion semantics.

Parameters
NameTypeDefault
candidatesReckfell.Collections.Array<Reckfell.Collections.Dictionary>—
candidates

Records containing kind, display_text, insert_text, font_color, icon, location, default_value.

Returns Reckfell.Collections.Array<Reckfell.Collections.Dictionary>

Replaces built-in filtering and ranking: return records with the complete GetCodeCompletionOption key set in the required order. An empty result closes the list. The base C# method does not run the default filter. This path resets the completion base: do not assume default confirmation removes a typed prefix as the built-in filter does; use _ConfirmCodeCompletion for custom insertion semantics.

_RequestCodeCompletionvoid
# _RequestCodeCompletion
C#
public virtual void _RequestCodeCompletion(bool force);

An override completely replaces default RequestCodeCompletion, including CodeCompletionRequested. Prepare candidates and call UpdateCodeCompletionOptions yourself, or issue your own provider request. The base C# method is empty. Do not call RequestCodeCompletion from the handler to continue: it recurses.

Parameters
NameTypeDefault
forcebool—
force

Relax request/display context checks; does not guarantee candidates or a visible list.

Signals and events5

BreakpointToggledEvent
# BreakpointToggled
C#
public event CodeEdit.BreakpointToggledEventHandler BreakpointToggled;

Notifies which line’s breakpoint state should be reread with IsLineBreakpointed. A programmatic setter emits it even without a value change. Moving a breakpoint after a text edit can notify both old and new indices; do not treat the event as an unconditional bool toggle. Validate the current line range first: an old index may no longer exist.

Handler parameters
NameTypeDefault
linelong—
line

Logical line index from 0 through GetLineCount() - 1. An event may report an obsolete index: validate bounds first.

CodeCompletionRequestedEvent
# CodeCompletionRequested
C#
public event Action CodeCompletionRequested;

Asks the application to prepare candidates for the current context. Obtain GetTextForCodeCompletion, add options with AddCodeCompletionOption, then call UpdateCodeCompletionOptions once. Each submitted batch replaces the previous one rather than extending it. For an asynchronous response, verify that text and caret context still match: the request has no built-in ID.

SymbolHoveredEvent
# SymbolHovered
C#
public event CodeEdit.SymbolHoveredEventHandler SymbolHovered;

Delayed-hover event with a symbol and its line/column in the current document. Emitted under suitable pointer/input conditions; the application supplies and displays tooltip content. Does not automatically provide a symbol type or documentation.

Handler parameters
NameTypeDefault
symbolstring—
linelong—
columnlong—
symbol

Candidate symbol text in the current document.

line

Zero-based logical line in the current document.

column

Zero-based column in Unicode code points.

SymbolLookupEvent
# SymbolLookup
C#
public event CodeEdit.SymbolLookupEventHandler SymbolLookup;

Asks the application to navigate to a validated symbol’s definition. symbol, line and column describe the clicked location in the current document rather than a definition address. The application resolves the target and opens the file/position.

Handler parameters
NameTypeDefault
symbolstring—
linelong—
columnlong—
symbol

Candidate symbol text in the current document.

line

Zero-based logical line in the current document.

column

Zero-based column in Unicode code points.

SymbolValidateEvent
# SymbolValidate
C#
public event CodeEdit.SymbolValidateEventHandler SymbolValidate;

Asks whether the current word supports navigation. Resolve it with your own system and respond with SetSymbolLookupWordAsValid. Validates a navigation candidate rather than reporting compiler diagnostics. The pending word changes with pointer movement: do not apply a delayed response without checking freshness.

Handler parameters
NameTypeDefault
symbolstring—
symbol

Candidate symbol text in the current document.

CodeEdit.CodeCompletionKind

ValueDescription
Class = 0

Marks the option as a class.

Constant = 6

Marks the option as a constant.

EntityPath = 7

Marks the option as a Reckfell node path.

Enum = 5

Marks the option as an enum entry.

FilePath = 8

Marks the option as a file path.

Function = 1

Marks the option as a function.

Keyword = 10

Marks the option as a keyword.

Member = 4

Marks the option as a member.

PlainText = 9

Marks the option as unclassified or plain text.

Signal = 2

Marks the option as a Reckfell signal.

Variable = 3

Marks the option as a variable.

CodeEdit.CodeCompletionLocation

ValueDescription
Local = 0

The option is local to the location of the code completion query - e.g. a local variable. Subsequent value of location represent options from the outer class, the exact value represent how far they are (in terms of inner classes).

Other = 1024

The option is from other engine code, not covered by the other enum constants - e.g. built-in classes.

OtherUserCode = 512

The option is from user code which is not local and not in a derived class (e.g. Autoload Singletons).

ParentMask = 256

The option is from the containing class or a parent class, relative to the location of the code completion query. Perform a bitwise OR with the class depth (e.g. 0 for the local class, 1 for the parent, 2 for the grandparent, etc.) to store the depth of an option in the class or a parent class.

Theme properties

These are Theme resource keys, not C# properties. Use the matching Control GetTheme…() and AddTheme…Override() methods for each value type.

Key and typeDescription
bookmark_color
Color

Color of the bookmark icon for bookmarked lines.

Default: Color(0.5, 0.64, 1, 0.8)
brace_mismatch_color
Color

Color of the text to highlight mismatched braces.

Default: Color(1, 0.2, 0.2, 1)
breakpoint_color
Color

Color of the breakpoint icon for bookmarked lines.

Default: Color(0.9, 0.29, 0.3, 1)
code_folding_color
Color

Color for all icons related to line folding.

Default: Color(0.8, 0.8, 0.8, 0.8)
completion_background_color
Color

Sets the background Color for the code completion popup.

Default: Color(0.17, 0.16, 0.2, 1)
completion_existing_color
Color

Background highlight Color for matching text in code completion options.

Default: Color(0.87, 0.87, 0.87, 0.13)
completion_scroll_color
Color

Color of the scrollbar in the code completion popup.

Default: Color(1, 1, 1, 0.29)
completion_scroll_hovered_color
Color

Color of the scrollbar in the code completion popup when hovered.

Default: Color(1, 1, 1, 0.4)
completion_selected_color
Color

Background highlight Color for the current selected option item in the code completion popup.

Default: Color(0.26, 0.26, 0.27, 1)
executing_line_color
Color

Color of the executing icon for executing lines.

Default: Color(0.98, 0.89, 0.27, 1)
folded_code_region_color
Color

Color of background line highlight for folded code region.

Default: Color(0.68, 0.46, 0.77, 0.2)
line_length_guideline_color
Color

Color of the main line length guideline, secondary guidelines will have 50% alpha applied.

Default: Color(0.3, 0.5, 0.8, 0.1)
line_number_color
Color

Sets the Color of line numbers.

Default: Color(0.67, 0.67, 0.67, 0.4)
completion_lines
int

Max number of options to display in the code completion popup at any one time.

Default: 7
completion_max_width
int

Max width of options in the code completion popup. Options longer than this will be cut off.

Default: 50
completion_scroll_width
int

Width of the scrollbar in the code completion popup.

Default: 6
bookmark
Texture2D

Sets a custom Texture2D to draw in the bookmark gutter for bookmarked lines.

breakpoint
Texture2D

Sets a custom Texture2D to draw in the breakpoint gutter for breakpointed lines.

can_fold
Texture2D

Sets a custom Texture2D to draw in the line folding gutter when a line can be folded.

can_fold_code_region
Texture2D

Sets a custom Texture2D to draw in the line folding gutter when a code region can be folded.

completion_color_bg
Texture2D

Background panel for the color preview box in autocompletion (visible when the color is translucent).

executing_line
Texture2D

Icon to draw in the executing gutter for executing lines.

folded
Texture2D

Sets a custom Texture2D to draw in the line folding gutter when a line is folded and can be unfolded.

folded_code_region
Texture2D

Sets a custom Texture2D to draw in the line folding gutter when a code region is folded and can be unfolded.

folded_eol_icon
Texture2D

Sets a custom Texture2D to draw at the end of a folded line.

completion
StyleBox

StyleBox for the code completion popup.

Reckfell Engine documentationBack to top ↑
QUICK LINKSGetting startedEntity hierarchyC# & .NET 10Scenes and prefabs
Reckfell guides and full API K
reckfellENGINE
RECKFELL ACCOUNT

Sign in

Sign in to your Reckfell account.

One account for the entire Reckfell platform.