1 -- -*- Mode: Haskell -*- 2 -- Copyright 1994 by Peter Thiemann 3 -- 4 -- just a provider of type declarations 5 -- 6 -- $Locker: $ 7 -- $Log: Info.hs,v $ 8 -- Revision 1.1 1996/01/08 20:02:33 partain 9 -- Initial revision 10 -- 11 -- Revision 1.1 1994/03/15 15:34:53 thiemann 12 -- Initial revision 13 -- 14 -- 15 16 17 module Info where 18 19 import Color (Color (..)) 20 import Fonts (FONT) 21 22 type ColorInfo = (Color, Color, Color, Color) 23 type INFO = (Int, Int, Int, Int, Int, FONT, FONT, ColorInfo) 24 type WrapperType = String -> INFO -> Container -> ShowS 25 26 type Container = ( 27 -- rx, ry origin relative to bounding box 28 Int, Int, 29 -- widht height of content's bounding box 30 Int, Int, 31 -- inOutY relative position of entry/exit point 32 Int, 33 GObject) 34 35 data GObject 36 = AString Color FONT String -- AString font theString 37 | ABox Color Bool Container -- round edges toggle 38 | Arrow Color Int -- Arrow size 39 | Aline Color -- width height rlineto 40 | ATurn Color TDirection -- a turn 41 | AComposite [Container] 42 43 44 data TDirection = SE | SW | WN | NE 45