Bugs
----
Reading the javadocs Skins should be black boxes, but Tedi does a lot of (skin as TediSkin)... Bad!
Edit the last line is weird
Select all, cut threw???
Caret sometime appears outside of the view
Current Work
------------
Next
----
Consider adding back line-wrapping
Moving up/down a line will need extra work.
Fill styles that span multiple lines will be tricky.
In layout, if content's width changes, then re-lay out all existing nodes, and fillViewport() (as there may be space for more)
Have two modes for the horizontal scroll :
When wrapping is disabled. The node's heights are calculated using -1.0 (i.e. limitless)
When wrapping is enabled. The node's heights are calculated using the viewport width
In which case, never show the scrollbar???
Later
-----
Add an "Overview" gutter on the right, which show certain HighlightRanges.
e.g. matches in Find & Replace
Paired punctuation at the caret position
Words matching the word at the caret's position
A new interface OverviewRange extends HighlightRange, which has a field : overviewHighlight : FillHighlight
Update whenever line count changes, or HighlightRanges implementing OverviewRange are added/deleted
Can we make this pluggable. i.e. do NOT include it in TediArea, just allow additional gutters to be added to TediArea.
Folding
Switch to a different VirtualView, which takes a list of Folds, rather than Paragraphs
Anywhere that there's paired highlights which are on different lines add folding buttons V and ^
For python lovers, and for indented plain text, use indentation to determine where folds can appear.
Create a Rich Text Demo, where styles are part of the document (undoable)
Only makes sense if wrapping is implemented.