reflowable text box
[nikiroo-utils.git] / README.md
... / ...
CommitLineData
1Jexer - Java Text User Interface library
2========================================
3
4This library is currently in design, but when finished it is intended
5to implement a text-based windowing system loosely reminiscient of
6Borland's [Turbo Vision](http://en.wikipedia.org/wiki/Turbo_Vision)
7library. For those wishing to use the actual C++ Turbo Vision
8library, see [Sergio Sigala's updated
9version](http://tvision.sourceforge.net/) that runs on many more
10platforms.
11
12
13License
14-------
15
16This library is licensed LGPL ("GNU Lesser General Public License")
17version 3 or greater. See the file LICENSE for the full license text,
18which includes both the GPL v3 and the LGPL supplemental terms.
19
20
21Usage
22-----
23
24The library is currently under initial development, usage patterns are
25still being worked on. Generally the goal will be to build
26applications somewhat as follows:
27
28```Java
29import jexer.*;
30
31public class MyApplication extends TApplication {
32
33 public MyApplication() {
34 super();
35
36 // Create an editor window that has support for
37 // copy/paste, search text, arrow keys, horizontal
38 // and vertical scrollbar, etc.
39 addEditor();
40
41 // Create standard menus for File and Window
42 addFileMenu();
43 addWindowMenu();
44 }
45
46 public static void main(String [] args) {
47 MyApplication app = new MyApplication();
48 app.run();
49 }
50}
51```
52
53
54Roadmap
55-------
56
57Many tasks remain before calling this version 1.0:
58
590.0.1:
60
61- TMessageBox
62- AWTBackend
63
640.0.2:
65
66- TTreeView
67- TDirectoryList
68- TFileOpen
69
700.0.3:
71
72- TEditor
73- TTerminal
74
750.0.4:
76
77- Bugs
78 - TTimer is jittery with I/O
79 - TSubMenu keyboard mnemonic not working
80 - kbDel assertion failure in TMenu (MID_CLEAR)
81 - TDirectoryList cannot be navigated only with keyboard
82 - TTreeView cannot be navigated only with keyboard
83 - RangeViolation after dragging scrollbar up/down
84- TEditor
85 - Word wrap
86 - Forward/backward word
87 - Search
88 - Replace
89 - Cut/Copy/Paste
90
910.1.0:
92
93- TWindow
94 - "Smart placement" for new windows
95- ECMATerminal
96 - Mouse 1006 mode parsing
97
98Wishlist features (2.0):
99
100- TTerminal
101 - Handle resize events (pass to child process)
102 - xterm mouse handling
103- Screen
104 - Allow complex characters in putCharXY() and detect them in putStrXY().
105- TComboBox
106- TListBox
107- TSpinner
108- TCalendar widget
109- TColorPicker widget
110- Drag and drop
111 - TEditor
112 - TField
113 - TText
114 - TTerminal
115 - TComboBox