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