Skip to content

CodeEditor

Rich code editor widget supporting syntax highlighting, diagnostics, line numbers, and autocompletion.

Overview

CodeEditor extends TextArea to provide a full-featured code editor. It integrates syntax tokenization via CodeTokenizer, static analysis diagnostics via CodeValidator, and intelligent code completion via CompletionProvider.

Basic CodeEditor Setup

CodeEditor editor = new CodeEditor()
        .languagePreset(CodeLanguagePreset.XML)
        .showLineNumbers(true)
        .text("<Widget type=\"Button\"/>");

API

CodeEditor::completionProvider(CompletionProvider)

Set Completion Provider

Sets code autocompletion provider.

Parameter Type Description
completionProvider CompletionProvider —

Returns CodeEditor.

CodeEditor::dirty()

Is Dirty

Returns true if editor text has unsaved changes.

Returns boolean.

CodeEditor::languagePreset(CodeLanguagePreset)

Set Language Preset

Applies tokenizer and validator configurations from language preset.

Parameter Type Description
languagePreset CodeLanguagePreset —

Returns CodeEditor.

CodeEditor::lineNumbersVisible(boolean)

Show Line Numbers

Toggles display of gutter line numbers.

Parameter Type Description
lineNumbersVisible boolean —

Returns CodeEditor.

CodeEditor::markClean()

Mark Clean

Resets dirty state marker after saving text.

Returns CodeEditor.

CodeEditor::tokenizer(CodeTokenizer)

Set Tokenizer

Sets custom syntax tokenizer.

Parameter Type Description
tokenizer CodeTokenizer —

Returns CodeEditor.

CodeEditor::validator(CodeValidator)

Set Validator

Sets code diagnostic validator.

Parameter Type Description
validator CodeValidator —

Returns CodeEditor.