{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, OverlappingInstances, IncoherentInstances #-} module HROOT.Class.TXTRU.Implementation where import HROOT.TypeCast import HROOT.Class.TXTRU.RawType import HROOT.Class.TXTRU.FFI import HROOT.Class.TXTRU.Interface import HROOT.Class.TXTRU.Cast import HROOT.Class.TClass.RawType import HROOT.Class.TClass.Cast import HROOT.Class.TClass.Interface import HROOT.Class.TShape.RawType import HROOT.Class.TShape.Cast import HROOT.Class.TShape.Interface import HROOT.Class.TNamed.RawType import HROOT.Class.TNamed.Cast import HROOT.Class.TNamed.Interface import HROOT.Class.TAttLine.RawType import HROOT.Class.TAttLine.Cast import HROOT.Class.TAttLine.Interface import HROOT.Class.TAttFill.RawType import HROOT.Class.TAttFill.Cast import HROOT.Class.TAttFill.Interface import HROOT.Class.TAtt3D.RawType import HROOT.Class.TAtt3D.Cast import HROOT.Class.TAtt3D.Interface import HROOT.Class.TObject.RawType import HROOT.Class.TObject.Cast import HROOT.Class.TObject.Interface import HROOT.Class.Deletable.RawType import HROOT.Class.Deletable.Cast import HROOT.Class.Deletable.Interface import Data.Word -- import Foreign.C -- import Foreign.Ptr import Foreign.ForeignPtr import System.IO.Unsafe instance ITXTRU TXTRU where instance ITShape TXTRU where instance ITNamed TXTRU where setName = xform1 c_txtru_setname setNameTitle = xform2 c_txtru_setnametitle setTitle = xform1 c_txtru_settitle instance ITAttLine TXTRU where getLineColor = xform0 c_txtru_getlinecolor getLineStyle = xform0 c_txtru_getlinestyle getLineWidth = xform0 c_txtru_getlinewidth resetAttLine = xform1 c_txtru_resetattline setLineAttributes = xform0 c_txtru_setlineattributes setLineColor = xform1 c_txtru_setlinecolor setLineStyle = xform1 c_txtru_setlinestyle setLineWidth = xform1 c_txtru_setlinewidth instance ITAttFill TXTRU where setFillColor = xform1 c_txtru_setfillcolor setFillStyle = xform1 c_txtru_setfillstyle instance ITAtt3D TXTRU where instance ITObject TXTRU where draw = xform1 c_txtru_draw findObject = xform1 c_txtru_findobject getName = xform0 c_txtru_getname isA = xform0 c_txtru_isa isFolder = xform0 c_txtru_isfolder isEqual = xform1 c_txtru_isequal isSortable = xform0 c_txtru_issortable paint = xform1 c_txtru_paint printObj = xform1 c_txtru_printobj recursiveRemove = xform1 c_txtru_recursiveremove saveAs = xform2 c_txtru_saveas useCurrentStyle = xform0 c_txtru_usecurrentstyle write = xform3 c_txtru_write instance IDeletable TXTRU where delete = xform0 c_txtru_delete instance ITXTRU (Exist TXTRU) where instance ITShape (Exist TXTRU) where instance ITNamed (Exist TXTRU) where setName (ETXTRU x) = setName x setNameTitle (ETXTRU x) = setNameTitle x setTitle (ETXTRU x) = setTitle x instance ITAttLine (Exist TXTRU) where getLineColor (ETXTRU x) = getLineColor x getLineStyle (ETXTRU x) = getLineStyle x getLineWidth (ETXTRU x) = getLineWidth x resetAttLine (ETXTRU x) = resetAttLine x setLineAttributes (ETXTRU x) = setLineAttributes x setLineColor (ETXTRU x) = setLineColor x setLineStyle (ETXTRU x) = setLineStyle x setLineWidth (ETXTRU x) = setLineWidth x instance ITAttFill (Exist TXTRU) where setFillColor (ETXTRU x) = setFillColor x setFillStyle (ETXTRU x) = setFillStyle x instance ITAtt3D (Exist TXTRU) where instance ITObject (Exist TXTRU) where draw (ETXTRU x) = draw x findObject (ETXTRU x) = findObject x getName (ETXTRU x) = getName x isA (ETXTRU x) = isA x isFolder (ETXTRU x) = isFolder x isEqual (ETXTRU x) = isEqual x isSortable (ETXTRU x) = isSortable x paint (ETXTRU x) = paint x printObj (ETXTRU x) = printObj x recursiveRemove (ETXTRU x) = recursiveRemove x saveAs (ETXTRU x) = saveAs x useCurrentStyle (ETXTRU x) = useCurrentStyle x write (ETXTRU x) = write x instance IDeletable (Exist TXTRU) where delete (ETXTRU x) = delete x newTXTRU :: String -> String -> String -> Int -> Int -> IO TXTRU newTXTRU = xform4 c_txtru_newtxtru instance FPtr (Exist TXTRU) where type Raw (Exist TXTRU) = RawTXTRU get_fptr (ETXTRU obj) = castForeignPtr (get_fptr obj) cast_fptr_to_obj fptr = ETXTRU (cast_fptr_to_obj (fptr :: ForeignPtr RawTXTRU) :: TXTRU)