module HROOT.Class.TAttFill.Implementation where
import HROOT.TypeCast
import HROOT.Class.TAttFill.RawType
import HROOT.Class.TAttFill.FFI
import HROOT.Class.TAttFill.Interface
import HROOT.Class.TAttFill.Cast
import HROOT.Class.Deletable.RawType
import HROOT.Class.Deletable.Cast
import HROOT.Class.Deletable.Interface
import Data.Word
import Foreign.ForeignPtr
import System.IO.Unsafe
instance ITAttFill TAttFill where
setFillColor = xform1 c_tattfill_setfillcolor
setFillStyle = xform1 c_tattfill_setfillstyle
instance IDeletable TAttFill where
delete = xform0 c_tattfill_delete
instance ITAttFill (Exist TAttFill) where
setFillColor (ETAttFill x) = setFillColor x
setFillStyle (ETAttFill x) = setFillStyle x
instance IDeletable (Exist TAttFill) where
delete (ETAttFill x) = delete x
newTAttFill :: Int -> Int -> IO TAttFill
newTAttFill = xform1 c_tattfill_newtattfill
instance FPtr (Exist TAttFill) where
type Raw (Exist TAttFill) = RawTAttFill
get_fptr (ETAttFill obj) = castForeignPtr (get_fptr obj)
cast_fptr_to_obj fptr = ETAttFill (cast_fptr_to_obj (fptr :: ForeignPtr RawTAttFill) :: TAttFill)