Difference between revisions of "ATSynEdit EControl adapter"

From Lazarus wiki
Jump to navigationJump to search
Line 26: Line 26:
  
 
=Properties=
 
=Properties=
 +
 +
* property Lexer: TecSyntAnalyzer. You must set this prop from SyntaxManager object. SyntaxManager is a collection of lexers, which is loaded from .lxl file. After you load SyntaxManager, get its any item and assign it to Lexer prop. Example exists in demo of ATSynEdit.
 +
 +
* property DynamicHiliteEnabled: boolean. This enables dynamic syntax highlight, ie highlight of tokens depending on caret position.
  
 
=Syntax tree=
 
=Syntax tree=

Revision as of 22:51, 11 September 2015

Intro

ATSynEdit has adapter for lexers from SynWrite editor. It's EControl lexer engine. Use these:

  • units from https://github.com/Alexey-T/EControl
  • unit from ATSynEdit: ATSynEdit_Adapter_EControl which contains class TATAdapterEControl. You must create object of this class and assign this object to editor property AdapterHilite.

For ex, if you have editor object:

  //form's OnCreate
  Adapter:= TATAdapterEControl.Create(Self);
  Edit1.AdapterHilite:= Adapter;

For ex, if you have 2 editor objects with the same text-source (see help topic ATSynEdit):

  Adapter:= TATAdapterEControl.Create(Self);
  Adapter.AddEditor(Ed1);
  Adapter.AddEditor(Ed2);
  Ed1.AdapterHilite:= Adapter;
  Ed2.AdapterHilite:= Adapter;

Properties

  • property Lexer: TecSyntAnalyzer. You must set this prop from SyntaxManager object. SyntaxManager is a collection of lexers, which is loaded from .lxl file. After you load SyntaxManager, get its any item and assign it to Lexer prop. Example exists in demo of ATSynEdit.
  • property DynamicHiliteEnabled: boolean. This enables dynamic syntax highlight, ie highlight of tokens depending on caret position.

Syntax tree