packages feed

HROOT-core-0.9: src/HROOT/Core/TAttText/Implementation.hs

{-# LANGUAGE EmptyDataDecls, FlexibleContexts, FlexibleInstances,
  ForeignFunctionInterface, IncoherentInstances,
  MultiParamTypeClasses, OverlappingInstances, TypeFamilies,
  TypeSynonymInstances #-}
module HROOT.Core.TAttText.Implementation where
import FFICXX.Runtime.Cast
import Data.Word
import Foreign.C
import Foreign.Ptr
import System.IO.Unsafe
import HROOT.Core.TAttText.RawType
import HROOT.Core.TAttText.FFI
import HROOT.Core.TAttText.Interface
import HROOT.Core.TAttText.Cast
import HROOT.Core.Deletable.RawType
import HROOT.Core.Deletable.Cast
import HROOT.Core.Deletable.Interface

instance ITAttText TAttText where
        getTextAlign = xform0 c_tatttext_gettextalign
        getTextAngle = xform0 c_tatttext_gettextangle
        getTextColor = xform0 c_tatttext_gettextcolor
        getTextFont = xform0 c_tatttext_gettextfont
        getTextSize = xform0 c_tatttext_gettextsize
        resetAttText = xform1 c_tatttext_resetatttext
        setTextAttributes = xform0 c_tatttext_settextattributes
        setTextAlign = xform1 c_tatttext_settextalign
        setTextAngle = xform1 c_tatttext_settextangle
        setTextColor = xform1 c_tatttext_settextcolor
        setTextFont = xform1 c_tatttext_settextfont
        setTextSize = xform1 c_tatttext_settextsize
        setTextSizePixels = xform1 c_tatttext_settextsizepixels

instance IDeletable TAttText where
        delete = xform0 c_tatttext_delete

newTAttText ::
              CInt -> CDouble -> CInt -> CInt -> CDouble -> IO TAttText
newTAttText = xform4 c_tatttext_newtatttext