ContentsIndex

The Grapical IO (GIO) library is a middle-level Haskell library for writing Graphical User Interfaces (GUI's). It is build upon the portable GUI library Graphics.UI.Port.

All operations are within the IO monad and the library doesn't offer an explicit state model besides mutable variables (Var). The design of the GIO library is very much influenced by the lecture notes on the Yahu library and TkGofer.

The following example gives a taste of the general flavor. It is a GUI that displays a single, centered Quit button. When clicked (or activated by the keyboard), it closes the window.

 import Graphics.UI.GIO

 main = start demo
 
 demo :: IO ()
 demo = do w <- window [title =: "Quit demo"]
           q <- button [text =: "Quit", on command =: close w] w
           set w [layout =: pad 10 (center q)]
Modules
Graphics
UI
Graphics.UI.GIO
Graphics.UI.GIO.Attributes
Graphics.UI.GIO.Bitmap
Graphics.UI.GIO.Canvas
Graphics.UI.GIO.CommonDialogs
Graphics.UI.GIO.Controls
Graphics.UI.GIO.Events
Graphics.UI.GIO.Font
Graphics.UI.GIO.Layout
Graphics.UI.GIO.Menu
Graphics.UI.GIO.Messages
Graphics.UI.GIO.Process
Graphics.UI.GIO.Timer
Graphics.UI.GIO.ToolBar
Graphics.UI.GIO.Types
Graphics.UI.GIO.Window
Produced by Haddock version 0.6