Refactoring - boolean getters and miscellaneous
[nikiroo-utils.git] / README.md

Jexer - Java Text User Interface library

WARNING: THIS IS ALPHA CODE! PLEASE CONSIDER FILING BUGS AS YOU ENCOUNTER THEM.

This library is intended to implement a text-based windowing system loosely reminiscient of Borland’s Turbo Vision library. For those wishing to use the actual C++ Turbo Vision library, see Sergio Sigala’s updated version that runs on many more platforms.

Two backends are available:

The demo application showing the existing UI controls is available via ‘java -jar jexer.jar’ or ‘java -Djexer.Swing=true -jar jexer.jar’ .

Additional backends can be created by subclassing jexer.backend.Backend and passing it into the TApplication constructor.

License

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.

Acknowledgements

Jexer makes use of the Terminus TrueType font made available here .

Usage

Usage patterns are still being worked on, but in general the goal will be to build applications as follows:

```Java import jexer.*;

public class MyApplication extends TApplication {

public MyApplication() {
    super(BackendType.SWING); // Could also use BackendType.XTERM

    // Create standard menus for File and Window
    addFileMenu();
    addWindowMenu();
}

public static void main(String [] args) {
    MyApplication app = new MyApplication();
    (new Thread(app)).start();
}

} ```

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

ECMA48 Backend

Roadmap

Many tasks remain before calling this version 1.0:

0.0.2: STABILIZE EXISTING

0.0.3: FINISH PORTING

0.0.4: NEW STUFF

0.0.5: BUG HUNT

0.1.0: BETA RELEASE

Wishlist features (2.0):

Screenshots

Several Windows Open Including A Terminal

Yo Dawg...