-- GENERATED by C->Haskell Compiler, version 0.13.4 (gtk2hs branch) "Bin IO", 13 Nov 2004 (Haskell)-- Edit the ORIGNAL .chs file instead!{-# LINE 1 "./Graphics/UI/Gtk/Misc/DrawingArea.chs" #-}-- -*-haskell-*--- GIMP Toolkit (GTK) Widget DrawingArea---- Author : Axel Simon---- Created: 22 September 2002---- Copyright (C) 1999-2005 Axel Simon---- This library is free software; you can redistribute it and/or-- modify it under the terms of the GNU Lesser General Public-- License as published by the Free Software Foundation; either-- version 2.1 of the License, or (at your option) any later version.---- This library is distributed in the hope that it will be useful,-- but WITHOUT ANY WARRANTY; without even the implied warranty of-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU-- Lesser General Public License for more details.---- |-- Maintainer : gtk2hs-users@lists.sourceforge.net-- Stability : provisional-- Portability : portable (depends on GHC)---- A widget for custom user interface elements--moduleGraphics.UI.Gtk.Misc.DrawingArea(-- * Detail-- -- | The 'DrawingArea' widget is used for creating custom user interface-- elements. It's essentially a blank widget; you can draw on-- the 'Drawable' returned by 'drawingAreaGetDrawWindow'.---- After creating a drawing area, the application may want to connect to:---- * Mouse and button press signals to respond to input from the user.---- * The 'realize' signal to take any necessary actions when the widget is-- instantiated on a particular display. (Create GDK resources in response to-- this signal.)---- * The 'configureEvent' signal to take any necessary actions when the-- widget changes size.---- * The 'exposeEvent' signal to handle redrawing the contents of the-- widget.---- Expose events are normally delivered when a drawing area first comes-- onscreen, or when it's covered by another window and then uncovered-- (exposed). You can also force an expose event by adding to the \"damage-- region\" of the drawing area's window; 'widgetQueueDrawArea' and-- 'windowInvalidateRect' are equally good ways to do this. You\'ll then get an-- expose event for the invalid region.---- The available routines for drawing are documented on the GDK Drawing-- Primitives page.---- To receive mouse events on a drawing area, you will need to enable them-- with 'widgetAddEvents'. To receive keyboard events, you will need to set the-- 'widgetCanFocus' attribute on the drawing area, and should probably draw some-- user-visible indication that the drawing area is focused.-- * Class Hierarchy-- |-- @-- | 'GObject'-- | +----'Object'-- | +----'Widget'-- | +----DrawingArea-- @-- * TypesDrawingArea,DrawingAreaClass,castToDrawingArea,gTypeDrawingArea,toDrawingArea,-- * ConstructorsdrawingAreaNew,-- * MethodsdrawingAreaGetDrawWindow,drawingAreaGetSize)whereimportControl.Monad(liftM)importSystem.Glib.FFIimportGraphics.UI.Gtk.Abstract.Object(makeNewObject)importGraphics.UI.Gtk.Types{-# LINE 90 "./Graphics/UI/Gtk/Misc/DrawingArea.chs" #-}importGraphics.UI.Gtk.General.Structs(widgetGetDrawWindow,widgetGetSize)-- to make haddock happy:importGraphics.UI.Gtk.Abstract.Widget{-# LINE 95 "./Graphics/UI/Gtk/Misc/DrawingArea.chs" #-}---------------------- Constructors-- | Creates a new drawing area.--drawingAreaNew::IODrawingAreadrawingAreaNew=makeNewObjectmkDrawingArea$liftM(castPtr::PtrWidget->PtrDrawingArea)$gtk_drawing_area_new{-# LINE 106 "./Graphics/UI/Gtk/Misc/DrawingArea.chs" #-}-- | See 'widgetGetDrawWindow'--drawingAreaGetDrawWindow::DrawingArea->IODrawWindowdrawingAreaGetDrawWindow=widgetGetDrawWindow{-# DEPRECATED drawingAreaGetDrawWindow "use widgetGetDrawWindow instead" #-}-- | See 'widgetGetSize'--drawingAreaGetSize::DrawingArea->IO(Int,Int)drawingAreaGetSize=widgetGetSize{-# DEPRECATED drawingAreaGetSize "use widgetGetSize instead" #-}foreignimportccallunsafe"gtk_drawing_area_new"gtk_drawing_area_new::(IO(PtrWidget))