X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=FPPrac.hs;h=68f5a535bf965038f4190cffeddb6a18eda18d1b;hb=c6b48b290e9bf48d7887286f07b5f2142574b42b;hp=ddf421ebf8821c191cfb8c2fd85fb5786c9c4b42;hpb=cb9aa250052bfae8f8c34cb74701f0c381ada2c6;p=matthijs%2Fprojects%2Ffpprac.git diff --git a/FPPrac.hs b/FPPrac.hs index ddf421e..68f5a53 100644 --- a/FPPrac.hs +++ b/FPPrac.hs @@ -9,6 +9,11 @@ module FPPrac ( ) where import qualified Graphics.UI.Gtk as Gtk +import Graphics.UI.Gtk (AttrOp(..)) -- For the := constructor +import qualified Graphics.Rendering.Cairo as Cairo +import qualified Graphics.UI.Gtk.Gdk.EventM as EventM + +import Control.Monad.Trans -- for liftIO import Data.IORef import Control.Applicative import Control.Monad @@ -133,7 +138,22 @@ runTina Main {..} = do runGUI {-(sz windowWidth windowHeight) -}state runGUI :: {-Size ->-} IState -> IO () -runGUI s = do return () +runGUI s = do + -- Init GTK. + Gtk.initGUI + + -- Create a window, which will make the mainloop terminated when + -- it is closed. + window <- Gtk.windowNew + Gtk.set window [ Gtk.containerBorderWidth := 10 + , Gtk.windowTitle := "FP Practicum" ] + Gtk.onDestroy window Gtk.mainQuit + + -- Show the window and start the Gtk mainloop. + Gtk.widgetShowAll window + Gtk.mainGUI + + {- runGUI s IS {..} = do sFrame <- frame