This component was started from the EGUIEditBox, and we added further functionnalities as:
- Linecount with a visibility toggle button GUI
- Custom coding terms (language specific terms, and the application terms)
- Scrolling and caret move as in a real editor (the code that we had, have the caret (cursor) always at the bottom when editing. We improved that by allowing the "caret" to move and scroll only when reaching the top or the bottom of the page.
- A vertical scroller, horizontal scrolling still need you to use the caret (cursor)
Here is a screenshot: (From IRB)

Current limitations:
- the TAB key is not implemented (you need the last SVN, as this is been fixed by Cutealien) to use it properly. Right now it change only the focus
- The component is NOT a code patch. And it's needing a device pointer input (need to create timers for the text cursor (caret))
- This code is not as clean as the IRRlicht code. It's directly taken from our last build of IRB (updated with the help of Lonesome Ducky).
- Only tested on IRRlicht 1.7.2.
EDIT: Updated the code (26/08/2011)
The current example show most of the types of highlighting works as in theses 2 pics:
The main menu displayed here is separate from the interface, but we can do copy/paste/undo operations since you implemented the commands. I show in the example code how to access them from outside the GUI component. We can switch "live" the interface language from english to french. (Would be really easy to add other languages (lating based))
This screen show the example with the english interface and give examples of highlighting:

This screen show the example with the french interface, notice that we can also change the submenu language of the editor

The code was proposed to be included in IrrExt (26/08/2011) (EDIT)-Is now part of IrrExt
The archive will be hosted from my web site for a while.
http://www.clavet.org/files/download/code_editor.zip 3.39Mb


