{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
  ForeignFunctionInterface, IncoherentInstances,
  MultiParamTypeClasses, OverlappingInstances, TemplateHaskell,
  TypeFamilies, TypeSynonymInstances #-}
module HROOT.Graf.TCanvas.Implementation where
import Data.Monoid
import Data.Word
import Data.Int
import Foreign.C
import Foreign.Ptr
import Language.Haskell.TH
import Language.Haskell.TH.Syntax
import System.IO.Unsafe
import FFICXX.Runtime.Cast
import FFICXX.Runtime.CodeGen.Cxx
import FFICXX.Runtime.TH
import HROOT.Graf.TCanvas.RawType
import HROOT.Graf.TCanvas.FFI
import HROOT.Graf.TCanvas.Interface
import HROOT.Graf.TCanvas.Cast
import HROOT.Graf.TCanvas.RawType
import HROOT.Graf.TCanvas.Cast
import HROOT.Graf.TCanvas.Interface
import HROOT.Hist.TH1F.RawType
import HROOT.Hist.TH1F.Cast
import HROOT.Hist.TH1F.Interface
import HROOT.Graf.TView.RawType
import HROOT.Graf.TView.Cast
import HROOT.Graf.TView.Interface
import HROOT.Core.TClass.RawType
import HROOT.Core.TClass.Cast
import HROOT.Core.TClass.Interface
import HROOT.Graf.TPad.RawType
import HROOT.Graf.TPad.Cast
import HROOT.Graf.TPad.Interface
import HROOT.Core.TVirtualPad.RawType
import HROOT.Core.TVirtualPad.Cast
import HROOT.Core.TVirtualPad.Interface
import HROOT.Core.TObject.RawType
import HROOT.Core.TObject.Cast
import HROOT.Core.TObject.Interface
import HROOT.Core.TAttLine.RawType
import HROOT.Core.TAttLine.Cast
import HROOT.Core.TAttLine.Interface
import HROOT.Core.TAttFill.RawType
import HROOT.Core.TAttFill.Cast
import HROOT.Core.TAttFill.Interface
import HROOT.Core.TAttPad.RawType
import HROOT.Core.TAttPad.Cast
import HROOT.Core.TAttPad.Interface
import HROOT.Core.TQObject.RawType
import HROOT.Core.TQObject.Cast
import HROOT.Core.TQObject.Interface
import STD.Deletable.RawType
import STD.Deletable.Cast
import STD.Deletable.Interface

instance () => ITCanvas (TCanvas) where
        toggleEditor :: TCanvas -> IO ()
toggleEditor = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_toggleeditor
        toggleEventStatus :: TCanvas -> IO ()
toggleEventStatus = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_toggleeventstatus
        toggleToolBar :: TCanvas -> IO ()
toggleToolBar = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_toggletoolbar
        toggleToolTips :: TCanvas -> IO ()
toggleToolTips = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_toggletooltips

instance () => ITPad (TCanvas) where
        drawFrame :: forall c0.
Castable c0 CString =>
TCanvas
-> CDouble -> CDouble -> CDouble -> CDouble -> c0 -> IO TH1F
drawFrame = (Ptr RawTCanvas
 -> CDouble
 -> CDouble
 -> CDouble
 -> CDouble
 -> CString
 -> IO (Ptr RawTH1F))
-> TCanvas
-> CDouble
-> CDouble
-> CDouble
-> CDouble
-> c0
-> IO TH1F
forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 x5 cx5 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable x4 cx4, Castable x5 cx5, Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> IO cy)
-> a -> x1 -> x2 -> x3 -> x4 -> x5 -> IO y
xform5 Ptr RawTCanvas
-> CDouble
-> CDouble
-> CDouble
-> CDouble
-> CString
-> IO (Ptr RawTH1F)
c_tcanvas_drawframe
        getView :: TCanvas -> IO TView
getView = (Ptr RawTCanvas -> IO (Ptr RawTView)) -> TCanvas -> IO TView
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO (Ptr RawTView)
c_tcanvas_getview
        setView0 :: TCanvas -> IO ()
setView0 = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_setview0
        setView :: forall c0. (ITView c0, FPtr c0) => TCanvas -> c0 -> IO ()
setView = (Ptr RawTCanvas -> Ptr RawTView -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> Ptr RawTView -> IO ()
c_tcanvas_setview

instance () => ITVirtualPad (TCanvas) where
        cd :: TCanvas -> CInt -> IO TCanvas
cd = (Ptr RawTCanvas -> CInt -> IO (Ptr RawTCanvas))
-> TCanvas -> CInt -> IO TCanvas
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO (Ptr RawTCanvas)
c_tcanvas_cd
        divide_tvirtualpad :: TCanvas -> CInt -> CInt -> CFloat -> CFloat -> CInt -> IO ()
divide_tvirtualpad = (Ptr RawTCanvas
 -> CInt -> CInt -> CFloat -> CFloat -> CInt -> IO ())
-> TCanvas -> CInt -> CInt -> CFloat -> CFloat -> CInt -> IO ()
forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 x5 cx5 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable x4 cx4, Castable x5 cx5, Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> cx4 -> cx5 -> IO cy)
-> a -> x1 -> x2 -> x3 -> x4 -> x5 -> IO y
xform5 Ptr RawTCanvas -> CInt -> CInt -> CFloat -> CFloat -> CInt -> IO ()
c_tcanvas_divide_tvirtualpad
        modified :: TCanvas -> CBool -> IO ()
modified = (Ptr RawTCanvas -> CBool -> IO ()) -> TCanvas -> CBool -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CBool -> IO ()
c_tcanvas_modified
        range :: TCanvas -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
range = (Ptr RawTCanvas
 -> CDouble -> CDouble -> CDouble -> CDouble -> IO ())
-> TCanvas -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable x4 cx4, Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> cx4 -> IO cy)
-> a -> x1 -> x2 -> x3 -> x4 -> IO y
xform4 Ptr RawTCanvas -> CDouble -> CDouble -> CDouble -> CDouble -> IO ()
c_tcanvas_range
        setLogx :: TCanvas -> CInt -> IO ()
setLogx = (Ptr RawTCanvas -> CInt -> IO ()) -> TCanvas -> CInt -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO ()
c_tcanvas_setlogx
        setLogy :: TCanvas -> CInt -> IO ()
setLogy = (Ptr RawTCanvas -> CInt -> IO ()) -> TCanvas -> CInt -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO ()
c_tcanvas_setlogy
        setLogz :: TCanvas -> CInt -> IO ()
setLogz = (Ptr RawTCanvas -> CInt -> IO ()) -> TCanvas -> CInt -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO ()
c_tcanvas_setlogz
        update :: TCanvas -> IO ()
update = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_update

instance () => ITObject (TCanvas) where
        clear :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
clear = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_clear
        draw :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
draw = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_draw
        findObject :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO TObject
findObject = (Ptr RawTCanvas -> CString -> IO (Ptr RawTObject))
-> TCanvas -> c0 -> IO TObject
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO (Ptr RawTObject)
c_tcanvas_findobject
        getName :: TCanvas -> IO CString
getName = (Ptr RawTCanvas -> IO CString) -> TCanvas -> IO CString
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO CString
c_tcanvas_getname
        isA :: TCanvas -> IO TClass
isA = (Ptr RawTCanvas -> IO (Ptr RawTClass)) -> TCanvas -> IO TClass
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO (Ptr RawTClass)
c_tcanvas_isa
        paint :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
paint = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_paint
        printObj :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
printObj = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_printobj
        saveAs :: forall c1 c0.
(Castable c1 CString, Castable c0 CString) =>
TCanvas -> c0 -> c1 -> IO ()
saveAs = (Ptr RawTCanvas -> CString -> CString -> IO ())
-> TCanvas -> c0 -> c1 -> IO ()
forall a ca x1 cx1 x2 cx2 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable y cy) =>
(ca -> cx1 -> cx2 -> IO cy) -> a -> x1 -> x2 -> IO y
xform2 Ptr RawTCanvas -> CString -> CString -> IO ()
c_tcanvas_saveas
        write :: forall c0.
Castable c0 CString =>
TCanvas -> c0 -> CInt -> CInt -> IO CInt
write = (Ptr RawTCanvas -> CString -> CInt -> CInt -> IO CInt)
-> TCanvas -> c0 -> CInt -> CInt -> IO CInt
forall a ca x1 cx1 x2 cx2 x3 cx3 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> IO cy) -> a -> x1 -> x2 -> x3 -> IO y
xform3 Ptr RawTCanvas -> CString -> CInt -> CInt -> IO CInt
c_tcanvas_write
        write_ :: TCanvas -> IO CInt
write_ = (Ptr RawTCanvas -> IO CInt) -> TCanvas -> IO CInt
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO CInt
c_tcanvas_write_

instance () => ITAttLine (TCanvas) where
        getLineColor :: TCanvas -> IO CShort
getLineColor = (Ptr RawTCanvas -> IO CShort) -> TCanvas -> IO CShort
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO CShort
c_tcanvas_getlinecolor
        getLineStyle :: TCanvas -> IO CShort
getLineStyle = (Ptr RawTCanvas -> IO CShort) -> TCanvas -> IO CShort
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO CShort
c_tcanvas_getlinestyle
        getLineWidth :: TCanvas -> IO CShort
getLineWidth = (Ptr RawTCanvas -> IO CShort) -> TCanvas -> IO CShort
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO CShort
c_tcanvas_getlinewidth
        resetAttLine :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
resetAttLine = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_resetattline
        setLineAttributes :: TCanvas -> IO ()
setLineAttributes = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_setlineattributes
        setLineColor :: TCanvas -> CShort -> IO ()
setLineColor = (Ptr RawTCanvas -> CShort -> IO ()) -> TCanvas -> CShort -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CShort -> IO ()
c_tcanvas_setlinecolor
        setLineStyle :: TCanvas -> CShort -> IO ()
setLineStyle = (Ptr RawTCanvas -> CShort -> IO ()) -> TCanvas -> CShort -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CShort -> IO ()
c_tcanvas_setlinestyle
        setLineWidth :: TCanvas -> CShort -> IO ()
setLineWidth = (Ptr RawTCanvas -> CShort -> IO ()) -> TCanvas -> CShort -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CShort -> IO ()
c_tcanvas_setlinewidth

instance () => ITAttFill (TCanvas) where
        setFillColor :: TCanvas -> CInt -> IO ()
setFillColor = (Ptr RawTCanvas -> CInt -> IO ()) -> TCanvas -> CInt -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO ()
c_tcanvas_setfillcolor
        setFillStyle :: TCanvas -> CInt -> IO ()
setFillStyle = (Ptr RawTCanvas -> CInt -> IO ()) -> TCanvas -> CInt -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CInt -> IO ()
c_tcanvas_setfillstyle

instance () => ITAttPad (TCanvas) where
        resetAttPad :: forall c0. Castable c0 CString => TCanvas -> c0 -> IO ()
resetAttPad = (Ptr RawTCanvas -> CString -> IO ()) -> TCanvas -> c0 -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CString -> IO ()
c_tcanvas_resetattpad
        setBottomMargin :: TCanvas -> CFloat -> IO ()
setBottomMargin = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setbottommargin
        setLeftMargin :: TCanvas -> CFloat -> IO ()
setLeftMargin = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setleftmargin
        setRightMargin :: TCanvas -> CFloat -> IO ()
setRightMargin = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setrightmargin
        setTopMargin :: TCanvas -> CFloat -> IO ()
setTopMargin = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_settopmargin
        setMargin :: TCanvas -> CFloat -> CFloat -> CFloat -> CFloat -> IO ()
setMargin = (Ptr RawTCanvas -> CFloat -> CFloat -> CFloat -> CFloat -> IO ())
-> TCanvas -> CFloat -> CFloat -> CFloat -> CFloat -> IO ()
forall a ca x1 cx1 x2 cx2 x3 cx3 x4 cx4 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable x4 cx4, Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> cx4 -> IO cy)
-> a -> x1 -> x2 -> x3 -> x4 -> IO y
xform4 Ptr RawTCanvas -> CFloat -> CFloat -> CFloat -> CFloat -> IO ()
c_tcanvas_setmargin
        setAfile :: TCanvas -> CFloat -> IO ()
setAfile = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setafile
        setXfile :: TCanvas -> CFloat -> IO ()
setXfile = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setxfile
        setYfile :: TCanvas -> CFloat -> IO ()
setYfile = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setyfile
        setAstat :: TCanvas -> CFloat -> IO ()
setAstat = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setastat
        setXstat :: TCanvas -> CFloat -> IO ()
setXstat = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setxstat
        setYstat :: TCanvas -> CFloat -> IO ()
setYstat = (Ptr RawTCanvas -> CFloat -> IO ()) -> TCanvas -> CFloat -> IO ()
forall a ca x1 cx1 y cy.
(Castable a ca, Castable x1 cx1, Castable y cy) =>
(ca -> cx1 -> IO cy) -> a -> x1 -> IO y
xform1 Ptr RawTCanvas -> CFloat -> IO ()
c_tcanvas_setystat

instance () => ITQObject (TCanvas) where

instance () => IDeletable (TCanvas) where
        delete :: TCanvas -> IO ()
delete = (Ptr RawTCanvas -> IO ()) -> TCanvas -> IO ()
forall a ca y cy.
(Castable a ca, Castable y cy) =>
(ca -> IO cy) -> a -> IO y
xform0 Ptr RawTCanvas -> IO ()
c_tcanvas_delete

newTCanvas ::
             (Castable c1 CString, Castable c0 CString) =>
             c0 -> c1 -> CInt -> CInt -> IO TCanvas
newTCanvas :: forall c1 c0.
(Castable c1 CString, Castable c0 CString) =>
c0 -> c1 -> CInt -> CInt -> IO TCanvas
newTCanvas = (CString -> CString -> CInt -> CInt -> IO (Ptr RawTCanvas))
-> c0 -> c1 -> CInt -> CInt -> IO TCanvas
forall a ca x1 cx1 x2 cx2 x3 cx3 y cy.
(Castable a ca, Castable x1 cx1, Castable x2 cx2, Castable x3 cx3,
 Castable y cy) =>
(ca -> cx1 -> cx2 -> cx3 -> IO cy) -> a -> x1 -> x2 -> x3 -> IO y
xform3 CString -> CString -> CInt -> CInt -> IO (Ptr RawTCanvas)
c_tcanvas_newtcanvas