module test import StdMaybe import Control.Applicative import Control.Monad import Control.Monad.Identity import Control.Monad.State import Gtk Start w = runGtk app w where app = newWindow "Hello!" Nothing >>= \window -> installSignalHandler window (DestroyHandler quit) >>| framed (Label "label") (newPaned Horizontal WideHandle) >>= \(paned,frame) -> setMargins (margin 8) frame >>| addToContainer frame window >>| newTextView >>= \text_view_a -> newTextView >>= \text_view_b -> setMargins (margin 3) text_view_a >>| setMargins (margin 3) text_view_b >>| packPane1 text_view_a paned Resize NoShrink >>| packPane2 text_view_b paned Resize NoShrink >>| insertAtCursor "Hello" (getTextBuffer text_view_a) >>| insertAtCursor "world!" (getTextBuffer text_view_b)