#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.PangoCairo.Interfaces.FontMap
(
FontMap(..) ,
noFontMap ,
IsFontMap ,
toFontMap ,
fontMapGetDefault ,
#if ENABLE_OVERLOADING
FontMapGetFontTypeMethodInfo ,
#endif
fontMapGetFontType ,
#if ENABLE_OVERLOADING
FontMapGetResolutionMethodInfo ,
#endif
fontMapGetResolution ,
fontMapNew ,
fontMapNewForFontType ,
#if ENABLE_OVERLOADING
FontMapSetDefaultMethodInfo ,
#endif
fontMapSetDefault ,
#if ENABLE_OVERLOADING
FontMapSetResolutionMethodInfo ,
#endif
fontMapSetResolution ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.Cairo.Enums as Cairo.Enums
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Pango.Objects.FontMap as Pango.FontMap
newtype FontMap = FontMap (ManagedPtr FontMap)
noFontMap :: Maybe FontMap
noFontMap = Nothing
#if ENABLE_OVERLOADING
type instance O.SignalList FontMap = FontMapSignalList
type FontMapSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "pango_cairo_font_map_get_type"
c_pango_cairo_font_map_get_type :: IO GType
instance GObject FontMap where
gobjectType = c_pango_cairo_font_map_get_type
class (GObject o, O.IsDescendantOf FontMap o) => IsFontMap o
instance (GObject o, O.IsDescendantOf FontMap o) => IsFontMap o
instance O.HasParentTypes FontMap
type instance O.ParentTypes FontMap = '[Pango.FontMap.FontMap, GObject.Object.Object]
toFontMap :: (MonadIO m, IsFontMap o) => o -> m FontMap
toFontMap = liftIO . unsafeCastTo FontMap
#if ENABLE_OVERLOADING
instance O.HasAttributeList FontMap
type instance O.AttributeList FontMap = FontMapAttributeList
type FontMapAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type family ResolveFontMapMethod (t :: Symbol) (o :: *) :: * where
ResolveFontMapMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveFontMapMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveFontMapMethod "changed" o = Pango.FontMap.FontMapChangedMethodInfo
ResolveFontMapMethod "createContext" o = Pango.FontMap.FontMapCreateContextMethodInfo
ResolveFontMapMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveFontMapMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveFontMapMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveFontMapMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveFontMapMethod "listFamilies" o = Pango.FontMap.FontMapListFamiliesMethodInfo
ResolveFontMapMethod "loadFont" o = Pango.FontMap.FontMapLoadFontMethodInfo
ResolveFontMapMethod "loadFontset" o = Pango.FontMap.FontMapLoadFontsetMethodInfo
ResolveFontMapMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveFontMapMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveFontMapMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveFontMapMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveFontMapMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveFontMapMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveFontMapMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveFontMapMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveFontMapMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveFontMapMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveFontMapMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveFontMapMethod "getFontType" o = FontMapGetFontTypeMethodInfo
ResolveFontMapMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveFontMapMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveFontMapMethod "getResolution" o = FontMapGetResolutionMethodInfo
ResolveFontMapMethod "getSerial" o = Pango.FontMap.FontMapGetSerialMethodInfo
ResolveFontMapMethod "getShapeEngineType" o = Pango.FontMap.FontMapGetShapeEngineTypeMethodInfo
ResolveFontMapMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveFontMapMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveFontMapMethod "setDefault" o = FontMapSetDefaultMethodInfo
ResolveFontMapMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveFontMapMethod "setResolution" o = FontMapSetResolutionMethodInfo
ResolveFontMapMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveFontMapMethod t FontMap, O.MethodInfo info FontMap p) => OL.IsLabel t (FontMap -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
foreign import ccall "pango_cairo_font_map_get_font_type" pango_cairo_font_map_get_font_type ::
Ptr FontMap ->
IO CUInt
fontMapGetFontType ::
(B.CallStack.HasCallStack, MonadIO m, IsFontMap a) =>
a
-> m Cairo.Enums.FontType
fontMapGetFontType fontmap = liftIO $ do
fontmap' <- unsafeManagedPtrCastPtr fontmap
result <- pango_cairo_font_map_get_font_type fontmap'
let result' = (toEnum . fromIntegral) result
touchManagedPtr fontmap
return result'
#if ENABLE_OVERLOADING
data FontMapGetFontTypeMethodInfo
instance (signature ~ (m Cairo.Enums.FontType), MonadIO m, IsFontMap a) => O.MethodInfo FontMapGetFontTypeMethodInfo a signature where
overloadedMethod _ = fontMapGetFontType
#endif
foreign import ccall "pango_cairo_font_map_get_resolution" pango_cairo_font_map_get_resolution ::
Ptr FontMap ->
IO CDouble
fontMapGetResolution ::
(B.CallStack.HasCallStack, MonadIO m, IsFontMap a) =>
a
-> m Double
fontMapGetResolution fontmap = liftIO $ do
fontmap' <- unsafeManagedPtrCastPtr fontmap
result <- pango_cairo_font_map_get_resolution fontmap'
let result' = realToFrac result
touchManagedPtr fontmap
return result'
#if ENABLE_OVERLOADING
data FontMapGetResolutionMethodInfo
instance (signature ~ (m Double), MonadIO m, IsFontMap a) => O.MethodInfo FontMapGetResolutionMethodInfo a signature where
overloadedMethod _ = fontMapGetResolution
#endif
foreign import ccall "pango_cairo_font_map_set_default" pango_cairo_font_map_set_default ::
Ptr FontMap ->
IO ()
fontMapSetDefault ::
(B.CallStack.HasCallStack, MonadIO m, IsFontMap a) =>
a
-> m ()
fontMapSetDefault fontmap = liftIO $ do
fontmap' <- unsafeManagedPtrCastPtr fontmap
pango_cairo_font_map_set_default fontmap'
touchManagedPtr fontmap
return ()
#if ENABLE_OVERLOADING
data FontMapSetDefaultMethodInfo
instance (signature ~ (m ()), MonadIO m, IsFontMap a) => O.MethodInfo FontMapSetDefaultMethodInfo a signature where
overloadedMethod _ = fontMapSetDefault
#endif
foreign import ccall "pango_cairo_font_map_set_resolution" pango_cairo_font_map_set_resolution ::
Ptr FontMap ->
CDouble ->
IO ()
fontMapSetResolution ::
(B.CallStack.HasCallStack, MonadIO m, IsFontMap a) =>
a
-> Double
-> m ()
fontMapSetResolution fontmap dpi = liftIO $ do
fontmap' <- unsafeManagedPtrCastPtr fontmap
let dpi' = realToFrac dpi
pango_cairo_font_map_set_resolution fontmap' dpi'
touchManagedPtr fontmap
return ()
#if ENABLE_OVERLOADING
data FontMapSetResolutionMethodInfo
instance (signature ~ (Double -> m ()), MonadIO m, IsFontMap a) => O.MethodInfo FontMapSetResolutionMethodInfo a signature where
overloadedMethod _ = fontMapSetResolution
#endif
foreign import ccall "pango_cairo_font_map_get_default" pango_cairo_font_map_get_default ::
IO (Ptr FontMap)
fontMapGetDefault ::
(B.CallStack.HasCallStack, MonadIO m) =>
m FontMap
fontMapGetDefault = liftIO $ do
result <- pango_cairo_font_map_get_default
checkUnexpectedReturnNULL "fontMapGetDefault" result
result' <- (newObject FontMap) result
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "pango_cairo_font_map_new" pango_cairo_font_map_new ::
IO (Ptr FontMap)
fontMapNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m FontMap
fontMapNew = liftIO $ do
result <- pango_cairo_font_map_new
checkUnexpectedReturnNULL "fontMapNew" result
result' <- (wrapObject FontMap) result
return result'
#if ENABLE_OVERLOADING
#endif
foreign import ccall "pango_cairo_font_map_new_for_font_type" pango_cairo_font_map_new_for_font_type ::
CUInt ->
IO (Ptr FontMap)
fontMapNewForFontType ::
(B.CallStack.HasCallStack, MonadIO m) =>
Cairo.Enums.FontType
-> m (Maybe FontMap)
fontMapNewForFontType fonttype = liftIO $ do
let fonttype' = (fromIntegral . fromEnum) fonttype
result <- pango_cairo_font_map_new_for_font_type fonttype'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (wrapObject FontMap) result'
return result''
return maybeResult
#if ENABLE_OVERLOADING
#endif