X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;ds=sidebyside;f=README.md;h=a85d8138632c3184736b879fcaf8e0b773662c06;hb=5e9795dbc937fb270bdd5b89cad0208fe3038e3d;hp=f5effd47f3aabdd19e10263a872f548dc3d29eb0;hpb=30bd4abd2a85c162bdf0a1cc687b366345182bc1;p=fanfix.git diff --git a/README.md b/README.md index f5effd4..a85d813 100644 --- a/README.md +++ b/README.md @@ -20,8 +20,9 @@ Two backends are available: * Java AWT UI. This backend can be selected by setting jexer.AWT=true. This is the default backend on Windows platforms. - AWT is VERY experimental, please consider filing bugs when you - encounter them. + AWT is experimental, please consider filing bugs when you encounter + them. The default window size for AWT is 132x40, which is set in + jexer.session.AWTSession. A demo application showing the existing UI controls is available via 'java -jar jexer.jar' or 'java -Djexer.AWT=true -jar jexer.jar' . @@ -31,9 +32,14 @@ A demo application showing the existing UI controls is available via License ------- -This project is licensed LGPL ("GNU Lesser General Public License") -version 3 or greater. See the file LICENSE for the full license text, -which includes both the GPL v3 and the LGPL supplemental terms. +This project is licensed LGPL ("GNU Lesser General Public License", +sometimes called the "Library GPL") version 3 or greater. You may +freely use Jexer in both closed source (proprietary) and open source +applications, however any changes you make to the Jexer code must be +made available to your users. + +See the file LICENSE for the full license text, which includes both +the GPL v3 and the LGPL supplemental terms. @@ -71,8 +77,28 @@ public class MyApplication extends TApplication { } ``` -See the file demos/Demo1.java for example usage. +See the file demos/Demo1.java for detailed examples. + + + +Known Issues / Arbitrary Decisions +---------------------------------- + +Some arbitrary design decisions had to be made when either the +obviously expected behavior did not happen or when a specification was +ambiguous. This section describes such issues. + + TTerminalWindow + --------------- + - TTerminalWindow will hang on input from the remote if the + TApplication is exited before the TTerminalWindow's process has + closed on its own. This is due to a Java limitation/interaction + between blocking reads (which is necessary to get UTF8 translation + correct) and file streams. + + - See jexer.tterminal.ECMA48 for more specifics of terminal + emulation limitations. Roadmap @@ -82,31 +108,31 @@ Many tasks remain before calling this version 1.0: 0.0.2: +- Making TMenu keyboard accelerators active/inactive - AWT: - Blinking cursor - - More optimal refresh - - Jittery refresh with mouse movement -- Clean up TWidget constuctors (everyone is doing setX() / setY() / set...) + - Handle kbTab (disable focus traversal BS) + - Block cursor - ECMA48Backend running on socket - TTreeView - TDirectoryList - TFileOpen - Decide on naming convention: getText, getValue, getLabel: one or all of them? -- TPasswordField (displays stars when not active) +- Refactor: + - TKeypress: + - getCh() --> getChar() + - getAlt/getCtrl/getShift --> isAltDown / isCtrlDown / isShiftDown + - Other boolean getters --> isSomething 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 and use by TMenu (MID_CLEAR) - TDirectoryList cannot be navigated only with keyboard - TTreeView cannot be navigated only with keyboard - RangeViolation after dragging scrollbar up/down @@ -115,14 +141,11 @@ Many tasks remain before calling this version 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 - Screen - Allow complex characters in putCharXY() and detect them in putStrXY(). - TComboBox @@ -136,3 +159,10 @@ Wishlist features (2.0): - TText - TTerminal - TComboBox + + +Screenshots +----------- + +![Several Windows Open Including A Terminal](/screenshots/screenshot1.png?raw=true "Several Windows Open Including A Terminal") +