|
Graphics.HGL.Utils | Portability | non-portable (requires concurrency) | Stability | provisional | Maintainer | libraries@haskell.org |
|
|
|
|
|
Description |
Utility functions for a simple graphics library.
|
|
Synopsis |
|
|
|
|
Windows |
|
openWindow :: Title -> Size -> IO Window |
Create a window with the given title and size. |
|
clearWindow :: Window -> IO () |
Erase all drawing in the window. |
|
drawInWindow :: Window -> Graphic -> IO () |
Draw the given graphic on the window, on top of anything that is
already there. |
|
withWindow :: Title -> Size -> (Window -> IO a) -> IO a |
Run an action inside a new window, ensuring that the window is destroyed
on exit. |
|
withWindow_ :: Title -> Size -> (Window -> IO a) -> IO () |
A variant of withWindow that ignores the result of the action. |
|
runWindow :: Title -> Size -> (Window -> IO a) -> IO () |
A combination of runGraphics and withWindow_. |
|
getWindowSize :: Window -> IO Size |
The current size of the window. |
|
Specific events |
|
Mouse events |
|
getLBP :: Window -> IO Point |
Wait for a press of the left mouse button,
and return the position of the mouse cursor. |
|
getRBP :: Window -> IO Point |
Wait for a press of the right mouse button,
and return the position of the mouse cursor. |
|
getButton |
:: Window | | -> Bool | if True, wait for the left button | -> Bool | if True, wait for a press;
otherwise wait for a release. | -> IO Point | | Wait for a mouse button to be pressed or released,
and return the position of the mouse cursor. |
|
|
Keyboard events |
|
getKey :: Window -> IO Key |
Wait until a key is pressed and released. |
|
getKeyEx :: Window -> Bool -> IO Key |
Wait until a key is pressed (if the second argument is True)
or released (otherwise). |
|
wGetChar :: Window -> IO Char |
Wait for a translated character (from a key press).
Use in preference to getKey if the aim is to read text. |
|
Graphics |
|
Combining Graphics |
|
emptyGraphic :: Graphic |
An empty drawing. |
|
overGraphic :: Graphic -> Graphic -> Graphic |
A composite drawing made by overlaying the first argument on the second. |
|
overGraphics :: [Graphic] -> Graphic |
Overlay a list of drawings. |
|
Graphic modifiers |
|
withFont :: Font -> Graphic -> Graphic |
Set the default font for a drawing. |
|
withTextColor :: RGB -> Graphic -> Graphic |
Set the default color for drawing text. |
|
withTextAlignment :: Alignment -> Graphic -> Graphic |
Set the default alignment of text in a drawing. |
|
withBkColor :: RGB -> Graphic -> Graphic |
Set the default background color for drawing text with background
mode Opaque. The background color is ignored when the mode is
Transparent. |
|
withBkMode :: BkMode -> Graphic -> Graphic |
Set the default background mode for drawing text. |
|
withPen :: Pen -> Graphic -> Graphic |
Set the default pen for drawing lines. |
|
withBrush :: Brush -> Graphic -> Graphic |
Set the default brush for filling shapes. |
|
withRGB :: RGB -> Graphic -> Graphic |
A convenience function that sets the brush,
pen and text colors to the same value. |
|
Named colors |
|
data Color |
Named colors. | Constructors | Black | | Blue | | Green | | Cyan | | Red | | Magenta | | Yellow | | White | |
| Instances | |
|
|
colorList :: [(Color, RGB)] |
A mapping of Color names to RGB triples. |
|
colorTable :: Array Color RGB |
A mapping of Color names to RGB triples. |
|
withColor :: Color -> Graphic -> Graphic |
Set the default drawing color for a Graphic. |
|
Concurrency |
|
par :: IO a -> IO b -> IO (a, b) |
Run two IO actions in parallel and terminate when both actions terminate. |
|
par_ :: IO a -> IO b -> IO () |
Run two IO actions in parallel and terminate when both actions terminate,
discarding the results of the actions. |
|
parMany :: [IO ()] -> IO () |
Run several IO actions in parallel and terminate when all actions
terminate, discarding the results of the actions. |
|
Produced by Haddock version 0.6 |