This article has multiple issues. Please helpimprove it or discuss these issues on thetalk page.(Learn how and when to remove these messages) (Learn how and when to remove this message)
|
| Newt | |
|---|---|
Partimage tool that uses Newt to create its user interface | |
| Original authors | Erik Troan,Red Hat engineer |
| Developer | Miroslav Lichvar |
| Initial release | 1996 |
| Stable release | |
| Repository | |
| Written in | C |
| Operating system | Linux,Cross-platform (Live CD) |
| Size | about 850 Kb when installed on i686 platform. |
| Type | Widget toolkit |
| License | GNU Lesser General Public License |
| Website | pagure |
Newt is aprogramming library for colortext mode,widget-baseduser interfaces. Newt can be used to add stacked windows, entrywidgets,checkboxes,radio buttons, labels, plain text fields,scrollbars, etc., totext user interfaces. This package also contains theshared library needed by programs built with newt, as well as aCLI applicationwhiptail, which provides the most commonly used features ofdialog. Newt is based on theslang library. It abbreviates fromNot Erik's Windowing Toolkit.
Newt was originally designed for use in the install code ofRed Hat Linux and is written mostly focusing on clear interface, simplicity and small footprint.[2] Because of that, unlike most recent GUI engines, it does not use anevent-driven architecture.
Windows must be created and destroyed as a stack (the order of discarding is the exact opposite to that of creation). The top level window is always modal. Many behaviours, such as widget traversal order, are difficult or impossible to change.
Mouse control appears to be supported in the source code,[3] usingGPM (a mouse-driver) but many users report Newt and Whiptail not responding to mouse control.[4][5]
These restrictions simplify the design of the library as well as the code of programs using it, though they impose limitations on user interface design.
The capabilities are fully adequate for the installation process, and Newt was used for the user friendly OS installers. It is also used in some system tools (likePartimage) that focus more on functionality than on looking attractive to the end user.
Newt is written inC. However, there are bindings to other languages likePython.
gNewt project (no longer active) provides an alternative implementation that usesGTK instead of the text based interface. It is fully compatible with the official Newt implementation and can be replaced at run time, without recompilation. Like any other GTK components, gNewt controls can also use mouse input whereas the original Newt only supports the keyboard.