+-- | A rectangle in two dimensional space
+data Rect = Rect
+ { rectLeft :: !Int
+ , rectTop :: !Int
+ , rectWidth :: !Int
+ , rectHeight :: !Int
+} deriving (Show, Eq)
+
+data Point = Point !Int !Int deriving (Show, Eq)
+
+type Color = Gtk.Color
+
+-- Create a Color from Red, Green and Blue values. The inputs should be
+-- between 0 and 255 (inclusive).
+rgb :: Int -> Int -> Int -> Color
+rgb r g b = Gtk.Color (conv r) (conv g) (conv b)
+ where conv = fromInteger . toInteger . (*256)
+
+-- | Some predefined colours
+red = rgb 0xff 0 0
+green = rgb 0 0xff 0
+blue = rgb 0 0 0xff
+white = rgb 0xff 0xff 0xff
+
+-- | Helper functions for creating a Point
+point, pt :: Int -> Int -> Point
+point = Point
+pt = Point
+
+runTina :: TinaProgram -> IO ()
+runTina p = return ()
+