NZ Text Editor

Extended Scintilla api is a copy of wxScintilla/wxStyledTextCtrl api to a simple wrapper class. The class simply takes a pointer to your instance of Scintilla. The string datatype is handled by a macro so the api will use whatever string type you set. A couple of callback functions must be set. One handles converting your string to the type Scintilla expects, the other changes Scintilla's string type to yours before returning it. This way the api can be used as if it natively supported your string type. If you use Scintilla style strings anyway use a build macro to turn off the callbacks and they will be passed verbatim to and from Scintilla.

All of wxScintilla api is copied as is except there are a few functions with differing names between wxScintilla and wxStyledTextCtrl, those functions are both defined and do exactly the same thing. The class does not own your Scintilla and does not store any variables except for the pointer to Scintilla. The idea is that one could switch ExtScintilla with wxScintilla and have no issues.

Also some names are different from Scintilla.iface, those will be defined too, mostly back vs background kinda thing. It may seem like this is a waste of time but once the iface generetion script is built the whole process is rather fast. It also fits some of the project goals where wxScintilla will eventually be dropped by the editor and a different Sci-Platform used.