gi-pango (empty) → 0.1.36.8
raw patch · 6 files changed
+12018/−0 lines, 6 filesdep +basedep +bytestringdep +containerssetup-changed
Dependencies added: base, bytestring, containers, gi-glib, gi-gobject, haskell-gi-base, text, transformers
Files
- GI/Pango.hs +11374/−0
- GI/PangoAttributes.hs +72/−0
- GI/PangoSignals.hs +41/−0
- LICENSE +502/−0
- Setup.hs +3/−0
- gi-pango.cabal +26/−0
+ GI/Pango.hs view
@@ -0,0 +1,11374 @@+-- Generated code.++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++{-# LANGUAGE ForeignFunctionInterface, ConstraintKinds,+ TypeFamilies, MultiParamTypeClasses, KindSignatures,+ FlexibleInstances, UndecidableInstances, DataKinds,+ OverloadedStrings, NegativeLiterals, FlexibleContexts #-}++module GI.Pango where++import Prelude ()+import Data.GI.Base.ShortPrelude+import Data.Char+import Data.Int+import Data.Word+import qualified Data.ByteString.Char8 as B+import Data.ByteString.Char8 (ByteString)+import qualified Data.Map as Map+import Foreign.C+import Foreign.Ptr+import Foreign.ForeignPtr+import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)+import Foreign.Storable (peek, poke, sizeOf)+import Control.Applicative ((<$>))+import Control.Exception (onException)+import Control.Monad.IO.Class+import qualified Data.Text as T++import Data.GI.Base.Attributes hiding (get, set)+import Data.GI.Base.BasicTypes+import Data.GI.Base.BasicConversions+import Data.GI.Base.Closure+import Data.GI.Base.GError+import Data.GI.Base.GHashTable+import Data.GI.Base.GParamSpec+import Data.GI.Base.GVariant+import Data.GI.Base.GValue+import Data.GI.Base.ManagedPtr+import Data.GI.Base.Overloading+import Data.GI.Base.Properties hiding (new)+import Data.GI.Base.Signals (SignalConnectMode(..), connectSignalFunPtr, SignalHandlerId)+import Data.GI.Base.Utils++import qualified GI.GLib as GLib+import qualified GI.GLibAttributes as GLibA+import qualified GI.GObject as GObject+import qualified GI.GObjectAttributes as GObjectA++-- Enum Alignment++data Alignment = + AlignmentLeft+ | AlignmentCenter+ | AlignmentRight+ | AnotherAlignment Int+ deriving (Show, Eq)++instance Enum Alignment where+ fromEnum AlignmentLeft = 0+ fromEnum AlignmentCenter = 1+ fromEnum AlignmentRight = 2+ fromEnum (AnotherAlignment k) = k++ toEnum 0 = AlignmentLeft+ toEnum 1 = AlignmentCenter+ toEnum 2 = AlignmentRight+ toEnum k = AnotherAlignment k++foreign import ccall "pango_alignment_get_type" c_pango_alignment_get_type :: + IO GType++instance BoxedEnum Alignment where+ boxedEnumType _ = c_pango_alignment_get_type++-- struct Analysis+newtype Analysis = Analysis (ForeignPtr Analysis)+noAnalysis :: Maybe Analysis+noAnalysis = Nothing++analysisReadShapeEngine :: Analysis -> IO EngineShape+analysisReadShapeEngine s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr EngineShape)+ val' <- (newObject EngineShape) val+ return val'++analysisReadLangEngine :: Analysis -> IO EngineLang+analysisReadLangEngine s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO (Ptr EngineLang)+ val' <- (newObject EngineLang) val+ return val'++analysisReadFont :: Analysis -> IO Font+analysisReadFont s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr Font)+ val' <- (newObject Font) val+ return val'++analysisReadLevel :: Analysis -> IO Word8+analysisReadLevel s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO Word8+ return val++analysisReadGravity :: Analysis -> IO Word8+analysisReadGravity s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 25) :: IO Word8+ return val++analysisReadFlags :: Analysis -> IO Word8+analysisReadFlags s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 26) :: IO Word8+ return val++analysisReadScript :: Analysis -> IO Word8+analysisReadScript s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 27) :: IO Word8+ return val++analysisReadLanguage :: Analysis -> IO Language+analysisReadLanguage s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO (Ptr Language)+ val' <- (newBoxed Language) val+ return val'++analysisReadExtraAttrs :: Analysis -> IO ([Ptr ()])+analysisReadExtraAttrs s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 40) :: IO (Ptr (GSList (Ptr ())))+ val' <- unpackGSList val+ return val'++-- struct AttrClass+newtype AttrClass = AttrClass (ForeignPtr AttrClass)+noAttrClass :: Maybe AttrClass+noAttrClass = Nothing++attrClassReadType :: AttrClass -> IO AttrType+attrClassReadType s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO CUInt+ let val' = (toEnum . fromIntegral) val+ return val'++-- XXX Skipped getter for "AttrClass:destroy" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- XXX Skipped getter for "AttrClass:equal" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- struct AttrColor+newtype AttrColor = AttrColor (ForeignPtr AttrColor)+noAttrColor :: Maybe AttrColor+noAttrColor = Nothing++attrColorReadAttr :: AttrColor -> IO Attribute+attrColorReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrColorReadColor :: AttrColor -> IO Color+attrColorReadColor s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr Color)+ val' <- (newBoxed Color) val+ return val'++-- callback AttrFilterFunc+attrFilterFuncClosure :: AttrFilterFunc -> IO Closure+attrFilterFuncClosure cb = newCClosure =<< mkAttrFilterFunc wrapped+ where wrapped = attrFilterFuncWrapper Nothing cb++type AttrFilterFuncC =+ Ptr Attribute ->+ Ptr () ->+ IO CInt++foreign import ccall "wrapper"+ mkAttrFilterFunc :: AttrFilterFuncC -> IO (FunPtr AttrFilterFuncC)++type AttrFilterFunc =+ Attribute ->+ IO Bool++noAttrFilterFunc :: Maybe AttrFilterFunc+noAttrFilterFunc = Nothing++attrFilterFuncWrapper ::+ Maybe (Ptr (FunPtr (AttrFilterFuncC))) ->+ AttrFilterFunc ->+ Ptr Attribute ->+ Ptr () ->+ IO CInt+attrFilterFuncWrapper funptrptr _cb attribute _ = do+ attribute' <- (newPtr 16 Attribute) attribute+ result <- _cb attribute'+ maybeReleaseFunPtr funptrptr+ let result' = (fromIntegral . fromEnum) result+ return result'++-- struct AttrFloat+newtype AttrFloat = AttrFloat (ForeignPtr AttrFloat)+noAttrFloat :: Maybe AttrFloat+noAttrFloat = Nothing++attrFloatReadAttr :: AttrFloat -> IO Attribute+attrFloatReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrFloatReadValue :: AttrFloat -> IO Double+attrFloatReadValue s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO CDouble+ let val' = realToFrac val+ return val'++-- struct AttrFontDesc+newtype AttrFontDesc = AttrFontDesc (ForeignPtr AttrFontDesc)+noAttrFontDesc :: Maybe AttrFontDesc+noAttrFontDesc = Nothing++attrFontDescReadAttr :: AttrFontDesc -> IO Attribute+attrFontDescReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrFontDescReadDesc :: AttrFontDesc -> IO FontDescription+attrFontDescReadDesc s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr FontDescription)+ val' <- (newBoxed FontDescription) val+ return val'++-- struct AttrInt+newtype AttrInt = AttrInt (ForeignPtr AttrInt)+noAttrInt :: Maybe AttrInt+noAttrInt = Nothing++attrIntReadAttr :: AttrInt -> IO Attribute+attrIntReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrIntReadValue :: AttrInt -> IO Int32+attrIntReadValue s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Int32+ return val++-- struct AttrIterator+newtype AttrIterator = AttrIterator (ForeignPtr AttrIterator)+noAttrIterator :: Maybe AttrIterator+noAttrIterator = Nothing++-- method AttrIterator::destroy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_iterator_destroy" pango_attr_iterator_destroy :: + Ptr AttrIterator -> -- _obj : TInterface "Pango" "AttrIterator"+ IO ()+++attrIteratorDestroy ::+ (MonadIO m) =>+ AttrIterator -> -- _obj+ m ()+attrIteratorDestroy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_attr_iterator_destroy _obj'+ touchManagedPtr _obj+ return ()++-- method AttrIterator::get_attrs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGSList (TInterface "Pango" "Attribute")+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_iterator_get_attrs" pango_attr_iterator_get_attrs :: + Ptr AttrIterator -> -- _obj : TInterface "Pango" "AttrIterator"+ IO (Ptr (GSList (Ptr Attribute)))+++attrIteratorGetAttrs ::+ (MonadIO m) =>+ AttrIterator -> -- _obj+ m [Attribute]+attrIteratorGetAttrs _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_attr_iterator_get_attrs _obj'+ result' <- unpackGSList result+ result'' <- mapM (wrapPtr Attribute) result'+ g_slist_free result+ touchManagedPtr _obj+ return result''++-- method AttrIterator::get_font+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "extra_attrs", argType = TGSList (TInterface "Pango" "Attribute"), direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "extra_attrs", argType = TGSList (TInterface "Pango" "Attribute"), direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_iterator_get_font" pango_attr_iterator_get_font :: + Ptr AttrIterator -> -- _obj : TInterface "Pango" "AttrIterator"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ Ptr (GSList (Ptr Attribute)) -> -- extra_attrs : TGSList (TInterface "Pango" "Attribute")+ IO ()+++attrIteratorGetFont ::+ (MonadIO m) =>+ AttrIterator -> -- _obj+ FontDescription -> -- desc+ Maybe (Language) -> -- language+ [Attribute] -> -- extra_attrs+ m ()+attrIteratorGetFont _obj desc language extra_attrs = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let desc' = unsafeManagedPtrGetPtr desc+ maybeLanguage <- case language of+ Nothing -> return nullPtr+ Just jLanguage -> do+ let jLanguage' = unsafeManagedPtrGetPtr jLanguage+ return jLanguage'+ let extra_attrs' = map unsafeManagedPtrGetPtr extra_attrs+ extra_attrs'' <- packGSList extra_attrs'+ pango_attr_iterator_get_font _obj' desc' maybeLanguage extra_attrs''+ touchManagedPtr _obj+ touchManagedPtr desc+ whenJust language touchManagedPtr+ mapM_ touchManagedPtr extra_attrs+ return ()++-- method AttrIterator::next+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_iterator_next" pango_attr_iterator_next :: + Ptr AttrIterator -> -- _obj : TInterface "Pango" "AttrIterator"+ IO CInt+++attrIteratorNext ::+ (MonadIO m) =>+ AttrIterator -> -- _obj+ m Bool+attrIteratorNext _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_attr_iterator_next _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method AttrIterator::range+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "end", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_iterator_range" pango_attr_iterator_range :: + Ptr AttrIterator -> -- _obj : TInterface "Pango" "AttrIterator"+ Ptr Int32 -> -- start : TBasicType TInt32+ Ptr Int32 -> -- end : TBasicType TInt32+ IO ()+++attrIteratorRange ::+ (MonadIO m) =>+ AttrIterator -> -- _obj+ m (Int32,Int32)+attrIteratorRange _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ start <- allocMem :: IO (Ptr Int32)+ end <- allocMem :: IO (Ptr Int32)+ pango_attr_iterator_range _obj' start end+ start' <- peek start+ end' <- peek end+ touchManagedPtr _obj+ freeMem start+ freeMem end+ return (start', end')++-- struct AttrLanguage+newtype AttrLanguage = AttrLanguage (ForeignPtr AttrLanguage)+noAttrLanguage :: Maybe AttrLanguage+noAttrLanguage = Nothing++attrLanguageReadAttr :: AttrLanguage -> IO Attribute+attrLanguageReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrLanguageReadValue :: AttrLanguage -> IO Language+attrLanguageReadValue s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr Language)+ val' <- (newBoxed Language) val+ return val'++-- struct AttrList+newtype AttrList = AttrList (ForeignPtr AttrList)+noAttrList :: Maybe AttrList+noAttrList = Nothing++foreign import ccall "pango_attr_list_get_type" c_pango_attr_list_get_type :: + IO GType++instance BoxedObject AttrList where+ boxedType _ = c_pango_attr_list_get_type++-- method AttrList::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "AttrList"+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_new" pango_attr_list_new :: + IO (Ptr AttrList)+++attrListNew ::+ (MonadIO m) =>+ m AttrList+attrListNew = liftIO $ do+ result <- pango_attr_list_new+ result' <- (wrapBoxed AttrList) result+ return result'++-- method AttrList::change+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_change" pango_attr_list_change :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ Ptr Attribute -> -- attr : TInterface "Pango" "Attribute"+ IO ()+++attrListChange ::+ (MonadIO m) =>+ AttrList -> -- _obj+ Attribute -> -- attr+ m ()+attrListChange _obj attr = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let attr' = unsafeManagedPtrGetPtr attr+ pango_attr_list_change _obj' attr'+ touchManagedPtr _obj+ touchManagedPtr attr+ return ()++-- method AttrList::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "AttrList"+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_copy" pango_attr_list_copy :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ IO (Ptr AttrList)+++attrListCopy ::+ (MonadIO m) =>+ AttrList -> -- _obj+ m AttrList+attrListCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_attr_list_copy _obj'+ result' <- (wrapBoxed AttrList) result+ touchManagedPtr _obj+ return result'++-- method AttrList::filter+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Pango" "AttrFilterFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Pango" "AttrFilterFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "AttrList"+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_filter" pango_attr_list_filter :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ FunPtr AttrFilterFuncC -> -- func : TInterface "Pango" "AttrFilterFunc"+ Ptr () -> -- data : TBasicType TVoid+ IO (Ptr AttrList)+++attrListFilter ::+ (MonadIO m) =>+ AttrList -> -- _obj+ AttrFilterFunc -> -- func+ m AttrList+attrListFilter _obj func = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ func' <- mkAttrFilterFunc (attrFilterFuncWrapper Nothing func)+ let data_ = nullPtr+ result <- pango_attr_list_filter _obj' func' data_+ result' <- (wrapBoxed AttrList) result+ safeFreeFunPtr $ castFunPtrToPtr func'+ touchManagedPtr _obj+ return result'++-- method AttrList::insert+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_insert" pango_attr_list_insert :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ Ptr Attribute -> -- attr : TInterface "Pango" "Attribute"+ IO ()+++attrListInsert ::+ (MonadIO m) =>+ AttrList -> -- _obj+ Attribute -> -- attr+ m ()+attrListInsert _obj attr = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let attr' = unsafeManagedPtrGetPtr attr+ pango_attr_list_insert _obj' attr'+ touchManagedPtr _obj+ touchManagedPtr attr+ return ()++-- method AttrList::insert_before+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_insert_before" pango_attr_list_insert_before :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ Ptr Attribute -> -- attr : TInterface "Pango" "Attribute"+ IO ()+++attrListInsertBefore ::+ (MonadIO m) =>+ AttrList -> -- _obj+ Attribute -> -- attr+ m ()+attrListInsertBefore _obj attr = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let attr' = unsafeManagedPtrGetPtr attr+ pango_attr_list_insert_before _obj' attr'+ touchManagedPtr _obj+ touchManagedPtr attr+ return ()++-- method AttrList::ref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "AttrList"+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_ref" pango_attr_list_ref :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ IO (Ptr AttrList)+++attrListRef ::+ (MonadIO m) =>+ AttrList -> -- _obj+ m AttrList+attrListRef _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_attr_list_ref _obj'+ result' <- (wrapBoxed AttrList) result+ touchManagedPtr _obj+ return result'++-- method AttrList::splice+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_splice" pango_attr_list_splice :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ Ptr AttrList -> -- other : TInterface "Pango" "AttrList"+ Int32 -> -- pos : TBasicType TInt32+ Int32 -> -- len : TBasicType TInt32+ IO ()+++attrListSplice ::+ (MonadIO m) =>+ AttrList -> -- _obj+ AttrList -> -- other+ Int32 -> -- pos+ Int32 -> -- len+ m ()+attrListSplice _obj other pos len = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let other' = unsafeManagedPtrGetPtr other+ pango_attr_list_splice _obj' other' pos len+ touchManagedPtr _obj+ touchManagedPtr other+ return ()++-- method AttrList::unref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_list_unref" pango_attr_list_unref :: + Ptr AttrList -> -- _obj : TInterface "Pango" "AttrList"+ IO ()+++attrListUnref ::+ (MonadIO m) =>+ AttrList -> -- _obj+ m ()+attrListUnref _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_attr_list_unref _obj'+ touchManagedPtr _obj+ return ()++-- struct AttrShape+newtype AttrShape = AttrShape (ForeignPtr AttrShape)+noAttrShape :: Maybe AttrShape+noAttrShape = Nothing++attrShapeReadAttr :: AttrShape -> IO Attribute+attrShapeReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrShapeReadInkRect :: AttrShape -> IO Rectangle+attrShapeReadInkRect s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr Rectangle)+ val' <- (newPtr 16 Rectangle) val+ return val'++attrShapeReadLogicalRect :: AttrShape -> IO Rectangle+attrShapeReadLogicalRect s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO (Ptr Rectangle)+ val' <- (newPtr 16 Rectangle) val+ return val'++attrShapeReadData :: AttrShape -> IO (Ptr ())+attrShapeReadData s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 48) :: IO (Ptr ())+ return val++-- XXX Skipped getter for "AttrShape:destroy_func" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- struct AttrSize+newtype AttrSize = AttrSize (ForeignPtr AttrSize)+noAttrSize :: Maybe AttrSize+noAttrSize = Nothing++attrSizeReadAttr :: AttrSize -> IO Attribute+attrSizeReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrSizeReadSize :: AttrSize -> IO Int32+attrSizeReadSize s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Int32+ return val++attrSizeReadAbsolute :: AttrSize -> IO Word32+attrSizeReadAbsolute s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 20) :: IO Word32+ return val++-- struct AttrString+newtype AttrString = AttrString (ForeignPtr AttrString)+noAttrString :: Maybe AttrString+noAttrString = Nothing++attrStringReadAttr :: AttrString -> IO Attribute+attrStringReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Attribute)+ val' <- (newPtr 16 Attribute) val+ return val'++attrStringReadValue :: AttrString -> IO T.Text+attrStringReadValue s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO CString+ val' <- cstringToText val+ return val'++-- Enum AttrType++data AttrType = + AttrTypeInvalid+ | AttrTypeLanguage+ | AttrTypeFamily+ | AttrTypeStyle+ | AttrTypeWeight+ | AttrTypeVariant+ | AttrTypeStretch+ | AttrTypeSize+ | AttrTypeFontDesc+ | AttrTypeForeground+ | AttrTypeBackground+ | AttrTypeUnderline+ | AttrTypeStrikethrough+ | AttrTypeRise+ | AttrTypeShape+ | AttrTypeScale+ | AttrTypeFallback+ | AttrTypeLetterSpacing+ | AttrTypeUnderlineColor+ | AttrTypeStrikethroughColor+ | AttrTypeAbsoluteSize+ | AttrTypeGravity+ | AttrTypeGravityHint+ | AnotherAttrType Int+ deriving (Show, Eq)++instance Enum AttrType where+ fromEnum AttrTypeInvalid = 0+ fromEnum AttrTypeLanguage = 1+ fromEnum AttrTypeFamily = 2+ fromEnum AttrTypeStyle = 3+ fromEnum AttrTypeWeight = 4+ fromEnum AttrTypeVariant = 5+ fromEnum AttrTypeStretch = 6+ fromEnum AttrTypeSize = 7+ fromEnum AttrTypeFontDesc = 8+ fromEnum AttrTypeForeground = 9+ fromEnum AttrTypeBackground = 10+ fromEnum AttrTypeUnderline = 11+ fromEnum AttrTypeStrikethrough = 12+ fromEnum AttrTypeRise = 13+ fromEnum AttrTypeShape = 14+ fromEnum AttrTypeScale = 15+ fromEnum AttrTypeFallback = 16+ fromEnum AttrTypeLetterSpacing = 17+ fromEnum AttrTypeUnderlineColor = 18+ fromEnum AttrTypeStrikethroughColor = 19+ fromEnum AttrTypeAbsoluteSize = 20+ fromEnum AttrTypeGravity = 21+ fromEnum AttrTypeGravityHint = 22+ fromEnum (AnotherAttrType k) = k++ toEnum 0 = AttrTypeInvalid+ toEnum 1 = AttrTypeLanguage+ toEnum 2 = AttrTypeFamily+ toEnum 3 = AttrTypeStyle+ toEnum 4 = AttrTypeWeight+ toEnum 5 = AttrTypeVariant+ toEnum 6 = AttrTypeStretch+ toEnum 7 = AttrTypeSize+ toEnum 8 = AttrTypeFontDesc+ toEnum 9 = AttrTypeForeground+ toEnum 10 = AttrTypeBackground+ toEnum 11 = AttrTypeUnderline+ toEnum 12 = AttrTypeStrikethrough+ toEnum 13 = AttrTypeRise+ toEnum 14 = AttrTypeShape+ toEnum 15 = AttrTypeScale+ toEnum 16 = AttrTypeFallback+ toEnum 17 = AttrTypeLetterSpacing+ toEnum 18 = AttrTypeUnderlineColor+ toEnum 19 = AttrTypeStrikethroughColor+ toEnum 20 = AttrTypeAbsoluteSize+ toEnum 21 = AttrTypeGravity+ toEnum 22 = AttrTypeGravityHint+ toEnum k = AnotherAttrType k++foreign import ccall "pango_attr_type_get_type" c_pango_attr_type_get_type :: + IO GType++instance BoxedEnum AttrType where+ boxedEnumType _ = c_pango_attr_type_get_type++-- struct Attribute+newtype Attribute = Attribute (ForeignPtr Attribute)+noAttribute :: Maybe Attribute+noAttribute = Nothing++attributeReadKlass :: Attribute -> IO AttrClass+attributeReadKlass s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr AttrClass)+ val' <- (newPtr 32 AttrClass) val+ return val'++attributeReadStartIndex :: Attribute -> IO Word32+attributeReadStartIndex s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Word32+ return val++attributeReadEndIndex :: Attribute -> IO Word32+attributeReadEndIndex s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 12) :: IO Word32+ return val++-- method Attribute::destroy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attribute_destroy" pango_attribute_destroy :: + Ptr Attribute -> -- _obj : TInterface "Pango" "Attribute"+ IO ()+++attributeDestroy ::+ (MonadIO m) =>+ Attribute -> -- _obj+ m ()+attributeDestroy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_attribute_destroy _obj'+ touchManagedPtr _obj+ return ()++-- method Attribute::equal+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr2", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr2", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_attribute_equal" pango_attribute_equal :: + Ptr Attribute -> -- _obj : TInterface "Pango" "Attribute"+ Ptr Attribute -> -- attr2 : TInterface "Pango" "Attribute"+ IO CInt+++attributeEqual ::+ (MonadIO m) =>+ Attribute -> -- _obj+ Attribute -> -- attr2+ m Bool+attributeEqual _obj attr2 = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let attr2' = unsafeManagedPtrGetPtr attr2+ result <- pango_attribute_equal _obj' attr2'+ let result' = (/= 0) result+ touchManagedPtr _obj+ touchManagedPtr attr2+ return result'++-- method Attribute::init+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "klass", argType = TInterface "Pango" "AttrClass", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Attribute", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "klass", argType = TInterface "Pango" "AttrClass", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_attribute_init" pango_attribute_init :: + Ptr Attribute -> -- _obj : TInterface "Pango" "Attribute"+ Ptr AttrClass -> -- klass : TInterface "Pango" "AttrClass"+ IO ()+++attributeInit ::+ (MonadIO m) =>+ Attribute -> -- _obj+ AttrClass -> -- klass+ m ()+attributeInit _obj klass = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let klass' = unsafeManagedPtrGetPtr klass+ pango_attribute_init _obj' klass'+ touchManagedPtr _obj+ touchManagedPtr klass+ return ()++-- Enum BidiType++data BidiType = + BidiTypeL+ | BidiTypeLre+ | BidiTypeLro+ | BidiTypeR+ | BidiTypeAl+ | BidiTypeRle+ | BidiTypeRlo+ | BidiTypePdf+ | BidiTypeEn+ | BidiTypeEs+ | BidiTypeEt+ | BidiTypeAn+ | BidiTypeCs+ | BidiTypeNsm+ | BidiTypeBn+ | BidiTypeB+ | BidiTypeS+ | BidiTypeWs+ | BidiTypeOn+ | AnotherBidiType Int+ deriving (Show, Eq)++instance Enum BidiType where+ fromEnum BidiTypeL = 0+ fromEnum BidiTypeLre = 1+ fromEnum BidiTypeLro = 2+ fromEnum BidiTypeR = 3+ fromEnum BidiTypeAl = 4+ fromEnum BidiTypeRle = 5+ fromEnum BidiTypeRlo = 6+ fromEnum BidiTypePdf = 7+ fromEnum BidiTypeEn = 8+ fromEnum BidiTypeEs = 9+ fromEnum BidiTypeEt = 10+ fromEnum BidiTypeAn = 11+ fromEnum BidiTypeCs = 12+ fromEnum BidiTypeNsm = 13+ fromEnum BidiTypeBn = 14+ fromEnum BidiTypeB = 15+ fromEnum BidiTypeS = 16+ fromEnum BidiTypeWs = 17+ fromEnum BidiTypeOn = 18+ fromEnum (AnotherBidiType k) = k++ toEnum 0 = BidiTypeL+ toEnum 1 = BidiTypeLre+ toEnum 2 = BidiTypeLro+ toEnum 3 = BidiTypeR+ toEnum 4 = BidiTypeAl+ toEnum 5 = BidiTypeRle+ toEnum 6 = BidiTypeRlo+ toEnum 7 = BidiTypePdf+ toEnum 8 = BidiTypeEn+ toEnum 9 = BidiTypeEs+ toEnum 10 = BidiTypeEt+ toEnum 11 = BidiTypeAn+ toEnum 12 = BidiTypeCs+ toEnum 13 = BidiTypeNsm+ toEnum 14 = BidiTypeBn+ toEnum 15 = BidiTypeB+ toEnum 16 = BidiTypeS+ toEnum 17 = BidiTypeWs+ toEnum 18 = BidiTypeOn+ toEnum k = AnotherBidiType k++foreign import ccall "pango_bidi_type_get_type" c_pango_bidi_type_get_type :: + IO GType++instance BoxedEnum BidiType where+ boxedEnumType _ = c_pango_bidi_type_get_type++-- struct Color+newtype Color = Color (ForeignPtr Color)+noColor :: Maybe Color+noColor = Nothing++foreign import ccall "pango_color_get_type" c_pango_color_get_type :: + IO GType++instance BoxedObject Color where+ boxedType _ = c_pango_color_get_type++colorReadRed :: Color -> IO Word16+colorReadRed s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Word16+ return val++colorReadGreen :: Color -> IO Word16+colorReadGreen s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 2) :: IO Word16+ return val++colorReadBlue :: Color -> IO Word16+colorReadBlue s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Word16+ return val++-- method Color::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Color"+-- throws : False+-- Skip return : False++foreign import ccall "pango_color_copy" pango_color_copy :: + Ptr Color -> -- _obj : TInterface "Pango" "Color"+ IO (Ptr Color)+++colorCopy ::+ (MonadIO m) =>+ Color -> -- _obj+ m Color+colorCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_color_copy _obj'+ result' <- (wrapBoxed Color) result+ touchManagedPtr _obj+ return result'++-- method Color::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_color_free" pango_color_free :: + Ptr Color -> -- _obj : TInterface "Pango" "Color"+ IO ()+++colorFree ::+ (MonadIO m) =>+ Color -> -- _obj+ m ()+colorFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_color_free _obj'+ touchManagedPtr _obj+ return ()++-- method Color::parse+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "spec", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "spec", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_color_parse" pango_color_parse :: + Ptr Color -> -- _obj : TInterface "Pango" "Color"+ CString -> -- spec : TBasicType TUTF8+ IO CInt+++colorParse ::+ (MonadIO m) =>+ Color -> -- _obj+ T.Text -> -- spec+ m Bool+colorParse _obj spec = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ spec' <- textToCString spec+ result <- pango_color_parse _obj' spec'+ let result' = (/= 0) result+ touchManagedPtr _obj+ freeMem spec'+ return result'++-- method Color::to_string+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_color_to_string" pango_color_to_string :: + Ptr Color -> -- _obj : TInterface "Pango" "Color"+ IO CString+++colorToString ::+ (MonadIO m) =>+ Color -> -- _obj+ m T.Text+colorToString _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_color_to_string _obj'+ result' <- cstringToText result+ freeMem result+ touchManagedPtr _obj+ return result'++-- object Context +newtype Context = Context (ForeignPtr Context)+noContext :: Maybe Context+noContext = Nothing++foreign import ccall "pango_context_get_type"+ c_pango_context_get_type :: IO GType++type instance ParentTypes Context = '[GObject.Object]++instance GObject Context where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_context_get_type+ ++class GObject o => ContextK o+instance (GObject o, IsDescendantOf Context o) => ContextK o++toContext :: ContextK o => o -> IO Context+toContext = unsafeCastTo Context++-- method Context::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "Context"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_new" pango_context_new :: + IO (Ptr Context)+++contextNew ::+ (MonadIO m) =>+ m Context+contextNew = liftIO $ do+ result <- pango_context_new+ result' <- (wrapObject Context) result+ return result'++-- method Context::changed+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_changed" pango_context_changed :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO ()+++contextChanged ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m ()+contextChanged _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_context_changed _obj'+ touchManagedPtr _obj+ return ()++-- method Context::get_base_dir+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Direction"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_base_dir" pango_context_get_base_dir :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO CUInt+++contextGetBaseDir ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Direction+contextGetBaseDir _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_base_dir _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Context::get_base_gravity+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_base_gravity" pango_context_get_base_gravity :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO CUInt+++contextGetBaseGravity ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Gravity+contextGetBaseGravity _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_base_gravity _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Context::get_font_description+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_font_description" pango_context_get_font_description :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO (Ptr FontDescription)+++contextGetFontDescription ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m FontDescription+contextGetFontDescription _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_font_description _obj'+ result' <- (newBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method Context::get_font_map+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMap"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_font_map" pango_context_get_font_map :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO (Ptr FontMap)+++contextGetFontMap ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m FontMap+contextGetFontMap _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_font_map _obj'+ result' <- (newObject FontMap) result+ touchManagedPtr _obj+ return result'++-- method Context::get_gravity+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_gravity" pango_context_get_gravity :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO CUInt+++contextGetGravity ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Gravity+contextGetGravity _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_gravity _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Context::get_gravity_hint+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GravityHint"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_gravity_hint" pango_context_get_gravity_hint :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO CUInt+++contextGetGravityHint ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m GravityHint+contextGetGravityHint _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_gravity_hint _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Context::get_language+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Language"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_language" pango_context_get_language :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO (Ptr Language)+++contextGetLanguage ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Language+contextGetLanguage _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_language _obj'+ result' <- (wrapBoxed Language) result+ touchManagedPtr _obj+ return result'++-- method Context::get_matrix+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Matrix"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_matrix" pango_context_get_matrix :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO (Ptr Matrix)+++contextGetMatrix ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Matrix+contextGetMatrix _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_matrix _obj'+ result' <- (newBoxed Matrix) result+ touchManagedPtr _obj+ return result'++-- method Context::get_metrics+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMetrics"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_metrics" pango_context_get_metrics :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ IO (Ptr FontMetrics)+++contextGetMetrics ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ Maybe (FontDescription) -> -- desc+ Maybe (Language) -> -- language+ m FontMetrics+contextGetMetrics _obj desc language = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeDesc <- case desc of+ Nothing -> return nullPtr+ Just jDesc -> do+ let jDesc' = unsafeManagedPtrGetPtr jDesc+ return jDesc'+ maybeLanguage <- case language of+ Nothing -> return nullPtr+ Just jLanguage -> do+ let jLanguage' = unsafeManagedPtrGetPtr jLanguage+ return jLanguage'+ result <- pango_context_get_metrics _obj' maybeDesc maybeLanguage+ result' <- (wrapBoxed FontMetrics) result+ touchManagedPtr _obj+ whenJust desc touchManagedPtr+ whenJust language touchManagedPtr+ return result'++-- method Context::get_serial+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_get_serial" pango_context_get_serial :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ IO Word32+++contextGetSerial ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m Word32+contextGetSerial _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_context_get_serial _obj'+ touchManagedPtr _obj+ return result++-- method Context::list_families+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "families", argType = TCArray False (-1) 2 (TInterface "Pango" "FontFamily"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_list_families" pango_context_list_families :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr (Ptr (Ptr FontFamily)) -> -- families : TCArray False (-1) 2 (TInterface "Pango" "FontFamily")+ Ptr Int32 -> -- n_families : TBasicType TInt32+ IO ()+++contextListFamilies ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ m ([FontFamily])+contextListFamilies _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ families <- allocMem :: IO (Ptr (Ptr (Ptr FontFamily)))+ n_families <- allocMem :: IO (Ptr Int32)+ pango_context_list_families _obj' families n_families+ n_families' <- peek n_families+ families' <- peek families+ families'' <- (unpackPtrArrayWithLength n_families') families'+ families''' <- mapM (newObject FontFamily) families''+ freeMem families'+ touchManagedPtr _obj+ freeMem families+ freeMem n_families+ return families'''++-- method Context::load_font+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Font"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_load_font" pango_context_load_font :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ IO (Ptr Font)+++contextLoadFont ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ FontDescription -> -- desc+ m Font+contextLoadFont _obj desc = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let desc' = unsafeManagedPtrGetPtr desc+ result <- pango_context_load_font _obj' desc'+ result' <- (wrapObject Font) result+ touchManagedPtr _obj+ touchManagedPtr desc+ return result'++-- method Context::load_fontset+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Fontset"+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_load_fontset" pango_context_load_fontset :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ IO (Ptr Fontset)+++contextLoadFontset ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ FontDescription -> -- desc+ Language -> -- language+ m Fontset+contextLoadFontset _obj desc language = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let desc' = unsafeManagedPtrGetPtr desc+ let language' = unsafeManagedPtrGetPtr language+ result <- pango_context_load_fontset _obj' desc' language'+ result' <- (wrapObject Fontset) result+ touchManagedPtr _obj+ touchManagedPtr desc+ touchManagedPtr language+ return result'++-- method Context::set_base_dir+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_base_dir" pango_context_set_base_dir :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ CUInt -> -- direction : TInterface "Pango" "Direction"+ IO ()+++contextSetBaseDir ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ Direction -> -- direction+ m ()+contextSetBaseDir _obj direction = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let direction' = (fromIntegral . fromEnum) direction+ pango_context_set_base_dir _obj' direction'+ touchManagedPtr _obj+ return ()++-- method Context::set_base_gravity+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_base_gravity" pango_context_set_base_gravity :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ CUInt -> -- gravity : TInterface "Pango" "Gravity"+ IO ()+++contextSetBaseGravity ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ Gravity -> -- gravity+ m ()+contextSetBaseGravity _obj gravity = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let gravity' = (fromIntegral . fromEnum) gravity+ pango_context_set_base_gravity _obj' gravity'+ touchManagedPtr _obj+ return ()++-- method Context::set_font_description+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_font_description" pango_context_set_font_description :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ IO ()+++contextSetFontDescription ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ FontDescription -> -- desc+ m ()+contextSetFontDescription _obj desc = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let desc' = unsafeManagedPtrGetPtr desc+ pango_context_set_font_description _obj' desc'+ touchManagedPtr _obj+ touchManagedPtr desc+ return ()++-- method Context::set_font_map+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font_map", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font_map", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_font_map" pango_context_set_font_map :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr FontMap -> -- font_map : TInterface "Pango" "FontMap"+ IO ()+++contextSetFontMap ::+ (MonadIO m, ContextK a, FontMapK b) =>+ a -> -- _obj+ b -> -- font_map+ m ()+contextSetFontMap _obj font_map = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let font_map' = unsafeManagedPtrCastPtr font_map+ pango_context_set_font_map _obj' font_map'+ touchManagedPtr _obj+ touchManagedPtr font_map+ return ()++-- method Context::set_gravity_hint+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_gravity_hint" pango_context_set_gravity_hint :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ CUInt -> -- hint : TInterface "Pango" "GravityHint"+ IO ()+++contextSetGravityHint ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ GravityHint -> -- hint+ m ()+contextSetGravityHint _obj hint = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let hint' = (fromIntegral . fromEnum) hint+ pango_context_set_gravity_hint _obj' hint'+ touchManagedPtr _obj+ return ()++-- method Context::set_language+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_language" pango_context_set_language :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ IO ()+++contextSetLanguage ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ Language -> -- language+ m ()+contextSetLanguage _obj language = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let language' = unsafeManagedPtrGetPtr language+ pango_context_set_language _obj' language'+ touchManagedPtr _obj+ touchManagedPtr language+ return ()++-- method Context::set_matrix+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_context_set_matrix" pango_context_set_matrix :: + Ptr Context -> -- _obj : TInterface "Pango" "Context"+ Ptr Matrix -> -- matrix : TInterface "Pango" "Matrix"+ IO ()+++contextSetMatrix ::+ (MonadIO m, ContextK a) =>+ a -> -- _obj+ Maybe (Matrix) -> -- matrix+ m ()+contextSetMatrix _obj matrix = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeMatrix <- case matrix of+ Nothing -> return nullPtr+ Just jMatrix -> do+ let jMatrix' = unsafeManagedPtrGetPtr jMatrix+ return jMatrix'+ pango_context_set_matrix _obj' maybeMatrix+ touchManagedPtr _obj+ whenJust matrix touchManagedPtr+ return ()++-- struct Coverage+newtype Coverage = Coverage (ForeignPtr Coverage)+noCoverage :: Maybe Coverage+noCoverage = Nothing++-- method Coverage::get+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "CoverageLevel"+-- throws : False+-- Skip return : False++foreign import ccall "pango_coverage_get" pango_coverage_get :: + Ptr Coverage -> -- _obj : TInterface "Pango" "Coverage"+ Int32 -> -- index_ : TBasicType TInt32+ IO CUInt+++coverageGet ::+ (MonadIO m) =>+ Coverage -> -- _obj+ Int32 -> -- index_+ m CoverageLevel+coverageGet _obj index_ = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_coverage_get _obj' index_+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Coverage::max+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_coverage_max" pango_coverage_max :: + Ptr Coverage -> -- _obj : TInterface "Pango" "Coverage"+ Ptr Coverage -> -- other : TInterface "Pango" "Coverage"+ IO ()+++coverageMax ::+ (MonadIO m) =>+ Coverage -> -- _obj+ Coverage -> -- other+ m ()+coverageMax _obj other = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let other' = unsafeManagedPtrGetPtr other+ pango_coverage_max _obj' other'+ touchManagedPtr _obj+ touchManagedPtr other+ return ()++-- method Coverage::set+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "level", argType = TInterface "Pango" "CoverageLevel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "level", argType = TInterface "Pango" "CoverageLevel", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_coverage_set" pango_coverage_set :: + Ptr Coverage -> -- _obj : TInterface "Pango" "Coverage"+ Int32 -> -- index_ : TBasicType TInt32+ CUInt -> -- level : TInterface "Pango" "CoverageLevel"+ IO ()+++coverageSet ::+ (MonadIO m) =>+ Coverage -> -- _obj+ Int32 -> -- index_+ CoverageLevel -> -- level+ m ()+coverageSet _obj index_ level = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let level' = (fromIntegral . fromEnum) level+ pango_coverage_set _obj' index_ level'+ touchManagedPtr _obj+ return ()++-- method Coverage::to_bytes+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "bytes", argType = TCArray False (-1) 2 (TBasicType TUInt8), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "n_bytes", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_bytes", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_coverage_to_bytes" pango_coverage_to_bytes :: + Ptr Coverage -> -- _obj : TInterface "Pango" "Coverage"+ Ptr (Ptr Word8) -> -- bytes : TCArray False (-1) 2 (TBasicType TUInt8)+ Ptr Int32 -> -- n_bytes : TBasicType TInt32+ IO ()+++coverageToBytes ::+ (MonadIO m) =>+ Coverage -> -- _obj+ m (ByteString)+coverageToBytes _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ bytes <- allocMem :: IO (Ptr (Ptr Word8))+ n_bytes <- allocMem :: IO (Ptr Int32)+ pango_coverage_to_bytes _obj' bytes n_bytes+ n_bytes' <- peek n_bytes+ bytes' <- peek bytes+ bytes'' <- (unpackByteStringWithLength n_bytes') bytes'+ freeMem bytes'+ touchManagedPtr _obj+ freeMem bytes+ freeMem n_bytes+ return bytes''++-- method Coverage::unref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Coverage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_coverage_unref" pango_coverage_unref :: + Ptr Coverage -> -- _obj : TInterface "Pango" "Coverage"+ IO ()+++coverageUnref ::+ (MonadIO m) =>+ Coverage -> -- _obj+ m ()+coverageUnref _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_coverage_unref _obj'+ touchManagedPtr _obj+ return ()++-- Enum CoverageLevel++data CoverageLevel = + CoverageLevelNone+ | CoverageLevelFallback+ | CoverageLevelApproximate+ | CoverageLevelExact+ | AnotherCoverageLevel Int+ deriving (Show, Eq)++instance Enum CoverageLevel where+ fromEnum CoverageLevelNone = 0+ fromEnum CoverageLevelFallback = 1+ fromEnum CoverageLevelApproximate = 2+ fromEnum CoverageLevelExact = 3+ fromEnum (AnotherCoverageLevel k) = k++ toEnum 0 = CoverageLevelNone+ toEnum 1 = CoverageLevelFallback+ toEnum 2 = CoverageLevelApproximate+ toEnum 3 = CoverageLevelExact+ toEnum k = AnotherCoverageLevel k++foreign import ccall "pango_coverage_level_get_type" c_pango_coverage_level_get_type :: + IO GType++instance BoxedEnum CoverageLevel where+ boxedEnumType _ = c_pango_coverage_level_get_type++-- Enum Direction++data Direction = + DirectionLtr+ | DirectionRtl+ | DirectionTtbLtr+ | DirectionTtbRtl+ | DirectionWeakLtr+ | DirectionWeakRtl+ | DirectionNeutral+ | AnotherDirection Int+ deriving (Show, Eq)++instance Enum Direction where+ fromEnum DirectionLtr = 0+ fromEnum DirectionRtl = 1+ fromEnum DirectionTtbLtr = 2+ fromEnum DirectionTtbRtl = 3+ fromEnum DirectionWeakLtr = 4+ fromEnum DirectionWeakRtl = 5+ fromEnum DirectionNeutral = 6+ fromEnum (AnotherDirection k) = k++ toEnum 0 = DirectionLtr+ toEnum 1 = DirectionRtl+ toEnum 2 = DirectionTtbLtr+ toEnum 3 = DirectionTtbRtl+ toEnum 4 = DirectionWeakLtr+ toEnum 5 = DirectionWeakRtl+ toEnum 6 = DirectionNeutral+ toEnum k = AnotherDirection k++foreign import ccall "pango_direction_get_type" c_pango_direction_get_type :: + IO GType++instance BoxedEnum Direction where+ boxedEnumType _ = c_pango_direction_get_type++-- Enum EllipsizeMode++data EllipsizeMode = + EllipsizeModeNone+ | EllipsizeModeStart+ | EllipsizeModeMiddle+ | EllipsizeModeEnd+ | AnotherEllipsizeMode Int+ deriving (Show, Eq)++instance Enum EllipsizeMode where+ fromEnum EllipsizeModeNone = 0+ fromEnum EllipsizeModeStart = 1+ fromEnum EllipsizeModeMiddle = 2+ fromEnum EllipsizeModeEnd = 3+ fromEnum (AnotherEllipsizeMode k) = k++ toEnum 0 = EllipsizeModeNone+ toEnum 1 = EllipsizeModeStart+ toEnum 2 = EllipsizeModeMiddle+ toEnum 3 = EllipsizeModeEnd+ toEnum k = AnotherEllipsizeMode k++foreign import ccall "pango_ellipsize_mode_get_type" c_pango_ellipsize_mode_get_type :: + IO GType++instance BoxedEnum EllipsizeMode where+ boxedEnumType _ = c_pango_ellipsize_mode_get_type++-- object Engine +newtype Engine = Engine (ForeignPtr Engine)+noEngine :: Maybe Engine+noEngine = Nothing++foreign import ccall "pango_engine_get_type"+ c_pango_engine_get_type :: IO GType++type instance ParentTypes Engine = '[GObject.Object]++instance GObject Engine where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_engine_get_type+ ++class GObject o => EngineK o+instance (GObject o, IsDescendantOf Engine o) => EngineK o++toEngine :: EngineK o => o -> IO Engine+toEngine = unsafeCastTo Engine++-- struct EngineInfo+newtype EngineInfo = EngineInfo (ForeignPtr EngineInfo)+noEngineInfo :: Maybe EngineInfo+noEngineInfo = Nothing++engineInfoReadId :: EngineInfo -> IO T.Text+engineInfoReadId s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO CString+ val' <- cstringToText val+ return val'++engineInfoReadEngineType :: EngineInfo -> IO T.Text+engineInfoReadEngineType s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO CString+ val' <- cstringToText val+ return val'++engineInfoReadRenderType :: EngineInfo -> IO T.Text+engineInfoReadRenderType s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO CString+ val' <- cstringToText val+ return val'++engineInfoReadScripts :: EngineInfo -> IO EngineScriptInfo+engineInfoReadScripts s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO (Ptr EngineScriptInfo)+ val' <- (newPtr 16 EngineScriptInfo) val+ return val'++engineInfoReadNScripts :: EngineInfo -> IO Int32+engineInfoReadNScripts s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO Int32+ return val++-- object EngineLang +newtype EngineLang = EngineLang (ForeignPtr EngineLang)+noEngineLang :: Maybe EngineLang+noEngineLang = Nothing++foreign import ccall "pango_engine_lang_get_type"+ c_pango_engine_lang_get_type :: IO GType++type instance ParentTypes EngineLang = '[Engine, GObject.Object]++instance GObject EngineLang where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_engine_lang_get_type+ ++class GObject o => EngineLangK o+instance (GObject o, IsDescendantOf EngineLang o) => EngineLangK o++toEngineLang :: EngineLangK o => o -> IO EngineLang+toEngineLang = unsafeCastTo EngineLang++-- struct EngineScriptInfo+newtype EngineScriptInfo = EngineScriptInfo (ForeignPtr EngineScriptInfo)+noEngineScriptInfo :: Maybe EngineScriptInfo+noEngineScriptInfo = Nothing++engineScriptInfoReadScript :: EngineScriptInfo -> IO Script+engineScriptInfoReadScript s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO CUInt+ let val' = (toEnum . fromIntegral) val+ return val'++engineScriptInfoReadLangs :: EngineScriptInfo -> IO T.Text+engineScriptInfoReadLangs s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO CString+ val' <- cstringToText val+ return val'++-- object EngineShape +newtype EngineShape = EngineShape (ForeignPtr EngineShape)+noEngineShape :: Maybe EngineShape+noEngineShape = Nothing++foreign import ccall "pango_engine_shape_get_type"+ c_pango_engine_shape_get_type :: IO GType++type instance ParentTypes EngineShape = '[Engine, GObject.Object]++instance GObject EngineShape where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_engine_shape_get_type+ ++class GObject o => EngineShapeK o+instance (GObject o, IsDescendantOf EngineShape o) => EngineShapeK o++toEngineShape :: EngineShapeK o => o -> IO EngineShape+toEngineShape = unsafeCastTo EngineShape++-- object Font +newtype Font = Font (ForeignPtr Font)+noFont :: Maybe Font+noFont = Nothing++foreign import ccall "pango_font_get_type"+ c_pango_font_get_type :: IO GType++type instance ParentTypes Font = '[GObject.Object]++instance GObject Font where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_font_get_type+ ++class GObject o => FontK o+instance (GObject o, IsDescendantOf Font o) => FontK o++toFont :: FontK o => o -> IO Font+toFont = unsafeCastTo Font++-- method Font::describe+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_describe" pango_font_describe :: + Ptr Font -> -- _obj : TInterface "Pango" "Font"+ IO (Ptr FontDescription)+++fontDescribe ::+ (MonadIO m, FontK a) =>+ a -> -- _obj+ m FontDescription+fontDescribe _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_describe _obj'+ result' <- (wrapBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method Font::describe_with_absolute_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_describe_with_absolute_size" pango_font_describe_with_absolute_size :: + Ptr Font -> -- _obj : TInterface "Pango" "Font"+ IO (Ptr FontDescription)+++fontDescribeWithAbsoluteSize ::+ (MonadIO m, FontK a) =>+ a -> -- _obj+ m FontDescription+fontDescribeWithAbsoluteSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_describe_with_absolute_size _obj'+ result' <- (wrapBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method Font::get_font_map+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMap"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_get_font_map" pango_font_get_font_map :: + Ptr Font -> -- _obj : TInterface "Pango" "Font"+ IO (Ptr FontMap)+++fontGetFontMap ::+ (MonadIO m, FontK a) =>+ a -> -- _obj+ m FontMap+fontGetFontMap _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_get_font_map _obj'+ result' <- (newObject FontMap) result+ touchManagedPtr _obj+ return result'++-- method Font::get_glyph_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_get_glyph_extents" pango_font_get_glyph_extents :: + Ptr Font -> -- _obj : TInterface "Pango" "Font"+ Word32 -> -- glyph : TBasicType TUInt32+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++fontGetGlyphExtents ::+ (MonadIO m, FontK a) =>+ a -> -- _obj+ Word32 -> -- glyph+ m (Rectangle,Rectangle)+fontGetGlyphExtents _obj glyph = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_font_get_glyph_extents _obj' glyph ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method Font::get_metrics+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMetrics"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_get_metrics" pango_font_get_metrics :: + Ptr Font -> -- _obj : TInterface "Pango" "Font"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ IO (Ptr FontMetrics)+++fontGetMetrics ::+ (MonadIO m, FontK a) =>+ a -> -- _obj+ Maybe (Language) -> -- language+ m FontMetrics+fontGetMetrics _obj language = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeLanguage <- case language of+ Nothing -> return nullPtr+ Just jLanguage -> do+ let jLanguage' = unsafeManagedPtrGetPtr jLanguage+ return jLanguage'+ result <- pango_font_get_metrics _obj' maybeLanguage+ result' <- (wrapBoxed FontMetrics) result+ touchManagedPtr _obj+ whenJust language touchManagedPtr+ return result'++-- method Font::descriptions_free+-- method type : MemberFunction+-- Args : [Arg {argName = "descs", argType = TCArray False (-1) 1 (TInterface "Pango" "FontDescription"), direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "n_descs", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : [Arg {argName = "n_descs", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- hInArgs : [Arg {argName = "descs", argType = TCArray False (-1) 1 (TInterface "Pango" "FontDescription"), direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_descriptions_free" pango_font_descriptions_free :: + Ptr (Ptr FontDescription) -> -- descs : TCArray False (-1) 1 (TInterface "Pango" "FontDescription")+ Int32 -> -- n_descs : TBasicType TInt32+ IO ()+++fontDescriptionsFree ::+ (MonadIO m) =>+ Maybe ([FontDescription]) -> -- descs+ m ()+fontDescriptionsFree descs = liftIO $ do+ let n_descs = case descs of+ Nothing -> 0+ Just jDescs -> fromIntegral $ length jDescs+ maybeDescs <- case descs of+ Nothing -> return nullPtr+ Just jDescs -> do+ jDescs' <- mapM copyBoxed jDescs+ jDescs'' <- packPtrArray jDescs'+ return jDescs''+ pango_font_descriptions_free maybeDescs n_descs+ whenJust descs (mapM_ touchManagedPtr)+ return ()++-- struct FontDescription+newtype FontDescription = FontDescription (ForeignPtr FontDescription)+noFontDescription :: Maybe FontDescription+noFontDescription = Nothing++foreign import ccall "pango_font_description_get_type" c_pango_font_description_get_type :: + IO GType++instance BoxedObject FontDescription where+ boxedType _ = c_pango_font_description_get_type++-- method FontDescription::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_new" pango_font_description_new :: + IO (Ptr FontDescription)+++fontDescriptionNew ::+ (MonadIO m) =>+ m FontDescription+fontDescriptionNew = liftIO $ do+ result <- pango_font_description_new+ result' <- (wrapBoxed FontDescription) result+ return result'++-- method FontDescription::better_match+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_match", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_match", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_match", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_match", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_better_match" pango_font_description_better_match :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ Ptr FontDescription -> -- old_match : TInterface "Pango" "FontDescription"+ Ptr FontDescription -> -- new_match : TInterface "Pango" "FontDescription"+ IO CInt+++fontDescriptionBetterMatch ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Maybe (FontDescription) -> -- old_match+ FontDescription -> -- new_match+ m Bool+fontDescriptionBetterMatch _obj old_match new_match = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ maybeOld_match <- case old_match of+ Nothing -> return nullPtr+ Just jOld_match -> do+ let jOld_match' = unsafeManagedPtrGetPtr jOld_match+ return jOld_match'+ let new_match' = unsafeManagedPtrGetPtr new_match+ result <- pango_font_description_better_match _obj' maybeOld_match new_match'+ let result' = (/= 0) result+ touchManagedPtr _obj+ whenJust old_match touchManagedPtr+ touchManagedPtr new_match+ return result'++-- method FontDescription::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_copy" pango_font_description_copy :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO (Ptr FontDescription)+++fontDescriptionCopy ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m FontDescription+fontDescriptionCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_copy _obj'+ result' <- (wrapBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::copy_static+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_copy_static" pango_font_description_copy_static :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO (Ptr FontDescription)+++fontDescriptionCopyStatic ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m FontDescription+fontDescriptionCopyStatic _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_copy_static _obj'+ result' <- (wrapBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::equal+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc2", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc2", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_equal" pango_font_description_equal :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ Ptr FontDescription -> -- desc2 : TInterface "Pango" "FontDescription"+ IO CInt+++fontDescriptionEqual ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ FontDescription -> -- desc2+ m Bool+fontDescriptionEqual _obj desc2 = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let desc2' = unsafeManagedPtrGetPtr desc2+ result <- pango_font_description_equal _obj' desc2'+ let result' = (/= 0) result+ touchManagedPtr _obj+ touchManagedPtr desc2+ return result'++-- method FontDescription::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_free" pango_font_description_free :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO ()+++fontDescriptionFree ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m ()+fontDescriptionFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_font_description_free _obj'+ touchManagedPtr _obj+ return ()++-- method FontDescription::get_family+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_family" pango_font_description_get_family :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CString+++fontDescriptionGetFamily ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m T.Text+fontDescriptionGetFamily _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_family _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_gravity+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_gravity" pango_font_description_get_gravity :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetGravity ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Gravity+fontDescriptionGetGravity _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_gravity _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_set_fields+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMask"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_set_fields" pango_font_description_get_set_fields :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetSetFields ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m [FontMask]+fontDescriptionGetSetFields _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_set_fields _obj'+ let result' = wordToGFlags result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_size" pango_font_description_get_size :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO Int32+++fontDescriptionGetSize ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Int32+fontDescriptionGetSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_size _obj'+ touchManagedPtr _obj+ return result++-- method FontDescription::get_size_is_absolute+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_size_is_absolute" pango_font_description_get_size_is_absolute :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CInt+++fontDescriptionGetSizeIsAbsolute ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Bool+fontDescriptionGetSizeIsAbsolute _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_size_is_absolute _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_stretch+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Stretch"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_stretch" pango_font_description_get_stretch :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetStretch ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Stretch+fontDescriptionGetStretch _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_stretch _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_style+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Style"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_style" pango_font_description_get_style :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetStyle ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Style+fontDescriptionGetStyle _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_style _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_variant+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Variant"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_variant" pango_font_description_get_variant :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetVariant ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Variant+fontDescriptionGetVariant _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_variant _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::get_weight+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Weight"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_get_weight" pango_font_description_get_weight :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CUInt+++fontDescriptionGetWeight ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Weight+fontDescriptionGetWeight _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_get_weight _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method FontDescription::hash+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_hash" pango_font_description_hash :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO Word32+++fontDescriptionHash ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m Word32+fontDescriptionHash _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_hash _obj'+ touchManagedPtr _obj+ return result++-- method FontDescription::merge+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc_to_merge", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "replace_existing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc_to_merge", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "replace_existing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_merge" pango_font_description_merge :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ Ptr FontDescription -> -- desc_to_merge : TInterface "Pango" "FontDescription"+ CInt -> -- replace_existing : TBasicType TBoolean+ IO ()+++fontDescriptionMerge ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Maybe (FontDescription) -> -- desc_to_merge+ Bool -> -- replace_existing+ m ()+fontDescriptionMerge _obj desc_to_merge replace_existing = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ maybeDesc_to_merge <- case desc_to_merge of+ Nothing -> return nullPtr+ Just jDesc_to_merge -> do+ let jDesc_to_merge' = unsafeManagedPtrGetPtr jDesc_to_merge+ return jDesc_to_merge'+ let replace_existing' = (fromIntegral . fromEnum) replace_existing+ pango_font_description_merge _obj' maybeDesc_to_merge replace_existing'+ touchManagedPtr _obj+ whenJust desc_to_merge touchManagedPtr+ return ()++-- method FontDescription::merge_static+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc_to_merge", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "replace_existing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc_to_merge", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "replace_existing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_merge_static" pango_font_description_merge_static :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ Ptr FontDescription -> -- desc_to_merge : TInterface "Pango" "FontDescription"+ CInt -> -- replace_existing : TBasicType TBoolean+ IO ()+++fontDescriptionMergeStatic ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ FontDescription -> -- desc_to_merge+ Bool -> -- replace_existing+ m ()+fontDescriptionMergeStatic _obj desc_to_merge replace_existing = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let desc_to_merge' = unsafeManagedPtrGetPtr desc_to_merge+ let replace_existing' = (fromIntegral . fromEnum) replace_existing+ pango_font_description_merge_static _obj' desc_to_merge' replace_existing'+ touchManagedPtr _obj+ touchManagedPtr desc_to_merge+ return ()++-- method FontDescription::set_absolute_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "size", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "size", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_absolute_size" pango_font_description_set_absolute_size :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CDouble -> -- size : TBasicType TDouble+ IO ()+++fontDescriptionSetAbsoluteSize ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Double -> -- size+ m ()+fontDescriptionSetAbsoluteSize _obj size = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let size' = realToFrac size+ pango_font_description_set_absolute_size _obj' size'+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_family+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "family", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "family", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_family" pango_font_description_set_family :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CString -> -- family : TBasicType TUTF8+ IO ()+++fontDescriptionSetFamily ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ T.Text -> -- family+ m ()+fontDescriptionSetFamily _obj family = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ family' <- textToCString family+ pango_font_description_set_family _obj' family'+ touchManagedPtr _obj+ freeMem family'+ return ()++-- method FontDescription::set_family_static+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "family", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "family", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_family_static" pango_font_description_set_family_static :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CString -> -- family : TBasicType TUTF8+ IO ()+++fontDescriptionSetFamilyStatic ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ T.Text -> -- family+ m ()+fontDescriptionSetFamilyStatic _obj family = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ family' <- textToCString family+ pango_font_description_set_family_static _obj' family'+ touchManagedPtr _obj+ freeMem family'+ return ()++-- method FontDescription::set_gravity+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_gravity" pango_font_description_set_gravity :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- gravity : TInterface "Pango" "Gravity"+ IO ()+++fontDescriptionSetGravity ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Gravity -> -- gravity+ m ()+fontDescriptionSetGravity _obj gravity = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let gravity' = (fromIntegral . fromEnum) gravity+ pango_font_description_set_gravity _obj' gravity'+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_size" pango_font_description_set_size :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ Int32 -> -- size : TBasicType TInt32+ IO ()+++fontDescriptionSetSize ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Int32 -> -- size+ m ()+fontDescriptionSetSize _obj size = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_font_description_set_size _obj' size+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_stretch+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stretch", argType = TInterface "Pango" "Stretch", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stretch", argType = TInterface "Pango" "Stretch", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_stretch" pango_font_description_set_stretch :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- stretch : TInterface "Pango" "Stretch"+ IO ()+++fontDescriptionSetStretch ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Stretch -> -- stretch+ m ()+fontDescriptionSetStretch _obj stretch = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let stretch' = (fromIntegral . fromEnum) stretch+ pango_font_description_set_stretch _obj' stretch'+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_style+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Pango" "Style", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Pango" "Style", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_style" pango_font_description_set_style :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- style : TInterface "Pango" "Style"+ IO ()+++fontDescriptionSetStyle ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Style -> -- style+ m ()+fontDescriptionSetStyle _obj style = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let style' = (fromIntegral . fromEnum) style+ pango_font_description_set_style _obj' style'+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_variant+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "variant", argType = TInterface "Pango" "Variant", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "variant", argType = TInterface "Pango" "Variant", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_variant" pango_font_description_set_variant :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- variant : TInterface "Pango" "Variant"+ IO ()+++fontDescriptionSetVariant ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Variant -> -- variant+ m ()+fontDescriptionSetVariant _obj variant = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let variant' = (fromIntegral . fromEnum) variant+ pango_font_description_set_variant _obj' variant'+ touchManagedPtr _obj+ return ()++-- method FontDescription::set_weight+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "weight", argType = TInterface "Pango" "Weight", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "weight", argType = TInterface "Pango" "Weight", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_set_weight" pango_font_description_set_weight :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- weight : TInterface "Pango" "Weight"+ IO ()+++fontDescriptionSetWeight ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ Weight -> -- weight+ m ()+fontDescriptionSetWeight _obj weight = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let weight' = (fromIntegral . fromEnum) weight+ pango_font_description_set_weight _obj' weight'+ touchManagedPtr _obj+ return ()++-- method FontDescription::to_filename+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_to_filename" pango_font_description_to_filename :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CString+++fontDescriptionToFilename ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m T.Text+fontDescriptionToFilename _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_to_filename _obj'+ result' <- cstringToText result+ freeMem result+ touchManagedPtr _obj+ return result'++-- method FontDescription::to_string+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_to_string" pango_font_description_to_string :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ IO CString+++fontDescriptionToString ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ m T.Text+fontDescriptionToString _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_description_to_string _obj'+ result' <- cstringToText result+ freeMem result+ touchManagedPtr _obj+ return result'++-- method FontDescription::unset_fields+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "to_unset", argType = TInterface "Pango" "FontMask", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "to_unset", argType = TInterface "Pango" "FontMask", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_unset_fields" pango_font_description_unset_fields :: + Ptr FontDescription -> -- _obj : TInterface "Pango" "FontDescription"+ CUInt -> -- to_unset : TInterface "Pango" "FontMask"+ IO ()+++fontDescriptionUnsetFields ::+ (MonadIO m) =>+ FontDescription -> -- _obj+ [FontMask] -> -- to_unset+ m ()+fontDescriptionUnsetFields _obj to_unset = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let to_unset' = gflagsToWord to_unset+ pango_font_description_unset_fields _obj' to_unset'+ touchManagedPtr _obj+ return ()++-- object FontFace +newtype FontFace = FontFace (ForeignPtr FontFace)+noFontFace :: Maybe FontFace+noFontFace = Nothing++foreign import ccall "pango_font_face_get_type"+ c_pango_font_face_get_type :: IO GType++type instance ParentTypes FontFace = '[GObject.Object]++instance GObject FontFace where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_font_face_get_type+ ++class GObject o => FontFaceK o+instance (GObject o, IsDescendantOf FontFace o) => FontFaceK o++toFontFace :: FontFaceK o => o -> IO FontFace+toFontFace = unsafeCastTo FontFace++-- method FontFace::describe+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_face_describe" pango_font_face_describe :: + Ptr FontFace -> -- _obj : TInterface "Pango" "FontFace"+ IO (Ptr FontDescription)+++fontFaceDescribe ::+ (MonadIO m, FontFaceK a) =>+ a -> -- _obj+ m FontDescription+fontFaceDescribe _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_face_describe _obj'+ result' <- (wrapBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method FontFace::get_face_name+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_face_get_face_name" pango_font_face_get_face_name :: + Ptr FontFace -> -- _obj : TInterface "Pango" "FontFace"+ IO CString+++fontFaceGetFaceName ::+ (MonadIO m, FontFaceK a) =>+ a -> -- _obj+ m T.Text+fontFaceGetFaceName _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_face_get_face_name _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method FontFace::is_synthesized+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_face_is_synthesized" pango_font_face_is_synthesized :: + Ptr FontFace -> -- _obj : TInterface "Pango" "FontFace"+ IO CInt+++fontFaceIsSynthesized ::+ (MonadIO m, FontFaceK a) =>+ a -> -- _obj+ m Bool+fontFaceIsSynthesized _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_face_is_synthesized _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method FontFace::list_sizes+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "sizes", argType = TCArray False (-1) 2 (TBasicType TInt32), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "n_sizes", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_sizes", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFace", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_face_list_sizes" pango_font_face_list_sizes :: + Ptr FontFace -> -- _obj : TInterface "Pango" "FontFace"+ Ptr (Ptr Int32) -> -- sizes : TCArray False (-1) 2 (TBasicType TInt32)+ Ptr Int32 -> -- n_sizes : TBasicType TInt32+ IO ()+++fontFaceListSizes ::+ (MonadIO m, FontFaceK a) =>+ a -> -- _obj+ m ([Int32])+fontFaceListSizes _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ sizes <- allocMem :: IO (Ptr (Ptr Int32))+ n_sizes <- allocMem :: IO (Ptr Int32)+ pango_font_face_list_sizes _obj' sizes n_sizes+ n_sizes' <- peek n_sizes+ sizes' <- peek sizes+ sizes'' <- (unpackStorableArrayWithLength n_sizes') sizes'+ freeMem sizes'+ touchManagedPtr _obj+ freeMem sizes+ freeMem n_sizes+ return sizes''++-- object FontFamily +newtype FontFamily = FontFamily (ForeignPtr FontFamily)+noFontFamily :: Maybe FontFamily+noFontFamily = Nothing++foreign import ccall "pango_font_family_get_type"+ c_pango_font_family_get_type :: IO GType++type instance ParentTypes FontFamily = '[GObject.Object]++instance GObject FontFamily where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_font_family_get_type+ ++class GObject o => FontFamilyK o+instance (GObject o, IsDescendantOf FontFamily o) => FontFamilyK o++toFontFamily :: FontFamilyK o => o -> IO FontFamily+toFontFamily = unsafeCastTo FontFamily++-- method FontFamily::get_name+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_family_get_name" pango_font_family_get_name :: + Ptr FontFamily -> -- _obj : TInterface "Pango" "FontFamily"+ IO CString+++fontFamilyGetName ::+ (MonadIO m, FontFamilyK a) =>+ a -> -- _obj+ m T.Text+fontFamilyGetName _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_family_get_name _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method FontFamily::is_monospace+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_family_is_monospace" pango_font_family_is_monospace :: + Ptr FontFamily -> -- _obj : TInterface "Pango" "FontFamily"+ IO CInt+++fontFamilyIsMonospace ::+ (MonadIO m, FontFamilyK a) =>+ a -> -- _obj+ m Bool+fontFamilyIsMonospace _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_family_is_monospace _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method FontFamily::list_faces+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "faces", argType = TCArray False (-1) 2 (TInterface "Pango" "FontFace"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_faces", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_faces", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontFamily", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_family_list_faces" pango_font_family_list_faces :: + Ptr FontFamily -> -- _obj : TInterface "Pango" "FontFamily"+ Ptr (Ptr (Ptr FontFace)) -> -- faces : TCArray False (-1) 2 (TInterface "Pango" "FontFace")+ Ptr Int32 -> -- n_faces : TBasicType TInt32+ IO ()+++fontFamilyListFaces ::+ (MonadIO m, FontFamilyK a) =>+ a -> -- _obj+ m ([FontFace])+fontFamilyListFaces _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ faces <- allocMem :: IO (Ptr (Ptr (Ptr FontFace)))+ n_faces <- allocMem :: IO (Ptr Int32)+ pango_font_family_list_faces _obj' faces n_faces+ n_faces' <- peek n_faces+ faces' <- peek faces+ faces'' <- (unpackPtrArrayWithLength n_faces') faces'+ faces''' <- mapM (newObject FontFace) faces''+ freeMem faces'+ touchManagedPtr _obj+ freeMem faces+ freeMem n_faces+ return faces'''++-- object FontMap +newtype FontMap = FontMap (ForeignPtr FontMap)+noFontMap :: Maybe FontMap+noFontMap = Nothing++foreign import ccall "pango_font_map_get_type"+ c_pango_font_map_get_type :: IO GType++type instance ParentTypes FontMap = '[GObject.Object]++instance GObject FontMap where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_font_map_get_type+ ++class GObject o => FontMapK o+instance (GObject o, IsDescendantOf FontMap o) => FontMapK o++toFontMap :: FontMapK o => o -> IO FontMap+toFontMap = unsafeCastTo FontMap++-- method FontMap::changed+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_changed" pango_font_map_changed :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ IO ()+++fontMapChanged ::+ (MonadIO m, FontMapK a) =>+ a -> -- _obj+ m ()+fontMapChanged _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_font_map_changed _obj'+ touchManagedPtr _obj+ return ()++-- method FontMap::create_context+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Context"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_create_context" pango_font_map_create_context :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ IO (Ptr Context)+++fontMapCreateContext ::+ (MonadIO m, FontMapK a) =>+ a -> -- _obj+ m Context+fontMapCreateContext _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_map_create_context _obj'+ result' <- (wrapObject Context) result+ touchManagedPtr _obj+ return result'++-- method FontMap::get_serial+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_get_serial" pango_font_map_get_serial :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ IO Word32+++fontMapGetSerial ::+ (MonadIO m, FontMapK a) =>+ a -> -- _obj+ m Word32+fontMapGetSerial _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_map_get_serial _obj'+ touchManagedPtr _obj+ return result++-- method FontMap::get_shape_engine_type+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_get_shape_engine_type" pango_font_map_get_shape_engine_type :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ IO CString+++fontMapGetShapeEngineType ::+ (MonadIO m, FontMapK a) =>+ a -> -- _obj+ m T.Text+fontMapGetShapeEngineType _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_font_map_get_shape_engine_type _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method FontMap::list_families+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "families", argType = TCArray False (-1) 2 (TInterface "Pango" "FontFamily"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_list_families" pango_font_map_list_families :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ Ptr (Ptr (Ptr FontFamily)) -> -- families : TCArray False (-1) 2 (TInterface "Pango" "FontFamily")+ Ptr Int32 -> -- n_families : TBasicType TInt32+ IO ()+++fontMapListFamilies ::+ (MonadIO m, FontMapK a) =>+ a -> -- _obj+ m ([FontFamily])+fontMapListFamilies _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ families <- allocMem :: IO (Ptr (Ptr (Ptr FontFamily)))+ n_families <- allocMem :: IO (Ptr Int32)+ pango_font_map_list_families _obj' families n_families+ n_families' <- peek n_families+ families' <- peek families+ families'' <- (unpackPtrArrayWithLength n_families') families'+ families''' <- mapM (newObject FontFamily) families''+ freeMem families'+ touchManagedPtr _obj+ freeMem families+ freeMem n_families+ return families'''++-- method FontMap::load_font+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Font"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_load_font" pango_font_map_load_font :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ Ptr Context -> -- context : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ IO (Ptr Font)+++fontMapLoadFont ::+ (MonadIO m, FontMapK a, ContextK b) =>+ a -> -- _obj+ b -> -- context+ FontDescription -> -- desc+ m Font+fontMapLoadFont _obj context desc = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let context' = unsafeManagedPtrCastPtr context+ let desc' = unsafeManagedPtrGetPtr desc+ result <- pango_font_map_load_font _obj' context' desc'+ result' <- (wrapObject Font) result+ touchManagedPtr _obj+ touchManagedPtr context+ touchManagedPtr desc+ return result'++-- method FontMap::load_fontset+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Fontset"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_map_load_fontset" pango_font_map_load_fontset :: + Ptr FontMap -> -- _obj : TInterface "Pango" "FontMap"+ Ptr Context -> -- context : TInterface "Pango" "Context"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ Ptr Language -> -- language : TInterface "Pango" "Language"+ IO (Ptr Fontset)+++fontMapLoadFontset ::+ (MonadIO m, FontMapK a, ContextK b) =>+ a -> -- _obj+ b -> -- context+ FontDescription -> -- desc+ Language -> -- language+ m Fontset+fontMapLoadFontset _obj context desc language = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let context' = unsafeManagedPtrCastPtr context+ let desc' = unsafeManagedPtrGetPtr desc+ let language' = unsafeManagedPtrGetPtr language+ result <- pango_font_map_load_fontset _obj' context' desc' language'+ result' <- (wrapObject Fontset) result+ touchManagedPtr _obj+ touchManagedPtr context+ touchManagedPtr desc+ touchManagedPtr language+ return result'++-- Flags FontMask++data FontMask = + FontMaskFamily+ | FontMaskStyle+ | FontMaskVariant+ | FontMaskWeight+ | FontMaskStretch+ | FontMaskSize+ | FontMaskGravity+ | AnotherFontMask Int+ deriving (Show, Eq)++instance Enum FontMask where+ fromEnum FontMaskFamily = 1+ fromEnum FontMaskStyle = 2+ fromEnum FontMaskVariant = 4+ fromEnum FontMaskWeight = 8+ fromEnum FontMaskStretch = 16+ fromEnum FontMaskSize = 32+ fromEnum FontMaskGravity = 64+ fromEnum (AnotherFontMask k) = k++ toEnum 1 = FontMaskFamily+ toEnum 2 = FontMaskStyle+ toEnum 4 = FontMaskVariant+ toEnum 8 = FontMaskWeight+ toEnum 16 = FontMaskStretch+ toEnum 32 = FontMaskSize+ toEnum 64 = FontMaskGravity+ toEnum k = AnotherFontMask k++foreign import ccall "pango_font_mask_get_type" c_pango_font_mask_get_type :: + IO GType++instance BoxedEnum FontMask where+ boxedEnumType _ = c_pango_font_mask_get_type++instance IsGFlag FontMask++-- struct FontMetrics+newtype FontMetrics = FontMetrics (ForeignPtr FontMetrics)+noFontMetrics :: Maybe FontMetrics+noFontMetrics = Nothing++foreign import ccall "pango_font_metrics_get_type" c_pango_font_metrics_get_type :: + IO GType++instance BoxedObject FontMetrics where+ boxedType _ = c_pango_font_metrics_get_type++fontMetricsReadRefCount :: FontMetrics -> IO Word32+fontMetricsReadRefCount s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Word32+ return val++fontMetricsReadAscent :: FontMetrics -> IO Int32+fontMetricsReadAscent s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Int32+ return val++fontMetricsReadDescent :: FontMetrics -> IO Int32+fontMetricsReadDescent s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Int32+ return val++fontMetricsReadApproximateCharWidth :: FontMetrics -> IO Int32+fontMetricsReadApproximateCharWidth s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 12) :: IO Int32+ return val++fontMetricsReadApproximateDigitWidth :: FontMetrics -> IO Int32+fontMetricsReadApproximateDigitWidth s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Int32+ return val++fontMetricsReadUnderlinePosition :: FontMetrics -> IO Int32+fontMetricsReadUnderlinePosition s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 20) :: IO Int32+ return val++fontMetricsReadUnderlineThickness :: FontMetrics -> IO Int32+fontMetricsReadUnderlineThickness s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO Int32+ return val++fontMetricsReadStrikethroughPosition :: FontMetrics -> IO Int32+fontMetricsReadStrikethroughPosition s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 28) :: IO Int32+ return val++fontMetricsReadStrikethroughThickness :: FontMetrics -> IO Int32+fontMetricsReadStrikethroughThickness s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO Int32+ return val++-- method FontMetrics::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "FontMetrics"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_new" pango_font_metrics_new :: + IO (Ptr FontMetrics)+++fontMetricsNew ::+ (MonadIO m) =>+ m FontMetrics+fontMetricsNew = liftIO $ do+ result <- pango_font_metrics_new+ result' <- (wrapBoxed FontMetrics) result+ return result'++-- method FontMetrics::get_approximate_char_width+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_approximate_char_width" pango_font_metrics_get_approximate_char_width :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetApproximateCharWidth ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetApproximateCharWidth _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_approximate_char_width _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_approximate_digit_width+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_approximate_digit_width" pango_font_metrics_get_approximate_digit_width :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetApproximateDigitWidth ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetApproximateDigitWidth _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_approximate_digit_width _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_ascent+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_ascent" pango_font_metrics_get_ascent :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetAscent ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetAscent _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_ascent _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_descent+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_descent" pango_font_metrics_get_descent :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetDescent ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetDescent _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_descent _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_strikethrough_position+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_strikethrough_position" pango_font_metrics_get_strikethrough_position :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetStrikethroughPosition ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetStrikethroughPosition _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_strikethrough_position _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_strikethrough_thickness+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_strikethrough_thickness" pango_font_metrics_get_strikethrough_thickness :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetStrikethroughThickness ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetStrikethroughThickness _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_strikethrough_thickness _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_underline_position+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_underline_position" pango_font_metrics_get_underline_position :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetUnderlinePosition ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetUnderlinePosition _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_underline_position _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::get_underline_thickness+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_get_underline_thickness" pango_font_metrics_get_underline_thickness :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO Int32+++fontMetricsGetUnderlineThickness ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m Int32+fontMetricsGetUnderlineThickness _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_get_underline_thickness _obj'+ touchManagedPtr _obj+ return result++-- method FontMetrics::ref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMetrics"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_ref" pango_font_metrics_ref :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO (Ptr FontMetrics)+++fontMetricsRef ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m FontMetrics+fontMetricsRef _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_font_metrics_ref _obj'+ result' <- (wrapBoxed FontMetrics) result+ touchManagedPtr _obj+ return result'++-- method FontMetrics::unref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontMetrics", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_metrics_unref" pango_font_metrics_unref :: + Ptr FontMetrics -> -- _obj : TInterface "Pango" "FontMetrics"+ IO ()+++fontMetricsUnref ::+ (MonadIO m) =>+ FontMetrics -> -- _obj+ m ()+fontMetricsUnref _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_font_metrics_unref _obj'+ touchManagedPtr _obj+ return ()++-- object Fontset +newtype Fontset = Fontset (ForeignPtr Fontset)+noFontset :: Maybe Fontset+noFontset = Nothing++foreign import ccall "pango_fontset_get_type"+ c_pango_fontset_get_type :: IO GType++type instance ParentTypes Fontset = '[GObject.Object]++instance GObject Fontset where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_fontset_get_type+ ++class GObject o => FontsetK o+instance (GObject o, IsDescendantOf Fontset o) => FontsetK o++toFontset :: FontsetK o => o -> IO Fontset+toFontset = unsafeCastTo Fontset++-- method Fontset::foreach+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Pango" "FontsetForeachFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "func", argType = TInterface "Pango" "FontsetForeachFunc", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeCall, argClosure = 2, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_foreach" pango_fontset_foreach :: + Ptr Fontset -> -- _obj : TInterface "Pango" "Fontset"+ FunPtr FontsetForeachFuncC -> -- func : TInterface "Pango" "FontsetForeachFunc"+ Ptr () -> -- data : TBasicType TVoid+ IO ()+++fontsetForeach ::+ (MonadIO m, FontsetK a) =>+ a -> -- _obj+ FontsetForeachFunc -> -- func+ m ()+fontsetForeach _obj func = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ func' <- mkFontsetForeachFunc (fontsetForeachFuncWrapper Nothing func)+ let data_ = nullPtr+ pango_fontset_foreach _obj' func' data_+ safeFreeFunPtr $ castFunPtrToPtr func'+ touchManagedPtr _obj+ return ()++-- method Fontset::get_font+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wc", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wc", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Font"+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_get_font" pango_fontset_get_font :: + Ptr Fontset -> -- _obj : TInterface "Pango" "Fontset"+ Word32 -> -- wc : TBasicType TUInt32+ IO (Ptr Font)+++fontsetGetFont ::+ (MonadIO m, FontsetK a) =>+ a -> -- _obj+ Word32 -> -- wc+ m Font+fontsetGetFont _obj wc = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_fontset_get_font _obj' wc+ result' <- (wrapObject Font) result+ touchManagedPtr _obj+ return result'++-- method Fontset::get_metrics+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Fontset", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontMetrics"+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_get_metrics" pango_fontset_get_metrics :: + Ptr Fontset -> -- _obj : TInterface "Pango" "Fontset"+ IO (Ptr FontMetrics)+++fontsetGetMetrics ::+ (MonadIO m, FontsetK a) =>+ a -> -- _obj+ m FontMetrics+fontsetGetMetrics _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_fontset_get_metrics _obj'+ result' <- (wrapBoxed FontMetrics) result+ touchManagedPtr _obj+ return result'++-- callback FontsetForeachFunc+fontsetForeachFuncClosure :: FontsetForeachFunc -> IO Closure+fontsetForeachFuncClosure cb = newCClosure =<< mkFontsetForeachFunc wrapped+ where wrapped = fontsetForeachFuncWrapper Nothing cb++type FontsetForeachFuncC =+ Ptr Fontset ->+ Ptr Font ->+ Ptr () ->+ IO CInt++foreign import ccall "wrapper"+ mkFontsetForeachFunc :: FontsetForeachFuncC -> IO (FunPtr FontsetForeachFuncC)++type FontsetForeachFunc =+ Fontset ->+ Font ->+ IO Bool++noFontsetForeachFunc :: Maybe FontsetForeachFunc+noFontsetForeachFunc = Nothing++fontsetForeachFuncWrapper ::+ Maybe (Ptr (FunPtr (FontsetForeachFuncC))) ->+ FontsetForeachFunc ->+ Ptr Fontset ->+ Ptr Font ->+ Ptr () ->+ IO CInt+fontsetForeachFuncWrapper funptrptr _cb fontset font _ = do+ fontset' <- (newObject Fontset) fontset+ font' <- (newObject Font) font+ result <- _cb fontset' font'+ maybeReleaseFunPtr funptrptr+ let result' = (fromIntegral . fromEnum) result+ return result'++-- object FontsetSimple +newtype FontsetSimple = FontsetSimple (ForeignPtr FontsetSimple)+noFontsetSimple :: Maybe FontsetSimple+noFontsetSimple = Nothing++foreign import ccall "pango_fontset_simple_get_type"+ c_pango_fontset_simple_get_type :: IO GType++type instance ParentTypes FontsetSimple = '[Fontset, GObject.Object]++instance GObject FontsetSimple where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_fontset_simple_get_type+ ++class GObject o => FontsetSimpleK o+instance (GObject o, IsDescendantOf FontsetSimple o) => FontsetSimpleK o++toFontsetSimple :: FontsetSimpleK o => o -> IO FontsetSimple+toFontsetSimple = unsafeCastTo FontsetSimple++-- method FontsetSimple::new+-- method type : Constructor+-- Args : [Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontsetSimple"+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_simple_new" pango_fontset_simple_new :: + Ptr Language -> -- language : TInterface "Pango" "Language"+ IO (Ptr FontsetSimple)+++fontsetSimpleNew ::+ (MonadIO m) =>+ Language -> -- language+ m FontsetSimple+fontsetSimpleNew language = liftIO $ do+ let language' = unsafeManagedPtrGetPtr language+ result <- pango_fontset_simple_new language'+ result' <- (wrapObject FontsetSimple) result+ touchManagedPtr language+ return result'++-- method FontsetSimple::append+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontsetSimple", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontsetSimple", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_simple_append" pango_fontset_simple_append :: + Ptr FontsetSimple -> -- _obj : TInterface "Pango" "FontsetSimple"+ Ptr Font -> -- font : TInterface "Pango" "Font"+ IO ()+++fontsetSimpleAppend ::+ (MonadIO m, FontsetSimpleK a, FontK b) =>+ a -> -- _obj+ b -> -- font+ m ()+fontsetSimpleAppend _obj font = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let font' = unsafeManagedPtrCastPtr font+ pango_fontset_simple_append _obj' font'+ touchManagedPtr _obj+ touchManagedPtr font+ return ()++-- method FontsetSimple::size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "FontsetSimple", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "FontsetSimple", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_fontset_simple_size" pango_fontset_simple_size :: + Ptr FontsetSimple -> -- _obj : TInterface "Pango" "FontsetSimple"+ IO Int32+++fontsetSimpleSize ::+ (MonadIO m, FontsetSimpleK a) =>+ a -> -- _obj+ m Int32+fontsetSimpleSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_fontset_simple_size _obj'+ touchManagedPtr _obj+ return result++-- struct GlyphGeometry+newtype GlyphGeometry = GlyphGeometry (ForeignPtr GlyphGeometry)+noGlyphGeometry :: Maybe GlyphGeometry+noGlyphGeometry = Nothing++glyphGeometryReadWidth :: GlyphGeometry -> IO Int32+glyphGeometryReadWidth s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Int32+ return val++glyphGeometryReadXOffset :: GlyphGeometry -> IO Int32+glyphGeometryReadXOffset s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Int32+ return val++glyphGeometryReadYOffset :: GlyphGeometry -> IO Int32+glyphGeometryReadYOffset s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Int32+ return val++-- struct GlyphInfo+newtype GlyphInfo = GlyphInfo (ForeignPtr GlyphInfo)+noGlyphInfo :: Maybe GlyphInfo+noGlyphInfo = Nothing++glyphInfoReadGlyph :: GlyphInfo -> IO Word32+glyphInfoReadGlyph s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Word32+ return val++glyphInfoReadGeometry :: GlyphInfo -> IO GlyphGeometry+glyphInfoReadGeometry s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO (Ptr GlyphGeometry)+ val' <- (newPtr 12 GlyphGeometry) val+ return val'++glyphInfoReadAttr :: GlyphInfo -> IO GlyphVisAttr+glyphInfoReadAttr s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr GlyphVisAttr)+ val' <- (newPtr 4 GlyphVisAttr) val+ return val'++-- struct GlyphItem+newtype GlyphItem = GlyphItem (ForeignPtr GlyphItem)+noGlyphItem :: Maybe GlyphItem+noGlyphItem = Nothing++foreign import ccall "pango_glyph_item_get_type" c_pango_glyph_item_get_type :: + IO GType++instance BoxedObject GlyphItem where+ boxedType _ = c_pango_glyph_item_get_type++glyphItemReadItem :: GlyphItem -> IO Item+glyphItemReadItem s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Item)+ val' <- (newBoxed Item) val+ return val'++glyphItemReadGlyphs :: GlyphItem -> IO GlyphString+glyphItemReadGlyphs s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO (Ptr GlyphString)+ val' <- (newBoxed GlyphString) val+ return val'++-- method GlyphItem::apply_attrs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "list", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "list", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGSList (TInterface "Pango" "GlyphItem")+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_apply_attrs" pango_glyph_item_apply_attrs :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ Ptr AttrList -> -- list : TInterface "Pango" "AttrList"+ IO (Ptr (GSList (Ptr GlyphItem)))+++glyphItemApplyAttrs ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ T.Text -> -- text+ AttrList -> -- list+ m [GlyphItem]+glyphItemApplyAttrs _obj text list = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ let list' = unsafeManagedPtrGetPtr list+ result <- pango_glyph_item_apply_attrs _obj' text' list'+ result' <- unpackGSList result+ result'' <- mapM (wrapBoxed GlyphItem) result'+ g_slist_free result+ touchManagedPtr _obj+ touchManagedPtr list+ freeMem text'+ return result''++-- method GlyphItem::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphItem"+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_copy" pango_glyph_item_copy :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ IO (Ptr GlyphItem)+++glyphItemCopy ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ m GlyphItem+glyphItemCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_item_copy _obj'+ result' <- (wrapBoxed GlyphItem) result+ touchManagedPtr _obj+ return result'++-- method GlyphItem::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_free" pango_glyph_item_free :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ IO ()+++glyphItemFree ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ m ()+glyphItemFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_glyph_item_free _obj'+ touchManagedPtr _obj+ return ()++-- method GlyphItem::get_logical_widths+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_widths", argType = TCArray False (-1) (-1) (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_widths", argType = TCArray False (-1) (-1) (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_get_logical_widths" pango_glyph_item_get_logical_widths :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ Ptr Int32 -> -- logical_widths : TCArray False (-1) (-1) (TBasicType TInt32)+ IO ()+++glyphItemGetLogicalWidths ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ T.Text -> -- text+ Ptr Int32 -> -- logical_widths+ m ()+glyphItemGetLogicalWidths _obj text logical_widths = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ pango_glyph_item_get_logical_widths _obj' text' logical_widths+ touchManagedPtr _obj+ freeMem text'+ return ()++-- method GlyphItem::letter_space+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "log_attrs", argType = TCArray False (-1) (-1) (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "letter_spacing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "log_attrs", argType = TCArray False (-1) (-1) (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "letter_spacing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_letter_space" pango_glyph_item_letter_space :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ Ptr (Ptr LogAttr) -> -- log_attrs : TCArray False (-1) (-1) (TInterface "Pango" "LogAttr")+ Int32 -> -- letter_spacing : TBasicType TInt32+ IO ()+++glyphItemLetterSpace ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ T.Text -> -- text+ Ptr (Ptr LogAttr) -> -- log_attrs+ Int32 -> -- letter_spacing+ m ()+glyphItemLetterSpace _obj text log_attrs letter_spacing = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ pango_glyph_item_letter_space _obj' text' log_attrs letter_spacing+ touchManagedPtr _obj+ freeMem text'+ return ()++-- method GlyphItem::split+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphItem"+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_split" pango_glyph_item_split :: + Ptr GlyphItem -> -- _obj : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- split_index : TBasicType TInt32+ IO (Ptr GlyphItem)+++glyphItemSplit ::+ (MonadIO m) =>+ GlyphItem -> -- _obj+ T.Text -> -- text+ Int32 -> -- split_index+ m GlyphItem+glyphItemSplit _obj text split_index = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ result <- pango_glyph_item_split _obj' text' split_index+ result' <- (wrapBoxed GlyphItem) result+ touchManagedPtr _obj+ freeMem text'+ return result'++-- struct GlyphItemIter+newtype GlyphItemIter = GlyphItemIter (ForeignPtr GlyphItemIter)+noGlyphItemIter :: Maybe GlyphItemIter+noGlyphItemIter = Nothing++foreign import ccall "pango_glyph_item_iter_get_type" c_pango_glyph_item_iter_get_type :: + IO GType++instance BoxedObject GlyphItemIter where+ boxedType _ = c_pango_glyph_item_iter_get_type++glyphItemIterReadGlyphItem :: GlyphItemIter -> IO GlyphItem+glyphItemIterReadGlyphItem s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr GlyphItem)+ val' <- (newBoxed GlyphItem) val+ return val'++glyphItemIterReadText :: GlyphItemIter -> IO T.Text+glyphItemIterReadText s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO CString+ val' <- cstringToText val+ return val'++glyphItemIterReadStartGlyph :: GlyphItemIter -> IO Int32+glyphItemIterReadStartGlyph s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Int32+ return val++glyphItemIterReadStartIndex :: GlyphItemIter -> IO Int32+glyphItemIterReadStartIndex s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 20) :: IO Int32+ return val++glyphItemIterReadStartChar :: GlyphItemIter -> IO Int32+glyphItemIterReadStartChar s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO Int32+ return val++glyphItemIterReadEndGlyph :: GlyphItemIter -> IO Int32+glyphItemIterReadEndGlyph s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 28) :: IO Int32+ return val++glyphItemIterReadEndIndex :: GlyphItemIter -> IO Int32+glyphItemIterReadEndIndex s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO Int32+ return val++glyphItemIterReadEndChar :: GlyphItemIter -> IO Int32+glyphItemIterReadEndChar s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 36) :: IO Int32+ return val++-- method GlyphItemIter::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphItemIter"+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_copy" pango_glyph_item_iter_copy :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ IO (Ptr GlyphItemIter)+++glyphItemIterCopy ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ m GlyphItemIter+glyphItemIterCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_item_iter_copy _obj'+ result' <- (wrapBoxed GlyphItemIter) result+ touchManagedPtr _obj+ return result'++-- method GlyphItemIter::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_free" pango_glyph_item_iter_free :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ IO ()+++glyphItemIterFree ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ m ()+glyphItemIterFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_glyph_item_iter_free _obj'+ touchManagedPtr _obj+ return ()++-- method GlyphItemIter::init_end+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_init_end" pango_glyph_item_iter_init_end :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ Ptr GlyphItem -> -- glyph_item : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ IO CInt+++glyphItemIterInitEnd ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ GlyphItem -> -- glyph_item+ T.Text -> -- text+ m Bool+glyphItemIterInitEnd _obj glyph_item text = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let glyph_item' = unsafeManagedPtrGetPtr glyph_item+ text' <- textToCString text+ result <- pango_glyph_item_iter_init_end _obj' glyph_item' text'+ let result' = (/= 0) result+ touchManagedPtr _obj+ touchManagedPtr glyph_item+ freeMem text'+ return result'++-- method GlyphItemIter::init_start+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_init_start" pango_glyph_item_iter_init_start :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ Ptr GlyphItem -> -- glyph_item : TInterface "Pango" "GlyphItem"+ CString -> -- text : TBasicType TUTF8+ IO CInt+++glyphItemIterInitStart ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ GlyphItem -> -- glyph_item+ T.Text -> -- text+ m Bool+glyphItemIterInitStart _obj glyph_item text = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let glyph_item' = unsafeManagedPtrGetPtr glyph_item+ text' <- textToCString text+ result <- pango_glyph_item_iter_init_start _obj' glyph_item' text'+ let result' = (/= 0) result+ touchManagedPtr _obj+ touchManagedPtr glyph_item+ freeMem text'+ return result'++-- method GlyphItemIter::next_cluster+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_next_cluster" pango_glyph_item_iter_next_cluster :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ IO CInt+++glyphItemIterNextCluster ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ m Bool+glyphItemIterNextCluster _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_item_iter_next_cluster _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method GlyphItemIter::prev_cluster+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphItemIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_item_iter_prev_cluster" pango_glyph_item_iter_prev_cluster :: + Ptr GlyphItemIter -> -- _obj : TInterface "Pango" "GlyphItemIter"+ IO CInt+++glyphItemIterPrevCluster ::+ (MonadIO m) =>+ GlyphItemIter -> -- _obj+ m Bool+glyphItemIterPrevCluster _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_item_iter_prev_cluster _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- struct GlyphString+newtype GlyphString = GlyphString (ForeignPtr GlyphString)+noGlyphString :: Maybe GlyphString+noGlyphString = Nothing++foreign import ccall "pango_glyph_string_get_type" c_pango_glyph_string_get_type :: + IO GType++instance BoxedObject GlyphString where+ boxedType _ = c_pango_glyph_string_get_type++glyphStringReadNumGlyphs :: GlyphString -> IO Int32+glyphStringReadNumGlyphs s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Int32+ return val++glyphStringReadGlyphs :: GlyphString -> IO GlyphInfo+glyphStringReadGlyphs s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO (Ptr GlyphInfo)+ val' <- (newPtr 20 GlyphInfo) val+ return val'++glyphStringReadLogClusters :: GlyphString -> IO Int32+glyphStringReadLogClusters s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Int32+ return val++-- method GlyphString::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "GlyphString"+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_new" pango_glyph_string_new :: + IO (Ptr GlyphString)+++glyphStringNew ::+ (MonadIO m) =>+ m GlyphString+glyphStringNew = liftIO $ do+ result <- pango_glyph_string_new+ result' <- (wrapBoxed GlyphString) result+ return result'++-- method GlyphString::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphString"+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_copy" pango_glyph_string_copy :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ IO (Ptr GlyphString)+++glyphStringCopy ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ m GlyphString+glyphStringCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_string_copy _obj'+ result' <- (wrapBoxed GlyphString) result+ touchManagedPtr _obj+ return result'++-- method GlyphString::extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_extents" pango_glyph_string_extents :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ Ptr Font -> -- font : TInterface "Pango" "Font"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++glyphStringExtents ::+ (MonadIO m, FontK a) =>+ GlyphString -> -- _obj+ a -> -- font+ m (Rectangle,Rectangle)+glyphStringExtents _obj font = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let font' = unsafeManagedPtrCastPtr font+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_glyph_string_extents _obj' font' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ touchManagedPtr font+ return (ink_rect', logical_rect')++-- method GlyphString::extents_range+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_extents_range" pango_glyph_string_extents_range :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ Int32 -> -- start : TBasicType TInt32+ Int32 -> -- end : TBasicType TInt32+ Ptr Font -> -- font : TInterface "Pango" "Font"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++glyphStringExtentsRange ::+ (MonadIO m, FontK a) =>+ GlyphString -> -- _obj+ Int32 -> -- start+ Int32 -> -- end+ a -> -- font+ m (Rectangle,Rectangle)+glyphStringExtentsRange _obj start end font = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let font' = unsafeManagedPtrCastPtr font+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_glyph_string_extents_range _obj' start end font' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ touchManagedPtr font+ return (ink_rect', logical_rect')++-- method GlyphString::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_free" pango_glyph_string_free :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ IO ()+++glyphStringFree ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ m ()+glyphStringFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_glyph_string_free _obj'+ touchManagedPtr _obj+ return ()++-- method GlyphString::get_logical_widths+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "embedding_level", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_widths", argType = TCArray False (-1) (-1) (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "embedding_level", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_widths", argType = TCArray False (-1) (-1) (TBasicType TInt32), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_get_logical_widths" pango_glyph_string_get_logical_widths :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Int32 -> -- embedding_level : TBasicType TInt32+ Ptr Int32 -> -- logical_widths : TCArray False (-1) (-1) (TBasicType TInt32)+ IO ()+++glyphStringGetLogicalWidths ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ T.Text -> -- text+ Int32 -> -- length+ Int32 -> -- embedding_level+ Ptr Int32 -> -- logical_widths+ m ()+glyphStringGetLogicalWidths _obj text length_ embedding_level logical_widths = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ pango_glyph_string_get_logical_widths _obj' text' length_ embedding_level logical_widths+ touchManagedPtr _obj+ freeMem text'+ return ()++-- method GlyphString::get_width+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_get_width" pango_glyph_string_get_width :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ IO Int32+++glyphStringGetWidth ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ m Int32+glyphStringGetWidth _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_glyph_string_get_width _obj'+ touchManagedPtr _obj+ return result++-- method GlyphString::index_to_x+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_index_to_x" pango_glyph_string_index_to_x :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Int32 -> -- index_ : TBasicType TInt32+ CInt -> -- trailing : TBasicType TBoolean+ Ptr Int32 -> -- x_pos : TBasicType TInt32+ IO ()+++glyphStringIndexToX ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ T.Text -> -- text+ Int32 -> -- length+ Analysis -> -- analysis+ Int32 -> -- index_+ Bool -> -- trailing+ m (Int32)+glyphStringIndexToX _obj text length_ analysis index_ trailing = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ let analysis' = unsafeManagedPtrGetPtr analysis+ let trailing' = (fromIntegral . fromEnum) trailing+ x_pos <- allocMem :: IO (Ptr Int32)+ pango_glyph_string_index_to_x _obj' text' length_ analysis' index_ trailing' x_pos+ x_pos' <- peek x_pos+ touchManagedPtr _obj+ touchManagedPtr analysis+ freeMem text'+ freeMem x_pos+ return x_pos'++-- method GlyphString::set_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_set_size" pango_glyph_string_set_size :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ Int32 -> -- new_len : TBasicType TInt32+ IO ()+++glyphStringSetSize ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ Int32 -> -- new_len+ m ()+glyphStringSetSize _obj new_len = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_glyph_string_set_size _obj' new_len+ touchManagedPtr _obj+ return ()++-- method GlyphString::x_to_index+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "trailing", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_glyph_string_x_to_index" pango_glyph_string_x_to_index :: + Ptr GlyphString -> -- _obj : TInterface "Pango" "GlyphString"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Int32 -> -- x_pos : TBasicType TInt32+ Ptr Int32 -> -- index_ : TBasicType TInt32+ Ptr Int32 -> -- trailing : TBasicType TInt32+ IO ()+++glyphStringXToIndex ::+ (MonadIO m) =>+ GlyphString -> -- _obj+ T.Text -> -- text+ Int32 -> -- length+ Analysis -> -- analysis+ Int32 -> -- x_pos+ m (Int32,Int32)+glyphStringXToIndex _obj text length_ analysis x_pos = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ text' <- textToCString text+ let analysis' = unsafeManagedPtrGetPtr analysis+ index_ <- allocMem :: IO (Ptr Int32)+ trailing <- allocMem :: IO (Ptr Int32)+ pango_glyph_string_x_to_index _obj' text' length_ analysis' x_pos index_ trailing+ index_' <- peek index_+ trailing' <- peek trailing+ touchManagedPtr _obj+ touchManagedPtr analysis+ freeMem text'+ freeMem index_+ freeMem trailing+ return (index_', trailing')++-- struct GlyphVisAttr+newtype GlyphVisAttr = GlyphVisAttr (ForeignPtr GlyphVisAttr)+noGlyphVisAttr :: Maybe GlyphVisAttr+noGlyphVisAttr = Nothing++glyphVisAttrReadIsClusterStart :: GlyphVisAttr -> IO Word32+glyphVisAttrReadIsClusterStart s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Word32+ return val++-- Enum Gravity++data Gravity = + GravitySouth+ | GravityEast+ | GravityNorth+ | GravityWest+ | GravityAuto+ | AnotherGravity Int+ deriving (Show, Eq)++instance Enum Gravity where+ fromEnum GravitySouth = 0+ fromEnum GravityEast = 1+ fromEnum GravityNorth = 2+ fromEnum GravityWest = 3+ fromEnum GravityAuto = 4+ fromEnum (AnotherGravity k) = k++ toEnum 0 = GravitySouth+ toEnum 1 = GravityEast+ toEnum 2 = GravityNorth+ toEnum 3 = GravityWest+ toEnum 4 = GravityAuto+ toEnum k = AnotherGravity k++foreign import ccall "pango_gravity_get_type" c_pango_gravity_get_type :: + IO GType++instance BoxedEnum Gravity where+ boxedEnumType _ = c_pango_gravity_get_type++-- Enum GravityHint++data GravityHint = + GravityHintNatural+ | GravityHintStrong+ | GravityHintLine+ | AnotherGravityHint Int+ deriving (Show, Eq)++instance Enum GravityHint where+ fromEnum GravityHintNatural = 0+ fromEnum GravityHintStrong = 1+ fromEnum GravityHintLine = 2+ fromEnum (AnotherGravityHint k) = k++ toEnum 0 = GravityHintNatural+ toEnum 1 = GravityHintStrong+ toEnum 2 = GravityHintLine+ toEnum k = AnotherGravityHint k++foreign import ccall "pango_gravity_hint_get_type" c_pango_gravity_hint_get_type :: + IO GType++instance BoxedEnum GravityHint where+ boxedEnumType _ = c_pango_gravity_hint_get_type++-- struct IncludedModule+newtype IncludedModule = IncludedModule (ForeignPtr IncludedModule)+noIncludedModule :: Maybe IncludedModule+noIncludedModule = Nothing++-- XXX Skipped getter for "IncludedModule:list" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- XXX Skipped getter for "IncludedModule:init" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- XXX Skipped getter for "IncludedModule:exit" :: Not implemented: "Wrapping foreign callbacks is not supported yet"++-- struct Item+newtype Item = Item (ForeignPtr Item)+noItem :: Maybe Item+noItem = Nothing++foreign import ccall "pango_item_get_type" c_pango_item_get_type :: + IO GType++instance BoxedObject Item where+ boxedType _ = c_pango_item_get_type++itemReadOffset :: Item -> IO Int32+itemReadOffset s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Int32+ return val++itemReadLength :: Item -> IO Int32+itemReadLength s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Int32+ return val++itemReadNumChars :: Item -> IO Int32+itemReadNumChars s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Int32+ return val++itemReadAnalysis :: Item -> IO Analysis+itemReadAnalysis s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr Analysis)+ val' <- (newPtr 48 Analysis) val+ return val'++-- method Item::new+-- method type : Constructor+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "Item"+-- throws : False+-- Skip return : False++foreign import ccall "pango_item_new" pango_item_new :: + IO (Ptr Item)+++itemNew ::+ (MonadIO m) =>+ m Item+itemNew = liftIO $ do+ result <- pango_item_new+ result' <- (wrapBoxed Item) result+ return result'++-- method Item::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Item"+-- throws : False+-- Skip return : False++foreign import ccall "pango_item_copy" pango_item_copy :: + Ptr Item -> -- _obj : TInterface "Pango" "Item"+ IO (Ptr Item)+++itemCopy ::+ (MonadIO m) =>+ Item -> -- _obj+ m Item+itemCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_item_copy _obj'+ result' <- (wrapBoxed Item) result+ touchManagedPtr _obj+ return result'++-- method Item::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_item_free" pango_item_free :: + Ptr Item -> -- _obj : TInterface "Pango" "Item"+ IO ()+++itemFree ::+ (MonadIO m) =>+ Item -> -- _obj+ m ()+itemFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_item_free _obj'+ touchManagedPtr _obj+ return ()++-- method Item::split+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_offset", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Item", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "split_offset", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Item"+-- throws : False+-- Skip return : False++foreign import ccall "pango_item_split" pango_item_split :: + Ptr Item -> -- _obj : TInterface "Pango" "Item"+ Int32 -> -- split_index : TBasicType TInt32+ Int32 -> -- split_offset : TBasicType TInt32+ IO (Ptr Item)+++itemSplit ::+ (MonadIO m) =>+ Item -> -- _obj+ Int32 -> -- split_index+ Int32 -> -- split_offset+ m Item+itemSplit _obj split_index split_offset = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_item_split _obj' split_index split_offset+ result' <- (wrapBoxed Item) result+ touchManagedPtr _obj+ return result'++-- struct Language+newtype Language = Language (ForeignPtr Language)+noLanguage :: Maybe Language+noLanguage = Nothing++foreign import ccall "pango_language_get_type" c_pango_language_get_type :: + IO GType++instance BoxedObject Language where+ boxedType _ = c_pango_language_get_type++-- method Language::get_sample_string+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_get_sample_string" pango_language_get_sample_string :: + Ptr Language -> -- _obj : TInterface "Pango" "Language"+ IO CString+++languageGetSampleString ::+ (MonadIO m) =>+ Language -> -- _obj+ m T.Text+languageGetSampleString _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_language_get_sample_string _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method Language::get_scripts+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "num_scripts", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "num_scripts", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray False (-1) 1 (TInterface "Pango" "Script")+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_get_scripts" pango_language_get_scripts :: + Ptr Language -> -- _obj : TInterface "Pango" "Language"+ Ptr Int32 -> -- num_scripts : TBasicType TInt32+ IO (Ptr CUInt)+++languageGetScripts ::+ (MonadIO m) =>+ Language -> -- _obj+ m [Script]+languageGetScripts _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ num_scripts <- allocMem :: IO (Ptr Int32)+ result <- pango_language_get_scripts _obj' num_scripts+ num_scripts' <- peek num_scripts+ result' <- (unpackStorableArrayWithLength num_scripts') result+ let result'' = map (toEnum . fromIntegral) result'+ touchManagedPtr _obj+ freeMem num_scripts+ return result''++-- method Language::includes_script+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_includes_script" pango_language_includes_script :: + Ptr Language -> -- _obj : TInterface "Pango" "Language"+ CUInt -> -- script : TInterface "Pango" "Script"+ IO CInt+++languageIncludesScript ::+ (MonadIO m) =>+ Language -> -- _obj+ Script -> -- script+ m Bool+languageIncludesScript _obj script = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let script' = (fromIntegral . fromEnum) script+ result <- pango_language_includes_script _obj' script'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Language::matches+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "range_list", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "range_list", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_matches" pango_language_matches :: + Ptr Language -> -- _obj : TInterface "Pango" "Language"+ CString -> -- range_list : TBasicType TUTF8+ IO CInt+++languageMatches ::+ (MonadIO m) =>+ Language -> -- _obj+ T.Text -> -- range_list+ m Bool+languageMatches _obj range_list = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ range_list' <- textToCString range_list+ result <- pango_language_matches _obj' range_list'+ let result' = (/= 0) result+ touchManagedPtr _obj+ freeMem range_list'+ return result'++-- method Language::to_string+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_to_string" pango_language_to_string :: + Ptr Language -> -- _obj : TInterface "Pango" "Language"+ IO CString+++languageToString ::+ (MonadIO m) =>+ Language -> -- _obj+ m T.Text+languageToString _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_language_to_string _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- object Layout +newtype Layout = Layout (ForeignPtr Layout)+noLayout :: Maybe Layout+noLayout = Nothing++foreign import ccall "pango_layout_get_type"+ c_pango_layout_get_type :: IO GType++type instance ParentTypes Layout = '[GObject.Object]++instance GObject Layout where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_layout_get_type+ ++class GObject o => LayoutK o+instance (GObject o, IsDescendantOf Layout o) => LayoutK o++toLayout :: LayoutK o => o -> IO Layout+toLayout = unsafeCastTo Layout++-- method Layout::new+-- method type : Constructor+-- Args : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Layout"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_new" pango_layout_new :: + Ptr Context -> -- context : TInterface "Pango" "Context"+ IO (Ptr Layout)+++layoutNew ::+ (MonadIO m, ContextK a) =>+ a -> -- context+ m Layout+layoutNew context = liftIO $ do+ let context' = unsafeManagedPtrCastPtr context+ result <- pango_layout_new context'+ result' <- (wrapObject Layout) result+ touchManagedPtr context+ return result'++-- method Layout::context_changed+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_context_changed" pango_layout_context_changed :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO ()+++layoutContextChanged ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m ()+layoutContextChanged _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_layout_context_changed _obj'+ touchManagedPtr _obj+ return ()++-- method Layout::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Layout"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_copy" pango_layout_copy :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr Layout)+++layoutCopy ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Layout+layoutCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_copy _obj'+ result' <- (wrapObject Layout) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_alignment+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Alignment"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_alignment" pango_layout_get_alignment :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CUInt+++layoutGetAlignment ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Alignment+layoutGetAlignment _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_alignment _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_attributes+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "AttrList"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_attributes" pango_layout_get_attributes :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr AttrList)+++layoutGetAttributes ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m AttrList+layoutGetAttributes _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_attributes _obj'+ result' <- (newBoxed AttrList) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_auto_dir+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_auto_dir" pango_layout_get_auto_dir :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CInt+++layoutGetAutoDir ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Bool+layoutGetAutoDir _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_auto_dir _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_baseline+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_baseline" pango_layout_get_baseline :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetBaseline ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetBaseline _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_baseline _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_character_count+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_character_count" pango_layout_get_character_count :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetCharacterCount ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetCharacterCount _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_character_count _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_context+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Context"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_context" pango_layout_get_context :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr Context)+++layoutGetContext ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Context+layoutGetContext _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_context _obj'+ result' <- (newObject Context) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_cursor_pos+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "strong_pos", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "weak_pos", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_cursor_pos" pango_layout_get_cursor_pos :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- index_ : TBasicType TInt32+ Ptr Rectangle -> -- strong_pos : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- weak_pos : TInterface "Pango" "Rectangle"+ IO ()+++layoutGetCursorPos ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- index_+ m (Rectangle,Rectangle)+layoutGetCursorPos _obj index_ = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ strong_pos <- callocBytes 16 :: IO (Ptr Rectangle)+ weak_pos <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_get_cursor_pos _obj' index_ strong_pos weak_pos+ strong_pos' <- (wrapPtr Rectangle) strong_pos+ weak_pos' <- (wrapPtr Rectangle) weak_pos+ touchManagedPtr _obj+ return (strong_pos', weak_pos')++-- method Layout::get_ellipsize+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "EllipsizeMode"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_ellipsize" pango_layout_get_ellipsize :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CUInt+++layoutGetEllipsize ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m EllipsizeMode+layoutGetEllipsize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_ellipsize _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_extents" pango_layout_get_extents :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutGetExtents ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m (Rectangle,Rectangle)+layoutGetExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_get_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method Layout::get_font_description+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_font_description" pango_layout_get_font_description :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr FontDescription)+++layoutGetFontDescription ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m FontDescription+layoutGetFontDescription _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_font_description _obj'+ result' <- (newBoxed FontDescription) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_height+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_height" pango_layout_get_height :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetHeight ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetHeight _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_height _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_indent+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_indent" pango_layout_get_indent :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetIndent ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetIndent _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_indent _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_iter+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutIter"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_iter" pango_layout_get_iter :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr LayoutIter)+++layoutGetIter ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m LayoutIter+layoutGetIter _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_iter _obj'+ result' <- (wrapBoxed LayoutIter) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_justify+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_justify" pango_layout_get_justify :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CInt+++layoutGetJustify ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Bool+layoutGetJustify _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_justify _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_line" pango_layout_get_line :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- line : TBasicType TInt32+ IO (Ptr LayoutLine)+++layoutGetLine ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- line+ m LayoutLine+layoutGetLine _obj line = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_line _obj' line+ result' <- (newBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_line_count+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_line_count" pango_layout_get_line_count :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetLineCount ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetLineCount _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_line_count _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_line_readonly+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_line_readonly" pango_layout_get_line_readonly :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- line : TBasicType TInt32+ IO (Ptr LayoutLine)+++layoutGetLineReadonly ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- line+ m LayoutLine+layoutGetLineReadonly _obj line = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_line_readonly _obj' line+ result' <- (newBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_lines+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGSList (TInterface "Pango" "LayoutLine")+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_lines" pango_layout_get_lines :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr (GSList (Ptr LayoutLine)))+++layoutGetLines ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m [LayoutLine]+layoutGetLines _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_lines _obj'+ result' <- unpackGSList result+ result'' <- mapM (newBoxed LayoutLine) result'+ touchManagedPtr _obj+ return result''++-- method Layout::get_lines_readonly+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGSList (TInterface "Pango" "LayoutLine")+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_lines_readonly" pango_layout_get_lines_readonly :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr (GSList (Ptr LayoutLine)))+++layoutGetLinesReadonly ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m [LayoutLine]+layoutGetLinesReadonly _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_lines_readonly _obj'+ result' <- unpackGSList result+ result'' <- mapM (newBoxed LayoutLine) result'+ touchManagedPtr _obj+ return result''++-- method Layout::get_log_attrs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TCArray False (-1) 2 (TInterface "Pango" "LogAttr"), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferContainer},Arg {argName = "n_attrs", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_attrs", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_log_attrs" pango_layout_get_log_attrs :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr (Ptr LogAttr) -> -- attrs : TCArray False (-1) 2 (TInterface "Pango" "LogAttr")+ Ptr Int32 -> -- n_attrs : TBasicType TInt32+ IO ()+++layoutGetLogAttrs ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m ([LogAttr])+layoutGetLogAttrs _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ attrs <- allocMem :: IO (Ptr (Ptr LogAttr))+ n_attrs <- allocMem :: IO (Ptr Int32)+ pango_layout_get_log_attrs _obj' attrs n_attrs+ n_attrs' <- peek n_attrs+ attrs' <- peek attrs+ attrs'' <- (unpackBlockArrayWithLength 52 n_attrs') attrs'+ attrs''' <- mapM (newPtr 52 LogAttr) attrs''+ freeMem attrs'+ touchManagedPtr _obj+ freeMem attrs+ freeMem n_attrs+ return attrs'''++-- method Layout::get_log_attrs_readonly+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "n_attrs", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_attrs", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray False (-1) 1 (TInterface "Pango" "LogAttr")+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_log_attrs_readonly" pango_layout_get_log_attrs_readonly :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr Int32 -> -- n_attrs : TBasicType TInt32+ IO (Ptr LogAttr)+++layoutGetLogAttrsReadonly ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m [LogAttr]+layoutGetLogAttrsReadonly _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ n_attrs <- allocMem :: IO (Ptr Int32)+ result <- pango_layout_get_log_attrs_readonly _obj' n_attrs+ n_attrs' <- peek n_attrs+ result' <- (unpackBlockArrayWithLength 52 n_attrs') result+ result'' <- mapM (newPtr 52 LogAttr) result'+ touchManagedPtr _obj+ freeMem n_attrs+ return result''++-- method Layout::get_pixel_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_pixel_extents" pango_layout_get_pixel_extents :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutGetPixelExtents ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m (Rectangle,Rectangle)+layoutGetPixelExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_get_pixel_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method Layout::get_pixel_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_pixel_size" pango_layout_get_pixel_size :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr Int32 -> -- width : TBasicType TInt32+ Ptr Int32 -> -- height : TBasicType TInt32+ IO ()+++layoutGetPixelSize ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m (Int32,Int32)+layoutGetPixelSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ width <- allocMem :: IO (Ptr Int32)+ height <- allocMem :: IO (Ptr Int32)+ pango_layout_get_pixel_size _obj' width height+ width' <- peek width+ height' <- peek height+ touchManagedPtr _obj+ freeMem width+ freeMem height+ return (width', height')++-- method Layout::get_serial+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_serial" pango_layout_get_serial :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Word32+++layoutGetSerial ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Word32+layoutGetSerial _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_serial _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_single_paragraph_mode+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_single_paragraph_mode" pango_layout_get_single_paragraph_mode :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CInt+++layoutGetSingleParagraphMode ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Bool+layoutGetSingleParagraphMode _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_single_paragraph_mode _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_size" pango_layout_get_size :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr Int32 -> -- width : TBasicType TInt32+ Ptr Int32 -> -- height : TBasicType TInt32+ IO ()+++layoutGetSize ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m (Int32,Int32)+layoutGetSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ width <- allocMem :: IO (Ptr Int32)+ height <- allocMem :: IO (Ptr Int32)+ pango_layout_get_size _obj' width height+ width' <- peek width+ height' <- peek height+ touchManagedPtr _obj+ freeMem width+ freeMem height+ return (width', height')++-- method Layout::get_spacing+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_spacing" pango_layout_get_spacing :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetSpacing ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetSpacing _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_spacing _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_tabs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "TabArray"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_tabs" pango_layout_get_tabs :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO (Ptr TabArray)+++layoutGetTabs ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m TabArray+layoutGetTabs _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_tabs _obj'+ result' <- (wrapBoxed TabArray) result+ touchManagedPtr _obj+ return result'++-- method Layout::get_text+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_text" pango_layout_get_text :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CString+++layoutGetText ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m T.Text+layoutGetText _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_text _obj'+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++-- method Layout::get_unknown_glyphs_count+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_unknown_glyphs_count" pango_layout_get_unknown_glyphs_count :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetUnknownGlyphsCount ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetUnknownGlyphsCount _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_unknown_glyphs_count _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_width+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_width" pango_layout_get_width :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO Int32+++layoutGetWidth ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Int32+layoutGetWidth _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_width _obj'+ touchManagedPtr _obj+ return result++-- method Layout::get_wrap+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "WrapMode"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_get_wrap" pango_layout_get_wrap :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CUInt+++layoutGetWrap ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m WrapMode+layoutGetWrap _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_get_wrap _obj'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr _obj+ return result'++-- method Layout::index_to_line_x+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_index_to_line_x" pango_layout_index_to_line_x :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- index_ : TBasicType TInt32+ CInt -> -- trailing : TBasicType TBoolean+ Ptr Int32 -> -- line : TBasicType TInt32+ Ptr Int32 -> -- x_pos : TBasicType TInt32+ IO ()+++layoutIndexToLineX ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- index_+ Bool -> -- trailing+ m (Int32,Int32)+layoutIndexToLineX _obj index_ trailing = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let trailing' = (fromIntegral . fromEnum) trailing+ line <- allocMem :: IO (Ptr Int32)+ x_pos <- allocMem :: IO (Ptr Int32)+ pango_layout_index_to_line_x _obj' index_ trailing' line x_pos+ line' <- peek line+ x_pos' <- peek x_pos+ touchManagedPtr _obj+ freeMem line+ freeMem x_pos+ return (line', x_pos')++-- method Layout::index_to_pos+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pos", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_index_to_pos" pango_layout_index_to_pos :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- index_ : TBasicType TInt32+ Ptr Rectangle -> -- pos : TInterface "Pango" "Rectangle"+ IO ()+++layoutIndexToPos ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- index_+ m (Rectangle)+layoutIndexToPos _obj index_ = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pos <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_index_to_pos _obj' index_ pos+ pos' <- (wrapPtr Rectangle) pos+ touchManagedPtr _obj+ return pos'++-- method Layout::is_ellipsized+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_is_ellipsized" pango_layout_is_ellipsized :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CInt+++layoutIsEllipsized ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Bool+layoutIsEllipsized _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_is_ellipsized _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Layout::is_wrapped+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_is_wrapped" pango_layout_is_wrapped :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ IO CInt+++layoutIsWrapped ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ m Bool+layoutIsWrapped _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_layout_is_wrapped _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method Layout::move_cursor_visually+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "strong", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_trailing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_index", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "new_trailing", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "strong", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "old_trailing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_move_cursor_visually" pango_layout_move_cursor_visually :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CInt -> -- strong : TBasicType TBoolean+ Int32 -> -- old_index : TBasicType TInt32+ Int32 -> -- old_trailing : TBasicType TInt32+ Int32 -> -- direction : TBasicType TInt32+ Ptr Int32 -> -- new_index : TBasicType TInt32+ Ptr Int32 -> -- new_trailing : TBasicType TInt32+ IO ()+++layoutMoveCursorVisually ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Bool -> -- strong+ Int32 -> -- old_index+ Int32 -> -- old_trailing+ Int32 -> -- direction+ m (Int32,Int32)+layoutMoveCursorVisually _obj strong old_index old_trailing direction = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let strong' = (fromIntegral . fromEnum) strong+ new_index <- allocMem :: IO (Ptr Int32)+ new_trailing <- allocMem :: IO (Ptr Int32)+ pango_layout_move_cursor_visually _obj' strong' old_index old_trailing direction new_index new_trailing+ new_index' <- peek new_index+ new_trailing' <- peek new_trailing+ touchManagedPtr _obj+ freeMem new_index+ freeMem new_trailing+ return (new_index', new_trailing')++-- method Layout::set_alignment+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignment", argType = TInterface "Pango" "Alignment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignment", argType = TInterface "Pango" "Alignment", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_alignment" pango_layout_set_alignment :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CUInt -> -- alignment : TInterface "Pango" "Alignment"+ IO ()+++layoutSetAlignment ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Alignment -> -- alignment+ m ()+layoutSetAlignment _obj alignment = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let alignment' = (fromIntegral . fromEnum) alignment+ pango_layout_set_alignment _obj' alignment'+ touchManagedPtr _obj+ return ()++-- method Layout::set_attributes+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_attributes" pango_layout_set_attributes :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr AttrList -> -- attrs : TInterface "Pango" "AttrList"+ IO ()+++layoutSetAttributes ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Maybe (AttrList) -> -- attrs+ m ()+layoutSetAttributes _obj attrs = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeAttrs <- case attrs of+ Nothing -> return nullPtr+ Just jAttrs -> do+ let jAttrs' = unsafeManagedPtrGetPtr jAttrs+ return jAttrs'+ pango_layout_set_attributes _obj' maybeAttrs+ touchManagedPtr _obj+ whenJust attrs touchManagedPtr+ return ()++-- method Layout::set_auto_dir+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "auto_dir", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "auto_dir", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_auto_dir" pango_layout_set_auto_dir :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CInt -> -- auto_dir : TBasicType TBoolean+ IO ()+++layoutSetAutoDir ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Bool -> -- auto_dir+ m ()+layoutSetAutoDir _obj auto_dir = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let auto_dir' = (fromIntegral . fromEnum) auto_dir+ pango_layout_set_auto_dir _obj' auto_dir'+ touchManagedPtr _obj+ return ()++-- method Layout::set_ellipsize+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ellipsize", argType = TInterface "Pango" "EllipsizeMode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ellipsize", argType = TInterface "Pango" "EllipsizeMode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_ellipsize" pango_layout_set_ellipsize :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CUInt -> -- ellipsize : TInterface "Pango" "EllipsizeMode"+ IO ()+++layoutSetEllipsize ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ EllipsizeMode -> -- ellipsize+ m ()+layoutSetEllipsize _obj ellipsize = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let ellipsize' = (fromIntegral . fromEnum) ellipsize+ pango_layout_set_ellipsize _obj' ellipsize'+ touchManagedPtr _obj+ return ()++-- method Layout::set_font_description+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "desc", argType = TInterface "Pango" "FontDescription", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_font_description" pango_layout_set_font_description :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr FontDescription -> -- desc : TInterface "Pango" "FontDescription"+ IO ()+++layoutSetFontDescription ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Maybe (FontDescription) -> -- desc+ m ()+layoutSetFontDescription _obj desc = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeDesc <- case desc of+ Nothing -> return nullPtr+ Just jDesc -> do+ let jDesc' = unsafeManagedPtrGetPtr jDesc+ return jDesc'+ pango_layout_set_font_description _obj' maybeDesc+ touchManagedPtr _obj+ whenJust desc touchManagedPtr+ return ()++-- method Layout::set_height+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_height" pango_layout_set_height :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- height : TBasicType TInt32+ IO ()+++layoutSetHeight ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- height+ m ()+layoutSetHeight _obj height = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_layout_set_height _obj' height+ touchManagedPtr _obj+ return ()++-- method Layout::set_indent+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "indent", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "indent", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_indent" pango_layout_set_indent :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- indent : TBasicType TInt32+ IO ()+++layoutSetIndent ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- indent+ m ()+layoutSetIndent _obj indent = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_layout_set_indent _obj' indent+ touchManagedPtr _obj+ return ()++-- method Layout::set_justify+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "justify", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "justify", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_justify" pango_layout_set_justify :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CInt -> -- justify : TBasicType TBoolean+ IO ()+++layoutSetJustify ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Bool -> -- justify+ m ()+layoutSetJustify _obj justify = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let justify' = (fromIntegral . fromEnum) justify+ pango_layout_set_justify _obj' justify'+ touchManagedPtr _obj+ return ()++-- method Layout::set_markup+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "markup", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "markup", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_markup" pango_layout_set_markup :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CString -> -- markup : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ IO ()+++layoutSetMarkup ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ T.Text -> -- markup+ Int32 -> -- length+ m ()+layoutSetMarkup _obj markup length_ = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ markup' <- textToCString markup+ pango_layout_set_markup _obj' markup' length_+ touchManagedPtr _obj+ freeMem markup'+ return ()++-- method Layout::set_markup_with_accel+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "markup", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "accel_char", argType = TBasicType TUniChar, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "markup", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_markup_with_accel" pango_layout_set_markup_with_accel :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CString -> -- markup : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ CInt -> -- accel_marker : TBasicType TUniChar+ Ptr CInt -> -- accel_char : TBasicType TUniChar+ IO ()+++layoutSetMarkupWithAccel ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ T.Text -> -- markup+ Int32 -> -- length+ Char -> -- accel_marker+ m (Char)+layoutSetMarkupWithAccel _obj markup length_ accel_marker = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ markup' <- textToCString markup+ let accel_marker' = (fromIntegral . ord) accel_marker+ accel_char <- allocMem :: IO (Ptr CInt)+ pango_layout_set_markup_with_accel _obj' markup' length_ accel_marker' accel_char+ accel_char' <- peek accel_char+ let accel_char'' = (chr . fromIntegral) accel_char'+ touchManagedPtr _obj+ freeMem markup'+ freeMem accel_char+ return accel_char''++-- method Layout::set_single_paragraph_mode+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "setting", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_single_paragraph_mode" pango_layout_set_single_paragraph_mode :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CInt -> -- setting : TBasicType TBoolean+ IO ()+++layoutSetSingleParagraphMode ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Bool -> -- setting+ m ()+layoutSetSingleParagraphMode _obj setting = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let setting' = (fromIntegral . fromEnum) setting+ pango_layout_set_single_paragraph_mode _obj' setting'+ touchManagedPtr _obj+ return ()++-- method Layout::set_spacing+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "spacing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "spacing", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_spacing" pango_layout_set_spacing :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- spacing : TBasicType TInt32+ IO ()+++layoutSetSpacing ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- spacing+ m ()+layoutSetSpacing _obj spacing = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_layout_set_spacing _obj' spacing+ touchManagedPtr _obj+ return ()++-- method Layout::set_tabs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tabs", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tabs", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_tabs" pango_layout_set_tabs :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Ptr TabArray -> -- tabs : TInterface "Pango" "TabArray"+ IO ()+++layoutSetTabs ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Maybe (TabArray) -> -- tabs+ m ()+layoutSetTabs _obj tabs = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeTabs <- case tabs of+ Nothing -> return nullPtr+ Just jTabs -> do+ let jTabs' = unsafeManagedPtrGetPtr jTabs+ return jTabs'+ pango_layout_set_tabs _obj' maybeTabs+ touchManagedPtr _obj+ whenJust tabs touchManagedPtr+ return ()++-- method Layout::set_text+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_text" pango_layout_set_text :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ IO ()+++layoutSetText ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ T.Text -> -- text+ Int32 -> -- length+ m ()+layoutSetText _obj text length_ = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ text' <- textToCString text+ pango_layout_set_text _obj' text' length_+ touchManagedPtr _obj+ freeMem text'+ return ()++-- method Layout::set_width+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_width" pango_layout_set_width :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- width : TBasicType TInt32+ IO ()+++layoutSetWidth ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- width+ m ()+layoutSetWidth _obj width = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_layout_set_width _obj' width+ touchManagedPtr _obj+ return ()++-- method Layout::set_wrap+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wrap", argType = TInterface "Pango" "WrapMode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wrap", argType = TInterface "Pango" "WrapMode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_set_wrap" pango_layout_set_wrap :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ CUInt -> -- wrap : TInterface "Pango" "WrapMode"+ IO ()+++layoutSetWrap ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ WrapMode -> -- wrap+ m ()+layoutSetWrap _obj wrap = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let wrap' = (fromIntegral . fromEnum) wrap+ pango_layout_set_wrap _obj' wrap'+ touchManagedPtr _obj+ return ()++-- method Layout::xy_to_index+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "trailing", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_xy_to_index" pango_layout_xy_to_index :: + Ptr Layout -> -- _obj : TInterface "Pango" "Layout"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ Ptr Int32 -> -- index_ : TBasicType TInt32+ Ptr Int32 -> -- trailing : TBasicType TInt32+ IO CInt+++layoutXyToIndex ::+ (MonadIO m, LayoutK a) =>+ a -> -- _obj+ Int32 -> -- x+ Int32 -> -- y+ m (Bool,Int32,Int32)+layoutXyToIndex _obj x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ index_ <- allocMem :: IO (Ptr Int32)+ trailing <- allocMem :: IO (Ptr Int32)+ result <- pango_layout_xy_to_index _obj' x y index_ trailing+ let result' = (/= 0) result+ index_' <- peek index_+ trailing' <- peek trailing+ touchManagedPtr _obj+ freeMem index_+ freeMem trailing+ return (result', index_', trailing')++-- struct LayoutIter+newtype LayoutIter = LayoutIter (ForeignPtr LayoutIter)+noLayoutIter :: Maybe LayoutIter+noLayoutIter = Nothing++foreign import ccall "pango_layout_iter_get_type" c_pango_layout_iter_get_type :: + IO GType++instance BoxedObject LayoutIter where+ boxedType _ = c_pango_layout_iter_get_type++-- method LayoutIter::at_last_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_at_last_line" pango_layout_iter_at_last_line :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO CInt+++layoutIterAtLastLine ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Bool+layoutIterAtLastLine _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_at_last_line _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutIter"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_copy" pango_layout_iter_copy :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr LayoutIter)+++layoutIterCopy ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m LayoutIter+layoutIterCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_copy _obj'+ result' <- (wrapBoxed LayoutIter) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_free" pango_layout_iter_free :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO ()+++layoutIterFree ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m ()+layoutIterFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_layout_iter_free _obj'+ touchManagedPtr _obj+ return ()++-- method LayoutIter::get_baseline+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_baseline" pango_layout_iter_get_baseline :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO Int32+++layoutIterGetBaseline ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Int32+layoutIterGetBaseline _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_baseline _obj'+ touchManagedPtr _obj+ return result++-- method LayoutIter::get_char_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_char_extents" pango_layout_iter_get_char_extents :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutIterGetCharExtents ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Rectangle)+layoutIterGetCharExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_iter_get_char_extents _obj' logical_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return logical_rect'++-- method LayoutIter::get_cluster_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_cluster_extents" pango_layout_iter_get_cluster_extents :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutIterGetClusterExtents ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Rectangle,Rectangle)+layoutIterGetClusterExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_iter_get_cluster_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutIter::get_index+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_index" pango_layout_iter_get_index :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO Int32+++layoutIterGetIndex ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Int32+layoutIterGetIndex _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_index _obj'+ touchManagedPtr _obj+ return result++-- method LayoutIter::get_layout+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Layout"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_layout" pango_layout_iter_get_layout :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr Layout)+++layoutIterGetLayout ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Layout+layoutIterGetLayout _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_layout _obj'+ result' <- (newObject Layout) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::get_layout_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_layout_extents" pango_layout_iter_get_layout_extents :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutIterGetLayoutExtents ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Rectangle,Rectangle)+layoutIterGetLayoutExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_iter_get_layout_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutIter::get_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_line" pango_layout_iter_get_line :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr LayoutLine)+++layoutIterGetLine ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m LayoutLine+layoutIterGetLine _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_line _obj'+ result' <- (wrapBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::get_line_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_line_extents" pango_layout_iter_get_line_extents :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutIterGetLineExtents ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Rectangle,Rectangle)+layoutIterGetLineExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_iter_get_line_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutIter::get_line_readonly+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_line_readonly" pango_layout_iter_get_line_readonly :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr LayoutLine)+++layoutIterGetLineReadonly ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m LayoutLine+layoutIterGetLineReadonly _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_line_readonly _obj'+ result' <- (newBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::get_line_yrange+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y0_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "y1_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_line_yrange" pango_layout_iter_get_line_yrange :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Int32 -> -- y0_ : TBasicType TInt32+ Ptr Int32 -> -- y1_ : TBasicType TInt32+ IO ()+++layoutIterGetLineYrange ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Int32,Int32)+layoutIterGetLineYrange _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ y0_ <- allocMem :: IO (Ptr Int32)+ y1_ <- allocMem :: IO (Ptr Int32)+ pango_layout_iter_get_line_yrange _obj' y0_ y1_+ y0_' <- peek y0_+ y1_' <- peek y1_+ touchManagedPtr _obj+ freeMem y0_+ freeMem y1_+ return (y0_', y1_')++-- method LayoutIter::get_run+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphItem"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_run" pango_layout_iter_get_run :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr GlyphItem)+++layoutIterGetRun ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m GlyphItem+layoutIterGetRun _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_run _obj'+ result' <- (newBoxed GlyphItem) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::get_run_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_run_extents" pango_layout_iter_get_run_extents :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutIterGetRunExtents ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m (Rectangle,Rectangle)+layoutIterGetRunExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_iter_get_run_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutIter::get_run_readonly+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "GlyphItem"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_get_run_readonly" pango_layout_iter_get_run_readonly :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO (Ptr GlyphItem)+++layoutIterGetRunReadonly ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m GlyphItem+layoutIterGetRunReadonly _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_get_run_readonly _obj'+ result' <- (newBoxed GlyphItem) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::next_char+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_next_char" pango_layout_iter_next_char :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO CInt+++layoutIterNextChar ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Bool+layoutIterNextChar _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_next_char _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::next_cluster+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_next_cluster" pango_layout_iter_next_cluster :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO CInt+++layoutIterNextCluster ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Bool+layoutIterNextCluster _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_next_cluster _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::next_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_next_line" pango_layout_iter_next_line :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO CInt+++layoutIterNextLine ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Bool+layoutIterNextLine _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_next_line _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method LayoutIter::next_run+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_iter_next_run" pango_layout_iter_next_run :: + Ptr LayoutIter -> -- _obj : TInterface "Pango" "LayoutIter"+ IO CInt+++layoutIterNextRun ::+ (MonadIO m) =>+ LayoutIter -> -- _obj+ m Bool+layoutIterNextRun _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_iter_next_run _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- struct LayoutLine+newtype LayoutLine = LayoutLine (ForeignPtr LayoutLine)+noLayoutLine :: Maybe LayoutLine+noLayoutLine = Nothing++foreign import ccall "pango_layout_line_get_type" c_pango_layout_line_get_type :: + IO GType++instance BoxedObject LayoutLine where+ boxedType _ = c_pango_layout_line_get_type++layoutLineReadLayout :: LayoutLine -> IO Layout+layoutLineReadLayout s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO (Ptr Layout)+ val' <- (newObject Layout) val+ return val'++layoutLineReadStartIndex :: LayoutLine -> IO Int32+layoutLineReadStartIndex s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Int32+ return val++layoutLineReadLength :: LayoutLine -> IO Int32+layoutLineReadLength s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 12) :: IO Int32+ return val++layoutLineReadRuns :: LayoutLine -> IO ([Ptr ()])+layoutLineReadRuns s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO (Ptr (GSList (Ptr ())))+ val' <- unpackGSList val+ return val'++layoutLineReadIsParagraphStart :: LayoutLine -> IO Word32+layoutLineReadIsParagraphStart s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO Word32+ return val++layoutLineReadResolvedDir :: LayoutLine -> IO Word32+layoutLineReadResolvedDir s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 28) :: IO Word32+ return val++-- method LayoutLine::get_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_get_extents" pango_layout_line_get_extents :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutLineGetExtents ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ m (Rectangle,Rectangle)+layoutLineGetExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_line_get_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutLine::get_pixel_extents+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ink_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "logical_rect", argType = TInterface "Pango" "Rectangle", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_get_pixel_extents" pango_layout_line_get_pixel_extents :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ Ptr Rectangle -> -- ink_rect : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- logical_rect : TInterface "Pango" "Rectangle"+ IO ()+++layoutLineGetPixelExtents ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ m (Rectangle,Rectangle)+layoutLineGetPixelExtents _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ink_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ logical_rect <- callocBytes 16 :: IO (Ptr Rectangle)+ pango_layout_line_get_pixel_extents _obj' ink_rect logical_rect+ ink_rect' <- (wrapPtr Rectangle) ink_rect+ logical_rect' <- (wrapPtr Rectangle) logical_rect+ touchManagedPtr _obj+ return (ink_rect', logical_rect')++-- method LayoutLine::get_x_ranges+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ranges", argType = TCArray False (-1) 4 (TBasicType TInt32), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "n_ranges", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_ranges", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_get_x_ranges" pango_layout_line_get_x_ranges :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ Int32 -> -- start_index : TBasicType TInt32+ Int32 -> -- end_index : TBasicType TInt32+ Ptr (Ptr Int32) -> -- ranges : TCArray False (-1) 4 (TBasicType TInt32)+ Ptr Int32 -> -- n_ranges : TBasicType TInt32+ IO ()+++layoutLineGetXRanges ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ Int32 -> -- start_index+ Int32 -> -- end_index+ m ([Int32])+layoutLineGetXRanges _obj start_index end_index = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ ranges <- allocMem :: IO (Ptr (Ptr Int32))+ n_ranges <- allocMem :: IO (Ptr Int32)+ pango_layout_line_get_x_ranges _obj' start_index end_index ranges n_ranges+ n_ranges' <- peek n_ranges+ ranges' <- peek ranges+ ranges'' <- (unpackStorableArrayWithLength n_ranges') ranges'+ freeMem ranges'+ touchManagedPtr _obj+ freeMem ranges+ freeMem n_ranges+ return ranges''++-- method LayoutLine::index_to_x+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "trailing", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_index_to_x" pango_layout_line_index_to_x :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ Int32 -> -- index_ : TBasicType TInt32+ CInt -> -- trailing : TBasicType TBoolean+ Ptr Int32 -> -- x_pos : TBasicType TInt32+ IO ()+++layoutLineIndexToX ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ Int32 -> -- index_+ Bool -> -- trailing+ m (Int32)+layoutLineIndexToX _obj index_ trailing = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let trailing' = (fromIntegral . fromEnum) trailing+ x_pos <- allocMem :: IO (Ptr Int32)+ pango_layout_line_index_to_x _obj' index_ trailing' x_pos+ x_pos' <- peek x_pos+ touchManagedPtr _obj+ freeMem x_pos+ return x_pos'++-- method LayoutLine::ref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_ref" pango_layout_line_ref :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ IO (Ptr LayoutLine)+++layoutLineRef ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ m LayoutLine+layoutLineRef _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_layout_line_ref _obj'+ result' <- (wrapBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method LayoutLine::unref+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_unref" pango_layout_line_unref :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ IO ()+++layoutLineUnref ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ m ()+layoutLineUnref _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_layout_line_unref _obj'+ touchManagedPtr _obj+ return ()++-- method LayoutLine::x_to_index+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index_", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "trailing", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x_pos", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_layout_line_x_to_index" pango_layout_line_x_to_index :: + Ptr LayoutLine -> -- _obj : TInterface "Pango" "LayoutLine"+ Int32 -> -- x_pos : TBasicType TInt32+ Ptr Int32 -> -- index_ : TBasicType TInt32+ Ptr Int32 -> -- trailing : TBasicType TInt32+ IO CInt+++layoutLineXToIndex ::+ (MonadIO m) =>+ LayoutLine -> -- _obj+ Int32 -> -- x_pos+ m (Bool,Int32,Int32)+layoutLineXToIndex _obj x_pos = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ index_ <- allocMem :: IO (Ptr Int32)+ trailing <- allocMem :: IO (Ptr Int32)+ result <- pango_layout_line_x_to_index _obj' x_pos index_ trailing+ let result' = (/= 0) result+ index_' <- peek index_+ trailing' <- peek trailing+ touchManagedPtr _obj+ freeMem index_+ freeMem trailing+ return (result', index_', trailing')++-- struct LogAttr+newtype LogAttr = LogAttr (ForeignPtr LogAttr)+noLogAttr :: Maybe LogAttr+noLogAttr = Nothing++logAttrReadIsLineBreak :: LogAttr -> IO Word32+logAttrReadIsLineBreak s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Word32+ return val++logAttrReadIsMandatoryBreak :: LogAttr -> IO Word32+logAttrReadIsMandatoryBreak s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Word32+ return val++logAttrReadIsCharBreak :: LogAttr -> IO Word32+logAttrReadIsCharBreak s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Word32+ return val++logAttrReadIsWhite :: LogAttr -> IO Word32+logAttrReadIsWhite s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 12) :: IO Word32+ return val++logAttrReadIsCursorPosition :: LogAttr -> IO Word32+logAttrReadIsCursorPosition s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO Word32+ return val++logAttrReadIsWordStart :: LogAttr -> IO Word32+logAttrReadIsWordStart s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 20) :: IO Word32+ return val++logAttrReadIsWordEnd :: LogAttr -> IO Word32+logAttrReadIsWordEnd s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO Word32+ return val++logAttrReadIsSentenceBoundary :: LogAttr -> IO Word32+logAttrReadIsSentenceBoundary s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 28) :: IO Word32+ return val++logAttrReadIsSentenceStart :: LogAttr -> IO Word32+logAttrReadIsSentenceStart s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO Word32+ return val++logAttrReadIsSentenceEnd :: LogAttr -> IO Word32+logAttrReadIsSentenceEnd s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 36) :: IO Word32+ return val++logAttrReadBackspaceDeletesCharacter :: LogAttr -> IO Word32+logAttrReadBackspaceDeletesCharacter s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 40) :: IO Word32+ return val++logAttrReadIsExpandableSpace :: LogAttr -> IO Word32+logAttrReadIsExpandableSpace s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 44) :: IO Word32+ return val++logAttrReadIsWordBoundary :: LogAttr -> IO Word32+logAttrReadIsWordBoundary s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 48) :: IO Word32+ return val++-- struct Map+newtype Map = Map (ForeignPtr Map)+noMap :: Maybe Map+noMap = Nothing++-- struct MapEntry+newtype MapEntry = MapEntry (ForeignPtr MapEntry)+noMapEntry :: Maybe MapEntry+noMapEntry = Nothing++-- struct Matrix+newtype Matrix = Matrix (ForeignPtr Matrix)+noMatrix :: Maybe Matrix+noMatrix = Nothing++foreign import ccall "pango_matrix_get_type" c_pango_matrix_get_type :: + IO GType++instance BoxedObject Matrix where+ boxedType _ = c_pango_matrix_get_type++matrixReadXx :: Matrix -> IO Double+matrixReadXx s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO CDouble+ let val' = realToFrac val+ return val'++matrixReadXy :: Matrix -> IO Double+matrixReadXy s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO CDouble+ let val' = realToFrac val+ return val'++matrixReadYx :: Matrix -> IO Double+matrixReadYx s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 16) :: IO CDouble+ let val' = realToFrac val+ return val'++matrixReadYy :: Matrix -> IO Double+matrixReadYy s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 24) :: IO CDouble+ let val' = realToFrac val+ return val'++matrixReadX0 :: Matrix -> IO Double+matrixReadX0 s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 32) :: IO CDouble+ let val' = realToFrac val+ return val'++matrixReadY0 :: Matrix -> IO Double+matrixReadY0 s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 40) :: IO CDouble+ let val' = realToFrac val+ return val'++-- method Matrix::concat+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_concat" pango_matrix_concat :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ Ptr Matrix -> -- new_matrix : TInterface "Pango" "Matrix"+ IO ()+++matrixConcat ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Matrix -> -- new_matrix+ m ()+matrixConcat _obj new_matrix = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let new_matrix' = unsafeManagedPtrGetPtr new_matrix+ pango_matrix_concat _obj' new_matrix'+ touchManagedPtr _obj+ touchManagedPtr new_matrix+ return ()++-- method Matrix::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Matrix"+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_copy" pango_matrix_copy :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ IO (Ptr Matrix)+++matrixCopy ::+ (MonadIO m) =>+ Matrix -> -- _obj+ m Matrix+matrixCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_matrix_copy _obj'+ result' <- (wrapBoxed Matrix) result+ touchManagedPtr _obj+ return result'++-- method Matrix::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_free" pango_matrix_free :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ IO ()+++matrixFree ::+ (MonadIO m) =>+ Matrix -> -- _obj+ m ()+matrixFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_matrix_free _obj'+ touchManagedPtr _obj+ return ()++-- method Matrix::get_font_scale_factor+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TDouble+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_get_font_scale_factor" pango_matrix_get_font_scale_factor :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ IO CDouble+++matrixGetFontScaleFactor ::+ (MonadIO m) =>+ Matrix -> -- _obj+ m Double+matrixGetFontScaleFactor _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_matrix_get_font_scale_factor _obj'+ let result' = realToFrac result+ touchManagedPtr _obj+ return result'++-- method Matrix::rotate+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "degrees", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "degrees", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_rotate" pango_matrix_rotate :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ CDouble -> -- degrees : TBasicType TDouble+ IO ()+++matrixRotate ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Double -> -- degrees+ m ()+matrixRotate _obj degrees = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let degrees' = realToFrac degrees+ pango_matrix_rotate _obj' degrees'+ touchManagedPtr _obj+ return ()++-- method Matrix::scale+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale_x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale_y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale_x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "scale_y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_scale" pango_matrix_scale :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ CDouble -> -- scale_x : TBasicType TDouble+ CDouble -> -- scale_y : TBasicType TDouble+ IO ()+++matrixScale ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Double -> -- scale_x+ Double -> -- scale_y+ m ()+matrixScale _obj scale_x scale_y = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let scale_x' = realToFrac scale_x+ let scale_y' = realToFrac scale_y+ pango_matrix_scale _obj' scale_x' scale_y'+ touchManagedPtr _obj+ return ()++-- method Matrix::transform_distance+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "dx", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "dy", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "dx", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "dy", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_transform_distance" pango_matrix_transform_distance :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ Ptr CDouble -> -- dx : TBasicType TDouble+ Ptr CDouble -> -- dy : TBasicType TDouble+ IO ()+++matrixTransformDistance ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Double -> -- dx+ Double -> -- dy+ m (Double,Double)+matrixTransformDistance _obj dx dy = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let dx' = realToFrac dx+ dx'' <- allocMem :: IO (Ptr CDouble)+ poke dx'' dx'+ let dy' = realToFrac dy+ dy'' <- allocMem :: IO (Ptr CDouble)+ poke dy'' dy'+ pango_matrix_transform_distance _obj' dx'' dy''+ dx''' <- peek dx''+ let dx'''' = realToFrac dx'''+ dy''' <- peek dy''+ let dy'''' = realToFrac dy'''+ touchManagedPtr _obj+ freeMem dx''+ freeMem dy''+ return (dx'''', dy'''')++-- XXX Could not generate method Matrix::transform_pixel_rectangle+-- Error was : Not implemented: "Nullable inout structs not supported"+-- method Matrix::transform_point+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "y", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "y", argType = TBasicType TDouble, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_transform_point" pango_matrix_transform_point :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ Ptr CDouble -> -- x : TBasicType TDouble+ Ptr CDouble -> -- y : TBasicType TDouble+ IO ()+++matrixTransformPoint ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Double -> -- x+ Double -> -- y+ m (Double,Double)+matrixTransformPoint _obj x y = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let x' = realToFrac x+ x'' <- allocMem :: IO (Ptr CDouble)+ poke x'' x'+ let y' = realToFrac y+ y'' <- allocMem :: IO (Ptr CDouble)+ poke y'' y'+ pango_matrix_transform_point _obj' x'' y''+ x''' <- peek x''+ let x'''' = realToFrac x'''+ y''' <- peek y''+ let y'''' = realToFrac y'''+ touchManagedPtr _obj+ freeMem x''+ freeMem y''+ return (x'''', y'''')++-- XXX Could not generate method Matrix::transform_rectangle+-- Error was : Not implemented: "Nullable inout structs not supported"+-- method Matrix::translate+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tx", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ty", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tx", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ty", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_matrix_translate" pango_matrix_translate :: + Ptr Matrix -> -- _obj : TInterface "Pango" "Matrix"+ CDouble -> -- tx : TBasicType TDouble+ CDouble -> -- ty : TBasicType TDouble+ IO ()+++matrixTranslate ::+ (MonadIO m) =>+ Matrix -> -- _obj+ Double -> -- tx+ Double -> -- ty+ m ()+matrixTranslate _obj tx ty = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let tx' = realToFrac tx+ let ty' = realToFrac ty+ pango_matrix_translate _obj' tx' ty'+ touchManagedPtr _obj+ return ()++-- struct Rectangle+newtype Rectangle = Rectangle (ForeignPtr Rectangle)+noRectangle :: Maybe Rectangle+noRectangle = Nothing++rectangleReadX :: Rectangle -> IO Int32+rectangleReadX s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 0) :: IO Int32+ return val++rectangleReadY :: Rectangle -> IO Int32+rectangleReadY s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 4) :: IO Int32+ return val++rectangleReadWidth :: Rectangle -> IO Int32+rectangleReadWidth s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 8) :: IO Int32+ return val++rectangleReadHeight :: Rectangle -> IO Int32+rectangleReadHeight s = withManagedPtr s $ \ptr -> do+ val <- peek (ptr `plusPtr` 12) :: IO Int32+ return val++-- Enum RenderPart++data RenderPart = + RenderPartForeground+ | RenderPartBackground+ | RenderPartUnderline+ | RenderPartStrikethrough+ | AnotherRenderPart Int+ deriving (Show, Eq)++instance Enum RenderPart where+ fromEnum RenderPartForeground = 0+ fromEnum RenderPartBackground = 1+ fromEnum RenderPartUnderline = 2+ fromEnum RenderPartStrikethrough = 3+ fromEnum (AnotherRenderPart k) = k++ toEnum 0 = RenderPartForeground+ toEnum 1 = RenderPartBackground+ toEnum 2 = RenderPartUnderline+ toEnum 3 = RenderPartStrikethrough+ toEnum k = AnotherRenderPart k++foreign import ccall "pango_render_part_get_type" c_pango_render_part_get_type :: + IO GType++instance BoxedEnum RenderPart where+ boxedEnumType _ = c_pango_render_part_get_type++-- object Renderer +newtype Renderer = Renderer (ForeignPtr Renderer)+noRenderer :: Maybe Renderer+noRenderer = Nothing++foreign import ccall "pango_renderer_get_type"+ c_pango_renderer_get_type :: IO GType++type instance ParentTypes Renderer = '[GObject.Object]++instance GObject Renderer where+ gobjectIsInitiallyUnowned _ = False+ gobjectType _ = c_pango_renderer_get_type+ ++class GObject o => RendererK o+instance (GObject o, IsDescendantOf Renderer o) => RendererK o++toRenderer :: RendererK o => o -> IO Renderer+toRenderer = unsafeCastTo Renderer++-- method Renderer::activate+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_activate" pango_renderer_activate :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ IO ()+++rendererActivate ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ m ()+rendererActivate _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_renderer_activate _obj'+ touchManagedPtr _obj+ return ()++-- method Renderer::deactivate+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_deactivate" pango_renderer_deactivate :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ IO ()+++rendererDeactivate ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ m ()+rendererDeactivate _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_renderer_deactivate _obj'+ touchManagedPtr _obj+ return ()++-- method Renderer::draw_error_underline+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_error_underline" pango_renderer_draw_error_underline :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ Int32 -> -- width : TBasicType TInt32+ Int32 -> -- height : TBasicType TInt32+ IO ()+++rendererDrawErrorUnderline ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ Int32 -> -- x+ Int32 -> -- y+ Int32 -> -- width+ Int32 -> -- height+ m ()+rendererDrawErrorUnderline _obj x y width height = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ pango_renderer_draw_error_underline _obj' x y width height+ touchManagedPtr _obj+ return ()++-- method Renderer::draw_glyph+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph", argType = TBasicType TUInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_glyph" pango_renderer_draw_glyph :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Ptr Font -> -- font : TInterface "Pango" "Font"+ Word32 -> -- glyph : TBasicType TUInt32+ CDouble -> -- x : TBasicType TDouble+ CDouble -> -- y : TBasicType TDouble+ IO ()+++rendererDrawGlyph ::+ (MonadIO m, RendererK a, FontK b) =>+ a -> -- _obj+ b -> -- font+ Word32 -> -- glyph+ Double -> -- x+ Double -> -- y+ m ()+rendererDrawGlyph _obj font glyph x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let font' = unsafeManagedPtrCastPtr font+ let x' = realToFrac x+ let y' = realToFrac y+ pango_renderer_draw_glyph _obj' font' glyph x' y'+ touchManagedPtr _obj+ touchManagedPtr font+ return ()++-- method Renderer::draw_glyph_item+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyph_item", argType = TInterface "Pango" "GlyphItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_glyph_item" pango_renderer_draw_glyph_item :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CString -> -- text : TBasicType TUTF8+ Ptr GlyphItem -> -- glyph_item : TInterface "Pango" "GlyphItem"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ IO ()+++rendererDrawGlyphItem ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ Maybe (T.Text) -> -- text+ GlyphItem -> -- glyph_item+ Int32 -> -- x+ Int32 -> -- y+ m ()+rendererDrawGlyphItem _obj text glyph_item x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeText <- case text of+ Nothing -> return nullPtr+ Just jText -> do+ jText' <- textToCString jText+ return jText'+ let glyph_item' = unsafeManagedPtrGetPtr glyph_item+ pango_renderer_draw_glyph_item _obj' maybeText glyph_item' x y+ touchManagedPtr _obj+ touchManagedPtr glyph_item+ freeMem maybeText+ return ()++-- method Renderer::draw_glyphs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "font", argType = TInterface "Pango" "Font", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_glyphs" pango_renderer_draw_glyphs :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Ptr Font -> -- font : TInterface "Pango" "Font"+ Ptr GlyphString -> -- glyphs : TInterface "Pango" "GlyphString"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ IO ()+++rendererDrawGlyphs ::+ (MonadIO m, RendererK a, FontK b) =>+ a -> -- _obj+ b -> -- font+ GlyphString -> -- glyphs+ Int32 -> -- x+ Int32 -> -- y+ m ()+rendererDrawGlyphs _obj font glyphs x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let font' = unsafeManagedPtrCastPtr font+ let glyphs' = unsafeManagedPtrGetPtr glyphs+ pango_renderer_draw_glyphs _obj' font' glyphs' x y+ touchManagedPtr _obj+ touchManagedPtr font+ touchManagedPtr glyphs+ return ()++-- method Renderer::draw_layout+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "layout", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "layout", argType = TInterface "Pango" "Layout", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_layout" pango_renderer_draw_layout :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Ptr Layout -> -- layout : TInterface "Pango" "Layout"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ IO ()+++rendererDrawLayout ::+ (MonadIO m, RendererK a, LayoutK b) =>+ a -> -- _obj+ b -> -- layout+ Int32 -> -- x+ Int32 -> -- y+ m ()+rendererDrawLayout _obj layout x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let layout' = unsafeManagedPtrCastPtr layout+ pango_renderer_draw_layout _obj' layout' x y+ touchManagedPtr _obj+ touchManagedPtr layout+ return ()++-- method Renderer::draw_layout_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "line", argType = TInterface "Pango" "LayoutLine", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_layout_line" pango_renderer_draw_layout_line :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Ptr LayoutLine -> -- line : TInterface "Pango" "LayoutLine"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ IO ()+++rendererDrawLayoutLine ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ LayoutLine -> -- line+ Int32 -> -- x+ Int32 -> -- y+ m ()+rendererDrawLayoutLine _obj line x y = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let line' = unsafeManagedPtrGetPtr line+ pango_renderer_draw_layout_line _obj' line' x y+ touchManagedPtr _obj+ touchManagedPtr line+ return ()++-- method Renderer::draw_rectangle+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "width", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "height", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_rectangle" pango_renderer_draw_rectangle :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CUInt -> -- part : TInterface "Pango" "RenderPart"+ Int32 -> -- x : TBasicType TInt32+ Int32 -> -- y : TBasicType TInt32+ Int32 -> -- width : TBasicType TInt32+ Int32 -> -- height : TBasicType TInt32+ IO ()+++rendererDrawRectangle ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ RenderPart -> -- part+ Int32 -> -- x+ Int32 -> -- y+ Int32 -> -- width+ Int32 -> -- height+ m ()+rendererDrawRectangle _obj part x y width height = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let part' = (fromIntegral . fromEnum) part+ pango_renderer_draw_rectangle _obj' part' x y width height+ touchManagedPtr _obj+ return ()++-- method Renderer::draw_trapezoid+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y1_", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x11", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x21", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y2", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x12", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x22", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y1_", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x11", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x21", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y2", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x12", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x22", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_draw_trapezoid" pango_renderer_draw_trapezoid :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CUInt -> -- part : TInterface "Pango" "RenderPart"+ CDouble -> -- y1_ : TBasicType TDouble+ CDouble -> -- x11 : TBasicType TDouble+ CDouble -> -- x21 : TBasicType TDouble+ CDouble -> -- y2 : TBasicType TDouble+ CDouble -> -- x12 : TBasicType TDouble+ CDouble -> -- x22 : TBasicType TDouble+ IO ()+++rendererDrawTrapezoid ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ RenderPart -> -- part+ Double -> -- y1_+ Double -> -- x11+ Double -> -- x21+ Double -> -- y2+ Double -> -- x12+ Double -> -- x22+ m ()+rendererDrawTrapezoid _obj part y1_ x11 x21 y2 x12 x22 = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let part' = (fromIntegral . fromEnum) part+ let y1_' = realToFrac y1_+ let x11' = realToFrac x11+ let x21' = realToFrac x21+ let y2' = realToFrac y2+ let x12' = realToFrac x12+ let x22' = realToFrac x22+ pango_renderer_draw_trapezoid _obj' part' y1_' x11' x21' y2' x12' x22'+ touchManagedPtr _obj+ return ()++-- method Renderer::get_color+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Color"+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_get_color" pango_renderer_get_color :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CUInt -> -- part : TInterface "Pango" "RenderPart"+ IO (Ptr Color)+++rendererGetColor ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ RenderPart -> -- part+ m Color+rendererGetColor _obj part = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let part' = (fromIntegral . fromEnum) part+ result <- pango_renderer_get_color _obj' part'+ result' <- (newBoxed Color) result+ touchManagedPtr _obj+ return result'++-- method Renderer::get_layout+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Layout"+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_get_layout" pango_renderer_get_layout :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ IO (Ptr Layout)+++rendererGetLayout ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ m Layout+rendererGetLayout _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_renderer_get_layout _obj'+ result' <- (newObject Layout) result+ touchManagedPtr _obj+ return result'++-- method Renderer::get_layout_line+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "LayoutLine"+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_get_layout_line" pango_renderer_get_layout_line :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ IO (Ptr LayoutLine)+++rendererGetLayoutLine ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ m LayoutLine+rendererGetLayoutLine _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_renderer_get_layout_line _obj'+ result' <- (newBoxed LayoutLine) result+ touchManagedPtr _obj+ return result'++-- method Renderer::get_matrix+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Matrix"+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_get_matrix" pango_renderer_get_matrix :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ IO (Ptr Matrix)+++rendererGetMatrix ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ m Matrix+rendererGetMatrix _obj = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ result <- pango_renderer_get_matrix _obj'+ result' <- (newBoxed Matrix) result+ touchManagedPtr _obj+ return result'++-- method Renderer::part_changed+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_part_changed" pango_renderer_part_changed :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CUInt -> -- part : TInterface "Pango" "RenderPart"+ IO ()+++rendererPartChanged ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ RenderPart -> -- part+ m ()+rendererPartChanged _obj part = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let part' = (fromIntegral . fromEnum) part+ pango_renderer_part_changed _obj' part'+ touchManagedPtr _obj+ return ()++-- method Renderer::set_color+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "part", argType = TInterface "Pango" "RenderPart", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "color", argType = TInterface "Pango" "Color", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_set_color" pango_renderer_set_color :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ CUInt -> -- part : TInterface "Pango" "RenderPart"+ Ptr Color -> -- color : TInterface "Pango" "Color"+ IO ()+++rendererSetColor ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ RenderPart -> -- part+ Maybe (Color) -> -- color+ m ()+rendererSetColor _obj part color = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ let part' = (fromIntegral . fromEnum) part+ maybeColor <- case color of+ Nothing -> return nullPtr+ Just jColor -> do+ let jColor' = unsafeManagedPtrGetPtr jColor+ return jColor'+ pango_renderer_set_color _obj' part' maybeColor+ touchManagedPtr _obj+ whenJust color touchManagedPtr+ return ()++-- method Renderer::set_matrix+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "Renderer", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_renderer_set_matrix" pango_renderer_set_matrix :: + Ptr Renderer -> -- _obj : TInterface "Pango" "Renderer"+ Ptr Matrix -> -- matrix : TInterface "Pango" "Matrix"+ IO ()+++rendererSetMatrix ::+ (MonadIO m, RendererK a) =>+ a -> -- _obj+ Maybe (Matrix) -> -- matrix+ m ()+rendererSetMatrix _obj matrix = liftIO $ do+ let _obj' = unsafeManagedPtrCastPtr _obj+ maybeMatrix <- case matrix of+ Nothing -> return nullPtr+ Just jMatrix -> do+ let jMatrix' = unsafeManagedPtrGetPtr jMatrix+ return jMatrix'+ pango_renderer_set_matrix _obj' maybeMatrix+ touchManagedPtr _obj+ whenJust matrix touchManagedPtr+ return ()++-- Enum Script++data Script = + ScriptInvalidCode+ | ScriptCommon+ | ScriptInherited+ | ScriptArabic+ | ScriptArmenian+ | ScriptBengali+ | ScriptBopomofo+ | ScriptCherokee+ | ScriptCoptic+ | ScriptCyrillic+ | ScriptDeseret+ | ScriptDevanagari+ | ScriptEthiopic+ | ScriptGeorgian+ | ScriptGothic+ | ScriptGreek+ | ScriptGujarati+ | ScriptGurmukhi+ | ScriptHan+ | ScriptHangul+ | ScriptHebrew+ | ScriptHiragana+ | ScriptKannada+ | ScriptKatakana+ | ScriptKhmer+ | ScriptLao+ | ScriptLatin+ | ScriptMalayalam+ | ScriptMongolian+ | ScriptMyanmar+ | ScriptOgham+ | ScriptOldItalic+ | ScriptOriya+ | ScriptRunic+ | ScriptSinhala+ | ScriptSyriac+ | ScriptTamil+ | ScriptTelugu+ | ScriptThaana+ | ScriptThai+ | ScriptTibetan+ | ScriptCanadianAboriginal+ | ScriptYi+ | ScriptTagalog+ | ScriptHanunoo+ | ScriptBuhid+ | ScriptTagbanwa+ | ScriptBraille+ | ScriptCypriot+ | ScriptLimbu+ | ScriptOsmanya+ | ScriptShavian+ | ScriptLinearB+ | ScriptTaiLe+ | ScriptUgaritic+ | ScriptNewTaiLue+ | ScriptBuginese+ | ScriptGlagolitic+ | ScriptTifinagh+ | ScriptSylotiNagri+ | ScriptOldPersian+ | ScriptKharoshthi+ | ScriptUnknown+ | ScriptBalinese+ | ScriptCuneiform+ | ScriptPhoenician+ | ScriptPhagsPa+ | ScriptNko+ | ScriptKayahLi+ | ScriptLepcha+ | ScriptRejang+ | ScriptSundanese+ | ScriptSaurashtra+ | ScriptCham+ | ScriptOlChiki+ | ScriptVai+ | ScriptCarian+ | ScriptLycian+ | ScriptLydian+ | ScriptBatak+ | ScriptBrahmi+ | ScriptMandaic+ | ScriptChakma+ | ScriptMeroiticCursive+ | ScriptMeroiticHieroglyphs+ | ScriptMiao+ | ScriptSharada+ | ScriptSoraSompeng+ | ScriptTakri+ | AnotherScript Int+ deriving (Show, Eq)++instance Enum Script where+ fromEnum ScriptInvalidCode = -1+ fromEnum ScriptCommon = 0+ fromEnum ScriptInherited = 1+ fromEnum ScriptArabic = 2+ fromEnum ScriptArmenian = 3+ fromEnum ScriptBengali = 4+ fromEnum ScriptBopomofo = 5+ fromEnum ScriptCherokee = 6+ fromEnum ScriptCoptic = 7+ fromEnum ScriptCyrillic = 8+ fromEnum ScriptDeseret = 9+ fromEnum ScriptDevanagari = 10+ fromEnum ScriptEthiopic = 11+ fromEnum ScriptGeorgian = 12+ fromEnum ScriptGothic = 13+ fromEnum ScriptGreek = 14+ fromEnum ScriptGujarati = 15+ fromEnum ScriptGurmukhi = 16+ fromEnum ScriptHan = 17+ fromEnum ScriptHangul = 18+ fromEnum ScriptHebrew = 19+ fromEnum ScriptHiragana = 20+ fromEnum ScriptKannada = 21+ fromEnum ScriptKatakana = 22+ fromEnum ScriptKhmer = 23+ fromEnum ScriptLao = 24+ fromEnum ScriptLatin = 25+ fromEnum ScriptMalayalam = 26+ fromEnum ScriptMongolian = 27+ fromEnum ScriptMyanmar = 28+ fromEnum ScriptOgham = 29+ fromEnum ScriptOldItalic = 30+ fromEnum ScriptOriya = 31+ fromEnum ScriptRunic = 32+ fromEnum ScriptSinhala = 33+ fromEnum ScriptSyriac = 34+ fromEnum ScriptTamil = 35+ fromEnum ScriptTelugu = 36+ fromEnum ScriptThaana = 37+ fromEnum ScriptThai = 38+ fromEnum ScriptTibetan = 39+ fromEnum ScriptCanadianAboriginal = 40+ fromEnum ScriptYi = 41+ fromEnum ScriptTagalog = 42+ fromEnum ScriptHanunoo = 43+ fromEnum ScriptBuhid = 44+ fromEnum ScriptTagbanwa = 45+ fromEnum ScriptBraille = 46+ fromEnum ScriptCypriot = 47+ fromEnum ScriptLimbu = 48+ fromEnum ScriptOsmanya = 49+ fromEnum ScriptShavian = 50+ fromEnum ScriptLinearB = 51+ fromEnum ScriptTaiLe = 52+ fromEnum ScriptUgaritic = 53+ fromEnum ScriptNewTaiLue = 54+ fromEnum ScriptBuginese = 55+ fromEnum ScriptGlagolitic = 56+ fromEnum ScriptTifinagh = 57+ fromEnum ScriptSylotiNagri = 58+ fromEnum ScriptOldPersian = 59+ fromEnum ScriptKharoshthi = 60+ fromEnum ScriptUnknown = 61+ fromEnum ScriptBalinese = 62+ fromEnum ScriptCuneiform = 63+ fromEnum ScriptPhoenician = 64+ fromEnum ScriptPhagsPa = 65+ fromEnum ScriptNko = 66+ fromEnum ScriptKayahLi = 67+ fromEnum ScriptLepcha = 68+ fromEnum ScriptRejang = 69+ fromEnum ScriptSundanese = 70+ fromEnum ScriptSaurashtra = 71+ fromEnum ScriptCham = 72+ fromEnum ScriptOlChiki = 73+ fromEnum ScriptVai = 74+ fromEnum ScriptCarian = 75+ fromEnum ScriptLycian = 76+ fromEnum ScriptLydian = 77+ fromEnum ScriptBatak = 78+ fromEnum ScriptBrahmi = 79+ fromEnum ScriptMandaic = 80+ fromEnum ScriptChakma = 81+ fromEnum ScriptMeroiticCursive = 82+ fromEnum ScriptMeroiticHieroglyphs = 83+ fromEnum ScriptMiao = 84+ fromEnum ScriptSharada = 85+ fromEnum ScriptSoraSompeng = 86+ fromEnum ScriptTakri = 87+ fromEnum (AnotherScript k) = k++ toEnum -1 = ScriptInvalidCode+ toEnum 0 = ScriptCommon+ toEnum 1 = ScriptInherited+ toEnum 2 = ScriptArabic+ toEnum 3 = ScriptArmenian+ toEnum 4 = ScriptBengali+ toEnum 5 = ScriptBopomofo+ toEnum 6 = ScriptCherokee+ toEnum 7 = ScriptCoptic+ toEnum 8 = ScriptCyrillic+ toEnum 9 = ScriptDeseret+ toEnum 10 = ScriptDevanagari+ toEnum 11 = ScriptEthiopic+ toEnum 12 = ScriptGeorgian+ toEnum 13 = ScriptGothic+ toEnum 14 = ScriptGreek+ toEnum 15 = ScriptGujarati+ toEnum 16 = ScriptGurmukhi+ toEnum 17 = ScriptHan+ toEnum 18 = ScriptHangul+ toEnum 19 = ScriptHebrew+ toEnum 20 = ScriptHiragana+ toEnum 21 = ScriptKannada+ toEnum 22 = ScriptKatakana+ toEnum 23 = ScriptKhmer+ toEnum 24 = ScriptLao+ toEnum 25 = ScriptLatin+ toEnum 26 = ScriptMalayalam+ toEnum 27 = ScriptMongolian+ toEnum 28 = ScriptMyanmar+ toEnum 29 = ScriptOgham+ toEnum 30 = ScriptOldItalic+ toEnum 31 = ScriptOriya+ toEnum 32 = ScriptRunic+ toEnum 33 = ScriptSinhala+ toEnum 34 = ScriptSyriac+ toEnum 35 = ScriptTamil+ toEnum 36 = ScriptTelugu+ toEnum 37 = ScriptThaana+ toEnum 38 = ScriptThai+ toEnum 39 = ScriptTibetan+ toEnum 40 = ScriptCanadianAboriginal+ toEnum 41 = ScriptYi+ toEnum 42 = ScriptTagalog+ toEnum 43 = ScriptHanunoo+ toEnum 44 = ScriptBuhid+ toEnum 45 = ScriptTagbanwa+ toEnum 46 = ScriptBraille+ toEnum 47 = ScriptCypriot+ toEnum 48 = ScriptLimbu+ toEnum 49 = ScriptOsmanya+ toEnum 50 = ScriptShavian+ toEnum 51 = ScriptLinearB+ toEnum 52 = ScriptTaiLe+ toEnum 53 = ScriptUgaritic+ toEnum 54 = ScriptNewTaiLue+ toEnum 55 = ScriptBuginese+ toEnum 56 = ScriptGlagolitic+ toEnum 57 = ScriptTifinagh+ toEnum 58 = ScriptSylotiNagri+ toEnum 59 = ScriptOldPersian+ toEnum 60 = ScriptKharoshthi+ toEnum 61 = ScriptUnknown+ toEnum 62 = ScriptBalinese+ toEnum 63 = ScriptCuneiform+ toEnum 64 = ScriptPhoenician+ toEnum 65 = ScriptPhagsPa+ toEnum 66 = ScriptNko+ toEnum 67 = ScriptKayahLi+ toEnum 68 = ScriptLepcha+ toEnum 69 = ScriptRejang+ toEnum 70 = ScriptSundanese+ toEnum 71 = ScriptSaurashtra+ toEnum 72 = ScriptCham+ toEnum 73 = ScriptOlChiki+ toEnum 74 = ScriptVai+ toEnum 75 = ScriptCarian+ toEnum 76 = ScriptLycian+ toEnum 77 = ScriptLydian+ toEnum 78 = ScriptBatak+ toEnum 79 = ScriptBrahmi+ toEnum 80 = ScriptMandaic+ toEnum 81 = ScriptChakma+ toEnum 82 = ScriptMeroiticCursive+ toEnum 83 = ScriptMeroiticHieroglyphs+ toEnum 84 = ScriptMiao+ toEnum 85 = ScriptSharada+ toEnum 86 = ScriptSoraSompeng+ toEnum 87 = ScriptTakri+ toEnum k = AnotherScript k++foreign import ccall "pango_script_get_type" c_pango_script_get_type :: + IO GType++instance BoxedEnum Script where+ boxedEnumType _ = c_pango_script_get_type++-- struct ScriptForLang+newtype ScriptForLang = ScriptForLang (ForeignPtr ScriptForLang)+noScriptForLang :: Maybe ScriptForLang+noScriptForLang = Nothing++-- XXX Skipped getter for "ScriptForLang:lang" :: Not implemented: "Don't know how to unpack C array of type TCArray False 7 (-1) (TBasicType TInt8)"++-- XXX Skipped getter for "ScriptForLang:scripts" :: Not implemented: "Don't know how to unpack C array of type TCArray False 3 (-1) (TInterface \"Pango\" \"Script\")"++-- struct ScriptIter+newtype ScriptIter = ScriptIter (ForeignPtr ScriptIter)+noScriptIter :: Maybe ScriptIter+noScriptIter = Nothing++-- method ScriptIter::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_script_iter_free" pango_script_iter_free :: + Ptr ScriptIter -> -- _obj : TInterface "Pango" "ScriptIter"+ IO ()+++scriptIterFree ::+ (MonadIO m) =>+ ScriptIter -> -- _obj+ m ()+scriptIterFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_script_iter_free _obj'+ touchManagedPtr _obj+ return ()++-- method ScriptIter::get_range+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "end", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_script_iter_get_range" pango_script_iter_get_range :: + Ptr ScriptIter -> -- _obj : TInterface "Pango" "ScriptIter"+ Ptr CString -> -- start : TBasicType TUTF8+ Ptr CString -> -- end : TBasicType TUTF8+ Ptr CUInt -> -- script : TInterface "Pango" "Script"+ IO ()+++scriptIterGetRange ::+ (MonadIO m) =>+ ScriptIter -> -- _obj+ m (T.Text,T.Text,Script)+scriptIterGetRange _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ start <- allocMem :: IO (Ptr CString)+ end <- allocMem :: IO (Ptr CString)+ script <- allocMem :: IO (Ptr CUInt)+ pango_script_iter_get_range _obj' start end script+ start' <- peek start+ start'' <- cstringToText start'+ freeMem start'+ end' <- peek end+ end'' <- cstringToText end'+ freeMem end'+ script' <- peek script+ let script'' = (toEnum . fromIntegral) script'+ touchManagedPtr _obj+ freeMem start+ freeMem end+ freeMem script+ return (start'', end'', script'')++-- method ScriptIter::next+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "ScriptIter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_script_iter_next" pango_script_iter_next :: + Ptr ScriptIter -> -- _obj : TInterface "Pango" "ScriptIter"+ IO CInt+++scriptIterNext ::+ (MonadIO m) =>+ ScriptIter -> -- _obj+ m Bool+scriptIterNext _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_script_iter_next _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- Enum Stretch++data Stretch = + StretchUltraCondensed+ | StretchExtraCondensed+ | StretchCondensed+ | StretchSemiCondensed+ | StretchNormal+ | StretchSemiExpanded+ | StretchExpanded+ | StretchExtraExpanded+ | StretchUltraExpanded+ | AnotherStretch Int+ deriving (Show, Eq)++instance Enum Stretch where+ fromEnum StretchUltraCondensed = 0+ fromEnum StretchExtraCondensed = 1+ fromEnum StretchCondensed = 2+ fromEnum StretchSemiCondensed = 3+ fromEnum StretchNormal = 4+ fromEnum StretchSemiExpanded = 5+ fromEnum StretchExpanded = 6+ fromEnum StretchExtraExpanded = 7+ fromEnum StretchUltraExpanded = 8+ fromEnum (AnotherStretch k) = k++ toEnum 0 = StretchUltraCondensed+ toEnum 1 = StretchExtraCondensed+ toEnum 2 = StretchCondensed+ toEnum 3 = StretchSemiCondensed+ toEnum 4 = StretchNormal+ toEnum 5 = StretchSemiExpanded+ toEnum 6 = StretchExpanded+ toEnum 7 = StretchExtraExpanded+ toEnum 8 = StretchUltraExpanded+ toEnum k = AnotherStretch k++foreign import ccall "pango_stretch_get_type" c_pango_stretch_get_type :: + IO GType++instance BoxedEnum Stretch where+ boxedEnumType _ = c_pango_stretch_get_type++-- Enum Style++data Style = + StyleNormal+ | StyleOblique+ | StyleItalic+ | AnotherStyle Int+ deriving (Show, Eq)++instance Enum Style where+ fromEnum StyleNormal = 0+ fromEnum StyleOblique = 1+ fromEnum StyleItalic = 2+ fromEnum (AnotherStyle k) = k++ toEnum 0 = StyleNormal+ toEnum 1 = StyleOblique+ toEnum 2 = StyleItalic+ toEnum k = AnotherStyle k++foreign import ccall "pango_style_get_type" c_pango_style_get_type :: + IO GType++instance BoxedEnum Style where+ boxedEnumType _ = c_pango_style_get_type++-- Enum TabAlign++data TabAlign = + TabAlignLeft+ | AnotherTabAlign Int+ deriving (Show, Eq)++instance Enum TabAlign where+ fromEnum TabAlignLeft = 0+ fromEnum (AnotherTabAlign k) = k++ toEnum 0 = TabAlignLeft+ toEnum k = AnotherTabAlign k++foreign import ccall "pango_tab_align_get_type" c_pango_tab_align_get_type :: + IO GType++instance BoxedEnum TabAlign where+ boxedEnumType _ = c_pango_tab_align_get_type++-- struct TabArray+newtype TabArray = TabArray (ForeignPtr TabArray)+noTabArray :: Maybe TabArray+noTabArray = Nothing++foreign import ccall "pango_tab_array_get_type" c_pango_tab_array_get_type :: + IO GType++instance BoxedObject TabArray where+ boxedType _ = c_pango_tab_array_get_type++-- method TabArray::new+-- method type : Constructor+-- Args : [Arg {argName = "initial_size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "positions_in_pixels", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "initial_size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "positions_in_pixels", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "TabArray"+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_new" pango_tab_array_new :: + Int32 -> -- initial_size : TBasicType TInt32+ CInt -> -- positions_in_pixels : TBasicType TBoolean+ IO (Ptr TabArray)+++tabArrayNew ::+ (MonadIO m) =>+ Int32 -> -- initial_size+ Bool -> -- positions_in_pixels+ m TabArray+tabArrayNew initial_size positions_in_pixels = liftIO $ do+ let positions_in_pixels' = (fromIntegral . fromEnum) positions_in_pixels+ result <- pango_tab_array_new initial_size positions_in_pixels'+ result' <- (wrapBoxed TabArray) result+ return result'++-- method TabArray::copy+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "TabArray"+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_copy" pango_tab_array_copy :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ IO (Ptr TabArray)+++tabArrayCopy ::+ (MonadIO m) =>+ TabArray -> -- _obj+ m TabArray+tabArrayCopy _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_tab_array_copy _obj'+ result' <- (wrapBoxed TabArray) result+ touchManagedPtr _obj+ return result'++-- method TabArray::free+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_free" pango_tab_array_free :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ IO ()+++tabArrayFree ::+ (MonadIO m) =>+ TabArray -> -- _obj+ m ()+tabArrayFree _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_tab_array_free _obj'+ touchManagedPtr _obj+ return ()++-- method TabArray::get_positions_in_pixels+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_get_positions_in_pixels" pango_tab_array_get_positions_in_pixels :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ IO CInt+++tabArrayGetPositionsInPixels ::+ (MonadIO m) =>+ TabArray -> -- _obj+ m Bool+tabArrayGetPositionsInPixels _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_tab_array_get_positions_in_pixels _obj'+ let result' = (/= 0) result+ touchManagedPtr _obj+ return result'++-- method TabArray::get_size+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_get_size" pango_tab_array_get_size :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ IO Int32+++tabArrayGetSize ::+ (MonadIO m) =>+ TabArray -> -- _obj+ m Int32+tabArrayGetSize _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ result <- pango_tab_array_get_size _obj'+ touchManagedPtr _obj+ return result++-- method TabArray::get_tab+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tab_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignment", argType = TInterface "Pango" "TabAlign", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "location", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tab_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_get_tab" pango_tab_array_get_tab :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ Int32 -> -- tab_index : TBasicType TInt32+ Ptr CUInt -> -- alignment : TInterface "Pango" "TabAlign"+ Ptr Int32 -> -- location : TBasicType TInt32+ IO ()+++tabArrayGetTab ::+ (MonadIO m) =>+ TabArray -> -- _obj+ Int32 -> -- tab_index+ m (TabAlign,Int32)+tabArrayGetTab _obj tab_index = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ alignment <- allocMem :: IO (Ptr CUInt)+ location <- allocMem :: IO (Ptr Int32)+ pango_tab_array_get_tab _obj' tab_index alignment location+ alignment' <- peek alignment+ let alignment'' = (toEnum . fromIntegral) alignment'+ location' <- peek location+ touchManagedPtr _obj+ freeMem alignment+ freeMem location+ return (alignment'', location')++-- method TabArray::get_tabs+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignments", argType = TInterface "Pango" "TabAlign", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "locations", argType = TCArray False (-1) (-1) (TBasicType TInt32), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_get_tabs" pango_tab_array_get_tabs :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ Ptr CUInt -> -- alignments : TInterface "Pango" "TabAlign"+ Ptr (Ptr Int32) -> -- locations : TCArray False (-1) (-1) (TBasicType TInt32)+ IO ()+++tabArrayGetTabs ::+ (MonadIO m) =>+ TabArray -> -- _obj+ m (TabAlign,(Ptr Int32))+tabArrayGetTabs _obj = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ alignments <- allocMem :: IO (Ptr CUInt)+ locations <- allocMem :: IO (Ptr (Ptr Int32))+ pango_tab_array_get_tabs _obj' alignments locations+ alignments' <- peek alignments+ let alignments'' = (toEnum . fromIntegral) alignments'+ locations' <- peek locations+ touchManagedPtr _obj+ freeMem alignments+ freeMem locations+ return (alignments'', locations')++-- method TabArray::resize+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "new_size", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_resize" pango_tab_array_resize :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ Int32 -> -- new_size : TBasicType TInt32+ IO ()+++tabArrayResize ::+ (MonadIO m) =>+ TabArray -> -- _obj+ Int32 -> -- new_size+ m ()+tabArrayResize _obj new_size = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ pango_tab_array_resize _obj' new_size+ touchManagedPtr _obj+ return ()++-- method TabArray::set_tab+-- method type : OrdinaryMethod+-- Args : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tab_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignment", argType = TInterface "Pango" "TabAlign", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "location", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "Pango" "TabArray", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tab_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignment", argType = TInterface "Pango" "TabAlign", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "location", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_tab_array_set_tab" pango_tab_array_set_tab :: + Ptr TabArray -> -- _obj : TInterface "Pango" "TabArray"+ Int32 -> -- tab_index : TBasicType TInt32+ CUInt -> -- alignment : TInterface "Pango" "TabAlign"+ Int32 -> -- location : TBasicType TInt32+ IO ()+++tabArraySetTab ::+ (MonadIO m) =>+ TabArray -> -- _obj+ Int32 -> -- tab_index+ TabAlign -> -- alignment+ Int32 -> -- location+ m ()+tabArraySetTab _obj tab_index alignment location = liftIO $ do+ let _obj' = unsafeManagedPtrGetPtr _obj+ let alignment' = (fromIntegral . fromEnum) alignment+ pango_tab_array_set_tab _obj' tab_index alignment' location+ touchManagedPtr _obj+ return ()++-- Enum Underline++data Underline = + UnderlineNone+ | UnderlineSingle+ | UnderlineDouble+ | UnderlineLow+ | UnderlineError+ | AnotherUnderline Int+ deriving (Show, Eq)++instance Enum Underline where+ fromEnum UnderlineNone = 0+ fromEnum UnderlineSingle = 1+ fromEnum UnderlineDouble = 2+ fromEnum UnderlineLow = 3+ fromEnum UnderlineError = 4+ fromEnum (AnotherUnderline k) = k++ toEnum 0 = UnderlineNone+ toEnum 1 = UnderlineSingle+ toEnum 2 = UnderlineDouble+ toEnum 3 = UnderlineLow+ toEnum 4 = UnderlineError+ toEnum k = AnotherUnderline k++foreign import ccall "pango_underline_get_type" c_pango_underline_get_type :: + IO GType++instance BoxedEnum Underline where+ boxedEnumType _ = c_pango_underline_get_type++-- Enum Variant++data Variant = + VariantNormal+ | VariantSmallCaps+ | AnotherVariant Int+ deriving (Show, Eq)++instance Enum Variant where+ fromEnum VariantNormal = 0+ fromEnum VariantSmallCaps = 1+ fromEnum (AnotherVariant k) = k++ toEnum 0 = VariantNormal+ toEnum 1 = VariantSmallCaps+ toEnum k = AnotherVariant k++foreign import ccall "pango_variant_get_type" c_pango_variant_get_type :: + IO GType++instance BoxedEnum Variant where+ boxedEnumType _ = c_pango_variant_get_type++-- Enum Weight++data Weight = + WeightThin+ | WeightUltralight+ | WeightLight+ | WeightSemilight+ | WeightBook+ | WeightNormal+ | WeightMedium+ | WeightSemibold+ | WeightBold+ | WeightUltrabold+ | WeightHeavy+ | WeightUltraheavy+ | AnotherWeight Int+ deriving (Show, Eq)++instance Enum Weight where+ fromEnum WeightThin = 100+ fromEnum WeightUltralight = 200+ fromEnum WeightLight = 300+ fromEnum WeightSemilight = 350+ fromEnum WeightBook = 380+ fromEnum WeightNormal = 400+ fromEnum WeightMedium = 500+ fromEnum WeightSemibold = 600+ fromEnum WeightBold = 700+ fromEnum WeightUltrabold = 800+ fromEnum WeightHeavy = 900+ fromEnum WeightUltraheavy = 1000+ fromEnum (AnotherWeight k) = k++ toEnum 100 = WeightThin+ toEnum 200 = WeightUltralight+ toEnum 300 = WeightLight+ toEnum 350 = WeightSemilight+ toEnum 380 = WeightBook+ toEnum 400 = WeightNormal+ toEnum 500 = WeightMedium+ toEnum 600 = WeightSemibold+ toEnum 700 = WeightBold+ toEnum 800 = WeightUltrabold+ toEnum 900 = WeightHeavy+ toEnum 1000 = WeightUltraheavy+ toEnum k = AnotherWeight k++foreign import ccall "pango_weight_get_type" c_pango_weight_get_type :: + IO GType++instance BoxedEnum Weight where+ boxedEnumType _ = c_pango_weight_get_type++-- Enum WrapMode++data WrapMode = + WrapModeWord+ | WrapModeChar+ | WrapModeWordChar+ | AnotherWrapMode Int+ deriving (Show, Eq)++instance Enum WrapMode where+ fromEnum WrapModeWord = 0+ fromEnum WrapModeChar = 1+ fromEnum WrapModeWordChar = 2+ fromEnum (AnotherWrapMode k) = k++ toEnum 0 = WrapModeWord+ toEnum 1 = WrapModeChar+ toEnum 2 = WrapModeWordChar+ toEnum k = AnotherWrapMode k++foreign import ccall "pango_wrap_mode_get_type" c_pango_wrap_mode_get_type :: + IO GType++instance BoxedEnum WrapMode where+ boxedEnumType _ = c_pango_wrap_mode_get_type++-- constant _ANALYSIS_FLAG_CENTERED_BASELINE++_ANALYSIS_FLAG_CENTERED_BASELINE :: Int32+_ANALYSIS_FLAG_CENTERED_BASELINE = 1+-- constant _ANALYSIS_FLAG_IS_ELLIPSIS++_ANALYSIS_FLAG_IS_ELLIPSIS :: Int32+_ANALYSIS_FLAG_IS_ELLIPSIS = 2+-- constant _ATTR_INDEX_FROM_TEXT_BEGINNING++_ATTR_INDEX_FROM_TEXT_BEGINNING :: Int32+_ATTR_INDEX_FROM_TEXT_BEGINNING = 0+-- constant _ENGINE_TYPE_LANG++_ENGINE_TYPE_LANG :: T.Text+_ENGINE_TYPE_LANG = "PangoEngineLang"+-- constant _ENGINE_TYPE_SHAPE++_ENGINE_TYPE_SHAPE :: T.Text+_ENGINE_TYPE_SHAPE = "PangoEngineShape"+-- constant _GLYPH_EMPTY++_GLYPH_EMPTY :: Word32+_GLYPH_EMPTY = 268435455+-- constant _GLYPH_INVALID_INPUT++_GLYPH_INVALID_INPUT :: Word32+_GLYPH_INVALID_INPUT = 4294967295+-- constant _GLYPH_UNKNOWN_FLAG++_GLYPH_UNKNOWN_FLAG :: Word32+_GLYPH_UNKNOWN_FLAG = 268435456+-- constant _RENDER_TYPE_NONE++_RENDER_TYPE_NONE :: T.Text+_RENDER_TYPE_NONE = "PangoRenderNone"+-- constant _SCALE++_SCALE :: Int32+_SCALE = 1024+-- constant _UNKNOWN_GLYPH_HEIGHT++_UNKNOWN_GLYPH_HEIGHT :: Int32+_UNKNOWN_GLYPH_HEIGHT = 14+-- constant _UNKNOWN_GLYPH_WIDTH++_UNKNOWN_GLYPH_WIDTH :: Int32+_UNKNOWN_GLYPH_WIDTH = 10+-- function pango_attr_type_get_name+-- Args : [Arg {argName = "type", argType = TInterface "Pango" "AttrType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "type", argType = TInterface "Pango" "AttrType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_type_get_name" pango_attr_type_get_name :: + CUInt -> -- type : TInterface "Pango" "AttrType"+ IO CString+++attrTypeGetName ::+ (MonadIO m) =>+ AttrType -> -- type+ m T.Text+attrTypeGetName type_ = liftIO $ do+ let type_' = (fromIntegral . fromEnum) type_+ result <- pango_attr_type_get_name type_'+ result' <- cstringToText result+ return result'++-- function pango_attr_type_register+-- Args : [Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "AttrType"+-- throws : False+-- Skip return : False++foreign import ccall "pango_attr_type_register" pango_attr_type_register :: + CString -> -- name : TBasicType TUTF8+ IO CUInt+++attrTypeRegister ::+ (MonadIO m) =>+ T.Text -> -- name+ m AttrType+attrTypeRegister name = liftIO $ do+ name' <- textToCString name+ result <- pango_attr_type_register name'+ let result' = (toEnum . fromIntegral) result+ freeMem name'+ return result'++-- function pango_bidi_type_for_unichar+-- Args : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "BidiType"+-- throws : False+-- Skip return : False++foreign import ccall "pango_bidi_type_for_unichar" pango_bidi_type_for_unichar :: + CInt -> -- ch : TBasicType TUniChar+ IO CUInt+++bidiTypeForUnichar ::+ (MonadIO m) =>+ Char -> -- ch+ m BidiType+bidiTypeForUnichar ch = liftIO $ do+ let ch' = (fromIntegral . ord) ch+ result <- pango_bidi_type_for_unichar ch'+ let result' = (toEnum . fromIntegral) result+ return result'++-- function pango_break+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TCArray False (-1) 4 (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : [Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TCArray False (-1) 4 (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_break" pango_break :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Ptr LogAttr -> -- attrs : TCArray False (-1) 4 (TInterface "Pango" "LogAttr")+ Int32 -> -- attrs_len : TBasicType TInt32+ IO ()+++break ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ Analysis -> -- analysis+ [LogAttr] -> -- attrs+ m ()+break text length_ analysis attrs = liftIO $ do+ let attrs_len = fromIntegral $ length attrs+ text' <- textToCString text+ let analysis' = unsafeManagedPtrGetPtr analysis+ let attrs' = map unsafeManagedPtrGetPtr attrs+ attrs'' <- packBlockArray 52 attrs'+ pango_break text' length_ analysis' attrs'' attrs_len+ touchManagedPtr analysis+ mapM_ touchManagedPtr attrs+ freeMem text'+ freeMem attrs''+ return ()++-- function pango_config_key_get+-- Args : [Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_config_key_get" pango_config_key_get :: + CString -> -- key : TBasicType TUTF8+ IO CString+++configKeyGet ::+ (MonadIO m) =>+ T.Text -> -- key+ m T.Text+configKeyGet key = liftIO $ do+ key' <- textToCString key+ result <- pango_config_key_get key'+ result' <- cstringToText result+ freeMem result+ freeMem key'+ return result'++-- function pango_config_key_get_system+-- Args : [Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "key", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_config_key_get_system" pango_config_key_get_system :: + CString -> -- key : TBasicType TUTF8+ IO CString+++configKeyGetSystem ::+ (MonadIO m) =>+ T.Text -> -- key+ m T.Text+configKeyGetSystem key = liftIO $ do+ key' <- textToCString key+ result <- pango_config_key_get_system key'+ result' <- cstringToText result+ freeMem result+ freeMem key'+ return result'++-- function pango_default_break+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "LogAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "LogAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_default_break" pango_default_break :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Ptr LogAttr -> -- attrs : TInterface "Pango" "LogAttr"+ Int32 -> -- attrs_len : TBasicType TInt32+ IO ()+++defaultBreak ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ Analysis -> -- analysis+ LogAttr -> -- attrs+ Int32 -> -- attrs_len+ m ()+defaultBreak text length_ analysis attrs attrs_len = liftIO $ do+ text' <- textToCString text+ let analysis' = unsafeManagedPtrGetPtr analysis+ let attrs' = unsafeManagedPtrGetPtr attrs+ pango_default_break text' length_ analysis' attrs' attrs_len+ touchManagedPtr analysis+ touchManagedPtr attrs+ freeMem text'+ return ()++-- function pango_extents_to_pixels+-- Args : [Arg {argName = "inclusive", argType = TInterface "Pango" "Rectangle", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "nearest", argType = TInterface "Pango" "Rectangle", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "inclusive", argType = TInterface "Pango" "Rectangle", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "nearest", argType = TInterface "Pango" "Rectangle", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_extents_to_pixels" pango_extents_to_pixels :: + Ptr Rectangle -> -- inclusive : TInterface "Pango" "Rectangle"+ Ptr Rectangle -> -- nearest : TInterface "Pango" "Rectangle"+ IO ()+++extentsToPixels ::+ (MonadIO m) =>+ Maybe (Rectangle) -> -- inclusive+ Maybe (Rectangle) -> -- nearest+ m ()+extentsToPixels inclusive nearest = liftIO $ do+ maybeInclusive <- case inclusive of+ Nothing -> return nullPtr+ Just jInclusive -> do+ let jInclusive' = unsafeManagedPtrGetPtr jInclusive+ return jInclusive'+ maybeNearest <- case nearest of+ Nothing -> return nullPtr+ Just jNearest -> do+ let jNearest' = unsafeManagedPtrGetPtr jNearest+ return jNearest'+ pango_extents_to_pixels maybeInclusive maybeNearest+ whenJust inclusive touchManagedPtr+ whenJust nearest touchManagedPtr+ return ()++-- function pango_find_base_dir+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Direction"+-- throws : False+-- Skip return : False++foreign import ccall "pango_find_base_dir" pango_find_base_dir :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ IO CUInt+++findBaseDir ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ m Direction+findBaseDir text length_ = liftIO $ do+ text' <- textToCString text+ result <- pango_find_base_dir text' length_+ let result' = (toEnum . fromIntegral) result+ freeMem text'+ return result'++-- function pango_find_paragraph_boundary+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paragraph_delimiter_index", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "next_paragraph_start", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_find_paragraph_boundary" pango_find_paragraph_boundary :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Int32 -> -- paragraph_delimiter_index : TBasicType TInt32+ Ptr Int32 -> -- next_paragraph_start : TBasicType TInt32+ IO ()+++findParagraphBoundary ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ m (Int32,Int32)+findParagraphBoundary text length_ = liftIO $ do+ text' <- textToCString text+ paragraph_delimiter_index <- allocMem :: IO (Ptr Int32)+ next_paragraph_start <- allocMem :: IO (Ptr Int32)+ pango_find_paragraph_boundary text' length_ paragraph_delimiter_index next_paragraph_start+ paragraph_delimiter_index' <- peek paragraph_delimiter_index+ next_paragraph_start' <- peek next_paragraph_start+ freeMem text'+ freeMem paragraph_delimiter_index+ freeMem next_paragraph_start+ return (paragraph_delimiter_index', next_paragraph_start')++-- function pango_font_description_from_string+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "FontDescription"+-- throws : False+-- Skip return : False++foreign import ccall "pango_font_description_from_string" pango_font_description_from_string :: + CString -> -- str : TBasicType TUTF8+ IO (Ptr FontDescription)+++fontDescriptionFromString ::+ (MonadIO m) =>+ T.Text -> -- str+ m FontDescription+fontDescriptionFromString str = liftIO $ do+ str' <- textToCString str+ result <- pango_font_description_from_string str'+ result' <- (wrapBoxed FontDescription) result+ freeMem str'+ return result'++-- function pango_get_lib_subdirectory+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_get_lib_subdirectory" pango_get_lib_subdirectory :: + IO CString+++getLibSubdirectory ::+ (MonadIO m) =>+ m T.Text+getLibSubdirectory = liftIO $ do+ result <- pango_get_lib_subdirectory+ result' <- cstringToText result+ return result'++-- function pango_get_log_attrs+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "level", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "log_attrs", argType = TCArray False (-1) 5 (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : [Arg {argName = "attrs_len", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "level", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "language", argType = TInterface "Pango" "Language", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "log_attrs", argType = TCArray False (-1) 5 (TInterface "Pango" "LogAttr"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_get_log_attrs" pango_get_log_attrs :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Int32 -> -- level : TBasicType TInt32+ Ptr Language -> -- language : TInterface "Pango" "Language"+ Ptr LogAttr -> -- log_attrs : TCArray False (-1) 5 (TInterface "Pango" "LogAttr")+ Int32 -> -- attrs_len : TBasicType TInt32+ IO ()+++getLogAttrs ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ Int32 -> -- level+ Language -> -- language+ [LogAttr] -> -- log_attrs+ m ()+getLogAttrs text length_ level language log_attrs = liftIO $ do+ let attrs_len = fromIntegral $ length log_attrs+ text' <- textToCString text+ let language' = unsafeManagedPtrGetPtr language+ let log_attrs' = map unsafeManagedPtrGetPtr log_attrs+ log_attrs'' <- packBlockArray 52 log_attrs'+ pango_get_log_attrs text' length_ level language' log_attrs'' attrs_len+ touchManagedPtr language+ mapM_ touchManagedPtr log_attrs+ freeMem text'+ freeMem log_attrs''+ return ()++-- function pango_get_mirror_char+-- Args : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mirrored_ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "mirrored_ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_get_mirror_char" pango_get_mirror_char :: + CInt -> -- ch : TBasicType TUniChar+ CInt -> -- mirrored_ch : TBasicType TUniChar+ IO CInt+++getMirrorChar ::+ (MonadIO m) =>+ Char -> -- ch+ Char -> -- mirrored_ch+ m Bool+getMirrorChar ch mirrored_ch = liftIO $ do+ let ch' = (fromIntegral . ord) ch+ let mirrored_ch' = (fromIntegral . ord) mirrored_ch+ result <- pango_get_mirror_char ch' mirrored_ch'+ let result' = (/= 0) result+ return result'++-- function pango_get_sysconf_subdirectory+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_get_sysconf_subdirectory" pango_get_sysconf_subdirectory :: + IO CString+++getSysconfSubdirectory ::+ (MonadIO m) =>+ m T.Text+getSysconfSubdirectory = liftIO $ do+ result <- pango_get_sysconf_subdirectory+ result' <- cstringToText result+ return result'++-- function pango_gravity_get_for_matrix+-- Args : [Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "matrix", argType = TInterface "Pango" "Matrix", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_gravity_get_for_matrix" pango_gravity_get_for_matrix :: + Ptr Matrix -> -- matrix : TInterface "Pango" "Matrix"+ IO CUInt+++gravityGetForMatrix ::+ (MonadIO m) =>+ Matrix -> -- matrix+ m Gravity+gravityGetForMatrix matrix = liftIO $ do+ let matrix' = unsafeManagedPtrGetPtr matrix+ result <- pango_gravity_get_for_matrix matrix'+ let result' = (toEnum . fromIntegral) result+ touchManagedPtr matrix+ return result'++-- function pango_gravity_get_for_script+-- Args : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_gravity_get_for_script" pango_gravity_get_for_script :: + CUInt -> -- script : TInterface "Pango" "Script"+ CUInt -> -- base_gravity : TInterface "Pango" "Gravity"+ CUInt -> -- hint : TInterface "Pango" "GravityHint"+ IO CUInt+++gravityGetForScript ::+ (MonadIO m) =>+ Script -> -- script+ Gravity -> -- base_gravity+ GravityHint -> -- hint+ m Gravity+gravityGetForScript script base_gravity hint = liftIO $ do+ let script' = (fromIntegral . fromEnum) script+ let base_gravity' = (fromIntegral . fromEnum) base_gravity+ let hint' = (fromIntegral . fromEnum) hint+ result <- pango_gravity_get_for_script script' base_gravity' hint'+ let result' = (toEnum . fromIntegral) result+ return result'++-- function pango_gravity_get_for_script_and_width+-- Args : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wide", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wide", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "hint", argType = TInterface "Pango" "GravityHint", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Gravity"+-- throws : False+-- Skip return : False++foreign import ccall "pango_gravity_get_for_script_and_width" pango_gravity_get_for_script_and_width :: + CUInt -> -- script : TInterface "Pango" "Script"+ CInt -> -- wide : TBasicType TBoolean+ CUInt -> -- base_gravity : TInterface "Pango" "Gravity"+ CUInt -> -- hint : TInterface "Pango" "GravityHint"+ IO CUInt+++gravityGetForScriptAndWidth ::+ (MonadIO m) =>+ Script -> -- script+ Bool -> -- wide+ Gravity -> -- base_gravity+ GravityHint -> -- hint+ m Gravity+gravityGetForScriptAndWidth script wide base_gravity hint = liftIO $ do+ let script' = (fromIntegral . fromEnum) script+ let wide' = (fromIntegral . fromEnum) wide+ let base_gravity' = (fromIntegral . fromEnum) base_gravity+ let hint' = (fromIntegral . fromEnum) hint+ result <- pango_gravity_get_for_script_and_width script' wide' base_gravity' hint'+ let result' = (toEnum . fromIntegral) result+ return result'++-- function pango_gravity_to_rotation+-- Args : [Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "gravity", argType = TInterface "Pango" "Gravity", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TDouble+-- throws : False+-- Skip return : False++foreign import ccall "pango_gravity_to_rotation" pango_gravity_to_rotation :: + CUInt -> -- gravity : TInterface "Pango" "Gravity"+ IO CDouble+++gravityToRotation ::+ (MonadIO m) =>+ Gravity -> -- gravity+ m Double+gravityToRotation gravity = liftIO $ do+ let gravity' = (fromIntegral . fromEnum) gravity+ result <- pango_gravity_to_rotation gravity'+ let result' = realToFrac result+ return result'++-- function pango_is_zero_width+-- Args : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_is_zero_width" pango_is_zero_width :: + CInt -> -- ch : TBasicType TUniChar+ IO CInt+++isZeroWidth ::+ (MonadIO m) =>+ Char -> -- ch+ m Bool+isZeroWidth ch = liftIO $ do+ let ch' = (fromIntegral . ord) ch+ result <- pango_is_zero_width ch'+ let result' = (/= 0) result+ return result'++-- function pango_itemize+-- Args : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cached_iter", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cached_iter", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGList (TInterface "Pango" "Item")+-- throws : False+-- Skip return : False++foreign import ccall "pango_itemize" pango_itemize :: + Ptr Context -> -- context : TInterface "Pango" "Context"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- start_index : TBasicType TInt32+ Int32 -> -- length : TBasicType TInt32+ Ptr AttrList -> -- attrs : TInterface "Pango" "AttrList"+ Ptr AttrIterator -> -- cached_iter : TInterface "Pango" "AttrIterator"+ IO (Ptr (GList (Ptr Item)))+++itemize ::+ (MonadIO m, ContextK a) =>+ a -> -- context+ T.Text -> -- text+ Int32 -> -- start_index+ Int32 -> -- length+ AttrList -> -- attrs+ Maybe (AttrIterator) -> -- cached_iter+ m [Item]+itemize context text start_index length_ attrs cached_iter = liftIO $ do+ let context' = unsafeManagedPtrCastPtr context+ text' <- textToCString text+ let attrs' = unsafeManagedPtrGetPtr attrs+ maybeCached_iter <- case cached_iter of+ Nothing -> return nullPtr+ Just jCached_iter -> do+ let jCached_iter' = unsafeManagedPtrGetPtr jCached_iter+ return jCached_iter'+ result <- pango_itemize context' text' start_index length_ attrs' maybeCached_iter+ result' <- unpackGList result+ result'' <- mapM (wrapBoxed Item) result'+ g_list_free result+ touchManagedPtr context+ touchManagedPtr attrs+ whenJust cached_iter touchManagedPtr+ freeMem text'+ return result''++-- function pango_itemize_with_base_dir+-- Args : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_dir", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cached_iter", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "context", argType = TInterface "Pango" "Context", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "base_dir", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start_index", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attrs", argType = TInterface "Pango" "AttrList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cached_iter", argType = TInterface "Pango" "AttrIterator", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGList (TInterface "Pango" "Item")+-- throws : False+-- Skip return : False++foreign import ccall "pango_itemize_with_base_dir" pango_itemize_with_base_dir :: + Ptr Context -> -- context : TInterface "Pango" "Context"+ CUInt -> -- base_dir : TInterface "Pango" "Direction"+ CString -> -- text : TBasicType TUTF8+ Int32 -> -- start_index : TBasicType TInt32+ Int32 -> -- length : TBasicType TInt32+ Ptr AttrList -> -- attrs : TInterface "Pango" "AttrList"+ Ptr AttrIterator -> -- cached_iter : TInterface "Pango" "AttrIterator"+ IO (Ptr (GList (Ptr Item)))+++itemizeWithBaseDir ::+ (MonadIO m, ContextK a) =>+ a -> -- context+ Direction -> -- base_dir+ T.Text -> -- text+ Int32 -> -- start_index+ Int32 -> -- length+ AttrList -> -- attrs+ Maybe (AttrIterator) -> -- cached_iter+ m [Item]+itemizeWithBaseDir context base_dir text start_index length_ attrs cached_iter = liftIO $ do+ let context' = unsafeManagedPtrCastPtr context+ let base_dir' = (fromIntegral . fromEnum) base_dir+ text' <- textToCString text+ let attrs' = unsafeManagedPtrGetPtr attrs+ maybeCached_iter <- case cached_iter of+ Nothing -> return nullPtr+ Just jCached_iter -> do+ let jCached_iter' = unsafeManagedPtrGetPtr jCached_iter+ return jCached_iter'+ result <- pango_itemize_with_base_dir context' base_dir' text' start_index length_ attrs' maybeCached_iter+ result' <- unpackGList result+ result'' <- mapM (wrapBoxed Item) result'+ g_list_free result+ touchManagedPtr context+ touchManagedPtr attrs+ whenJust cached_iter touchManagedPtr+ freeMem text'+ return result''++-- function pango_language_from_string+-- Args : [Arg {argName = "language", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "language", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Language"+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_from_string" pango_language_from_string :: + CString -> -- language : TBasicType TUTF8+ IO (Ptr Language)+++languageFromString ::+ (MonadIO m) =>+ Maybe (T.Text) -> -- language+ m Language+languageFromString language = liftIO $ do+ maybeLanguage <- case language of+ Nothing -> return nullPtr+ Just jLanguage -> do+ jLanguage' <- textToCString jLanguage+ return jLanguage'+ result <- pango_language_from_string maybeLanguage+ result' <- (newBoxed Language) result+ freeMem maybeLanguage+ return result'++-- function pango_language_get_default+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TInterface "Pango" "Language"+-- throws : False+-- Skip return : False++foreign import ccall "pango_language_get_default" pango_language_get_default :: + IO (Ptr Language)+++languageGetDefault ::+ (MonadIO m) =>+ m Language+languageGetDefault = liftIO $ do+ result <- pango_language_get_default+ result' <- (newBoxed Language) result+ return result'++-- function pango_log2vis_get_embedding_levels+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pbase_dir", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pbase_dir", argType = TInterface "Pango" "Direction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUInt8+-- throws : False+-- Skip return : False++foreign import ccall "pango_log2vis_get_embedding_levels" pango_log2vis_get_embedding_levels :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ CUInt -> -- pbase_dir : TInterface "Pango" "Direction"+ IO Word8+++log2visGetEmbeddingLevels ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ Direction -> -- pbase_dir+ m Word8+log2visGetEmbeddingLevels text length_ pbase_dir = liftIO $ do+ text' <- textToCString text+ let pbase_dir' = (fromIntegral . fromEnum) pbase_dir+ result <- pango_log2vis_get_embedding_levels text' length_ pbase_dir'+ freeMem text'+ return result++-- function pango_lookup_aliases+-- Args : [Arg {argName = "fontname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "families", argType = TCArray False (-1) 2 (TBasicType TUTF8), direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : [Arg {argName = "n_families", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- hInArgs : [Arg {argName = "fontname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_lookup_aliases" pango_lookup_aliases :: + CString -> -- fontname : TBasicType TUTF8+ Ptr (Ptr CString) -> -- families : TCArray False (-1) 2 (TBasicType TUTF8)+ Ptr Int32 -> -- n_families : TBasicType TInt32+ IO ()++{-# DEPRECATED lookupAliases ["(Since version 1.32)","This function is not thread-safe."]#-}+lookupAliases ::+ (MonadIO m) =>+ T.Text -> -- fontname+ m ([T.Text])+lookupAliases fontname = liftIO $ do+ fontname' <- textToCString fontname+ families <- allocMem :: IO (Ptr (Ptr CString))+ n_families <- allocMem :: IO (Ptr Int32)+ pango_lookup_aliases fontname' families n_families+ n_families' <- peek n_families+ families' <- peek families+ families'' <- (unpackUTF8CArrayWithLength n_families') families'+ (mapCArrayWithLength n_families') freeMem families'+ freeMem families'+ freeMem fontname'+ freeMem families+ freeMem n_families+ return families''++-- function pango_markup_parser_finish+-- Args : [Arg {argName = "context", argType = TInterface "GLib" "MarkupParseContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr_list", argType = TInterface "Pango" "AttrList", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "accel_char", argType = TBasicType TUniChar, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "context", argType = TInterface "GLib" "MarkupParseContext", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "pango_markup_parser_finish" pango_markup_parser_finish :: + Ptr GLib.MarkupParseContext -> -- context : TInterface "GLib" "MarkupParseContext"+ Ptr (Ptr AttrList) -> -- attr_list : TInterface "Pango" "AttrList"+ Ptr CString -> -- text : TBasicType TUTF8+ Ptr CInt -> -- accel_char : TBasicType TUniChar+ Ptr (Ptr GError) -> -- error+ IO CInt+++markupParserFinish ::+ (MonadIO m) =>+ GLib.MarkupParseContext -> -- context+ m (AttrList,T.Text,Char)+markupParserFinish context = liftIO $ do+ let context' = unsafeManagedPtrGetPtr context+ attr_list <- allocMem :: IO (Ptr (Ptr AttrList))+ text <- allocMem :: IO (Ptr CString)+ accel_char <- allocMem :: IO (Ptr CInt)+ onException (do+ _ <- propagateGError $ pango_markup_parser_finish context' attr_list text accel_char+ attr_list' <- peek attr_list+ attr_list'' <- (wrapBoxed AttrList) attr_list'+ text' <- peek text+ text'' <- cstringToText text'+ freeMem text'+ accel_char' <- peek accel_char+ let accel_char'' = (chr . fromIntegral) accel_char'+ touchManagedPtr context+ freeMem attr_list+ freeMem text+ freeMem accel_char+ return (attr_list'', text'', accel_char'')+ ) (do+ freeMem attr_list+ freeMem text+ freeMem accel_char+ )++-- function pango_markup_parser_new+-- Args : [Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "GLib" "MarkupParseContext"+-- throws : False+-- Skip return : False++foreign import ccall "pango_markup_parser_new" pango_markup_parser_new :: + CInt -> -- accel_marker : TBasicType TUniChar+ IO (Ptr GLib.MarkupParseContext)+++markupParserNew ::+ (MonadIO m) =>+ Char -> -- accel_marker+ m GLib.MarkupParseContext+markupParserNew accel_marker = liftIO $ do+ let accel_marker' = (fromIntegral . ord) accel_marker+ result <- pango_markup_parser_new accel_marker'+ result' <- (newBoxed GLib.MarkupParseContext) result+ return result'++-- function pango_module_register+-- Args : [Arg {argName = "module", argType = TInterface "Pango" "IncludedModule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "module", argType = TInterface "Pango" "IncludedModule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_module_register" pango_module_register :: + Ptr IncludedModule -> -- module : TInterface "Pango" "IncludedModule"+ IO ()+++moduleRegister ::+ (MonadIO m) =>+ IncludedModule -> -- module+ m ()+moduleRegister module_ = liftIO $ do+ let module_' = unsafeManagedPtrGetPtr module_+ pango_module_register module_'+ touchManagedPtr module_+ return ()++-- function pango_parse_enum+-- Args : [Arg {argName = "type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "possible_values", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "type", argType = TBasicType TGType, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_parse_enum" pango_parse_enum :: + CGType -> -- type : TBasicType TGType+ CString -> -- str : TBasicType TUTF8+ Ptr Int32 -> -- value : TBasicType TInt32+ CInt -> -- warn : TBasicType TBoolean+ Ptr CString -> -- possible_values : TBasicType TUTF8+ IO CInt+++parseEnum ::+ (MonadIO m) =>+ GType -> -- type+ Maybe (T.Text) -> -- str+ Bool -> -- warn+ m (Bool,Int32,T.Text)+parseEnum type_ str warn = liftIO $ do+ let type_' = gtypeToCGType type_+ maybeStr <- case str of+ Nothing -> return nullPtr+ Just jStr -> do+ jStr' <- textToCString jStr+ return jStr'+ value <- allocMem :: IO (Ptr Int32)+ let warn' = (fromIntegral . fromEnum) warn+ possible_values <- allocMem :: IO (Ptr CString)+ result <- pango_parse_enum type_' maybeStr value warn' possible_values+ let result' = (/= 0) result+ value' <- peek value+ possible_values' <- peek possible_values+ possible_values'' <- cstringToText possible_values'+ freeMem possible_values'+ freeMem maybeStr+ freeMem value+ freeMem possible_values+ return (result', value', possible_values'')++-- function pango_parse_markup+-- Args : [Arg {argName = "markup_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "attr_list", argType = TInterface "Pango" "AttrList", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "accel_char", argType = TBasicType TUniChar, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "markup_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "accel_marker", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : True+-- Skip return : False++foreign import ccall "pango_parse_markup" pango_parse_markup :: + CString -> -- markup_text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ CInt -> -- accel_marker : TBasicType TUniChar+ Ptr (Ptr AttrList) -> -- attr_list : TInterface "Pango" "AttrList"+ Ptr CString -> -- text : TBasicType TUTF8+ Ptr CInt -> -- accel_char : TBasicType TUniChar+ Ptr (Ptr GError) -> -- error+ IO CInt+++parseMarkup ::+ (MonadIO m) =>+ T.Text -> -- markup_text+ Int32 -> -- length+ Char -> -- accel_marker+ m (AttrList,T.Text,Char)+parseMarkup markup_text length_ accel_marker = liftIO $ do+ markup_text' <- textToCString markup_text+ let accel_marker' = (fromIntegral . ord) accel_marker+ attr_list <- allocMem :: IO (Ptr (Ptr AttrList))+ text <- allocMem :: IO (Ptr CString)+ accel_char <- allocMem :: IO (Ptr CInt)+ onException (do+ _ <- propagateGError $ pango_parse_markup markup_text' length_ accel_marker' attr_list text accel_char+ attr_list' <- peek attr_list+ attr_list'' <- (wrapBoxed AttrList) attr_list'+ text' <- peek text+ text'' <- cstringToText text'+ freeMem text'+ accel_char' <- peek accel_char+ let accel_char'' = (chr . fromIntegral) accel_char'+ freeMem markup_text'+ freeMem attr_list+ freeMem text+ freeMem accel_char+ return (attr_list'', text'', accel_char'')+ ) (do+ freeMem markup_text'+ freeMem attr_list+ freeMem text+ freeMem accel_char+ )++-- function pango_parse_stretch+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "stretch", argType = TInterface "Pango" "Stretch", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_parse_stretch" pango_parse_stretch :: + CString -> -- str : TBasicType TUTF8+ Ptr CUInt -> -- stretch : TInterface "Pango" "Stretch"+ CInt -> -- warn : TBasicType TBoolean+ IO CInt+++parseStretch ::+ (MonadIO m) =>+ T.Text -> -- str+ Bool -> -- warn+ m (Bool,Stretch)+parseStretch str warn = liftIO $ do+ str' <- textToCString str+ stretch <- allocMem :: IO (Ptr CUInt)+ let warn' = (fromIntegral . fromEnum) warn+ result <- pango_parse_stretch str' stretch warn'+ let result' = (/= 0) result+ stretch' <- peek stretch+ let stretch'' = (toEnum . fromIntegral) stretch'+ freeMem str'+ freeMem stretch+ return (result', stretch'')++-- function pango_parse_style+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TInterface "Pango" "Style", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_parse_style" pango_parse_style :: + CString -> -- str : TBasicType TUTF8+ Ptr CUInt -> -- style : TInterface "Pango" "Style"+ CInt -> -- warn : TBasicType TBoolean+ IO CInt+++parseStyle ::+ (MonadIO m) =>+ T.Text -> -- str+ Bool -> -- warn+ m (Bool,Style)+parseStyle str warn = liftIO $ do+ str' <- textToCString str+ style <- allocMem :: IO (Ptr CUInt)+ let warn' = (fromIntegral . fromEnum) warn+ result <- pango_parse_style str' style warn'+ let result' = (/= 0) result+ style' <- peek style+ let style'' = (toEnum . fromIntegral) style'+ freeMem str'+ freeMem style+ return (result', style'')++-- function pango_parse_variant+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "variant", argType = TInterface "Pango" "Variant", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_parse_variant" pango_parse_variant :: + CString -> -- str : TBasicType TUTF8+ Ptr CUInt -> -- variant : TInterface "Pango" "Variant"+ CInt -> -- warn : TBasicType TBoolean+ IO CInt+++parseVariant ::+ (MonadIO m) =>+ T.Text -> -- str+ Bool -> -- warn+ m (Bool,Variant)+parseVariant str warn = liftIO $ do+ str' <- textToCString str+ variant <- allocMem :: IO (Ptr CUInt)+ let warn' = (fromIntegral . fromEnum) warn+ result <- pango_parse_variant str' variant warn'+ let result' = (/= 0) result+ variant' <- peek variant+ let variant'' = (toEnum . fromIntegral) variant'+ freeMem str'+ freeMem variant+ return (result', variant'')++-- function pango_parse_weight+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "weight", argType = TInterface "Pango" "Weight", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "warn", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_parse_weight" pango_parse_weight :: + CString -> -- str : TBasicType TUTF8+ Ptr CUInt -> -- weight : TInterface "Pango" "Weight"+ CInt -> -- warn : TBasicType TBoolean+ IO CInt+++parseWeight ::+ (MonadIO m) =>+ T.Text -> -- str+ Bool -> -- warn+ m (Bool,Weight)+parseWeight str warn = liftIO $ do+ str' <- textToCString str+ weight <- allocMem :: IO (Ptr CUInt)+ let warn' = (fromIntegral . fromEnum) warn+ result <- pango_parse_weight str' weight warn'+ let result' = (/= 0) result+ weight' <- peek weight+ let weight'' = (toEnum . fromIntegral) weight'+ freeMem str'+ freeMem weight+ return (result', weight'')++-- function pango_quantize_line_geometry+-- Args : [Arg {argName = "thickness", argType = TBasicType TInt32, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "thickness", argType = TBasicType TInt32, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_quantize_line_geometry" pango_quantize_line_geometry :: + Ptr Int32 -> -- thickness : TBasicType TInt32+ Ptr Int32 -> -- position : TBasicType TInt32+ IO ()+++quantizeLineGeometry ::+ (MonadIO m) =>+ Int32 -> -- thickness+ Int32 -> -- position+ m (Int32,Int32)+quantizeLineGeometry thickness position = liftIO $ do+ thickness' <- allocMem :: IO (Ptr Int32)+ poke thickness' thickness+ position' <- allocMem :: IO (Ptr Int32)+ poke position' position+ pango_quantize_line_geometry thickness' position'+ thickness'' <- peek thickness'+ position'' <- peek position'+ freeMem thickness'+ freeMem position'+ return (thickness'', position'')++-- function pango_read_line+-- Args : [Arg {argName = "stream", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "str", argType = TInterface "GLib" "String", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "stream", argType = TBasicType TVoid, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_read_line" pango_read_line :: + Ptr () -> -- stream : TBasicType TVoid+ Ptr GLib.String -> -- str : TInterface "GLib" "String"+ IO Int32+++readLine ::+ (MonadIO m) =>+ Ptr () -> -- stream+ m (Int32,GLib.String)+readLine stream = liftIO $ do+ str <- callocBoxedBytes 24 :: IO (Ptr GLib.String)+ result <- pango_read_line stream str+ str' <- (wrapBoxed GLib.String) str+ return (result, str')++-- function pango_reorder_items+-- Args : [Arg {argName = "logical_items", argType = TGList (TInterface "Pango" "Item"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "logical_items", argType = TGList (TInterface "Pango" "Item"), direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TGList (TInterface "Pango" "Item")+-- throws : False+-- Skip return : False++foreign import ccall "pango_reorder_items" pango_reorder_items :: + Ptr (GList (Ptr Item)) -> -- logical_items : TGList (TInterface "Pango" "Item")+ IO (Ptr (GList (Ptr Item)))+++reorderItems ::+ (MonadIO m) =>+ [Item] -> -- logical_items+ m [Item]+reorderItems logical_items = liftIO $ do+ let logical_items' = map unsafeManagedPtrGetPtr logical_items+ logical_items'' <- packGList logical_items'+ result <- pango_reorder_items logical_items''+ result' <- unpackGList result+ result'' <- mapM (wrapBoxed Item) result'+ g_list_free result+ mapM_ touchManagedPtr logical_items+ g_list_free logical_items''+ return result''++-- function pango_scan_int+-- Args : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "out", argType = TBasicType TInt32, direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_scan_int" pango_scan_int :: + Ptr CString -> -- pos : TBasicType TUTF8+ Ptr Int32 -> -- out : TBasicType TInt32+ IO CInt+++scanInt ::+ (MonadIO m) =>+ T.Text -> -- pos+ m (Bool,T.Text,Int32)+scanInt pos = liftIO $ do+ pos' <- textToCString pos+ pos'' <- allocMem :: IO (Ptr CString)+ poke pos'' pos'+ out <- allocMem :: IO (Ptr Int32)+ result <- pango_scan_int pos'' out+ let result' = (/= 0) result+ pos''' <- peek pos''+ pos'''' <- cstringToText pos'''+ freeMem pos'''+ out' <- peek out+ freeMem pos''+ freeMem out+ return (result', pos'''', out')++-- function pango_scan_string+-- Args : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "out", argType = TInterface "GLib" "String", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_scan_string" pango_scan_string :: + Ptr CString -> -- pos : TBasicType TUTF8+ Ptr GLib.String -> -- out : TInterface "GLib" "String"+ IO CInt+++scanString ::+ (MonadIO m) =>+ T.Text -> -- pos+ m (Bool,T.Text,GLib.String)+scanString pos = liftIO $ do+ pos' <- textToCString pos+ pos'' <- allocMem :: IO (Ptr CString)+ poke pos'' pos'+ out <- callocBoxedBytes 24 :: IO (Ptr GLib.String)+ result <- pango_scan_string pos'' out+ let result' = (/= 0) result+ pos''' <- peek pos''+ pos'''' <- cstringToText pos'''+ freeMem pos'''+ out' <- (wrapBoxed GLib.String) out+ freeMem pos''+ return (result', pos'''', out')++-- function pango_scan_word+-- Args : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything},Arg {argName = "out", argType = TInterface "GLib" "String", direction = DirectionOut, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_scan_word" pango_scan_word :: + Ptr CString -> -- pos : TBasicType TUTF8+ Ptr GLib.String -> -- out : TInterface "GLib" "String"+ IO CInt+++scanWord ::+ (MonadIO m) =>+ T.Text -> -- pos+ m (Bool,T.Text,GLib.String)+scanWord pos = liftIO $ do+ pos' <- textToCString pos+ pos'' <- allocMem :: IO (Ptr CString)+ poke pos'' pos'+ out <- callocBoxedBytes 24 :: IO (Ptr GLib.String)+ result <- pango_scan_word pos'' out+ let result' = (/= 0) result+ pos''' <- peek pos''+ pos'''' <- cstringToText pos'''+ freeMem pos'''+ out' <- (wrapBoxed GLib.String) out+ freeMem pos''+ return (result', pos'''', out')++-- function pango_script_for_unichar+-- Args : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Script"+-- throws : False+-- Skip return : False++foreign import ccall "pango_script_for_unichar" pango_script_for_unichar :: + CInt -> -- ch : TBasicType TUniChar+ IO CUInt+++scriptForUnichar ::+ (MonadIO m) =>+ Char -> -- ch+ m Script+scriptForUnichar ch = liftIO $ do+ let ch' = (fromIntegral . ord) ch+ result <- pango_script_for_unichar ch'+ let result' = (toEnum . fromIntegral) result+ return result'++-- function pango_script_get_sample_language+-- Args : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "script", argType = TInterface "Pango" "Script", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Language"+-- throws : False+-- Skip return : False++foreign import ccall "pango_script_get_sample_language" pango_script_get_sample_language :: + CUInt -> -- script : TInterface "Pango" "Script"+ IO (Ptr Language)+++scriptGetSampleLanguage ::+ (MonadIO m) =>+ Script -> -- script+ m Language+scriptGetSampleLanguage script = liftIO $ do+ let script' = (fromIntegral . fromEnum) script+ result <- pango_script_get_sample_language script'+ result' <- (wrapBoxed Language) result+ return result'++-- function pango_shape+-- Args : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_shape" pango_shape :: + CString -> -- text : TBasicType TUTF8+ Int32 -> -- length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Ptr GlyphString -> -- glyphs : TInterface "Pango" "GlyphString"+ IO ()+++shape ::+ (MonadIO m) =>+ T.Text -> -- text+ Int32 -> -- length+ Analysis -> -- analysis+ GlyphString -> -- glyphs+ m ()+shape text length_ analysis glyphs = liftIO $ do+ text' <- textToCString text+ let analysis' = unsafeManagedPtrGetPtr analysis+ let glyphs' = unsafeManagedPtrGetPtr glyphs+ pango_shape text' length_ analysis' glyphs'+ touchManagedPtr analysis+ touchManagedPtr glyphs+ freeMem text'+ return ()++-- function pango_shape_full+-- Args : [Arg {argName = "item_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item_length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paragraph_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paragraph_length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "item_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item_length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paragraph_text", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "paragraph_length", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "analysis", argType = TInterface "Pango" "Analysis", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "glyphs", argType = TInterface "Pango" "GlyphString", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TVoid+-- throws : False+-- Skip return : False++foreign import ccall "pango_shape_full" pango_shape_full :: + CString -> -- item_text : TBasicType TUTF8+ Int32 -> -- item_length : TBasicType TInt32+ CString -> -- paragraph_text : TBasicType TUTF8+ Int32 -> -- paragraph_length : TBasicType TInt32+ Ptr Analysis -> -- analysis : TInterface "Pango" "Analysis"+ Ptr GlyphString -> -- glyphs : TInterface "Pango" "GlyphString"+ IO ()+++shapeFull ::+ (MonadIO m) =>+ T.Text -> -- item_text+ Int32 -> -- item_length+ Maybe (T.Text) -> -- paragraph_text+ Int32 -> -- paragraph_length+ Analysis -> -- analysis+ GlyphString -> -- glyphs+ m ()+shapeFull item_text item_length paragraph_text paragraph_length analysis glyphs = liftIO $ do+ item_text' <- textToCString item_text+ maybeParagraph_text <- case paragraph_text of+ Nothing -> return nullPtr+ Just jParagraph_text -> do+ jParagraph_text' <- textToCString jParagraph_text+ return jParagraph_text'+ let analysis' = unsafeManagedPtrGetPtr analysis+ let glyphs' = unsafeManagedPtrGetPtr glyphs+ pango_shape_full item_text' item_length maybeParagraph_text paragraph_length analysis' glyphs'+ touchManagedPtr analysis+ touchManagedPtr glyphs+ freeMem item_text'+ freeMem maybeParagraph_text+ return ()++-- function pango_skip_space+-- Args : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- Lengths : []+-- hInArgs : [Arg {argName = "pos", argType = TBasicType TUTF8, direction = DirectionInout, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferEverything}]+-- returnType : TBasicType TBoolean+-- throws : False+-- Skip return : False++foreign import ccall "pango_skip_space" pango_skip_space :: + Ptr CString -> -- pos : TBasicType TUTF8+ IO CInt+++skipSpace ::+ (MonadIO m) =>+ T.Text -> -- pos+ m (Bool,T.Text)+skipSpace pos = liftIO $ do+ pos' <- textToCString pos+ pos'' <- allocMem :: IO (Ptr CString)+ poke pos'' pos'+ result <- pango_skip_space pos''+ let result' = (/= 0) result+ pos''' <- peek pos''+ pos'''' <- cstringToText pos'''+ freeMem pos'''+ freeMem pos''+ return (result', pos'''')++-- function pango_split_file_list+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TCArray True (-1) (-1) (TBasicType TUTF8)+-- throws : False+-- Skip return : False++foreign import ccall "pango_split_file_list" pango_split_file_list :: + CString -> -- str : TBasicType TUTF8+ IO (Ptr CString)+++splitFileList ::+ (MonadIO m) =>+ T.Text -> -- str+ m [T.Text]+splitFileList str = liftIO $ do+ str' <- textToCString str+ result <- pango_split_file_list str'+ result' <- unpackZeroTerminatedUTF8CArray result+ mapZeroTerminatedCArray freeMem result+ freeMem result+ freeMem str'+ return result'++-- function pango_trim_string+-- Args : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "str", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_trim_string" pango_trim_string :: + CString -> -- str : TBasicType TUTF8+ IO CString+++trimString ::+ (MonadIO m) =>+ T.Text -> -- str+ m T.Text+trimString str = liftIO $ do+ str' <- textToCString str+ result <- pango_trim_string str'+ result' <- cstringToText result+ freeMem result+ freeMem str'+ return result'++-- function pango_unichar_direction+-- Args : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "ch", argType = TBasicType TUniChar, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TInterface "Pango" "Direction"+-- throws : False+-- Skip return : False++foreign import ccall "pango_unichar_direction" pango_unichar_direction :: + CInt -> -- ch : TBasicType TUniChar+ IO CUInt+++unicharDirection ::+ (MonadIO m) =>+ Char -> -- ch+ m Direction+unicharDirection ch = liftIO $ do+ let ch' = (fromIntegral . ord) ch+ result <- pango_unichar_direction ch'+ let result' = (toEnum . fromIntegral) result+ return result'++-- function pango_units_from_double+-- Args : [Arg {argName = "d", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "d", argType = TBasicType TDouble, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_units_from_double" pango_units_from_double :: + CDouble -> -- d : TBasicType TDouble+ IO Int32+++unitsFromDouble ::+ (MonadIO m) =>+ Double -> -- d+ m Int32+unitsFromDouble d = liftIO $ do+ let d' = realToFrac d+ result <- pango_units_from_double d'+ return result++-- function pango_units_to_double+-- Args : [Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "i", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TDouble+-- throws : False+-- Skip return : False++foreign import ccall "pango_units_to_double" pango_units_to_double :: + Int32 -> -- i : TBasicType TInt32+ IO CDouble+++unitsToDouble ::+ (MonadIO m) =>+ Int32 -> -- i+ m Double+unitsToDouble i = liftIO $ do+ result <- pango_units_to_double i+ let result' = realToFrac result+ return result'++-- function pango_version+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TInt32+-- throws : False+-- Skip return : False++foreign import ccall "pango_version" pango_version :: + IO Int32+++version ::+ (MonadIO m) =>+ m Int32+version = liftIO $ do+ result <- pango_version+ return result++-- function pango_version_check+-- Args : [Arg {argName = "required_major", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "required_minor", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "required_micro", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- Lengths : []+-- hInArgs : [Arg {argName = "required_major", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "required_minor", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "required_micro", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_version_check" pango_version_check :: + Int32 -> -- required_major : TBasicType TInt32+ Int32 -> -- required_minor : TBasicType TInt32+ Int32 -> -- required_micro : TBasicType TInt32+ IO CString+++versionCheck ::+ (MonadIO m) =>+ Int32 -> -- required_major+ Int32 -> -- required_minor+ Int32 -> -- required_micro+ m T.Text+versionCheck required_major required_minor required_micro = liftIO $ do+ result <- pango_version_check required_major required_minor required_micro+ result' <- cstringToText result+ return result'++-- function pango_version_string+-- Args : []+-- Lengths : []+-- hInArgs : []+-- returnType : TBasicType TUTF8+-- throws : False+-- Skip return : False++foreign import ccall "pango_version_string" pango_version_string :: + IO CString+++versionString ::+ (MonadIO m) =>+ m T.Text+versionString = liftIO $ do+ result <- pango_version_string+ result' <- cstringToText result+ return result'++-- callback AttrClassDestroyFieldCallback+attrClassDestroyFieldCallbackClosure :: AttrClassDestroyFieldCallback -> IO Closure+attrClassDestroyFieldCallbackClosure cb = newCClosure =<< mkAttrClassDestroyFieldCallback wrapped+ where wrapped = attrClassDestroyFieldCallbackWrapper Nothing cb++type AttrClassDestroyFieldCallbackC =+ Ptr Attribute ->+ IO ()++foreign import ccall "wrapper"+ mkAttrClassDestroyFieldCallback :: AttrClassDestroyFieldCallbackC -> IO (FunPtr AttrClassDestroyFieldCallbackC)++type AttrClassDestroyFieldCallback =+ Attribute ->+ IO ()++noAttrClassDestroyFieldCallback :: Maybe AttrClassDestroyFieldCallback+noAttrClassDestroyFieldCallback = Nothing++attrClassDestroyFieldCallbackWrapper ::+ Maybe (Ptr (FunPtr (AttrClassDestroyFieldCallbackC))) ->+ AttrClassDestroyFieldCallback ->+ Ptr Attribute ->+ IO ()+attrClassDestroyFieldCallbackWrapper funptrptr _cb attr = do+ attr' <- (newPtr 16 Attribute) attr+ _cb attr'+ maybeReleaseFunPtr funptrptr++-- callback AttrClassEqualFieldCallback+attrClassEqualFieldCallbackClosure :: AttrClassEqualFieldCallback -> IO Closure+attrClassEqualFieldCallbackClosure cb = newCClosure =<< mkAttrClassEqualFieldCallback wrapped+ where wrapped = attrClassEqualFieldCallbackWrapper Nothing cb++type AttrClassEqualFieldCallbackC =+ Ptr Attribute ->+ Ptr Attribute ->+ IO CInt++foreign import ccall "wrapper"+ mkAttrClassEqualFieldCallback :: AttrClassEqualFieldCallbackC -> IO (FunPtr AttrClassEqualFieldCallbackC)++type AttrClassEqualFieldCallback =+ Attribute ->+ Attribute ->+ IO Bool++noAttrClassEqualFieldCallback :: Maybe AttrClassEqualFieldCallback+noAttrClassEqualFieldCallback = Nothing++attrClassEqualFieldCallbackWrapper ::+ Maybe (Ptr (FunPtr (AttrClassEqualFieldCallbackC))) ->+ AttrClassEqualFieldCallback ->+ Ptr Attribute ->+ Ptr Attribute ->+ IO CInt+attrClassEqualFieldCallbackWrapper funptrptr _cb attr1 attr2 = do+ attr1' <- (newPtr 16 Attribute) attr1+ attr2' <- (newPtr 16 Attribute) attr2+ result <- _cb attr1' attr2'+ maybeReleaseFunPtr funptrptr+ let result' = (fromIntegral . fromEnum) result+ return result'++-- callback IncludedModuleListFieldCallback+includedModuleListFieldCallbackClosure :: IncludedModuleListFieldCallback -> IO Closure+includedModuleListFieldCallbackClosure cb = newCClosure =<< mkIncludedModuleListFieldCallback wrapped+ where wrapped = includedModuleListFieldCallbackWrapper Nothing cb++type IncludedModuleListFieldCallbackC =+ Ptr EngineInfo ->+ Int32 ->+ IO ()++foreign import ccall "wrapper"+ mkIncludedModuleListFieldCallback :: IncludedModuleListFieldCallbackC -> IO (FunPtr IncludedModuleListFieldCallbackC)++type IncludedModuleListFieldCallback =+ EngineInfo ->+ Int32 ->+ IO ()++noIncludedModuleListFieldCallback :: Maybe IncludedModuleListFieldCallback+noIncludedModuleListFieldCallback = Nothing++includedModuleListFieldCallbackWrapper ::+ Maybe (Ptr (FunPtr (IncludedModuleListFieldCallbackC))) ->+ IncludedModuleListFieldCallback ->+ Ptr EngineInfo ->+ Int32 ->+ IO ()+includedModuleListFieldCallbackWrapper funptrptr _cb engines n_engines = do+ engines' <- (newPtr 40 EngineInfo) engines+ _cb engines' n_engines+ maybeReleaseFunPtr funptrptr++-- callback IncludedModuleInitFieldCallback+includedModuleInitFieldCallbackClosure :: IncludedModuleInitFieldCallback -> IO Closure+includedModuleInitFieldCallbackClosure cb = newCClosure =<< mkIncludedModuleInitFieldCallback wrapped+ where wrapped = includedModuleInitFieldCallbackWrapper Nothing cb++type IncludedModuleInitFieldCallbackC =+ Ptr GObject.TypeModule ->+ IO ()++foreign import ccall "wrapper"+ mkIncludedModuleInitFieldCallback :: IncludedModuleInitFieldCallbackC -> IO (FunPtr IncludedModuleInitFieldCallbackC)++type IncludedModuleInitFieldCallback =+ GObject.TypeModule ->+ IO ()++noIncludedModuleInitFieldCallback :: Maybe IncludedModuleInitFieldCallback+noIncludedModuleInitFieldCallback = Nothing++includedModuleInitFieldCallbackWrapper ::+ Maybe (Ptr (FunPtr (IncludedModuleInitFieldCallbackC))) ->+ IncludedModuleInitFieldCallback ->+ Ptr GObject.TypeModule ->+ IO ()+includedModuleInitFieldCallbackWrapper funptrptr _cb module_ = do+ module_' <- (newObject GObject.TypeModule) module_+ _cb module_'+ maybeReleaseFunPtr funptrptr++-- callback IncludedModuleExitFieldCallback+includedModuleExitFieldCallbackClosure :: IncludedModuleExitFieldCallback -> IO Closure+includedModuleExitFieldCallbackClosure cb = newCClosure =<< mkIncludedModuleExitFieldCallback wrapped+ where wrapped = includedModuleExitFieldCallbackWrapper Nothing cb++type IncludedModuleExitFieldCallbackC =+ IO ()++foreign import ccall "wrapper"+ mkIncludedModuleExitFieldCallback :: IncludedModuleExitFieldCallbackC -> IO (FunPtr IncludedModuleExitFieldCallbackC)++type IncludedModuleExitFieldCallback =+ IO ()++noIncludedModuleExitFieldCallback :: Maybe IncludedModuleExitFieldCallback+noIncludedModuleExitFieldCallback = Nothing++includedModuleExitFieldCallbackWrapper ::+ Maybe (Ptr (FunPtr (IncludedModuleExitFieldCallbackC))) ->+ IncludedModuleExitFieldCallback ->+ IO ()+includedModuleExitFieldCallbackWrapper funptrptr _cb = do+ _cb + maybeReleaseFunPtr funptrptr+
+ GI/PangoAttributes.hs view
@@ -0,0 +1,72 @@+{-# OPTIONS_GHC -fno-warn-orphans -fno-warn-unused-imports #-}++-- Generated code.++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++{-# LANGUAGE ForeignFunctionInterface, ConstraintKinds,+ TypeFamilies, MultiParamTypeClasses, KindSignatures,+ FlexibleInstances, UndecidableInstances, DataKinds,+ OverloadedStrings, NegativeLiterals, FlexibleContexts #-}++module GI.PangoAttributes where++import Prelude ()+import Data.GI.Base.ShortPrelude+import Data.Char+import Data.Int+import Data.Word+import qualified Data.ByteString.Char8 as B+import Data.ByteString.Char8 (ByteString)+import qualified Data.Map as Map+import Foreign.C+import Foreign.Ptr+import Foreign.ForeignPtr+import Foreign.ForeignPtr.Unsafe (unsafeForeignPtrToPtr)+import Foreign.Storable (peek, poke, sizeOf)+import Control.Applicative ((<$>))+import Control.Exception (onException)+import Control.Monad.IO.Class+import qualified Data.Text as T++import Data.GI.Base.Attributes hiding (get, set)+import Data.GI.Base.BasicTypes+import Data.GI.Base.BasicConversions+import Data.GI.Base.Closure+import Data.GI.Base.GError+import Data.GI.Base.GHashTable+import Data.GI.Base.GParamSpec+import Data.GI.Base.GVariant+import Data.GI.Base.GValue+import Data.GI.Base.ManagedPtr+import Data.GI.Base.Overloading+import Data.GI.Base.Properties hiding (new)+import Data.GI.Base.Signals (SignalConnectMode(..), connectSignalFunPtr, SignalHandlerId)+import Data.GI.Base.Utils++import GI.Pango++type instance AttributeList Context = '[ ]++type instance AttributeList Engine = '[ ]++type instance AttributeList EngineLang = '[ ]++type instance AttributeList EngineShape = '[ ]++type instance AttributeList Font = '[ ]++type instance AttributeList FontFace = '[ ]++type instance AttributeList FontFamily = '[ ]++type instance AttributeList FontMap = '[ ]++type instance AttributeList Fontset = '[ ]++type instance AttributeList FontsetSimple = '[ ]++type instance AttributeList Layout = '[ ]++type instance AttributeList Renderer = '[ ]+
+ GI/PangoSignals.hs view
@@ -0,0 +1,41 @@+-- Generated code.++{-# OPTIONS_GHC -fno-warn-orphans #-}++{-# LANGUAGE DataKinds, FlexibleInstances,+ TypeFamilies, MultiParamTypeClasses,+ TypeOperators #-}++module GI.PangoSignals where++import Data.GI.Base.Properties (GObjectNotifySignalInfo)+import Data.GI.Base.Signals+import Data.GI.Base.Overloading++import qualified GI.GObjectSignals as GObject+import GI.Pango++type instance SignalList Context = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList Engine = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList EngineLang = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList EngineShape = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList Font = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList FontFace = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList FontFamily = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList FontMap = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList Fontset = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList FontsetSimple = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList Layout = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]++type instance SignalList Renderer = '[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)]+
+ LICENSE view
@@ -0,0 +1,502 @@+ GNU LESSER GENERAL PUBLIC LICENSE+ Version 2.1, February 1999++ Copyright (C) 1991, 1999 Free Software Foundation, Inc.+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA+ Everyone is permitted to copy and distribute verbatim copies+ of this license document, but changing it is not allowed.++[This is the first released version of the Lesser GPL. It also counts+ as the successor of the GNU Library Public License, version 2, hence+ the version number 2.1.]++ Preamble++ The licenses for most software are designed to take away your+freedom to share and change it. By contrast, the GNU General Public+Licenses are intended to guarantee your freedom to share and change+free software--to make sure the software is free for all its users.++ This license, the Lesser General Public License, applies to some+specially designated software packages--typically libraries--of the+Free Software Foundation and other authors who decide to use it. You+can use it too, but we suggest you first think carefully about whether+this license or the ordinary General Public License is the better+strategy to use in any particular case, based on the explanations below.++ When we speak of free software, we are referring to freedom of use,+not price. Our General Public Licenses are designed to make sure that+you have the freedom to distribute copies of free software (and charge+for this service if you wish); that you receive source code or can get+it if you want it; that you can change the software and use pieces of+it in new free programs; and that you are informed that you can do+these things.++ To protect your rights, we need to make restrictions that forbid+distributors to deny you these rights or to ask you to surrender these+rights. These restrictions translate to certain responsibilities for+you if you distribute copies of the library or if you modify it.++ For example, if you distribute copies of the library, whether gratis+or for a fee, you must give the recipients all the rights that we gave+you. You must make sure that they, too, receive or can get the source+code. If you link other code with the library, you must provide+complete object files to the recipients, so that they can relink them+with the library after making changes to the library and recompiling+it. And you must show them these terms so they know their rights.++ We protect your rights with a two-step method: (1) we copyright the+library, and (2) we offer you this license, which gives you legal+permission to copy, distribute and/or modify the library.++ To protect each distributor, we want to make it very clear that+there is no warranty for the free library. Also, if the library is+modified by someone else and passed on, the recipients should know+that what they have is not the original version, so that the original+author's reputation will not be affected by problems that might be+introduced by others.++ Finally, software patents pose a constant threat to the existence of+any free program. We wish to make sure that a company cannot+effectively restrict the users of a free program by obtaining a+restrictive license from a patent holder. Therefore, we insist that+any patent license obtained for a version of the library must be+consistent with the full freedom of use specified in this license.++ Most GNU software, including some libraries, is covered by the+ordinary GNU General Public License. This license, the GNU Lesser+General Public License, applies to certain designated libraries, and+is quite different from the ordinary General Public License. We use+this license for certain libraries in order to permit linking those+libraries into non-free programs.++ When a program is linked with a library, whether statically or using+a shared library, the combination of the two is legally speaking a+combined work, a derivative of the original library. The ordinary+General Public License therefore permits such linking only if the+entire combination fits its criteria of freedom. The Lesser General+Public License permits more lax criteria for linking other code with+the library.++ We call this license the "Lesser" General Public License because it+does Less to protect the user's freedom than the ordinary General+Public License. It also provides other free software developers Less+of an advantage over competing non-free programs. These disadvantages+are the reason we use the ordinary General Public License for many+libraries. However, the Lesser license provides advantages in certain+special circumstances.++ For example, on rare occasions, there may be a special need to+encourage the widest possible use of a certain library, so that it becomes+a de-facto standard. To achieve this, non-free programs must be+allowed to use the library. A more frequent case is that a free+library does the same job as widely used non-free libraries. In this+case, there is little to gain by limiting the free library to free+software only, so we use the Lesser General Public License.++ In other cases, permission to use a particular library in non-free+programs enables a greater number of people to use a large body of+free software. For example, permission to use the GNU C Library in+non-free programs enables many more people to use the whole GNU+operating system, as well as its variant, the GNU/Linux operating+system.++ Although the Lesser General Public License is Less protective of the+users' freedom, it does ensure that the user of a program that is+linked with the Library has the freedom and the wherewithal to run+that program using a modified version of the Library.++ The precise terms and conditions for copying, distribution and+modification follow. Pay close attention to the difference between a+"work based on the library" and a "work that uses the library". The+former contains code derived from the library, whereas the latter must+be combined with the library in order to run.++ GNU LESSER GENERAL PUBLIC LICENSE+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION++ 0. This License Agreement applies to any software library or other+program which contains a notice placed by the copyright holder or+other authorized party saying it may be distributed under the terms of+this Lesser General Public License (also called "this License").+Each licensee is addressed as "you".++ A "library" means a collection of software functions and/or data+prepared so as to be conveniently linked with application programs+(which use some of those functions and data) to form executables.++ The "Library", below, refers to any such software library or work+which has been distributed under these terms. A "work based on the+Library" means either the Library or any derivative work under+copyright law: that is to say, a work containing the Library or a+portion of it, either verbatim or with modifications and/or translated+straightforwardly into another language. (Hereinafter, translation is+included without limitation in the term "modification".)++ "Source code" for a work means the preferred form of the work for+making modifications to it. For a library, complete source code means+all the source code for all modules it contains, plus any associated+interface definition files, plus the scripts used to control compilation+and installation of the library.++ Activities other than copying, distribution and modification are not+covered by this License; they are outside its scope. The act of+running a program using the Library is not restricted, and output from+such a program is covered only if its contents constitute a work based+on the Library (independent of the use of the Library in a tool for+writing it). Whether that is true depends on what the Library does+and what the program that uses the Library does.++ 1. You may copy and distribute verbatim copies of the Library's+complete source code as you receive it, in any medium, provided that+you conspicuously and appropriately publish on each copy an+appropriate copyright notice and disclaimer of warranty; keep intact+all the notices that refer to this License and to the absence of any+warranty; and distribute a copy of this License along with the+Library.++ You may charge a fee for the physical act of transferring a copy,+and you may at your option offer warranty protection in exchange for a+fee.++ 2. You may modify your copy or copies of the Library or any portion+of it, thus forming a work based on the Library, and copy and+distribute such modifications or work under the terms of Section 1+above, provided that you also meet all of these conditions:++ a) The modified work must itself be a software library.++ b) You must cause the files modified to carry prominent notices+ stating that you changed the files and the date of any change.++ c) You must cause the whole of the work to be licensed at no+ charge to all third parties under the terms of this License.++ d) If a facility in the modified Library refers to a function or a+ table of data to be supplied by an application program that uses+ the facility, other than as an argument passed when the facility+ is invoked, then you must make a good faith effort to ensure that,+ in the event an application does not supply such function or+ table, the facility still operates, and performs whatever part of+ its purpose remains meaningful.++ (For example, a function in a library to compute square roots has+ a purpose that is entirely well-defined independent of the+ application. Therefore, Subsection 2d requires that any+ application-supplied function or table used by this function must+ be optional: if the application does not supply it, the square+ root function must still compute square roots.)++These requirements apply to the modified work as a whole. If+identifiable sections of that work are not derived from the Library,+and can be reasonably considered independent and separate works in+themselves, then this License, and its terms, do not apply to those+sections when you distribute them as separate works. But when you+distribute the same sections as part of a whole which is a work based+on the Library, the distribution of the whole must be on the terms of+this License, whose permissions for other licensees extend to the+entire whole, and thus to each and every part regardless of who wrote+it.++Thus, it is not the intent of this section to claim rights or contest+your rights to work written entirely by you; rather, the intent is to+exercise the right to control the distribution of derivative or+collective works based on the Library.++In addition, mere aggregation of another work not based on the Library+with the Library (or with a work based on the Library) on a volume of+a storage or distribution medium does not bring the other work under+the scope of this License.++ 3. You may opt to apply the terms of the ordinary GNU General Public+License instead of this License to a given copy of the Library. To do+this, you must alter all the notices that refer to this License, so+that they refer to the ordinary GNU General Public License, version 2,+instead of to this License. (If a newer version than version 2 of the+ordinary GNU General Public License has appeared, then you can specify+that version instead if you wish.) Do not make any other change in+these notices.++ Once this change is made in a given copy, it is irreversible for+that copy, so the ordinary GNU General Public License applies to all+subsequent copies and derivative works made from that copy.++ This option is useful when you wish to copy part of the code of+the Library into a program that is not a library.++ 4. You may copy and distribute the Library (or a portion or+derivative of it, under Section 2) in object code or executable form+under the terms of Sections 1 and 2 above provided that you accompany+it with the complete corresponding machine-readable source code, which+must be distributed under the terms of Sections 1 and 2 above on a+medium customarily used for software interchange.++ If distribution of object code is made by offering access to copy+from a designated place, then offering equivalent access to copy the+source code from the same place satisfies the requirement to+distribute the source code, even though third parties are not+compelled to copy the source along with the object code.++ 5. A program that contains no derivative of any portion of the+Library, but is designed to work with the Library by being compiled or+linked with it, is called a "work that uses the Library". Such a+work, in isolation, is not a derivative work of the Library, and+therefore falls outside the scope of this License.++ However, linking a "work that uses the Library" with the Library+creates an executable that is a derivative of the Library (because it+contains portions of the Library), rather than a "work that uses the+library". The executable is therefore covered by this License.+Section 6 states terms for distribution of such executables.++ When a "work that uses the Library" uses material from a header file+that is part of the Library, the object code for the work may be a+derivative work of the Library even though the source code is not.+Whether this is true is especially significant if the work can be+linked without the Library, or if the work is itself a library. The+threshold for this to be true is not precisely defined by law.++ If such an object file uses only numerical parameters, data+structure layouts and accessors, and small macros and small inline+functions (ten lines or less in length), then the use of the object+file is unrestricted, regardless of whether it is legally a derivative+work. (Executables containing this object code plus portions of the+Library will still fall under Section 6.)++ Otherwise, if the work is a derivative of the Library, you may+distribute the object code for the work under the terms of Section 6.+Any executables containing that work also fall under Section 6,+whether or not they are linked directly with the Library itself.++ 6. As an exception to the Sections above, you may also combine or+link a "work that uses the Library" with the Library to produce a+work containing portions of the Library, and distribute that work+under terms of your choice, provided that the terms permit+modification of the work for the customer's own use and reverse+engineering for debugging such modifications.++ You must give prominent notice with each copy of the work that the+Library is used in it and that the Library and its use are covered by+this License. You must supply a copy of this License. If the work+during execution displays copyright notices, you must include the+copyright notice for the Library among them, as well as a reference+directing the user to the copy of this License. Also, you must do one+of these things:++ a) Accompany the work with the complete corresponding+ machine-readable source code for the Library including whatever+ changes were used in the work (which must be distributed under+ Sections 1 and 2 above); and, if the work is an executable linked+ with the Library, with the complete machine-readable "work that+ uses the Library", as object code and/or source code, so that the+ user can modify the Library and then relink to produce a modified+ executable containing the modified Library. (It is understood+ that the user who changes the contents of definitions files in the+ Library will not necessarily be able to recompile the application+ to use the modified definitions.)++ b) Use a suitable shared library mechanism for linking with the+ Library. A suitable mechanism is one that (1) uses at run time a+ copy of the library already present on the user's computer system,+ rather than copying library functions into the executable, and (2)+ will operate properly with a modified version of the library, if+ the user installs one, as long as the modified version is+ interface-compatible with the version that the work was made with.++ c) Accompany the work with a written offer, valid for at+ least three years, to give the same user the materials+ specified in Subsection 6a, above, for a charge no more+ than the cost of performing this distribution.++ d) If distribution of the work is made by offering access to copy+ from a designated place, offer equivalent access to copy the above+ specified materials from the same place.++ e) Verify that the user has already received a copy of these+ materials or that you have already sent this user a copy.++ For an executable, the required form of the "work that uses the+Library" must include any data and utility programs needed for+reproducing the executable from it. However, as a special exception,+the materials to be distributed need not include anything that is+normally distributed (in either source or binary form) with the major+components (compiler, kernel, and so on) of the operating system on+which the executable runs, unless that component itself accompanies+the executable.++ It may happen that this requirement contradicts the license+restrictions of other proprietary libraries that do not normally+accompany the operating system. Such a contradiction means you cannot+use both them and the Library together in an executable that you+distribute.++ 7. You may place library facilities that are a work based on the+Library side-by-side in a single library together with other library+facilities not covered by this License, and distribute such a combined+library, provided that the separate distribution of the work based on+the Library and of the other library facilities is otherwise+permitted, and provided that you do these two things:++ a) Accompany the combined library with a copy of the same work+ based on the Library, uncombined with any other library+ facilities. This must be distributed under the terms of the+ Sections above.++ b) Give prominent notice with the combined library of the fact+ that part of it is a work based on the Library, and explaining+ where to find the accompanying uncombined form of the same work.++ 8. You may not copy, modify, sublicense, link with, or distribute+the Library except as expressly provided under this License. Any+attempt otherwise to copy, modify, sublicense, link with, or+distribute the Library is void, and will automatically terminate your+rights under this License. However, parties who have received copies,+or rights, from you under this License will not have their licenses+terminated so long as such parties remain in full compliance.++ 9. You are not required to accept this License, since you have not+signed it. However, nothing else grants you permission to modify or+distribute the Library or its derivative works. These actions are+prohibited by law if you do not accept this License. Therefore, by+modifying or distributing the Library (or any work based on the+Library), you indicate your acceptance of this License to do so, and+all its terms and conditions for copying, distributing or modifying+the Library or works based on it.++ 10. Each time you redistribute the Library (or any work based on the+Library), the recipient automatically receives a license from the+original licensor to copy, distribute, link with or modify the Library+subject to these terms and conditions. You may not impose any further+restrictions on the recipients' exercise of the rights granted herein.+You are not responsible for enforcing compliance by third parties with+this License.++ 11. If, as a consequence of a court judgment or allegation of patent+infringement or for any other reason (not limited to patent issues),+conditions are imposed on you (whether by court order, agreement or+otherwise) that contradict the conditions of this License, they do not+excuse you from the conditions of this License. If you cannot+distribute so as to satisfy simultaneously your obligations under this+License and any other pertinent obligations, then as a consequence you+may not distribute the Library at all. For example, if a patent+license would not permit royalty-free redistribution of the Library by+all those who receive copies directly or indirectly through you, then+the only way you could satisfy both it and this License would be to+refrain entirely from distribution of the Library.++If any portion of this section is held invalid or unenforceable under any+particular circumstance, the balance of the section is intended to apply,+and the section as a whole is intended to apply in other circumstances.++It is not the purpose of this section to induce you to infringe any+patents or other property right claims or to contest validity of any+such claims; this section has the sole purpose of protecting the+integrity of the free software distribution system which is+implemented by public license practices. Many people have made+generous contributions to the wide range of software distributed+through that system in reliance on consistent application of that+system; it is up to the author/donor to decide if he or she is willing+to distribute software through any other system and a licensee cannot+impose that choice.++This section is intended to make thoroughly clear what is believed to+be a consequence of the rest of this License.++ 12. If the distribution and/or use of the Library is restricted in+certain countries either by patents or by copyrighted interfaces, the+original copyright holder who places the Library under this License may add+an explicit geographical distribution limitation excluding those countries,+so that distribution is permitted only in or among countries not thus+excluded. In such case, this License incorporates the limitation as if+written in the body of this License.++ 13. The Free Software Foundation may publish revised and/or new+versions of the Lesser General Public License from time to time.+Such new versions will be similar in spirit to the present version,+but may differ in detail to address new problems or concerns.++Each version is given a distinguishing version number. If the Library+specifies a version number of this License which applies to it and+"any later version", you have the option of following the terms and+conditions either of that version or of any later version published by+the Free Software Foundation. If the Library does not specify a+license version number, you may choose any version ever published by+the Free Software Foundation.++ 14. If you wish to incorporate parts of the Library into other free+programs whose distribution conditions are incompatible with these,+write to the author to ask for permission. For software which is+copyrighted by the Free Software Foundation, write to the Free+Software Foundation; we sometimes make exceptions for this. Our+decision will be guided by the two goals of preserving the free status+of all derivatives of our free software and of promoting the sharing+and reuse of software generally.++ NO WARRANTY++ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.++ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH+DAMAGES.++ END OF TERMS AND CONDITIONS++ How to Apply These Terms to Your New Libraries++ If you develop a new library, and you want it to be of the greatest+possible use to the public, we recommend making it free software that+everyone can redistribute and change. You can do so by permitting+redistribution under these terms (or, alternatively, under the terms of the+ordinary General Public License).++ To apply these terms, attach the following notices to the library. It is+safest to attach them to the start of each source file to most effectively+convey the exclusion of warranty; and each file should have at least the+"copyright" line and a pointer to where the full notice is found.++ <one line to give the library's name and a brief idea of what it does.>+ Copyright (C) <year> <name of author>++ 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.++ You should have received a copy of the GNU Lesser General Public+ License along with this library; if not, write to the Free Software+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA++Also add information on how to contact you by electronic and paper mail.++You should also get your employer (if you work as a programmer) or your+school, if any, to sign a "copyright disclaimer" for the library, if+necessary. Here is a sample; alter the names:++ Yoyodyne, Inc., hereby disclaims all copyright interest in the+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.++ <signature of Ty Coon>, 1 April 1990+ Ty Coon, President of Vice++That's all there is to it!
+ Setup.hs view
@@ -0,0 +1,3 @@+#!/usr/bin/env runhaskell+import Distribution.Simple+main = defaultMain
+ gi-pango.cabal view
@@ -0,0 +1,26 @@+-- Autogenerated, do not edit.+name: gi-pango+version: 0.1.36.8+synopsis: Pango bindings+description: Bindings for Pango, autogenerated by haskell-gi.+homepage: https://github.com/haskell-gi/haskell-gi+license: LGPL-2.1+license-file: LICENSE+author: Will Thompson, Iñaki García Etxebarria and Jonas Platte+maintainer: Iñaki García Etxebarria (garetxe@gmail.com)+category: Bindings+build-type: Simple+cabal-version: >=1.10++library+ default-language: Haskell2010+ exposed-modules: GI.Pango, GI.PangoAttributes, GI.PangoSignals+ pkgconfig-depends: pango >= 1.36+ build-depends: base >= 4.6 && <4.9,+ haskell-gi-base >= 0.8 && < 1,+ gi-glib >= 0.2.44.8 && < 0.3,+ gi-gobject >= 0.2.44.8 && < 0.3,+ bytestring >= 0.10,+ containers >= 0.5,+ text >= 1.0,+ transformers >= 0.3