JTextPane Änderungsverfolgung

Currus

Grünschnabel
Hallo!

Seit Tagen lese ich die API-Docs hoch und runter, um folgendes Problem zu lösen.
Ich möchte einen Texteditor erstellen, in den normaler Text eingegeben werden kann. Ab einer beliebigen Stelle soll anstelle dieser normalen Bearbeitung eine Art "Änderungsverfolgung" treten. D.h. wenn Zeichen eingefügt werden, sollen diese zum Beispiel anders farbig dargestellt werden. Oder wenn Text gelöscht wird, soll dieser nicht wirklich aus dem Dokument verschwinden, sondern durchgestrichen dargestellt werden.
Mein Ansatz bis jetzt war folgender. Ich habe eine eigene DefaultStyledDocument- Klasse erstellt und fange das Einfügen und das Löschen ab. Klappt recht gut. Intern würde ich in einer XML- Struktur die entsprechenden Informationen über Änderungen speichern. Nun stoße ich an folgendes Problem. Über welche Funktion liesst die JTextPane- Komponente den Inhalt des Dokuments aus? Diese Funktion müsste ich ja überschreiben, damit ich aus meiner internen "Änderungsstruktur" den entsprechenden Text herauslesen kann. Zum Beispiel, nur den fertigen Text oder den anfänglichen Text usw.

Gehe ich vielleicht an die Lösung falsch heran? gibt es vielleicht einen besseren Ansatz?
Für entsprechende Hilfe, Tips oder Ideen wäre ich sehr dankbar!
 
Zurück