Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/LaKraven/TBCEditor

An editor control for RAD Studio
https://github.com/LaKraven/TBCEditor

Last synced: about 1 month ago
JSON representation

An editor control for RAD Studio

Lists

README

        

![image](https://cloud.githubusercontent.com/assets/11475177/13923967/396856d2-ef8b-11e5-89f9-1b79c4ea9fdd.png)

Version 1.5.2. Use the Issues page to report bugs or send them directly to [email protected].

Note! Current trunk should never be considered as a stable version. Use the latest release version instead.

Description

A syntax highlighting edit control for RAD Studio (Delphi/C++ Builder) with code folding, completion proposal, matching pair, minimap, sync edit, word wrap, etc. External highlighter and color scheme files are in JSON format which can be also loaded from a stream.

Build requirements

* Json Data Objects (included)
* Delphi versions XE4, XE5, XE6, XE7, XE8, and Seattle are supported
* Delphi XE7: Update 1 required
* C++ Builder versions XE7, XE8, and Seattle are supported

Note! Do not offer me older versions to support. I don't have time to keep up with those.

Conditional compilation

Define | Description
--- | ---
USE_ALPHASKINS | Use AlphaSkins. AlphaSkins are most powerful theming solutions for apps developed in Delphi.
USE_VCL_STYLES | Use VCL styles. A set of graphical details that define the look and feel of a VCL application.

Usage example

```objectpascal
with Editor do
begin
Highlighter.LoadFromFile('JSON.json');
Highlighter.Colors.LoadFromFile('Default.json');
LoadFromFile(GetHighlighterFileName('JSON.json'));
...
Lines.Text := Highlighter.Info.General.Sample;
end;
```
Note! LoadFromStream does not support multi-highlighters (for example HTML with Scripts.json). Override TBCBaseEditor.CreateFileStream function, if you want to load multi-highlighters from a stream.

Demo

TBCEditor Control Demo v. 1.5.2.

* 32-bit Windows
* 64-bit Windows

The latest update: 21.03.2016 17:33, UTC+02:00

Demo source build requires AlphaSkins and EhLib.

Documentation

Documentation will be written after the project stabilizes and dust settles. This project is developed in my spare time without sources of income and as long as this is the case there is no timetable for anything.

Projects using the control

* EditBone
* MiTeC Interbase Query
* MiTeC SQLite Query

Screenshots

![bceditor1](https://cloud.githubusercontent.com/assets/11475177/11452990/a3774372-9602-11e5-8a0b-7ad2b568e4b2.png)
![bceditor0](https://cloud.githubusercontent.com/assets/11475177/11832901/3ac6cfc4-a3c6-11e5-984e-2e174beacd74.png)
![bceditor2](https://cloud.githubusercontent.com/assets/11475177/11452991/a3785e88-9602-11e5-801c-d8e9a7b8ab64.png)
![bceditor3](https://cloud.githubusercontent.com/assets/11475177/11452992/a37b154c-9602-11e5-882c-5a73809be517.png)
![bceditor4](https://cloud.githubusercontent.com/assets/11475177/11452987/a36de61a-9602-11e5-80e9-abd797af7a71.png)
![bceditor5](https://cloud.githubusercontent.com/assets/11475177/11452988/a3716a2e-9602-11e5-994b-0934bb8e5a76.png)
![bceditor6](https://cloud.githubusercontent.com/assets/11475177/11452989/a375d938-9602-11e5-8cbf-103f6a44db13.png)
![bceditor7](https://cloud.githubusercontent.com/assets/11475177/12049668/bb345a32-aef2-11e5-8a4e-715c26d154f6.png)