{- | 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 ()