version](http://tvision.sourceforge.net/) that runs on many more
platforms.
+Two backends are available:
+
+* A command-line ECMA-48 / ANSI X3.64 type terminal (tested on Linux +
+ xterm) via System.in and System.out. Input/output is handled
+ through terminal escape sequences generated by the library itself:
+ ncurses is not required or linked to. xterm mouse tracking using
+ UTF8 coordinates is supported. This is the default backend.
+
+* Java Swing/AWT UI. This backend can be selected by setting
+ jexer.AWT=true.
+
+A demo application showing the existing UI controls is available via
+'java -jar jexer.jar' or 'java -Djexer.AWT=true -jar jexer.jar' .
+
+
License
-------
Roadmap
-------
-This is a work in progress. Many tasks remain before calling this
-version 1.0:
+Many tasks remain before calling this version 1.0:
0.0.1:
-- TMenu
-- TButton
-- TCheckbox
-- TDirectoryList
-- TField
-- TMessageBox
-- TProgressBar
-- TTimer
-- TRadioGroup / TRadioButton
-- THScroller / TVScroller
-- TText
-- TTreeView
+- AWTBackend
0.0.2:
-- TEditor
+- ECMA48Backend running on socket
+- TTreeView
+- TDirectoryList
- TFileOpen
-- TTerminal
0.0.3:
+- TEditor
+- TTerminal
+
+0.0.4:
+
- Bugs
+ - Bare ESC isn't being returned immediately
+ - TTimer is jittery with I/O
- TSubMenu keyboard mnemonic not working
- kbDel assertion failure in TMenu (MID_CLEAR)
+ - TDirectoryList cannot be navigated only with keyboard
+ - TTreeView cannot be navigated only with keyboard
+ - RangeViolation after dragging scrollbar up/down
- TEditor
- Word wrap
- Forward/backward word
- Replace
- Cut/Copy/Paste
-0.0.4:
+0.1.0:
+- TWindow
+ - "Smart placement" for new windows
- ECMATerminal
- Mouse 1006 mode parsing
-- Bugs
- - TDirectoryList cannot be navigated only with keyboard
- - TTreeView cannot be navigated only with keyboard
- - RangeViolation after dragging scrollbar up/down
Wishlist features (2.0):
- TTerminal
- Handle resize events (pass to child process)
- xterm mouse handling
-- TWindow
- - "Smart placement" for new windows
- Screen
- Allow complex characters in putCharXY() and detect them in putStrXY().
- TComboBox
- TText
- TTerminal
- TComboBox
-- AWTBackend