gi-pango 0.1.36.11 → 0.1.36.12
raw patch · 112 files changed
+16122/−11584 lines, 112 filesdep ~gi-glibdep ~gi-gobjectdep ~haskell-gi-base
Dependency ranges changed: gi-glib, gi-gobject, haskell-gi-base
Files
- GI/Pango.hs +37/−11466
- GI/Pango/Callbacks.hs +310/−0
- GI/Pango/Constants.hs +72/−0
- GI/Pango/Enums.hs +920/−0
- GI/Pango/Flags.hs +67/−0
- GI/Pango/Functions.hs +1895/−0
- GI/Pango/Objects.hs +48/−0
- GI/Pango/Objects/Context.hs +761/−0
- GI/Pango/Objects/Context.hs-boot +13/−0
- GI/Pango/Objects/Engine.hs +58/−0
- GI/Pango/Objects/Engine.hs-boot +13/−0
- GI/Pango/Objects/EngineLang.hs +58/−0
- GI/Pango/Objects/EngineLang.hs-boot +13/−0
- GI/Pango/Objects/EngineShape.hs +58/−0
- GI/Pango/Objects/EngineShape.hs-boot +13/−0
- GI/Pango/Objects/Font.hs +262/−0
- GI/Pango/Objects/Font.hs-boot +13/−0
- GI/Pango/Objects/FontFace.hs +188/−0
- GI/Pango/Objects/FontFace.hs-boot +13/−0
- GI/Pango/Objects/FontFamily.hs +159/−0
- GI/Pango/Objects/FontFamily.hs-boot +13/−0
- GI/Pango/Objects/FontMap.hs +296/−0
- GI/Pango/Objects/FontMap.hs-boot +13/−0
- GI/Pango/Objects/Fontset.hs +157/−0
- GI/Pango/Objects/Fontset.hs-boot +13/−0
- GI/Pango/Objects/FontsetSimple.hs +151/−0
- GI/Pango/Objects/FontsetSimple.hs-boot +13/−0
- GI/Pango/Objects/Layout.hs +1873/−0
- GI/Pango/Objects/Layout.hs-boot +13/−0
- GI/Pango/Objects/Renderer.hs +666/−0
- GI/Pango/Objects/Renderer.hs-boot +13/−0
- GI/Pango/Structs.hs +100/−0
- GI/Pango/Structs/Analysis.hs +124/−0
- GI/Pango/Structs/Analysis.hs-boot +10/−0
- GI/Pango/Structs/AttrClass.hs +54/−0
- GI/Pango/Structs/AttrClass.hs-boot +10/−0
- GI/Pango/Structs/AttrColor.hs +58/−0
- GI/Pango/Structs/AttrColor.hs-boot +10/−0
- GI/Pango/Structs/AttrFloat.hs +58/−0
- GI/Pango/Structs/AttrFloat.hs-boot +10/−0
- GI/Pango/Structs/AttrFontDesc.hs +58/−0
- GI/Pango/Structs/AttrFontDesc.hs-boot +10/−0
- GI/Pango/Structs/AttrInt.hs +57/−0
- GI/Pango/Structs/AttrInt.hs-boot +10/−0
- GI/Pango/Structs/AttrIterator.hs +213/−0
- GI/Pango/Structs/AttrIterator.hs-boot +10/−0
- GI/Pango/Structs/AttrLanguage.hs +58/−0
- GI/Pango/Structs/AttrLanguage.hs-boot +10/−0
- GI/Pango/Structs/AttrList.hs +334/−0
- GI/Pango/Structs/AttrList.hs-boot +11/−0
- GI/Pango/Structs/AttrShape.hs +79/−0
- GI/Pango/Structs/AttrShape.hs-boot +10/−0
- GI/Pango/Structs/AttrSize.hs +66/−0
- GI/Pango/Structs/AttrSize.hs-boot +10/−0
- GI/Pango/Structs/AttrString.hs +58/−0
- GI/Pango/Structs/AttrString.hs-boot +10/−0
- GI/Pango/Structs/Attribute.hs +166/−0
- GI/Pango/Structs/Attribute.hs-boot +10/−0
- GI/Pango/Structs/Color.hs +196/−0
- GI/Pango/Structs/Color.hs-boot +11/−0
- GI/Pango/Structs/Coverage.hs +200/−0
- GI/Pango/Structs/Coverage.hs-boot +10/−0
- GI/Pango/Structs/EngineInfo.hs +87/−0
- GI/Pango/Structs/EngineInfo.hs-boot +10/−0
- GI/Pango/Structs/EngineScriptInfo.hs +58/−0
- GI/Pango/Structs/EngineScriptInfo.hs-boot +10/−0
- GI/Pango/Structs/FontDescription.hs +970/−0
- GI/Pango/Structs/FontDescription.hs-boot +11/−0
- GI/Pango/Structs/FontMetrics.hs +439/−0
- GI/Pango/Structs/FontMetrics.hs-boot +11/−0
- GI/Pango/Structs/GlyphGeometry.hs +65/−0
- GI/Pango/Structs/GlyphGeometry.hs-boot +10/−0
- GI/Pango/Structs/GlyphInfo.hs +68/−0
- GI/Pango/Structs/GlyphInfo.hs-boot +10/−0
- GI/Pango/Structs/GlyphItem.hs +274/−0
- GI/Pango/Structs/GlyphItem.hs-boot +11/−0
- GI/Pango/Structs/GlyphItemIter.hs +346/−0
- GI/Pango/Structs/GlyphItemIter.hs-boot +11/−0
- GI/Pango/Structs/GlyphString.hs +432/−0
- GI/Pango/Structs/GlyphString.hs-boot +11/−0
- GI/Pango/Structs/GlyphVisAttr.hs +48/−0
- GI/Pango/Structs/GlyphVisAttr.hs-boot +10/−0
- GI/Pango/Structs/IncludedModule.hs +42/−0
- GI/Pango/Structs/IncludedModule.hs-boot +10/−0
- GI/Pango/Structs/Item.hs +201/−0
- GI/Pango/Structs/Item.hs-boot +11/−0
- GI/Pango/Structs/Language.hs +207/−0
- GI/Pango/Structs/Language.hs-boot +11/−0
- GI/Pango/Structs/LayoutIter.hs +659/−0
- GI/Pango/Structs/LayoutIter.hs-boot +11/−0
- GI/Pango/Structs/LayoutLine.hs +353/−0
- GI/Pango/Structs/LayoutLine.hs-boot +11/−0
- GI/Pango/Structs/LogAttr.hs +155/−0
- GI/Pango/Structs/LogAttr.hs-boot +10/−0
- GI/Pango/Structs/Map.hs +35/−0
- GI/Pango/Structs/Map.hs-boot +10/−0
- GI/Pango/Structs/MapEntry.hs +36/−0
- GI/Pango/Structs/MapEntry.hs-boot +10/−0
- GI/Pango/Structs/Matrix.hs +423/−0
- GI/Pango/Structs/Matrix.hs-boot +11/−0
- GI/Pango/Structs/Rectangle.hs +75/−0
- GI/Pango/Structs/Rectangle.hs-boot +10/−0
- GI/Pango/Structs/ScriptForLang.hs +36/−0
- GI/Pango/Structs/ScriptForLang.hs-boot +10/−0
- GI/Pango/Structs/ScriptIter.hs +140/−0
- GI/Pango/Structs/ScriptIter.hs-boot +10/−0
- GI/Pango/Structs/TabArray.hs +331/−0
- GI/Pango/Structs/TabArray.hs-boot +11/−0
- GI/Pango/Types.hs +112/−0
- GI/PangoAttributes.hs +0/−72
- GI/PangoSignals.hs +0/−41
- gi-pango.cabal +66/−5
GI/Pango.hs view
@@ -1,11467 +1,38 @@--- 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'- checkUnexpectedReturnNULL "pango_attr_iterator_get_attrs" result- 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- checkUnexpectedReturnNULL "pango_attr_list_new" result- 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'- checkUnexpectedReturnNULL "pango_attr_list_copy" result- 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_- checkUnexpectedReturnNULL "pango_attr_list_filter" result- 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'- checkUnexpectedReturnNULL "pango_attr_list_ref" result- 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'- checkUnexpectedReturnNULL "pango_color_copy" result- 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'- checkUnexpectedReturnNULL "pango_color_to_string" result- 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- checkUnexpectedReturnNULL "pango_context_new" result- 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'- checkUnexpectedReturnNULL "pango_context_get_font_description" result- 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'- checkUnexpectedReturnNULL "pango_context_get_font_map" result- 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'- checkUnexpectedReturnNULL "pango_context_get_language" result- 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'- checkUnexpectedReturnNULL "pango_context_get_matrix" result- 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- checkUnexpectedReturnNULL "pango_context_get_metrics" result- 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'- checkUnexpectedReturnNULL "pango_context_load_font" result- 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'- checkUnexpectedReturnNULL "pango_context_load_fontset" result- 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'- checkUnexpectedReturnNULL "pango_font_describe" result- 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'- checkUnexpectedReturnNULL "pango_font_describe_with_absolute_size" result- 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'- checkUnexpectedReturnNULL "pango_font_get_font_map" result- 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- checkUnexpectedReturnNULL "pango_font_get_metrics" result- 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- checkUnexpectedReturnNULL "pango_font_description_new" result- 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'- checkUnexpectedReturnNULL "pango_font_description_copy" result- 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'- checkUnexpectedReturnNULL "pango_font_description_copy_static" result- 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'- checkUnexpectedReturnNULL "pango_font_description_get_family" result- 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'- checkUnexpectedReturnNULL "pango_font_description_to_filename" result- 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'- checkUnexpectedReturnNULL "pango_font_description_to_string" result- 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'- checkUnexpectedReturnNULL "pango_font_face_describe" result- 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'- checkUnexpectedReturnNULL "pango_font_face_get_face_name" result- 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'- checkUnexpectedReturnNULL "pango_font_family_get_name" result- 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'- checkUnexpectedReturnNULL "pango_font_map_create_context" result- 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'- checkUnexpectedReturnNULL "pango_font_map_get_shape_engine_type" result- 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'- checkUnexpectedReturnNULL "pango_font_map_load_font" result- 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'- checkUnexpectedReturnNULL "pango_font_map_load_fontset" result- 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- checkUnexpectedReturnNULL "pango_font_metrics_new" result- 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'- checkUnexpectedReturnNULL "pango_font_metrics_ref" result- 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- checkUnexpectedReturnNULL "pango_fontset_get_font" result- 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'- checkUnexpectedReturnNULL "pango_fontset_get_metrics" result- 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'- checkUnexpectedReturnNULL "pango_fontset_simple_new" result- 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'- checkUnexpectedReturnNULL "pango_glyph_item_apply_attrs" result- 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'- checkUnexpectedReturnNULL "pango_glyph_item_copy" result- 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- checkUnexpectedReturnNULL "pango_glyph_item_split" result- 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'- checkUnexpectedReturnNULL "pango_glyph_item_iter_copy" result- 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- checkUnexpectedReturnNULL "pango_glyph_string_new" result- 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'- checkUnexpectedReturnNULL "pango_glyph_string_copy" result- 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- checkUnexpectedReturnNULL "pango_item_new" result- 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'- checkUnexpectedReturnNULL "pango_item_copy" result- 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- checkUnexpectedReturnNULL "pango_item_split" result- 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'- checkUnexpectedReturnNULL "pango_language_get_sample_string" result- 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- checkUnexpectedReturnNULL "pango_language_get_scripts" result- 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'- checkUnexpectedReturnNULL "pango_language_to_string" result- 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'- checkUnexpectedReturnNULL "pango_layout_new" result- 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'- checkUnexpectedReturnNULL "pango_layout_copy" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_attributes" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_context" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_font_description" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_iter" result- 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- checkUnexpectedReturnNULL "pango_layout_get_line" result- 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- checkUnexpectedReturnNULL "pango_layout_get_line_readonly" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_lines" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_lines_readonly" result- 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- checkUnexpectedReturnNULL "pango_layout_get_log_attrs_readonly" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_tabs" result- 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'- checkUnexpectedReturnNULL "pango_layout_get_text" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_copy" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_get_layout" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_get_line" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_get_line_readonly" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_get_run" result- 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'- checkUnexpectedReturnNULL "pango_layout_iter_get_run_readonly" result- 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'- checkUnexpectedReturnNULL "pango_layout_line_ref" result- 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'- checkUnexpectedReturnNULL "pango_matrix_copy" result- 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'- checkUnexpectedReturnNULL "pango_renderer_get_color" result- 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'- checkUnexpectedReturnNULL "pango_renderer_get_layout" result- 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'- checkUnexpectedReturnNULL "pango_renderer_get_layout_line" result- 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'- checkUnexpectedReturnNULL "pango_renderer_get_matrix" result- 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'- checkUnexpectedReturnNULL "pango_tab_array_new" result- 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'- checkUnexpectedReturnNULL "pango_tab_array_copy" result- 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_'- checkUnexpectedReturnNULL "pango_attr_type_get_name" result- 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'- checkUnexpectedReturnNULL "pango_config_key_get" result- 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'- checkUnexpectedReturnNULL "pango_config_key_get_system" result- 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'- checkUnexpectedReturnNULL "pango_font_description_from_string" result- 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- checkUnexpectedReturnNULL "pango_get_lib_subdirectory" result- 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- checkUnexpectedReturnNULL "pango_get_sysconf_subdirectory" result- 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- checkUnexpectedReturnNULL "pango_itemize" result- 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- checkUnexpectedReturnNULL "pango_itemize_with_base_dir" result- 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- checkUnexpectedReturnNULL "pango_language_from_string" result- 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- checkUnexpectedReturnNULL "pango_language_get_default" result- 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'- checkUnexpectedReturnNULL "pango_markup_parser_new" result- 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''- checkUnexpectedReturnNULL "pango_reorder_items" result- 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'- checkUnexpectedReturnNULL "pango_script_get_sample_language" result- 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'- checkUnexpectedReturnNULL "pango_split_file_list" result- 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'- checkUnexpectedReturnNULL "pango_trim_string" result- 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- checkUnexpectedReturnNULL "pango_version_check" result- 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- checkUnexpectedReturnNULL "pango_version_string" result- 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++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango+ ( module GI.Pango.Callbacks ,+ module GI.Pango.Constants ,+ module GI.Pango.Enums ,+ module GI.Pango.Flags ,+ module GI.Pango.Functions ,+ module GI.Pango.Objects ,+ module GI.Pango.Structs ,+++ ) where++import GI.Pango.Callbacks+import GI.Pango.Constants+import GI.Pango.Enums+import GI.Pango.Flags+import GI.Pango.Functions+import GI.Pango.Objects+import GI.Pango.Structs++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+
+ GI/Pango/Callbacks.hs view
@@ -0,0 +1,310 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Callbacks+ ( ++ -- * Signals+-- ** AttrClassDestroyFieldCallback+ AttrClassDestroyFieldCallback ,+ AttrClassDestroyFieldCallbackC ,+ attrClassDestroyFieldCallbackClosure ,+ attrClassDestroyFieldCallbackWrapper ,+ mkAttrClassDestroyFieldCallback ,+ noAttrClassDestroyFieldCallback ,+++-- ** AttrClassEqualFieldCallback+ AttrClassEqualFieldCallback ,+ AttrClassEqualFieldCallbackC ,+ attrClassEqualFieldCallbackClosure ,+ attrClassEqualFieldCallbackWrapper ,+ mkAttrClassEqualFieldCallback ,+ noAttrClassEqualFieldCallback ,+++-- ** AttrFilterFunc+ AttrFilterFunc ,+ AttrFilterFuncC ,+ attrFilterFuncClosure ,+ attrFilterFuncWrapper ,+ mkAttrFilterFunc ,+ noAttrFilterFunc ,+++-- ** FontsetForeachFunc+ FontsetForeachFunc ,+ FontsetForeachFuncC ,+ fontsetForeachFuncClosure ,+ fontsetForeachFuncWrapper ,+ mkFontsetForeachFunc ,+ noFontsetForeachFunc ,+++-- ** IncludedModuleExitFieldCallback+ IncludedModuleExitFieldCallback ,+ IncludedModuleExitFieldCallbackC ,+ includedModuleExitFieldCallbackClosure ,+ includedModuleExitFieldCallbackWrapper ,+ mkIncludedModuleExitFieldCallback ,+ noIncludedModuleExitFieldCallback ,+++-- ** IncludedModuleInitFieldCallback+ IncludedModuleInitFieldCallback ,+ IncludedModuleInitFieldCallbackC ,+ includedModuleInitFieldCallbackClosure ,+ includedModuleInitFieldCallbackWrapper ,+ mkIncludedModuleInitFieldCallback ,+ noIncludedModuleInitFieldCallback ,+++-- ** IncludedModuleListFieldCallback+ IncludedModuleListFieldCallback ,+ IncludedModuleListFieldCallbackC ,+ includedModuleListFieldCallbackClosure ,+ includedModuleListFieldCallbackWrapper ,+ mkIncludedModuleListFieldCallback ,+ noIncludedModuleListFieldCallback ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types++import qualified GI.GObject as GObject++-- 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++-- 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'++-- 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'++-- 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 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++
+ GI/Pango/Constants.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Constants+ ( + pattern UNKNOWN_GLYPH_WIDTH ,+ pattern UNKNOWN_GLYPH_HEIGHT ,+ pattern SCALE ,+ pattern RENDER_TYPE_NONE ,+ pattern GLYPH_UNKNOWN_FLAG ,+ pattern GLYPH_INVALID_INPUT ,+ pattern GLYPH_EMPTY ,+ pattern ENGINE_TYPE_SHAPE ,+ pattern ENGINE_TYPE_LANG ,+ pattern ATTR_INDEX_FROM_TEXT_BEGINNING ,+ pattern ANALYSIS_FLAG_IS_ELLIPSIS ,+ pattern ANALYSIS_FLAG_CENTERED_BASELINE ,++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+++pattern UNKNOWN_GLYPH_WIDTH = 10 :: Int32+++pattern UNKNOWN_GLYPH_HEIGHT = 14 :: Int32+++pattern SCALE = 1024 :: Int32+++pattern RENDER_TYPE_NONE = "PangoRenderNone" :: T.Text+++pattern GLYPH_UNKNOWN_FLAG = 268435456 :: Word32+++pattern GLYPH_INVALID_INPUT = 4294967295 :: Word32+++pattern GLYPH_EMPTY = 268435455 :: Word32+++pattern ENGINE_TYPE_SHAPE = "PangoEngineShape" :: T.Text+++pattern ENGINE_TYPE_LANG = "PangoEngineLang" :: T.Text+++pattern ATTR_INDEX_FROM_TEXT_BEGINNING = 0 :: Int32+++pattern ANALYSIS_FLAG_IS_ELLIPSIS = 2 :: Int32+++pattern ANALYSIS_FLAG_CENTERED_BASELINE = 1 :: Int32++
+ GI/Pango/Enums.hs view
@@ -0,0 +1,920 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Enums+ ( ++-- * Exported types+ WrapMode(..) ,+ Weight(..) ,+ Variant(..) ,+ Underline(..) ,+ TabAlign(..) ,+ Style(..) ,+ Stretch(..) ,+ Script(..) ,+ RenderPart(..) ,+ GravityHint(..) ,+ Gravity(..) ,+ EllipsizeMode(..) ,+ Direction(..) ,+ CoverageLevel(..) ,+ BidiType(..) ,+ AttrType(..) ,+ Alignment(..) ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map+++++-- 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++-- 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 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 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 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++-- 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 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 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++-- 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++-- 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++-- 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 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++-- 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 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 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++-- 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++-- 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++
+ GI/Pango/Flags.hs view
@@ -0,0 +1,67 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Flags+ ( ++-- * Exported types+ FontMask(..) ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map+++++-- 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++
+ GI/Pango/Functions.hs view
@@ -0,0 +1,1895 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Functions+ ( ++ -- * Methods+-- ** attrTypeGetName+ attrTypeGetName ,+++-- ** attrTypeRegister+ attrTypeRegister ,+++-- ** bidiTypeForUnichar+ bidiTypeForUnichar ,+++-- ** break+ break ,+++-- ** configKeyGet+ configKeyGet ,+++-- ** configKeyGetSystem+ configKeyGetSystem ,+++-- ** defaultBreak+ defaultBreak ,+++-- ** extentsToPixels+ extentsToPixels ,+++-- ** findBaseDir+ findBaseDir ,+++-- ** findParagraphBoundary+ findParagraphBoundary ,+++-- ** fontDescriptionFromString+ fontDescriptionFromString ,+++-- ** getLibSubdirectory+ getLibSubdirectory ,+++-- ** getLogAttrs+ getLogAttrs ,+++-- ** getMirrorChar+ getMirrorChar ,+++-- ** getSysconfSubdirectory+ getSysconfSubdirectory ,+++-- ** gravityGetForMatrix+ gravityGetForMatrix ,+++-- ** gravityGetForScript+ gravityGetForScript ,+++-- ** gravityGetForScriptAndWidth+ gravityGetForScriptAndWidth ,+++-- ** gravityToRotation+ gravityToRotation ,+++-- ** isZeroWidth+ isZeroWidth ,+++-- ** itemize+ itemize ,+++-- ** itemizeWithBaseDir+ itemizeWithBaseDir ,+++-- ** languageFromString+ languageFromString ,+++-- ** languageGetDefault+ languageGetDefault ,+++-- ** log2visGetEmbeddingLevels+ log2visGetEmbeddingLevels ,+++-- ** lookupAliases+ lookupAliases ,+++-- ** markupParserFinish+ markupParserFinish ,+++-- ** markupParserNew+ markupParserNew ,+++-- ** moduleRegister+ moduleRegister ,+++-- ** parseEnum+ parseEnum ,+++-- ** parseMarkup+ parseMarkup ,+++-- ** parseStretch+ parseStretch ,+++-- ** parseStyle+ parseStyle ,+++-- ** parseVariant+ parseVariant ,+++-- ** parseWeight+ parseWeight ,+++-- ** quantizeLineGeometry+ quantizeLineGeometry ,+++-- ** readLine+ readLine ,+++-- ** reorderItems+ reorderItems ,+++-- ** scanInt+ scanInt ,+++-- ** scanString+ scanString ,+++-- ** scanWord+ scanWord ,+++-- ** scriptForUnichar+ scriptForUnichar ,+++-- ** scriptGetSampleLanguage+ scriptGetSampleLanguage ,+++-- ** shape+ shape ,+++-- ** shapeFull+ shapeFull ,+++-- ** skipSpace+ skipSpace ,+++-- ** splitFileList+ splitFileList ,+++-- ** trimString+ trimString ,+++-- ** unicharDirection+ unicharDirection ,+++-- ** unitsFromDouble+ unitsFromDouble ,+++-- ** unitsToDouble+ unitsToDouble ,+++-- ** version+ version ,+++-- ** versionCheck+ versionCheck ,+++-- ** versionString+ versionString ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GLib as GLib++-- 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+ checkUnexpectedReturnNULL "pango_version_string" result+ result' <- cstringToText result+ 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+ checkUnexpectedReturnNULL "pango_version_check" result+ result' <- cstringToText 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_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_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_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_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'+ checkUnexpectedReturnNULL "pango_trim_string" result+ result' <- cstringToText result+ freeMem result+ freeMem str'+ return result'+++-- 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'+ checkUnexpectedReturnNULL "pango_split_file_list" result+ result' <- unpackZeroTerminatedUTF8CArray result+ mapZeroTerminatedCArray freeMem result+ freeMem result+ freeMem str'+ return result'+++-- 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_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_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_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'+ checkUnexpectedReturnNULL "pango_script_get_sample_language" result+ result' <- (wrapBoxed Language) result+ return result'+++-- 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_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_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_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_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''+ checkUnexpectedReturnNULL "pango_reorder_items" result+ 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_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_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_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_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_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_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_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_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_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_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'+ checkUnexpectedReturnNULL "pango_markup_parser_new" result+ result' <- (newBoxed GLib.MarkupParseContext) result+ return result'+++-- 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_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_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_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+ checkUnexpectedReturnNULL "pango_language_get_default" result+ result' <- (newBoxed Language) result+ 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+ checkUnexpectedReturnNULL "pango_language_from_string" result+ result' <- (newBoxed Language) result+ freeMem maybeLanguage+ 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+ checkUnexpectedReturnNULL "pango_itemize_with_base_dir" result+ 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+-- 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+ checkUnexpectedReturnNULL "pango_itemize" result+ 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_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_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_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_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_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_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+ checkUnexpectedReturnNULL "pango_get_sysconf_subdirectory" result+ result' <- cstringToText result+ return result'+++-- 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_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_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+ checkUnexpectedReturnNULL "pango_get_lib_subdirectory" result+ result' <- cstringToText result+ return result'+++-- 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'+ checkUnexpectedReturnNULL "pango_font_description_from_string" result+ result' <- (wrapBoxed FontDescription) result+ freeMem str'+ 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_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_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_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_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'+ checkUnexpectedReturnNULL "pango_config_key_get_system" result+ result' <- cstringToText result+ freeMem result+ freeMem key'+ return result'+++-- 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'+ checkUnexpectedReturnNULL "pango_config_key_get" result+ result' <- cstringToText result+ freeMem result+ freeMem key'+ 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_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_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_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_'+ checkUnexpectedReturnNULL "pango_attr_type_get_name" result+ result' <- cstringToText result+ return result'+++
+ GI/Pango/Objects.hs view
@@ -0,0 +1,48 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects+ ( module GI.Pango.Objects.Context ,+ module GI.Pango.Objects.Engine ,+ module GI.Pango.Objects.EngineLang ,+ module GI.Pango.Objects.EngineShape ,+ module GI.Pango.Objects.Font ,+ module GI.Pango.Objects.FontFace ,+ module GI.Pango.Objects.FontFamily ,+ module GI.Pango.Objects.FontMap ,+ module GI.Pango.Objects.Fontset ,+ module GI.Pango.Objects.FontsetSimple ,+ module GI.Pango.Objects.Layout ,+ module GI.Pango.Objects.Renderer ,+++ ) where++import GI.Pango.Objects.Context+import GI.Pango.Objects.Engine+import GI.Pango.Objects.EngineLang+import GI.Pango.Objects.EngineShape+import GI.Pango.Objects.Font+import GI.Pango.Objects.FontFace+import GI.Pango.Objects.FontFamily+import GI.Pango.Objects.FontMap+import GI.Pango.Objects.Fontset+import GI.Pango.Objects.FontsetSimple+import GI.Pango.Objects.Layout+import GI.Pango.Objects.Renderer++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++
+ GI/Pango/Objects/Context.hs view
@@ -0,0 +1,761 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Context+ ( ++-- * Exported types+ Context(..) ,+ ContextK ,+ toContext ,+ noContext ,+++ -- * Methods+-- ** contextChanged+ contextChanged ,+++-- ** contextGetBaseDir+ contextGetBaseDir ,+++-- ** contextGetBaseGravity+ contextGetBaseGravity ,+++-- ** contextGetFontDescription+ contextGetFontDescription ,+++-- ** contextGetFontMap+ contextGetFontMap ,+++-- ** contextGetGravity+ contextGetGravity ,+++-- ** contextGetGravityHint+ contextGetGravityHint ,+++-- ** contextGetLanguage+ contextGetLanguage ,+++-- ** contextGetMatrix+ contextGetMatrix ,+++-- ** contextGetMetrics+ contextGetMetrics ,+++-- ** contextGetSerial+ contextGetSerial ,+++-- ** contextListFamilies+ contextListFamilies ,+++-- ** contextLoadFont+ contextLoadFont ,+++-- ** contextLoadFontset+ contextLoadFontset ,+++-- ** contextNew+ contextNew ,+++-- ** contextSetBaseDir+ contextSetBaseDir ,+++-- ** contextSetBaseGravity+ contextSetBaseGravity ,+++-- ** contextSetFontDescription+ contextSetFontDescription ,+++-- ** contextSetFontMap+ contextSetFontMap ,+++-- ** contextSetGravityHint+ contextSetGravityHint ,+++-- ** contextSetLanguage+ contextSetLanguage ,+++-- ** contextSetMatrix+ contextSetMatrix ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Context = Context (ForeignPtr Context)+foreign import ccall "pango_context_get_type"+ c_pango_context_get_type :: IO GType++type instance ParentTypes Context = ContextParentTypes+type ContextParentTypes = '[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++noContext :: Maybe Context+noContext = Nothing++type instance AttributeList Context = ContextAttributeList+type ContextAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Context = ContextSignalList+type ContextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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+ checkUnexpectedReturnNULL "pango_context_new" result+ 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'+ checkUnexpectedReturnNULL "pango_context_get_font_description" result+ 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'+ checkUnexpectedReturnNULL "pango_context_get_font_map" result+ 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'+ checkUnexpectedReturnNULL "pango_context_get_language" result+ 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'+ checkUnexpectedReturnNULL "pango_context_get_matrix" result+ 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+ checkUnexpectedReturnNULL "pango_context_get_metrics" result+ 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'+ checkUnexpectedReturnNULL "pango_context_load_font" result+ 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'+ checkUnexpectedReturnNULL "pango_context_load_fontset" result+ 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 ()++
+ GI/Pango/Objects/Context.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Context where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Context = Context (ForeignPtr Context)+instance GObject Context where+class GObject o => ContextK o+instance (GObject o, IsDescendantOf Context o) => ContextK o
+ GI/Pango/Objects/Engine.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Engine+ ( ++-- * Exported types+ Engine(..) ,+ EngineK ,+ toEngine ,+ noEngine ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Engine = Engine (ForeignPtr Engine)+foreign import ccall "pango_engine_get_type"+ c_pango_engine_get_type :: IO GType++type instance ParentTypes Engine = EngineParentTypes+type EngineParentTypes = '[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++noEngine :: Maybe Engine+noEngine = Nothing++type instance AttributeList Engine = EngineAttributeList+type EngineAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Engine = EngineSignalList+type EngineSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++
+ GI/Pango/Objects/Engine.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Engine where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Engine = Engine (ForeignPtr Engine)+instance GObject Engine where+class GObject o => EngineK o+instance (GObject o, IsDescendantOf Engine o) => EngineK o
+ GI/Pango/Objects/EngineLang.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.EngineLang+ ( ++-- * Exported types+ EngineLang(..) ,+ EngineLangK ,+ toEngineLang ,+ noEngineLang ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype EngineLang = EngineLang (ForeignPtr EngineLang)+foreign import ccall "pango_engine_lang_get_type"+ c_pango_engine_lang_get_type :: IO GType++type instance ParentTypes EngineLang = EngineLangParentTypes+type EngineLangParentTypes = '[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++noEngineLang :: Maybe EngineLang+noEngineLang = Nothing++type instance AttributeList EngineLang = EngineLangAttributeList+type EngineLangAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList EngineLang = EngineLangSignalList+type EngineLangSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++
+ GI/Pango/Objects/EngineLang.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.EngineLang where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype EngineLang = EngineLang (ForeignPtr EngineLang)+instance GObject EngineLang where+class GObject o => EngineLangK o+instance (GObject o, IsDescendantOf EngineLang o) => EngineLangK o
+ GI/Pango/Objects/EngineShape.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.EngineShape+ ( ++-- * Exported types+ EngineShape(..) ,+ EngineShapeK ,+ toEngineShape ,+ noEngineShape ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype EngineShape = EngineShape (ForeignPtr EngineShape)+foreign import ccall "pango_engine_shape_get_type"+ c_pango_engine_shape_get_type :: IO GType++type instance ParentTypes EngineShape = EngineShapeParentTypes+type EngineShapeParentTypes = '[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++noEngineShape :: Maybe EngineShape+noEngineShape = Nothing++type instance AttributeList EngineShape = EngineShapeAttributeList+type EngineShapeAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList EngineShape = EngineShapeSignalList+type EngineShapeSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++
+ GI/Pango/Objects/EngineShape.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.EngineShape where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype EngineShape = EngineShape (ForeignPtr EngineShape)+instance GObject EngineShape where+class GObject o => EngineShapeK o+instance (GObject o, IsDescendantOf EngineShape o) => EngineShapeK o
+ GI/Pango/Objects/Font.hs view
@@ -0,0 +1,262 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Font+ ( ++-- * Exported types+ Font(..) ,+ FontK ,+ toFont ,+ noFont ,+++ -- * Methods+-- ** fontDescribe+ fontDescribe ,+++-- ** fontDescribeWithAbsoluteSize+ fontDescribeWithAbsoluteSize ,+++-- ** fontDescriptionsFree+ fontDescriptionsFree ,+++-- ** fontGetFontMap+ fontGetFontMap ,+++-- ** fontGetGlyphExtents+ fontGetGlyphExtents ,+++-- ** fontGetMetrics+ fontGetMetrics ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Font = Font (ForeignPtr Font)+foreign import ccall "pango_font_get_type"+ c_pango_font_get_type :: IO GType++type instance ParentTypes Font = FontParentTypes+type FontParentTypes = '[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++noFont :: Maybe Font+noFont = Nothing++type instance AttributeList Font = FontAttributeList+type FontAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Font = FontSignalList+type FontSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_font_describe" result+ 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'+ checkUnexpectedReturnNULL "pango_font_describe_with_absolute_size" result+ 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'+ checkUnexpectedReturnNULL "pango_font_get_font_map" result+ 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+ checkUnexpectedReturnNULL "pango_font_get_metrics" result+ 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 ()++
+ GI/Pango/Objects/Font.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Font where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Font = Font (ForeignPtr Font)+instance GObject Font where+class GObject o => FontK o+instance (GObject o, IsDescendantOf Font o) => FontK o
+ GI/Pango/Objects/FontFace.hs view
@@ -0,0 +1,188 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.FontFace+ ( ++-- * Exported types+ FontFace(..) ,+ FontFaceK ,+ toFontFace ,+ noFontFace ,+++ -- * Methods+-- ** fontFaceDescribe+ fontFaceDescribe ,+++-- ** fontFaceGetFaceName+ fontFaceGetFaceName ,+++-- ** fontFaceIsSynthesized+ fontFaceIsSynthesized ,+++-- ** fontFaceListSizes+ fontFaceListSizes ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype FontFace = FontFace (ForeignPtr FontFace)+foreign import ccall "pango_font_face_get_type"+ c_pango_font_face_get_type :: IO GType++type instance ParentTypes FontFace = FontFaceParentTypes+type FontFaceParentTypes = '[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++noFontFace :: Maybe FontFace+noFontFace = Nothing++type instance AttributeList FontFace = FontFaceAttributeList+type FontFaceAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList FontFace = FontFaceSignalList+type FontFaceSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_font_face_describe" result+ 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'+ checkUnexpectedReturnNULL "pango_font_face_get_face_name" result+ 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''++
+ GI/Pango/Objects/FontFace.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.FontFace where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontFace = FontFace (ForeignPtr FontFace)+instance GObject FontFace where+class GObject o => FontFaceK o+instance (GObject o, IsDescendantOf FontFace o) => FontFaceK o
+ GI/Pango/Objects/FontFamily.hs view
@@ -0,0 +1,159 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.FontFamily+ ( ++-- * Exported types+ FontFamily(..) ,+ FontFamilyK ,+ toFontFamily ,+ noFontFamily ,+++ -- * Methods+-- ** fontFamilyGetName+ fontFamilyGetName ,+++-- ** fontFamilyIsMonospace+ fontFamilyIsMonospace ,+++-- ** fontFamilyListFaces+ fontFamilyListFaces ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype FontFamily = FontFamily (ForeignPtr FontFamily)+foreign import ccall "pango_font_family_get_type"+ c_pango_font_family_get_type :: IO GType++type instance ParentTypes FontFamily = FontFamilyParentTypes+type FontFamilyParentTypes = '[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++noFontFamily :: Maybe FontFamily+noFontFamily = Nothing++type instance AttributeList FontFamily = FontFamilyAttributeList+type FontFamilyAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList FontFamily = FontFamilySignalList+type FontFamilySignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_font_family_get_name" result+ 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'''++
+ GI/Pango/Objects/FontFamily.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.FontFamily where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontFamily = FontFamily (ForeignPtr FontFamily)+instance GObject FontFamily where+class GObject o => FontFamilyK o+instance (GObject o, IsDescendantOf FontFamily o) => FontFamilyK o
+ GI/Pango/Objects/FontMap.hs view
@@ -0,0 +1,296 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.FontMap+ ( ++-- * Exported types+ FontMap(..) ,+ FontMapK ,+ toFontMap ,+ noFontMap ,+++ -- * Methods+-- ** fontMapChanged+ fontMapChanged ,+++-- ** fontMapCreateContext+ fontMapCreateContext ,+++-- ** fontMapGetSerial+ fontMapGetSerial ,+++-- ** fontMapGetShapeEngineType+ fontMapGetShapeEngineType ,+++-- ** fontMapListFamilies+ fontMapListFamilies ,+++-- ** fontMapLoadFont+ fontMapLoadFont ,+++-- ** fontMapLoadFontset+ fontMapLoadFontset ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype FontMap = FontMap (ForeignPtr FontMap)+foreign import ccall "pango_font_map_get_type"+ c_pango_font_map_get_type :: IO GType++type instance ParentTypes FontMap = FontMapParentTypes+type FontMapParentTypes = '[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++noFontMap :: Maybe FontMap+noFontMap = Nothing++type instance AttributeList FontMap = FontMapAttributeList+type FontMapAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList FontMap = FontMapSignalList+type FontMapSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_font_map_create_context" result+ 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'+ checkUnexpectedReturnNULL "pango_font_map_get_shape_engine_type" result+ 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'+ checkUnexpectedReturnNULL "pango_font_map_load_font" result+ 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'+ checkUnexpectedReturnNULL "pango_font_map_load_fontset" result+ result' <- (wrapObject Fontset) result+ touchManagedPtr _obj+ touchManagedPtr context+ touchManagedPtr desc+ touchManagedPtr language+ return result'++
+ GI/Pango/Objects/FontMap.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.FontMap where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontMap = FontMap (ForeignPtr FontMap)+instance GObject FontMap where+class GObject o => FontMapK o+instance (GObject o, IsDescendantOf FontMap o) => FontMapK o
+ GI/Pango/Objects/Fontset.hs view
@@ -0,0 +1,157 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Fontset+ ( ++-- * Exported types+ Fontset(..) ,+ FontsetK ,+ toFontset ,+ noFontset ,+++ -- * Methods+-- ** fontsetForeach+ fontsetForeach ,+++-- ** fontsetGetFont+ fontsetGetFont ,+++-- ** fontsetGetMetrics+ fontsetGetMetrics ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Fontset = Fontset (ForeignPtr Fontset)+foreign import ccall "pango_fontset_get_type"+ c_pango_fontset_get_type :: IO GType++type instance ParentTypes Fontset = FontsetParentTypes+type FontsetParentTypes = '[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++noFontset :: Maybe Fontset+noFontset = Nothing++type instance AttributeList Fontset = FontsetAttributeList+type FontsetAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Fontset = FontsetSignalList+type FontsetSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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+ checkUnexpectedReturnNULL "pango_fontset_get_font" result+ 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'+ checkUnexpectedReturnNULL "pango_fontset_get_metrics" result+ result' <- (wrapBoxed FontMetrics) result+ touchManagedPtr _obj+ return result'++
+ GI/Pango/Objects/Fontset.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Fontset where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Fontset = Fontset (ForeignPtr Fontset)+instance GObject Fontset where+class GObject o => FontsetK o+instance (GObject o, IsDescendantOf Fontset o) => FontsetK o
+ GI/Pango/Objects/FontsetSimple.hs view
@@ -0,0 +1,151 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.FontsetSimple+ ( ++-- * Exported types+ FontsetSimple(..) ,+ FontsetSimpleK ,+ toFontsetSimple ,+ noFontsetSimple ,+++ -- * Methods+-- ** fontsetSimpleAppend+ fontsetSimpleAppend ,+++-- ** fontsetSimpleNew+ fontsetSimpleNew ,+++-- ** fontsetSimpleSize+ fontsetSimpleSize ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype FontsetSimple = FontsetSimple (ForeignPtr FontsetSimple)+foreign import ccall "pango_fontset_simple_get_type"+ c_pango_fontset_simple_get_type :: IO GType++type instance ParentTypes FontsetSimple = FontsetSimpleParentTypes+type FontsetSimpleParentTypes = '[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++noFontsetSimple :: Maybe FontsetSimple+noFontsetSimple = Nothing++type instance AttributeList FontsetSimple = FontsetSimpleAttributeList+type FontsetSimpleAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList FontsetSimple = FontsetSimpleSignalList+type FontsetSimpleSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_fontset_simple_new" result+ 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++
+ GI/Pango/Objects/FontsetSimple.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.FontsetSimple where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontsetSimple = FontsetSimple (ForeignPtr FontsetSimple)+instance GObject FontsetSimple where+class GObject o => FontsetSimpleK o+instance (GObject o, IsDescendantOf FontsetSimple o) => FontsetSimpleK o
+ GI/Pango/Objects/Layout.hs view
@@ -0,0 +1,1873 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Layout+ ( ++-- * Exported types+ Layout(..) ,+ LayoutK ,+ toLayout ,+ noLayout ,+++ -- * Methods+-- ** layoutContextChanged+ layoutContextChanged ,+++-- ** layoutCopy+ layoutCopy ,+++-- ** layoutGetAlignment+ layoutGetAlignment ,+++-- ** layoutGetAttributes+ layoutGetAttributes ,+++-- ** layoutGetAutoDir+ layoutGetAutoDir ,+++-- ** layoutGetBaseline+ layoutGetBaseline ,+++-- ** layoutGetCharacterCount+ layoutGetCharacterCount ,+++-- ** layoutGetContext+ layoutGetContext ,+++-- ** layoutGetCursorPos+ layoutGetCursorPos ,+++-- ** layoutGetEllipsize+ layoutGetEllipsize ,+++-- ** layoutGetExtents+ layoutGetExtents ,+++-- ** layoutGetFontDescription+ layoutGetFontDescription ,+++-- ** layoutGetHeight+ layoutGetHeight ,+++-- ** layoutGetIndent+ layoutGetIndent ,+++-- ** layoutGetIter+ layoutGetIter ,+++-- ** layoutGetJustify+ layoutGetJustify ,+++-- ** layoutGetLine+ layoutGetLine ,+++-- ** layoutGetLineCount+ layoutGetLineCount ,+++-- ** layoutGetLineReadonly+ layoutGetLineReadonly ,+++-- ** layoutGetLines+ layoutGetLines ,+++-- ** layoutGetLinesReadonly+ layoutGetLinesReadonly ,+++-- ** layoutGetLogAttrs+ layoutGetLogAttrs ,+++-- ** layoutGetLogAttrsReadonly+ layoutGetLogAttrsReadonly ,+++-- ** layoutGetPixelExtents+ layoutGetPixelExtents ,+++-- ** layoutGetPixelSize+ layoutGetPixelSize ,+++-- ** layoutGetSerial+ layoutGetSerial ,+++-- ** layoutGetSingleParagraphMode+ layoutGetSingleParagraphMode ,+++-- ** layoutGetSize+ layoutGetSize ,+++-- ** layoutGetSpacing+ layoutGetSpacing ,+++-- ** layoutGetTabs+ layoutGetTabs ,+++-- ** layoutGetText+ layoutGetText ,+++-- ** layoutGetUnknownGlyphsCount+ layoutGetUnknownGlyphsCount ,+++-- ** layoutGetWidth+ layoutGetWidth ,+++-- ** layoutGetWrap+ layoutGetWrap ,+++-- ** layoutIndexToLineX+ layoutIndexToLineX ,+++-- ** layoutIndexToPos+ layoutIndexToPos ,+++-- ** layoutIsEllipsized+ layoutIsEllipsized ,+++-- ** layoutIsWrapped+ layoutIsWrapped ,+++-- ** layoutMoveCursorVisually+ layoutMoveCursorVisually ,+++-- ** layoutNew+ layoutNew ,+++-- ** layoutSetAlignment+ layoutSetAlignment ,+++-- ** layoutSetAttributes+ layoutSetAttributes ,+++-- ** layoutSetAutoDir+ layoutSetAutoDir ,+++-- ** layoutSetEllipsize+ layoutSetEllipsize ,+++-- ** layoutSetFontDescription+ layoutSetFontDescription ,+++-- ** layoutSetHeight+ layoutSetHeight ,+++-- ** layoutSetIndent+ layoutSetIndent ,+++-- ** layoutSetJustify+ layoutSetJustify ,+++-- ** layoutSetMarkup+ layoutSetMarkup ,+++-- ** layoutSetMarkupWithAccel+ layoutSetMarkupWithAccel ,+++-- ** layoutSetSingleParagraphMode+ layoutSetSingleParagraphMode ,+++-- ** layoutSetSpacing+ layoutSetSpacing ,+++-- ** layoutSetTabs+ layoutSetTabs ,+++-- ** layoutSetText+ layoutSetText ,+++-- ** layoutSetWidth+ layoutSetWidth ,+++-- ** layoutSetWrap+ layoutSetWrap ,+++-- ** layoutXyToIndex+ layoutXyToIndex ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Layout = Layout (ForeignPtr Layout)+foreign import ccall "pango_layout_get_type"+ c_pango_layout_get_type :: IO GType++type instance ParentTypes Layout = LayoutParentTypes+type LayoutParentTypes = '[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++noLayout :: Maybe Layout+noLayout = Nothing++type instance AttributeList Layout = LayoutAttributeList+type LayoutAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Layout = LayoutSignalList+type LayoutSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_layout_new" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_copy" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_attributes" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_context" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_font_description" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_iter" result+ 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+ checkUnexpectedReturnNULL "pango_layout_get_line" result+ 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+ checkUnexpectedReturnNULL "pango_layout_get_line_readonly" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_lines" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_lines_readonly" result+ 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+ checkUnexpectedReturnNULL "pango_layout_get_log_attrs_readonly" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_tabs" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_get_text" result+ 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')++
+ GI/Pango/Objects/Layout.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Layout where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Layout = Layout (ForeignPtr Layout)+instance GObject Layout where+class GObject o => LayoutK o+instance (GObject o, IsDescendantOf Layout o) => LayoutK o
+ GI/Pango/Objects/Renderer.hs view
@@ -0,0 +1,666 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Objects.Renderer+ ( ++-- * Exported types+ Renderer(..) ,+ RendererK ,+ toRenderer ,+ noRenderer ,+++ -- * Methods+-- ** rendererActivate+ rendererActivate ,+++-- ** rendererDeactivate+ rendererDeactivate ,+++-- ** rendererDrawErrorUnderline+ rendererDrawErrorUnderline ,+++-- ** rendererDrawGlyph+ rendererDrawGlyph ,+++-- ** rendererDrawGlyphItem+ rendererDrawGlyphItem ,+++-- ** rendererDrawGlyphs+ rendererDrawGlyphs ,+++-- ** rendererDrawLayout+ rendererDrawLayout ,+++-- ** rendererDrawLayoutLine+ rendererDrawLayoutLine ,+++-- ** rendererDrawRectangle+ rendererDrawRectangle ,+++-- ** rendererDrawTrapezoid+ rendererDrawTrapezoid ,+++-- ** rendererGetColor+ rendererGetColor ,+++-- ** rendererGetLayout+ rendererGetLayout ,+++-- ** rendererGetLayoutLine+ rendererGetLayoutLine ,+++-- ** rendererGetMatrix+ rendererGetMatrix ,+++-- ** rendererPartChanged+ rendererPartChanged ,+++-- ** rendererSetColor+ rendererSetColor ,+++-- ** rendererSetMatrix+ rendererSetMatrix ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks+import qualified GI.GObject as GObject++newtype Renderer = Renderer (ForeignPtr Renderer)+foreign import ccall "pango_renderer_get_type"+ c_pango_renderer_get_type :: IO GType++type instance ParentTypes Renderer = RendererParentTypes+type RendererParentTypes = '[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++noRenderer :: Maybe Renderer+noRenderer = Nothing++type instance AttributeList Renderer = RendererAttributeList+type RendererAttributeList = ('[ ] :: [(Symbol, *)])++type instance SignalList Renderer = RendererSignalList+type RendererSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])++-- 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'+ checkUnexpectedReturnNULL "pango_renderer_get_color" result+ 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'+ checkUnexpectedReturnNULL "pango_renderer_get_layout" result+ 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'+ checkUnexpectedReturnNULL "pango_renderer_get_layout_line" result+ 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'+ checkUnexpectedReturnNULL "pango_renderer_get_matrix" result+ 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 ()++
+ GI/Pango/Objects/Renderer.hs-boot view
@@ -0,0 +1,13 @@+module GI.Pango.Objects.Renderer where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Renderer = Renderer (ForeignPtr Renderer)+instance GObject Renderer where+class GObject o => RendererK o+instance (GObject o, IsDescendantOf Renderer o) => RendererK o
+ GI/Pango/Structs.hs view
@@ -0,0 +1,100 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Structs+ ( module GI.Pango.Structs.Analysis ,+ module GI.Pango.Structs.AttrClass ,+ module GI.Pango.Structs.AttrColor ,+ module GI.Pango.Structs.AttrFloat ,+ module GI.Pango.Structs.AttrFontDesc ,+ module GI.Pango.Structs.AttrInt ,+ module GI.Pango.Structs.AttrIterator ,+ module GI.Pango.Structs.AttrLanguage ,+ module GI.Pango.Structs.AttrList ,+ module GI.Pango.Structs.AttrShape ,+ module GI.Pango.Structs.AttrSize ,+ module GI.Pango.Structs.AttrString ,+ module GI.Pango.Structs.Attribute ,+ module GI.Pango.Structs.Color ,+ module GI.Pango.Structs.Coverage ,+ module GI.Pango.Structs.EngineInfo ,+ module GI.Pango.Structs.EngineScriptInfo,+ module GI.Pango.Structs.FontDescription ,+ module GI.Pango.Structs.FontMetrics ,+ module GI.Pango.Structs.GlyphGeometry ,+ module GI.Pango.Structs.GlyphInfo ,+ module GI.Pango.Structs.GlyphItem ,+ module GI.Pango.Structs.GlyphItemIter ,+ module GI.Pango.Structs.GlyphString ,+ module GI.Pango.Structs.GlyphVisAttr ,+ module GI.Pango.Structs.IncludedModule ,+ module GI.Pango.Structs.Item ,+ module GI.Pango.Structs.Language ,+ module GI.Pango.Structs.LayoutIter ,+ module GI.Pango.Structs.LayoutLine ,+ module GI.Pango.Structs.LogAttr ,+ module GI.Pango.Structs.Map ,+ module GI.Pango.Structs.MapEntry ,+ module GI.Pango.Structs.Matrix ,+ module GI.Pango.Structs.Rectangle ,+ module GI.Pango.Structs.ScriptForLang ,+ module GI.Pango.Structs.ScriptIter ,+ module GI.Pango.Structs.TabArray ,+++ ) where++import GI.Pango.Structs.Analysis+import GI.Pango.Structs.AttrClass+import GI.Pango.Structs.AttrColor+import GI.Pango.Structs.AttrFloat+import GI.Pango.Structs.AttrFontDesc+import GI.Pango.Structs.AttrInt+import GI.Pango.Structs.AttrIterator+import GI.Pango.Structs.AttrLanguage+import GI.Pango.Structs.AttrList+import GI.Pango.Structs.AttrShape+import GI.Pango.Structs.AttrSize+import GI.Pango.Structs.AttrString+import GI.Pango.Structs.Attribute+import GI.Pango.Structs.Color+import GI.Pango.Structs.Coverage+import GI.Pango.Structs.EngineInfo+import GI.Pango.Structs.EngineScriptInfo+import GI.Pango.Structs.FontDescription+import GI.Pango.Structs.FontMetrics+import GI.Pango.Structs.GlyphGeometry+import GI.Pango.Structs.GlyphInfo+import GI.Pango.Structs.GlyphItem+import GI.Pango.Structs.GlyphItemIter+import GI.Pango.Structs.GlyphString+import GI.Pango.Structs.GlyphVisAttr+import GI.Pango.Structs.IncludedModule+import GI.Pango.Structs.Item+import GI.Pango.Structs.Language+import GI.Pango.Structs.LayoutIter+import GI.Pango.Structs.LayoutLine+import GI.Pango.Structs.LogAttr+import GI.Pango.Structs.Map+import GI.Pango.Structs.MapEntry+import GI.Pango.Structs.Matrix+import GI.Pango.Structs.Rectangle+import GI.Pango.Structs.ScriptForLang+import GI.Pango.Structs.ScriptIter+import GI.Pango.Structs.TabArray++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++
+ GI/Pango/Structs/Analysis.hs view
@@ -0,0 +1,124 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAnalysis structure stores information about+the properties of a segment of text.+-}++module GI.Pango.Structs.Analysis+ ( ++-- * Exported types+ Analysis(..) ,+ noAnalysis ,+++ -- * Properties+-- ** ExtraAttrs+ analysisReadExtraAttrs ,+++-- ** Flags+ analysisReadFlags ,+++-- ** Font+ analysisReadFont ,+++-- ** Gravity+ analysisReadGravity ,+++-- ** LangEngine+ analysisReadLangEngine ,+++-- ** Language+ analysisReadLanguage ,+++-- ** Level+ analysisReadLevel ,+++-- ** Script+ analysisReadScript ,+++-- ** ShapeEngine+ analysisReadShapeEngine ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/Analysis.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.Analysis where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Analysis = Analysis (ForeignPtr Analysis)
+ GI/Pango/Structs/AttrClass.hs view
@@ -0,0 +1,54 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrClass structure stores the type and operations for+a particular type of attribute. The functions in this structure should+not be called directly. Instead, one should use the wrapper functions+provided for #PangoAttribute.+-}++module GI.Pango.Structs.AttrClass+ ( ++-- * Exported types+ AttrClass(..) ,+ noAttrClass ,+++ -- * Properties+-- ** Type+ attrClassReadType ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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"++
+ GI/Pango/Structs/AttrClass.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrClass where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrClass = AttrClass (ForeignPtr AttrClass)
+ GI/Pango/Structs/AttrColor.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrColor structure is used to represent attributes that+are colors.+-}++module GI.Pango.Structs.AttrColor+ ( ++-- * Exported types+ AttrColor(..) ,+ noAttrColor ,+++ -- * Properties+-- ** Attr+ attrColorReadAttr ,+++-- ** Color+ attrColorReadColor ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/AttrColor.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrColor where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrColor = AttrColor (ForeignPtr AttrColor)
+ GI/Pango/Structs/AttrFloat.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrFloat structure is used to represent attributes with+a float or double value.+-}++module GI.Pango.Structs.AttrFloat+ ( ++-- * Exported types+ AttrFloat(..) ,+ noAttrFloat ,+++ -- * Properties+-- ** Attr+ attrFloatReadAttr ,+++-- ** Value+ attrFloatReadValue ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/AttrFloat.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrFloat where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrFloat = AttrFloat (ForeignPtr AttrFloat)
+ GI/Pango/Structs/AttrFontDesc.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrFontDesc structure is used to store an attribute that+sets all aspects of the font description at once.+-}++module GI.Pango.Structs.AttrFontDesc+ ( ++-- * Exported types+ AttrFontDesc(..) ,+ noAttrFontDesc ,+++ -- * Properties+-- ** Attr+ attrFontDescReadAttr ,+++-- ** Desc+ attrFontDescReadDesc ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/AttrFontDesc.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrFontDesc where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrFontDesc = AttrFontDesc (ForeignPtr AttrFontDesc)
+ GI/Pango/Structs/AttrInt.hs view
@@ -0,0 +1,57 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrInt structure is used to represent attributes with+an integer or enumeration value.+-}++module GI.Pango.Structs.AttrInt+ ( ++-- * Exported types+ AttrInt(..) ,+ noAttrInt ,+++ -- * Properties+-- ** Attr+ attrIntReadAttr ,+++-- ** Value+ attrIntReadValue ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/AttrInt.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrInt where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrInt = AttrInt (ForeignPtr AttrInt)
+ GI/Pango/Structs/AttrIterator.hs view
@@ -0,0 +1,213 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrIterator structure is used to represent an+iterator through a #PangoAttrList. A new iterator is created+with pango_attr_list_get_iterator(). Once the iterator+is created, it can be advanced through the style changes+in the text using pango_attr_iterator_next(). At each+style change, the range of the current style segment and the+attributes currently in effect can be queried.+-}++module GI.Pango.Structs.AttrIterator+ ( ++-- * Exported types+ AttrIterator(..) ,+ noAttrIterator ,+++ -- * Methods+-- ** attrIteratorDestroy+ attrIteratorDestroy ,+++-- ** attrIteratorGetAttrs+ attrIteratorGetAttrs ,+++-- ** attrIteratorGetFont+ attrIteratorGetFont ,+++-- ** attrIteratorNext+ attrIteratorNext ,+++-- ** attrIteratorRange+ attrIteratorRange ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'+ checkUnexpectedReturnNULL "pango_attr_iterator_get_attrs" result+ 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')++
+ GI/Pango/Structs/AttrIterator.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrIterator where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrIterator = AttrIterator (ForeignPtr AttrIterator)
+ GI/Pango/Structs/AttrLanguage.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrLanguage structure is used to represent attributes that+are languages.+-}++module GI.Pango.Structs.AttrLanguage+ ( ++-- * Exported types+ AttrLanguage(..) ,+ noAttrLanguage ,+++ -- * Properties+-- ** Attr+ attrLanguageReadAttr ,+++-- ** Value+ attrLanguageReadValue ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/AttrLanguage.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrLanguage where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrLanguage = AttrLanguage (ForeignPtr AttrLanguage)
+ GI/Pango/Structs/AttrList.hs view
@@ -0,0 +1,334 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrList structure represents a list of attributes+that apply to a section of text. The attributes are, in general,+allowed to overlap in an arbitrary fashion, however, if the+attributes are manipulated only through pango_attr_list_change(),+the overlap between properties will meet stricter criteria.++Since the #PangoAttrList structure is stored as a linear list,+it is not suitable for storing attributes for large amounts+of text. In general, you should not use a single #PangoAttrList+for more than one paragraph of text.+-}++module GI.Pango.Structs.AttrList+ ( ++-- * Exported types+ AttrList(..) ,+ noAttrList ,+++ -- * Methods+-- ** attrListChange+ attrListChange ,+++-- ** attrListCopy+ attrListCopy ,+++-- ** attrListFilter+ attrListFilter ,+++-- ** attrListInsert+ attrListInsert ,+++-- ** attrListInsertBefore+ attrListInsertBefore ,+++-- ** attrListNew+ attrListNew ,+++-- ** attrListRef+ attrListRef ,+++-- ** attrListSplice+ attrListSplice ,+++-- ** attrListUnref+ attrListUnref ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype AttrList = AttrList (ForeignPtr AttrList)+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++noAttrList :: Maybe AttrList+noAttrList = Nothing++-- 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+ checkUnexpectedReturnNULL "pango_attr_list_new" result+ 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'+ checkUnexpectedReturnNULL "pango_attr_list_copy" result+ 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_+ checkUnexpectedReturnNULL "pango_attr_list_filter" result+ 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'+ checkUnexpectedReturnNULL "pango_attr_list_ref" result+ 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 ()++
+ GI/Pango/Structs/AttrList.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.AttrList where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrList = AttrList (ForeignPtr AttrList)+instance BoxedObject AttrList where
+ GI/Pango/Structs/AttrShape.hs view
@@ -0,0 +1,79 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrShape structure is used to represent attributes which+impose shape restrictions.+-}++module GI.Pango.Structs.AttrShape+ ( ++-- * Exported types+ AttrShape(..) ,+ noAttrShape ,+++ -- * Properties+-- ** Attr+ attrShapeReadAttr ,+++-- ** Data+ attrShapeReadData ,+++-- ** InkRect+ attrShapeReadInkRect ,+++-- ** LogicalRect+ attrShapeReadLogicalRect ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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"++
+ GI/Pango/Structs/AttrShape.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrShape where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrShape = AttrShape (ForeignPtr AttrShape)
+ GI/Pango/Structs/AttrSize.hs view
@@ -0,0 +1,66 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrSize structure is used to represent attributes which+set font size.+-}++module GI.Pango.Structs.AttrSize+ ( ++-- * Exported types+ AttrSize(..) ,+ noAttrSize ,+++ -- * Properties+-- ** Absolute+ attrSizeReadAbsolute ,+++-- ** Attr+ attrSizeReadAttr ,+++-- ** Size+ attrSizeReadSize ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/AttrSize.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrSize where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrSize = AttrSize (ForeignPtr AttrSize)
+ GI/Pango/Structs/AttrString.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttrString structure is used to represent attributes with+a string value.+-}++module GI.Pango.Structs.AttrString+ ( ++-- * Exported types+ AttrString(..) ,+ noAttrString ,+++ -- * Properties+-- ** Attr+ attrStringReadAttr ,+++-- ** Value+ attrStringReadValue ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/AttrString.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.AttrString where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype AttrString = AttrString (ForeignPtr AttrString)
+ GI/Pango/Structs/Attribute.hs view
@@ -0,0 +1,166 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoAttribute structure represents the common portions of all+attributes. Particular types of attributes include this structure+as their initial portion. The common portion of the attribute holds+the range to which the value in the type-specific part of the attribute+applies and should be initialized using pango_attribute_init().+By default an attribute will have an all-inclusive range of [0,%G_MAXUINT].+-}++module GI.Pango.Structs.Attribute+ ( ++-- * Exported types+ Attribute(..) ,+ noAttribute ,+++ -- * Methods+-- ** attributeDestroy+ attributeDestroy ,+++-- ** attributeEqual+ attributeEqual ,+++-- ** attributeInit+ attributeInit ,+++++ -- * Properties+-- ** EndIndex+ attributeReadEndIndex ,+++-- ** Klass+ attributeReadKlass ,+++-- ** StartIndex+ attributeReadStartIndex ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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 ()++
+ GI/Pango/Structs/Attribute.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.Attribute where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Attribute = Attribute (ForeignPtr Attribute)
+ GI/Pango/Structs/Color.hs view
@@ -0,0 +1,196 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoColor structure is used to+represent a color in an uncalibrated RGB color-space.+-}++module GI.Pango.Structs.Color+ ( ++-- * Exported types+ Color(..) ,+ noColor ,+++ -- * Methods+-- ** colorCopy+ colorCopy ,+++-- ** colorFree+ colorFree ,+++-- ** colorParse+ colorParse ,+++-- ** colorToString+ colorToString ,+++++ -- * Properties+-- ** Blue+ colorReadBlue ,+++-- ** Green+ colorReadGreen ,+++-- ** Red+ colorReadRed ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype Color = Color (ForeignPtr Color)+foreign import ccall "pango_color_get_type" c_pango_color_get_type :: + IO GType++instance BoxedObject Color where+ boxedType _ = c_pango_color_get_type++noColor :: Maybe Color+noColor = Nothing++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'+ checkUnexpectedReturnNULL "pango_color_copy" result+ 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'+ checkUnexpectedReturnNULL "pango_color_to_string" result+ result' <- cstringToText result+ freeMem result+ touchManagedPtr _obj+ return result'++
+ GI/Pango/Structs/Color.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.Color where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Color = Color (ForeignPtr Color)+instance BoxedObject Color where
+ GI/Pango/Structs/Coverage.hs view
@@ -0,0 +1,200 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoCoverage structure represents a map from Unicode characters+to #PangoCoverageLevel. It is an opaque structure with no public fields.+-}++module GI.Pango.Structs.Coverage+ ( ++-- * Exported types+ Coverage(..) ,+ noCoverage ,+++ -- * Methods+-- ** coverageGet+ coverageGet ,+++-- ** coverageMax+ coverageMax ,+++-- ** coverageSet+ coverageSet ,+++-- ** coverageToBytes+ coverageToBytes ,+++-- ** coverageUnref+ coverageUnref ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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 ()++
+ GI/Pango/Structs/Coverage.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.Coverage where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Coverage = Coverage (ForeignPtr Coverage)
+ GI/Pango/Structs/EngineInfo.hs view
@@ -0,0 +1,87 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoEngineInfo structure contains information about a particular+engine. It contains the following fields:+-}++module GI.Pango.Structs.EngineInfo+ ( ++-- * Exported types+ EngineInfo(..) ,+ noEngineInfo ,+++ -- * Properties+-- ** EngineType+ engineInfoReadEngineType ,+++-- ** Id+ engineInfoReadId ,+++-- ** NScripts+ engineInfoReadNScripts ,+++-- ** RenderType+ engineInfoReadRenderType ,+++-- ** Scripts+ engineInfoReadScripts ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/EngineInfo.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.EngineInfo where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype EngineInfo = EngineInfo (ForeignPtr EngineInfo)
+ GI/Pango/Structs/EngineScriptInfo.hs view
@@ -0,0 +1,58 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoEngineScriptInfo structure contains+information about how the shaper covers a particular script.+-}++module GI.Pango.Structs.EngineScriptInfo+ ( ++-- * Exported types+ EngineScriptInfo(..) ,+ noEngineScriptInfo ,+++ -- * Properties+-- ** Langs+ engineScriptInfoReadLangs ,+++-- ** Script+ engineScriptInfoReadScript ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/EngineScriptInfo.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.EngineScriptInfo where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype EngineScriptInfo = EngineScriptInfo (ForeignPtr EngineScriptInfo)
+ GI/Pango/Structs/FontDescription.hs view
@@ -0,0 +1,970 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoFontDescription structure represents the description+of an ideal font. These structures are used both to list+what fonts are available on the system and also for specifying+the characteristics of a font to load.+-}++module GI.Pango.Structs.FontDescription+ ( ++-- * Exported types+ FontDescription(..) ,+ noFontDescription ,+++ -- * Methods+-- ** fontDescriptionBetterMatch+ fontDescriptionBetterMatch ,+++-- ** fontDescriptionCopy+ fontDescriptionCopy ,+++-- ** fontDescriptionCopyStatic+ fontDescriptionCopyStatic ,+++-- ** fontDescriptionEqual+ fontDescriptionEqual ,+++-- ** fontDescriptionFree+ fontDescriptionFree ,+++-- ** fontDescriptionGetFamily+ fontDescriptionGetFamily ,+++-- ** fontDescriptionGetGravity+ fontDescriptionGetGravity ,+++-- ** fontDescriptionGetSetFields+ fontDescriptionGetSetFields ,+++-- ** fontDescriptionGetSize+ fontDescriptionGetSize ,+++-- ** fontDescriptionGetSizeIsAbsolute+ fontDescriptionGetSizeIsAbsolute ,+++-- ** fontDescriptionGetStretch+ fontDescriptionGetStretch ,+++-- ** fontDescriptionGetStyle+ fontDescriptionGetStyle ,+++-- ** fontDescriptionGetVariant+ fontDescriptionGetVariant ,+++-- ** fontDescriptionGetWeight+ fontDescriptionGetWeight ,+++-- ** fontDescriptionHash+ fontDescriptionHash ,+++-- ** fontDescriptionMerge+ fontDescriptionMerge ,+++-- ** fontDescriptionMergeStatic+ fontDescriptionMergeStatic ,+++-- ** fontDescriptionNew+ fontDescriptionNew ,+++-- ** fontDescriptionSetAbsoluteSize+ fontDescriptionSetAbsoluteSize ,+++-- ** fontDescriptionSetFamily+ fontDescriptionSetFamily ,+++-- ** fontDescriptionSetFamilyStatic+ fontDescriptionSetFamilyStatic ,+++-- ** fontDescriptionSetGravity+ fontDescriptionSetGravity ,+++-- ** fontDescriptionSetSize+ fontDescriptionSetSize ,+++-- ** fontDescriptionSetStretch+ fontDescriptionSetStretch ,+++-- ** fontDescriptionSetStyle+ fontDescriptionSetStyle ,+++-- ** fontDescriptionSetVariant+ fontDescriptionSetVariant ,+++-- ** fontDescriptionSetWeight+ fontDescriptionSetWeight ,+++-- ** fontDescriptionToFilename+ fontDescriptionToFilename ,+++-- ** fontDescriptionToString+ fontDescriptionToString ,+++-- ** fontDescriptionUnsetFields+ fontDescriptionUnsetFields ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype FontDescription = FontDescription (ForeignPtr FontDescription)+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++noFontDescription :: Maybe FontDescription+noFontDescription = Nothing++-- 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+ checkUnexpectedReturnNULL "pango_font_description_new" result+ 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'+ checkUnexpectedReturnNULL "pango_font_description_copy" result+ 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'+ checkUnexpectedReturnNULL "pango_font_description_copy_static" result+ 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'+ checkUnexpectedReturnNULL "pango_font_description_get_family" result+ 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'+ checkUnexpectedReturnNULL "pango_font_description_to_filename" result+ 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'+ checkUnexpectedReturnNULL "pango_font_description_to_string" result+ 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 ()++
+ GI/Pango/Structs/FontDescription.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.FontDescription where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontDescription = FontDescription (ForeignPtr FontDescription)+instance BoxedObject FontDescription where
+ GI/Pango/Structs/FontMetrics.hs view
@@ -0,0 +1,439 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoFontMetrics structure holds the overall metric information+for a font (possibly restricted to a script). The fields of this+structure are private to implementations of a font backend. See+the documentation of the corresponding getters for documentation+of their meaning.+-}++module GI.Pango.Structs.FontMetrics+ ( ++-- * Exported types+ FontMetrics(..) ,+ noFontMetrics ,+++ -- * Methods+-- ** fontMetricsGetApproximateCharWidth+ fontMetricsGetApproximateCharWidth ,+++-- ** fontMetricsGetApproximateDigitWidth+ fontMetricsGetApproximateDigitWidth ,+++-- ** fontMetricsGetAscent+ fontMetricsGetAscent ,+++-- ** fontMetricsGetDescent+ fontMetricsGetDescent ,+++-- ** fontMetricsGetStrikethroughPosition+ fontMetricsGetStrikethroughPosition ,+++-- ** fontMetricsGetStrikethroughThickness+ fontMetricsGetStrikethroughThickness ,+++-- ** fontMetricsGetUnderlinePosition+ fontMetricsGetUnderlinePosition ,+++-- ** fontMetricsGetUnderlineThickness+ fontMetricsGetUnderlineThickness ,+++-- ** fontMetricsNew+ fontMetricsNew ,+++-- ** fontMetricsRef+ fontMetricsRef ,+++-- ** fontMetricsUnref+ fontMetricsUnref ,+++++ -- * Properties+-- ** ApproximateCharWidth+ fontMetricsReadApproximateCharWidth ,+++-- ** ApproximateDigitWidth+ fontMetricsReadApproximateDigitWidth ,+++-- ** Ascent+ fontMetricsReadAscent ,+++-- ** Descent+ fontMetricsReadDescent ,+++-- ** RefCount+ fontMetricsReadRefCount ,+++-- ** StrikethroughPosition+ fontMetricsReadStrikethroughPosition ,+++-- ** StrikethroughThickness+ fontMetricsReadStrikethroughThickness ,+++-- ** UnderlinePosition+ fontMetricsReadUnderlinePosition ,+++-- ** UnderlineThickness+ fontMetricsReadUnderlineThickness ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype FontMetrics = FontMetrics (ForeignPtr FontMetrics)+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++noFontMetrics :: Maybe FontMetrics+noFontMetrics = Nothing++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+ checkUnexpectedReturnNULL "pango_font_metrics_new" result+ 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'+ checkUnexpectedReturnNULL "pango_font_metrics_ref" result+ 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 ()++
+ GI/Pango/Structs/FontMetrics.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.FontMetrics where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype FontMetrics = FontMetrics (ForeignPtr FontMetrics)+instance BoxedObject FontMetrics where
+ GI/Pango/Structs/GlyphGeometry.hs view
@@ -0,0 +1,65 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoGlyphGeometry structure contains width and positioning+information for a single glyph.+-}++module GI.Pango.Structs.GlyphGeometry+ ( ++-- * Exported types+ GlyphGeometry(..) ,+ noGlyphGeometry ,+++ -- * Properties+-- ** Width+ glyphGeometryReadWidth ,+++-- ** XOffset+ glyphGeometryReadXOffset ,+++-- ** YOffset+ glyphGeometryReadYOffset ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/GlyphGeometry.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.GlyphGeometry where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphGeometry = GlyphGeometry (ForeignPtr GlyphGeometry)
+ GI/Pango/Structs/GlyphInfo.hs view
@@ -0,0 +1,68 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoGlyphInfo structure represents a single glyph together with+positioning information and visual attributes.+It contains the following fields.+-}++module GI.Pango.Structs.GlyphInfo+ ( ++-- * Exported types+ GlyphInfo(..) ,+ noGlyphInfo ,+++ -- * Properties+-- ** Attr+ glyphInfoReadAttr ,+++-- ** Geometry+ glyphInfoReadGeometry ,+++-- ** Glyph+ glyphInfoReadGlyph ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/GlyphInfo.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.GlyphInfo where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphInfo = GlyphInfo (ForeignPtr GlyphInfo)
+ GI/Pango/Structs/GlyphItem.hs view
@@ -0,0 +1,274 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoGlyphItem is a pair of a #PangoItem and the glyphs+resulting from shaping the text corresponding to an item.+As an example of the usage of #PangoGlyphItem, the results+of shaping text with #PangoLayout is a list of #PangoLayoutLine,+each of which contains a list of #PangoGlyphItem.+-}++module GI.Pango.Structs.GlyphItem+ ( ++-- * Exported types+ GlyphItem(..) ,+ noGlyphItem ,+++ -- * Methods+-- ** glyphItemApplyAttrs+ glyphItemApplyAttrs ,+++-- ** glyphItemCopy+ glyphItemCopy ,+++-- ** glyphItemFree+ glyphItemFree ,+++-- ** glyphItemGetLogicalWidths+ glyphItemGetLogicalWidths ,+++-- ** glyphItemLetterSpace+ glyphItemLetterSpace ,+++-- ** glyphItemSplit+ glyphItemSplit ,+++++ -- * Properties+-- ** Glyphs+ glyphItemReadGlyphs ,+++-- ** Item+ glyphItemReadItem ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype GlyphItem = GlyphItem (ForeignPtr GlyphItem)+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++noGlyphItem :: Maybe GlyphItem+noGlyphItem = Nothing++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'+ checkUnexpectedReturnNULL "pango_glyph_item_apply_attrs" result+ 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'+ checkUnexpectedReturnNULL "pango_glyph_item_copy" result+ 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+ checkUnexpectedReturnNULL "pango_glyph_item_split" result+ result' <- (wrapBoxed GlyphItem) result+ touchManagedPtr _obj+ freeMem text'+ return result'++
+ GI/Pango/Structs/GlyphItem.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.GlyphItem where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphItem = GlyphItem (ForeignPtr GlyphItem)+instance BoxedObject GlyphItem where
+ GI/Pango/Structs/GlyphItemIter.hs view
@@ -0,0 +1,346 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoGlyphItemIter is an iterator over the clusters in a+#PangoGlyphItem. The <firstterm>forward direction</firstterm> of the+iterator is the logical direction of text. That is, with increasing+@start_index and @start_char values. If @glyph_item is right-to-left+(that is, if <literal>@glyph_item->item->analysis.level</literal> is odd),+then @start_glyph decreases as the iterator moves forward. Moreover,+in right-to-left cases, @start_glyph is greater than @end_glyph.++An iterator should be initialized using either of+pango_glyph_item_iter_init_start() and+pango_glyph_item_iter_init_end(), for forward and backward iteration+respectively, and walked over using any desired mixture of+pango_glyph_item_iter_next_cluster() and+pango_glyph_item_iter_prev_cluster(). A common idiom for doing a+forward iteration over the clusters is:+<programlisting>+PangoGlyphItemIter cluster_iter;+gboolean have_cluster;++for (have_cluster = pango_glyph_item_iter_init_start (&cluster_iter,+ glyph_item, text);+ have_cluster;+ have_cluster = pango_glyph_item_iter_next_cluster (&cluster_iter))+{+ ...+}+</programlisting>++Note that @text is the start of the text for layout, which is then+indexed by <literal>@glyph_item->item->offset</literal> to get to the+text of @glyph_item. The @start_index and @end_index values can directly+index into @text. The @start_glyph, @end_glyph, @start_char, and @end_char+values however are zero-based for the @glyph_item. For each cluster, the+item pointed at by the start variables is included in the cluster while+the one pointed at by end variables is not.++None of the members of a #PangoGlyphItemIter should be modified manually.+-}++module GI.Pango.Structs.GlyphItemIter+ ( ++-- * Exported types+ GlyphItemIter(..) ,+ noGlyphItemIter ,+++ -- * Methods+-- ** glyphItemIterCopy+ glyphItemIterCopy ,+++-- ** glyphItemIterFree+ glyphItemIterFree ,+++-- ** glyphItemIterInitEnd+ glyphItemIterInitEnd ,+++-- ** glyphItemIterInitStart+ glyphItemIterInitStart ,+++-- ** glyphItemIterNextCluster+ glyphItemIterNextCluster ,+++-- ** glyphItemIterPrevCluster+ glyphItemIterPrevCluster ,+++++ -- * Properties+-- ** EndChar+ glyphItemIterReadEndChar ,+++-- ** EndGlyph+ glyphItemIterReadEndGlyph ,+++-- ** EndIndex+ glyphItemIterReadEndIndex ,+++-- ** GlyphItem+ glyphItemIterReadGlyphItem ,+++-- ** StartChar+ glyphItemIterReadStartChar ,+++-- ** StartGlyph+ glyphItemIterReadStartGlyph ,+++-- ** StartIndex+ glyphItemIterReadStartIndex ,+++-- ** Text+ glyphItemIterReadText ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype GlyphItemIter = GlyphItemIter (ForeignPtr GlyphItemIter)+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++noGlyphItemIter :: Maybe GlyphItemIter+noGlyphItemIter = Nothing++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'+ checkUnexpectedReturnNULL "pango_glyph_item_iter_copy" result+ 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'++
+ GI/Pango/Structs/GlyphItemIter.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.GlyphItemIter where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphItemIter = GlyphItemIter (ForeignPtr GlyphItemIter)+instance BoxedObject GlyphItemIter where
+ GI/Pango/Structs/GlyphString.hs view
@@ -0,0 +1,432 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoGlyphString structure is used to store strings+of glyphs with geometry and visual attribute information.+The storage for the glyph information is owned+by the structure which simplifies memory management.+-}++module GI.Pango.Structs.GlyphString+ ( ++-- * Exported types+ GlyphString(..) ,+ noGlyphString ,+++ -- * Methods+-- ** glyphStringCopy+ glyphStringCopy ,+++-- ** glyphStringExtents+ glyphStringExtents ,+++-- ** glyphStringExtentsRange+ glyphStringExtentsRange ,+++-- ** glyphStringFree+ glyphStringFree ,+++-- ** glyphStringGetLogicalWidths+ glyphStringGetLogicalWidths ,+++-- ** glyphStringGetWidth+ glyphStringGetWidth ,+++-- ** glyphStringIndexToX+ glyphStringIndexToX ,+++-- ** glyphStringNew+ glyphStringNew ,+++-- ** glyphStringSetSize+ glyphStringSetSize ,+++-- ** glyphStringXToIndex+ glyphStringXToIndex ,+++++ -- * Properties+-- ** Glyphs+ glyphStringReadGlyphs ,+++-- ** LogClusters+ glyphStringReadLogClusters ,+++-- ** NumGlyphs+ glyphStringReadNumGlyphs ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype GlyphString = GlyphString (ForeignPtr GlyphString)+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++noGlyphString :: Maybe GlyphString+noGlyphString = Nothing++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+ checkUnexpectedReturnNULL "pango_glyph_string_new" result+ 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'+ checkUnexpectedReturnNULL "pango_glyph_string_copy" result+ 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')++
+ GI/Pango/Structs/GlyphString.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.GlyphString where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphString = GlyphString (ForeignPtr GlyphString)+instance BoxedObject GlyphString where
+ GI/Pango/Structs/GlyphVisAttr.hs view
@@ -0,0 +1,48 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The PangoGlyphVisAttr is used to communicate information between+the shaping phase and the rendering phase. More attributes may be+added in the future.+-}++module GI.Pango.Structs.GlyphVisAttr+ ( ++-- * Exported types+ GlyphVisAttr(..) ,+ noGlyphVisAttr ,+++ -- * Properties+-- ** IsClusterStart+ glyphVisAttrReadIsClusterStart ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/GlyphVisAttr.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.GlyphVisAttr where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype GlyphVisAttr = GlyphVisAttr (ForeignPtr GlyphVisAttr)
+ GI/Pango/Structs/IncludedModule.hs view
@@ -0,0 +1,42 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoIncludedModule structure for a statically linked module+contains the functions that would otherwise be loaded from a dynamically+loaded module.+-}++module GI.Pango.Structs.IncludedModule+ ( ++-- * Exported types+ IncludedModule(..) ,+ noIncludedModule ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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"++
+ GI/Pango/Structs/IncludedModule.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.IncludedModule where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype IncludedModule = IncludedModule (ForeignPtr IncludedModule)
+ GI/Pango/Structs/Item.hs view
@@ -0,0 +1,201 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoItem structure stores information about a segment of text.+-}++module GI.Pango.Structs.Item+ ( ++-- * Exported types+ Item(..) ,+ noItem ,+++ -- * Methods+-- ** itemCopy+ itemCopy ,+++-- ** itemFree+ itemFree ,+++-- ** itemNew+ itemNew ,+++-- ** itemSplit+ itemSplit ,+++++ -- * Properties+-- ** Analysis+ itemReadAnalysis ,+++-- ** Length+ itemReadLength ,+++-- ** NumChars+ itemReadNumChars ,+++-- ** Offset+ itemReadOffset ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype Item = Item (ForeignPtr Item)+foreign import ccall "pango_item_get_type" c_pango_item_get_type :: + IO GType++instance BoxedObject Item where+ boxedType _ = c_pango_item_get_type++noItem :: Maybe Item+noItem = Nothing++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+ checkUnexpectedReturnNULL "pango_item_new" result+ 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'+ checkUnexpectedReturnNULL "pango_item_copy" result+ 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+ checkUnexpectedReturnNULL "pango_item_split" result+ result' <- (wrapBoxed Item) result+ touchManagedPtr _obj+ return result'++
+ GI/Pango/Structs/Item.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.Item where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Item = Item (ForeignPtr Item)+instance BoxedObject Item where
+ GI/Pango/Structs/Language.hs view
@@ -0,0 +1,207 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoLanguage structure is used to+represent a language.++#PangoLanguage pointers can be efficiently+copied and compared with each other.+-}++module GI.Pango.Structs.Language+ ( ++-- * Exported types+ Language(..) ,+ noLanguage ,+++ -- * Methods+-- ** languageGetSampleString+ languageGetSampleString ,+++-- ** languageGetScripts+ languageGetScripts ,+++-- ** languageIncludesScript+ languageIncludesScript ,+++-- ** languageMatches+ languageMatches ,+++-- ** languageToString+ languageToString ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype Language = Language (ForeignPtr Language)+foreign import ccall "pango_language_get_type" c_pango_language_get_type :: + IO GType++instance BoxedObject Language where+ boxedType _ = c_pango_language_get_type++noLanguage :: Maybe Language+noLanguage = Nothing++-- 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'+ checkUnexpectedReturnNULL "pango_language_get_sample_string" result+ 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+ checkUnexpectedReturnNULL "pango_language_get_scripts" result+ 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'+ checkUnexpectedReturnNULL "pango_language_to_string" result+ result' <- cstringToText result+ touchManagedPtr _obj+ return result'++
+ GI/Pango/Structs/Language.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.Language where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Language = Language (ForeignPtr Language)+instance BoxedObject Language where
+ GI/Pango/Structs/LayoutIter.hs view
@@ -0,0 +1,659 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoLayoutIter structure can be used to+iterate over the visual extents of a #PangoLayout.++The #PangoLayoutIter structure is opaque, and+has no user-visible fields.+-}++module GI.Pango.Structs.LayoutIter+ ( ++-- * Exported types+ LayoutIter(..) ,+ noLayoutIter ,+++ -- * Methods+-- ** layoutIterAtLastLine+ layoutIterAtLastLine ,+++-- ** layoutIterCopy+ layoutIterCopy ,+++-- ** layoutIterFree+ layoutIterFree ,+++-- ** layoutIterGetBaseline+ layoutIterGetBaseline ,+++-- ** layoutIterGetCharExtents+ layoutIterGetCharExtents ,+++-- ** layoutIterGetClusterExtents+ layoutIterGetClusterExtents ,+++-- ** layoutIterGetIndex+ layoutIterGetIndex ,+++-- ** layoutIterGetLayout+ layoutIterGetLayout ,+++-- ** layoutIterGetLayoutExtents+ layoutIterGetLayoutExtents ,+++-- ** layoutIterGetLine+ layoutIterGetLine ,+++-- ** layoutIterGetLineExtents+ layoutIterGetLineExtents ,+++-- ** layoutIterGetLineReadonly+ layoutIterGetLineReadonly ,+++-- ** layoutIterGetLineYrange+ layoutIterGetLineYrange ,+++-- ** layoutIterGetRun+ layoutIterGetRun ,+++-- ** layoutIterGetRunExtents+ layoutIterGetRunExtents ,+++-- ** layoutIterGetRunReadonly+ layoutIterGetRunReadonly ,+++-- ** layoutIterNextChar+ layoutIterNextChar ,+++-- ** layoutIterNextCluster+ layoutIterNextCluster ,+++-- ** layoutIterNextLine+ layoutIterNextLine ,+++-- ** layoutIterNextRun+ layoutIterNextRun ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype LayoutIter = LayoutIter (ForeignPtr LayoutIter)+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++noLayoutIter :: Maybe LayoutIter+noLayoutIter = Nothing++-- 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'+ checkUnexpectedReturnNULL "pango_layout_iter_copy" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_iter_get_layout" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_iter_get_line" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_iter_get_line_readonly" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_iter_get_run" result+ 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'+ checkUnexpectedReturnNULL "pango_layout_iter_get_run_readonly" result+ 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'++
+ GI/Pango/Structs/LayoutIter.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.LayoutIter where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype LayoutIter = LayoutIter (ForeignPtr LayoutIter)+instance BoxedObject LayoutIter where
+ GI/Pango/Structs/LayoutLine.hs view
@@ -0,0 +1,353 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoLayoutLine structure represents one of the lines resulting+from laying out a paragraph via #PangoLayout. #PangoLayoutLine+structures are obtained by calling pango_layout_get_line() and+are only valid until the text, attributes, or settings of the+parent #PangoLayout are modified.++Routines for rendering PangoLayout objects are provided in+code specific to each rendering system.+-}++module GI.Pango.Structs.LayoutLine+ ( ++-- * Exported types+ LayoutLine(..) ,+ noLayoutLine ,+++ -- * Methods+-- ** layoutLineGetExtents+ layoutLineGetExtents ,+++-- ** layoutLineGetPixelExtents+ layoutLineGetPixelExtents ,+++-- ** layoutLineGetXRanges+ layoutLineGetXRanges ,+++-- ** layoutLineIndexToX+ layoutLineIndexToX ,+++-- ** layoutLineRef+ layoutLineRef ,+++-- ** layoutLineUnref+ layoutLineUnref ,+++-- ** layoutLineXToIndex+ layoutLineXToIndex ,+++++ -- * Properties+-- ** IsParagraphStart+ layoutLineReadIsParagraphStart ,+++-- ** Layout+ layoutLineReadLayout ,+++-- ** Length+ layoutLineReadLength ,+++-- ** ResolvedDir+ layoutLineReadResolvedDir ,+++-- ** Runs+ layoutLineReadRuns ,+++-- ** StartIndex+ layoutLineReadStartIndex ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype LayoutLine = LayoutLine (ForeignPtr LayoutLine)+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++noLayoutLine :: Maybe LayoutLine+noLayoutLine = Nothing++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'+ checkUnexpectedReturnNULL "pango_layout_line_ref" result+ 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')++
+ GI/Pango/Structs/LayoutLine.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.LayoutLine where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype LayoutLine = LayoutLine (ForeignPtr LayoutLine)+instance BoxedObject LayoutLine where
+ GI/Pango/Structs/LogAttr.hs view
@@ -0,0 +1,155 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoLogAttr structure stores information+about the attributes of a single character.+-}++module GI.Pango.Structs.LogAttr+ ( ++-- * Exported types+ LogAttr(..) ,+ noLogAttr ,+++ -- * Properties+-- ** BackspaceDeletesCharacter+ logAttrReadBackspaceDeletesCharacter ,+++-- ** IsCharBreak+ logAttrReadIsCharBreak ,+++-- ** IsCursorPosition+ logAttrReadIsCursorPosition ,+++-- ** IsExpandableSpace+ logAttrReadIsExpandableSpace ,+++-- ** IsLineBreak+ logAttrReadIsLineBreak ,+++-- ** IsMandatoryBreak+ logAttrReadIsMandatoryBreak ,+++-- ** IsSentenceBoundary+ logAttrReadIsSentenceBoundary ,+++-- ** IsSentenceEnd+ logAttrReadIsSentenceEnd ,+++-- ** IsSentenceStart+ logAttrReadIsSentenceStart ,+++-- ** IsWhite+ logAttrReadIsWhite ,+++-- ** IsWordBoundary+ logAttrReadIsWordBoundary ,+++-- ** IsWordEnd+ logAttrReadIsWordEnd ,+++-- ** IsWordStart+ logAttrReadIsWordStart ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/LogAttr.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.LogAttr where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype LogAttr = LogAttr (ForeignPtr LogAttr)
+ GI/Pango/Structs/Map.hs view
@@ -0,0 +1,35 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoMap structure can be used to determine the engine to+use for each character.+-}++module GI.Pango.Structs.Map+ ( ++-- * Exported types+ Map(..) ,+ noMap ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype Map = Map (ForeignPtr Map)+noMap :: Maybe Map+noMap = Nothing++
+ GI/Pango/Structs/Map.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.Map where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Map = Map (ForeignPtr Map)
+ GI/Pango/Structs/MapEntry.hs view
@@ -0,0 +1,36 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoMapEntry contains information about the engine that should be used+for the codepoint to which this entry belongs and also whether the engine+matches the language tag for this entry's map exactly or just approximately.+-}++module GI.Pango.Structs.MapEntry+ ( ++-- * Exported types+ MapEntry(..) ,+ noMapEntry ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype MapEntry = MapEntry (ForeignPtr MapEntry)+noMapEntry :: Maybe MapEntry+noMapEntry = Nothing++
+ GI/Pango/Structs/MapEntry.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.MapEntry where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype MapEntry = MapEntry (ForeignPtr MapEntry)
+ GI/Pango/Structs/Matrix.hs view
@@ -0,0 +1,423 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A structure specifying a transformation between user-space+coordinates and device coordinates. The transformation+is given by++<programlisting>+x_device = x_user * matrix->xx + y_user * matrix->xy + matrix->x0;+y_device = x_user * matrix->yx + y_user * matrix->yy + matrix->y0;+</programlisting>+-}++module GI.Pango.Structs.Matrix+ ( ++-- * Exported types+ Matrix(..) ,+ noMatrix ,+++ -- * Methods+-- ** matrixConcat+ matrixConcat ,+++-- ** matrixCopy+ matrixCopy ,+++-- ** matrixFree+ matrixFree ,+++-- ** matrixGetFontScaleFactor+ matrixGetFontScaleFactor ,+++-- ** matrixRotate+ matrixRotate ,+++-- ** matrixScale+ matrixScale ,+++-- ** matrixTransformDistance+ matrixTransformDistance ,+++-- ** matrixTransformPoint+ matrixTransformPoint ,+++-- ** matrixTranslate+ matrixTranslate ,+++++ -- * Properties+-- ** X0+ matrixReadX0 ,+++-- ** Xx+ matrixReadXx ,+++-- ** Xy+ matrixReadXy ,+++-- ** Y0+ matrixReadY0 ,+++-- ** Yx+ matrixReadYx ,+++-- ** Yy+ matrixReadYy ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype Matrix = Matrix (ForeignPtr Matrix)+foreign import ccall "pango_matrix_get_type" c_pango_matrix_get_type :: + IO GType++instance BoxedObject Matrix where+ boxedType _ = c_pango_matrix_get_type++noMatrix :: Maybe Matrix+noMatrix = Nothing++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'+ checkUnexpectedReturnNULL "pango_matrix_copy" result+ 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 ()++
+ GI/Pango/Structs/Matrix.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.Matrix where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Matrix = Matrix (ForeignPtr Matrix)+instance BoxedObject Matrix where
+ GI/Pango/Structs/Rectangle.hs view
@@ -0,0 +1,75 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++The #PangoRectangle structure represents a rectangle. It is frequently+used to represent the logical or ink extents of a single glyph or section+of text. (See, for instance, pango_font_get_glyph_extents())+-}++module GI.Pango.Structs.Rectangle+ ( ++-- * Exported types+ Rectangle(..) ,+ noRectangle ,+++ -- * Properties+-- ** Height+ rectangleReadHeight ,+++-- ** Width+ rectangleReadWidth ,+++-- ** X+ rectangleReadX ,+++-- ** Y+ rectangleReadY ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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++
+ GI/Pango/Structs/Rectangle.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.Rectangle where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype Rectangle = Rectangle (ForeignPtr Rectangle)
+ GI/Pango/Structs/ScriptForLang.hs view
@@ -0,0 +1,36 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)+-}++module GI.Pango.Structs.ScriptForLang+ ( ++-- * Exported types+ ScriptForLang(..) ,+ noScriptForLang ,+++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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\")"++
+ GI/Pango/Structs/ScriptForLang.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.ScriptForLang where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype ScriptForLang = ScriptForLang (ForeignPtr ScriptForLang)
+ GI/Pango/Structs/ScriptIter.hs view
@@ -0,0 +1,140 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoScriptIter is used to iterate through a string+and identify ranges in different scripts.+-}++module GI.Pango.Structs.ScriptIter+ ( ++-- * Exported types+ ScriptIter(..) ,+ noScriptIter ,+++ -- * Methods+-- ** scriptIterFree+ scriptIterFree ,+++-- ** scriptIterGetRange+ scriptIterGetRange ,+++-- ** scriptIterNext+ scriptIterNext ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++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'++
+ GI/Pango/Structs/ScriptIter.hs-boot view
@@ -0,0 +1,10 @@+module GI.Pango.Structs.ScriptIter where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype ScriptIter = ScriptIter (ForeignPtr ScriptIter)
+ GI/Pango/Structs/TabArray.hs view
@@ -0,0 +1,331 @@++{- |+Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte+License : LGPL-2.1+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)++A #PangoTabArray struct contains an array+of tab stops. Each tab stop has an alignment and a position.+-}++module GI.Pango.Structs.TabArray+ ( ++-- * Exported types+ TabArray(..) ,+ noTabArray ,+++ -- * Methods+-- ** tabArrayCopy+ tabArrayCopy ,+++-- ** tabArrayFree+ tabArrayFree ,+++-- ** tabArrayGetPositionsInPixels+ tabArrayGetPositionsInPixels ,+++-- ** tabArrayGetSize+ tabArrayGetSize ,+++-- ** tabArrayGetTab+ tabArrayGetTab ,+++-- ** tabArrayGetTabs+ tabArrayGetTabs ,+++-- ** tabArrayNew+ tabArrayNew ,+++-- ** tabArrayResize+ tabArrayResize ,+++-- ** tabArraySetTab+ tabArraySetTab ,+++++ ) where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++import GI.Pango.Types+import GI.Pango.Callbacks++newtype TabArray = TabArray (ForeignPtr TabArray)+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++noTabArray :: Maybe TabArray+noTabArray = Nothing++-- 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'+ checkUnexpectedReturnNULL "pango_tab_array_new" result+ 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'+ checkUnexpectedReturnNULL "pango_tab_array_copy" result+ 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 ()++
+ GI/Pango/Structs/TabArray.hs-boot view
@@ -0,0 +1,11 @@+module GI.Pango.Structs.TabArray where++import Prelude ()+import Data.GI.Base.ShortPrelude++import qualified Data.Text as T+import qualified Data.ByteString.Char8 as B+import qualified Data.Map as Map++newtype TabArray = TabArray (ForeignPtr TabArray)+instance BoxedObject TabArray where
+ GI/Pango/Types.hs view
@@ -0,0 +1,112 @@+module GI.Pango.Types+ ( module GI.Pango.Objects.Context ,+ module GI.Pango.Objects.Engine ,+ module GI.Pango.Objects.EngineLang ,+ module GI.Pango.Objects.EngineShape ,+ module GI.Pango.Objects.Font ,+ module GI.Pango.Objects.FontFace ,+ module GI.Pango.Objects.FontFamily ,+ module GI.Pango.Objects.FontMap ,+ module GI.Pango.Objects.Fontset ,+ module GI.Pango.Objects.FontsetSimple ,+ module GI.Pango.Objects.Layout ,+ module GI.Pango.Objects.Renderer ,+ module GI.Pango.Structs.Analysis ,+ module GI.Pango.Structs.AttrClass ,+ module GI.Pango.Structs.AttrColor ,+ module GI.Pango.Structs.AttrFloat ,+ module GI.Pango.Structs.AttrFontDesc ,+ module GI.Pango.Structs.AttrInt ,+ module GI.Pango.Structs.AttrIterator ,+ module GI.Pango.Structs.AttrLanguage ,+ module GI.Pango.Structs.AttrList ,+ module GI.Pango.Structs.AttrShape ,+ module GI.Pango.Structs.AttrSize ,+ module GI.Pango.Structs.AttrString ,+ module GI.Pango.Structs.Attribute ,+ module GI.Pango.Structs.Color ,+ module GI.Pango.Structs.Coverage ,+ module GI.Pango.Structs.EngineInfo ,+ module GI.Pango.Structs.EngineScriptInfo,+ module GI.Pango.Structs.FontDescription ,+ module GI.Pango.Structs.FontMetrics ,+ module GI.Pango.Structs.GlyphGeometry ,+ module GI.Pango.Structs.GlyphInfo ,+ module GI.Pango.Structs.GlyphItem ,+ module GI.Pango.Structs.GlyphItemIter ,+ module GI.Pango.Structs.GlyphString ,+ module GI.Pango.Structs.GlyphVisAttr ,+ module GI.Pango.Structs.IncludedModule ,+ module GI.Pango.Structs.Item ,+ module GI.Pango.Structs.Language ,+ module GI.Pango.Structs.LayoutIter ,+ module GI.Pango.Structs.LayoutLine ,+ module GI.Pango.Structs.LogAttr ,+ module GI.Pango.Structs.Map ,+ module GI.Pango.Structs.MapEntry ,+ module GI.Pango.Structs.Matrix ,+ module GI.Pango.Structs.Rectangle ,+ module GI.Pango.Structs.ScriptForLang ,+ module GI.Pango.Structs.ScriptIter ,+ module GI.Pango.Structs.TabArray ,+ module GI.Pango.Enums ,+ module GI.Pango.Flags ,+++ ) where+++import {-# SOURCE #-} GI.Pango.Objects.Context+import {-# SOURCE #-} GI.Pango.Objects.Engine+import {-# SOURCE #-} GI.Pango.Objects.EngineLang+import {-# SOURCE #-} GI.Pango.Objects.EngineShape+import {-# SOURCE #-} GI.Pango.Objects.Font+import {-# SOURCE #-} GI.Pango.Objects.FontFace+import {-# SOURCE #-} GI.Pango.Objects.FontFamily+import {-# SOURCE #-} GI.Pango.Objects.FontMap+import {-# SOURCE #-} GI.Pango.Objects.Fontset+import {-# SOURCE #-} GI.Pango.Objects.FontsetSimple+import {-# SOURCE #-} GI.Pango.Objects.Layout+import {-# SOURCE #-} GI.Pango.Objects.Renderer+import {-# SOURCE #-} GI.Pango.Structs.Analysis+import {-# SOURCE #-} GI.Pango.Structs.AttrClass+import {-# SOURCE #-} GI.Pango.Structs.AttrColor+import {-# SOURCE #-} GI.Pango.Structs.AttrFloat+import {-# SOURCE #-} GI.Pango.Structs.AttrFontDesc+import {-# SOURCE #-} GI.Pango.Structs.AttrInt+import {-# SOURCE #-} GI.Pango.Structs.AttrIterator+import {-# SOURCE #-} GI.Pango.Structs.AttrLanguage+import {-# SOURCE #-} GI.Pango.Structs.AttrList+import {-# SOURCE #-} GI.Pango.Structs.AttrShape+import {-# SOURCE #-} GI.Pango.Structs.AttrSize+import {-# SOURCE #-} GI.Pango.Structs.AttrString+import {-# SOURCE #-} GI.Pango.Structs.Attribute+import {-# SOURCE #-} GI.Pango.Structs.Color+import {-# SOURCE #-} GI.Pango.Structs.Coverage+import {-# SOURCE #-} GI.Pango.Structs.EngineInfo+import {-# SOURCE #-} GI.Pango.Structs.EngineScriptInfo+import {-# SOURCE #-} GI.Pango.Structs.FontDescription+import {-# SOURCE #-} GI.Pango.Structs.FontMetrics+import {-# SOURCE #-} GI.Pango.Structs.GlyphGeometry+import {-# SOURCE #-} GI.Pango.Structs.GlyphInfo+import {-# SOURCE #-} GI.Pango.Structs.GlyphItem+import {-# SOURCE #-} GI.Pango.Structs.GlyphItemIter+import {-# SOURCE #-} GI.Pango.Structs.GlyphString+import {-# SOURCE #-} GI.Pango.Structs.GlyphVisAttr+import {-# SOURCE #-} GI.Pango.Structs.IncludedModule+import {-# SOURCE #-} GI.Pango.Structs.Item+import {-# SOURCE #-} GI.Pango.Structs.Language+import {-# SOURCE #-} GI.Pango.Structs.LayoutIter+import {-# SOURCE #-} GI.Pango.Structs.LayoutLine+import {-# SOURCE #-} GI.Pango.Structs.LogAttr+import {-# SOURCE #-} GI.Pango.Structs.Map+import {-# SOURCE #-} GI.Pango.Structs.MapEntry+import {-# SOURCE #-} GI.Pango.Structs.Matrix+import {-# SOURCE #-} GI.Pango.Structs.Rectangle+import {-# SOURCE #-} GI.Pango.Structs.ScriptForLang+import {-# SOURCE #-} GI.Pango.Structs.ScriptIter+import {-# SOURCE #-} GI.Pango.Structs.TabArray++import GI.Pango.Enums+import GI.Pango.Flags+
− GI/PangoAttributes.hs
@@ -1,72 +0,0 @@-{-# 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
@@ -1,41 +0,0 @@--- 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)]-
gi-pango.cabal view
@@ -1,6 +1,6 @@ -- Autogenerated, do not edit. name: gi-pango-version: 0.1.36.11+version: 0.1.36.12 synopsis: Pango bindings description: Bindings for Pango, autogenerated by haskell-gi. homepage: https://github.com/haskell-gi/haskell-gi@@ -14,12 +14,73 @@ library default-language: Haskell2010- exposed-modules: GI.Pango, GI.PangoAttributes, GI.PangoSignals+ default-extensions: OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts+ other-extensions: PatternSynonyms ScopedTypeVariables, ViewPatterns+ ghc-options: -fno-warn-unused-imports -fno-warn-warnings-deprecations+ exposed-modules: GI.Pango.Types+ GI.Pango+ GI.Pango.Callbacks+ GI.Pango.Constants+ GI.Pango.Enums+ GI.Pango.Flags+ GI.Pango.Functions+ GI.Pango.Objects+ GI.Pango.Objects.Context+ GI.Pango.Objects.Engine+ GI.Pango.Objects.EngineLang+ GI.Pango.Objects.EngineShape+ GI.Pango.Objects.Font+ GI.Pango.Objects.FontFace+ GI.Pango.Objects.FontFamily+ GI.Pango.Objects.FontMap+ GI.Pango.Objects.Fontset+ GI.Pango.Objects.FontsetSimple+ GI.Pango.Objects.Layout+ GI.Pango.Objects.Renderer+ GI.Pango.Structs+ GI.Pango.Structs.Analysis+ GI.Pango.Structs.AttrClass+ GI.Pango.Structs.AttrColor+ GI.Pango.Structs.AttrFloat+ GI.Pango.Structs.AttrFontDesc+ GI.Pango.Structs.AttrInt+ GI.Pango.Structs.AttrIterator+ GI.Pango.Structs.AttrLanguage+ GI.Pango.Structs.AttrList+ GI.Pango.Structs.AttrShape+ GI.Pango.Structs.AttrSize+ GI.Pango.Structs.AttrString+ GI.Pango.Structs.Attribute+ GI.Pango.Structs.Color+ GI.Pango.Structs.Coverage+ GI.Pango.Structs.EngineInfo+ GI.Pango.Structs.EngineScriptInfo+ GI.Pango.Structs.FontDescription+ GI.Pango.Structs.FontMetrics+ GI.Pango.Structs.GlyphGeometry+ GI.Pango.Structs.GlyphInfo+ GI.Pango.Structs.GlyphItem+ GI.Pango.Structs.GlyphItemIter+ GI.Pango.Structs.GlyphString+ GI.Pango.Structs.GlyphVisAttr+ GI.Pango.Structs.IncludedModule+ GI.Pango.Structs.Item+ GI.Pango.Structs.Language+ GI.Pango.Structs.LayoutIter+ GI.Pango.Structs.LayoutLine+ GI.Pango.Structs.LogAttr+ GI.Pango.Structs.Map+ GI.Pango.Structs.MapEntry+ GI.Pango.Structs.Matrix+ GI.Pango.Structs.Rectangle+ GI.Pango.Structs.ScriptForLang+ GI.Pango.Structs.ScriptIter+ GI.Pango.Structs.TabArray pkgconfig-depends: pango >= 1.36 build-depends: base >= 4.7 && <5,- haskell-gi-base >= 0.11 && < 1,- gi-glib >= 0.2.44.11 && < 0.2.45,- gi-gobject >= 0.2.44.11 && < 0.2.45,+ haskell-gi-base >= 0.12 && < 1,+ gi-glib >= 0.2.44.12 && < 0.2.45,+ gi-gobject >= 0.2.44.12 && < 0.2.45, bytestring >= 0.10, containers >= 0.5, text >= 1.0,