Нет, нет.
Методы жизненного цикла, связанные с компонентом, который имеет состояние, должны работать независимо от того, где они находятся в иерархии компонентов.
Сначала вам следует подумать об использовании обычного синтаксического анализатора для создания AST (абстрактного синтаксического дерева) из источников. Есть некоторые инструменты, сначала я обнаружил, что поиск в Интернете был javaparser . Похоже, этот синтаксический анализатор также записывает номера строк и столбцы, поэтому AST из javaparser может быть хорошей моделью для редактора.
Просто обработайте дерево, определите цвета для типов узлов AST и распечатайте его.
А как насчет RSyntaxTextArea ? Он использует модифицированную лицензию BSD .
Something like JSyntaxPane
, perhaps?
A very simple to use and extend JEditorKit that supports few languages. The main goal is to make it easy to have nice looking Java Swing Editors with support for Syntax Highlighting.
Might want to look at an existing editor (Notepad++ for example - http://notepad-plus.sourceforge.net/uk/site.htm) and see how user-defined syntax highlighting is done (oneo of the plugins to check - Gmod 10 Lua Syntax Highlighter). I'd wager that the Java (and other languages) are done similarly...
Вам следует проверить prettify.js Google. Здесь есть несколько довольно изящных уловок, и вы можете получить более надежное представление о подсветке синтаксиса.
http://www.neathighlighter.com/ - хороший маркер JavaScript