UI.NCurses

# Primary types

data Curses a

data Update a

data Window

data CursesException

# Initialization

runCurses

defaultWindow

# Window management

newWindow

closeWindow

cloneWindow

moveWindow

windowPosition

resizeWindow

windowSize

updateWindow

## Copying window content

data OverlayMode

overlay

copyWindow

## Virtual windows (pads)

data Pad

newPad

closePad

updatePad

# The cursor

moveCursor

cursorPosition

getCursor

# Drawing to the screen

render

setColor

drawString

drawText

drawGlyph

drawBorder

drawBox

drawLineH

drawLineV

clear

clearLine

setBackground

# Attributes

data Attribute

setAttribute

setAttributes

# Colors

data Color

maxColor

data ColorID

supportsColor

canDefineColor

defineColor

queryColor

defaultColorID

newColorID

setColorID

maxColorID

# Glyphs

data Glyph

## VT100 drawing glyphs

glyphCornerUL

glyphCornerLL

glyphCornerUR

glyphCornerLR

glyphTeeL

glyphTeeR

glyphTeeB

glyphTeeT

glyphLineH

glyphLineV

glyphPlus

glyphScan1

glyphScan9

glyphDiamond

glyphStipple

glyphDegree

glyphPlusMinus

glyphBullet

## Teletype 5410v1 symbols

glyphArrowL

glyphArrowR

glyphArrowD

glyphArrowU

glyphBoard

glyphLantern

glyphBlock

## Other glyphs

glyphS3

glyphS7

glyphNE

glyphLTE

glyphGTE

glyphPi

glyphSterling

# Event handling

data Event

getEvent

## Keyboard events

data Key

## Mouse events

data ButtonState

data MouseState

# Cursor mode

data CursorMode

setCursorMode

# Error handling

tryCurses

catchCurses

throwCurses

# misc

setRaw

setCBreak

setEcho

baudrate

beep

flash

hasMouse

enclosed

screenSize

setTouched

setRowsTouched

setKeypad

resizeTerminal