Jump to content
Wikipedia The Free Encyclopedia

Newt (programming library)

From Wikipedia, the free encyclopedia
Software library for user interfaces
This article has multiple issues. Please help improve it or discuss these issues on the talk page . (Learn how and when to remove these messages)
This article needs additional citations for verification . Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Newt" programming library – news · newspapers · books · scholar · JSTOR
(June 2016) (Learn how and when to remove this message)
The topic of this article may not meet Wikipedia's notability guidelines for products and services . Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be merged, redirected, or deleted.
Find sources: "Newt" programming library – news · newspapers · books · scholar · JSTOR
(June 2016) (Learn how and when to remove this message)
(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 release1996
Stable release
0.52.24 / October 25, 2023; 23 months ago (2023年10月25日)[1]
Repository
Written inC
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
Websitepagure.io/newt

Newt is a programming library for color text mode, widget-based user interfaces. Newt can be used to add stacked windows, entry widgets, checkboxes, radio buttons, labels, plain text fields, scrollbars, etc., to text user interfaces. This package also contains the shared library needed by programs built with newt, as well as a CLI application whiptail, which provides the most commonly used features of dialog. Newt is based on the slang library. It abbreviates from Not Erik's Windowing Toolkit.

Overview

[edit ]

Newt was originally designed for use in the install code of Red 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 an event-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] using GPM (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.

Usage

[edit ]

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 (like Partimage) that focus more on functionality than on looking attractive to the end user.

Interoperability

[edit ]

Newt is written in C. However, there are bindings to other languages like Python.

Variants

[edit ]

gNewt project (no longer active) provides an alternative implementation that uses GTK 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.

See also

[edit ]
  • nparted - Newt text interface for GNU Parted
  • ncurses - the text interface library for which dialog was written in 1994

References

[edit ]
[edit ]

AltStyle によって変換されたページ (->オリジナル) /