X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=README.md;h=8939c4e133c6d532ebb12512ccad14804e981d98;hb=84614868e6bcbe374c0c1ba248ad046ff25ccb2b;hp=3392cd8a5d071152f2df3e05984e51a3c03d3436;hpb=05dbb28d6e8613216f43e8d0fae487c1d9c2fcd3;p=fanfix.git diff --git a/README.md b/README.md index 3392cd8..8939c4e 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,21 @@ library, see [Sergio Sigala's updated 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 ------- @@ -31,21 +46,21 @@ import jexer.*; public class MyApplication extends TApplication { public MyApplication() { - super(); + super(); - // Create an editor window that has support for - // copy/paste, search text, arrow keys, horizontal - // and vertical scrollbar, etc. - addEditor(); + // Create an editor window that has support for + // copy/paste, search text, arrow keys, horizontal + // and vertical scrollbar, etc. + addEditor(); - // Create standard menus for File and Window - addFileMenu(); - addWindowMenu(); + // Create standard menus for File and Window + addFileMenu(); + addWindowMenu(); } public static void main(String [] args) { - MyApplication app = new MyApplication(); - app.run(); + MyApplication app = new MyApplication(); + app.run(); } } ``` @@ -54,38 +69,53 @@ public class MyApplication extends TApplication { 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: -- Base classes: - - EMCA48Terminal read thread - - TApplication loop -- Incorporate checkstyle ant task +- AWTBackend 0.0.2: -- Get modal messagebox running without fibers -- Port remaining d-tui functionality over - - All widgets +- ECMA48Backend running on socket +- TTreeView +- TDirectoryList +- TFileOpen 0.0.3: -- ECMATerminal - - Mouse 1006 mode parsing +- 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 + - Search + - Replace + - Cut/Copy/Paste + +0.1.0: + +- TWindow + - "Smart placement" for new windows +- ECMATerminal + - Mouse 1006 mode parsing 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 @@ -99,4 +129,3 @@ Wishlist features (2.0): - TText - TTerminal - TComboBox -- AWTBackend