packages feed

vty-ui-1.0: doc/ch1/main.tex

\chapter{Introduction}

The terminal emulator user interface is a good, lightweight
alternative to fully graphical interfaces such as those provided by
GTK, QT, and the Windows and Macintosh OS X operating systems.  Such
interfaces are appealing because they can be used easily for remote
administration, and many users prefer them over graphical interfaces
for their responsiveness.

Historically, terminal interfaces have been notoriously difficult to
program.  Libraries such as Ncurses, CDK, Dialog, and Newt have
appeared to aid in this task.

\vtyui\ provides a “widget” infrastructure for constructing user
interfaces similar to that provided by libraries such as QT and GTK.
In addition to rendering infrastructure, \vtyui\ provides
infrastructure for managing user input events, changes in widget
focus, box layout support, and a flexible API for binding event
handlers to widget events.  It is built on the Vty
library,\footnote{Vty on Hackage:
  \href{http://hackage.haskell.org/package/vty}{http://hackage.haskell.org/package/vty}}
which provides functionality similar to Ncurses.

\input{ch1/getting_started}
\input{ch1/api_notes}