Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
The FontMap
represents the set of fonts available for a
particular rendering system. This is a virtual object with
implementations being specific to particular rendering systems. To
create an implementation of a FontMap
, the rendering-system
specific code should allocate a larger structure that contains a nested
FontMap
, fill in the <structfield>klass</structfield> member of the nested FontMap
with a
pointer to a appropriate FontMapClass
, then call
pango_font_map_init()
on the structure.
The FontMap
structure contains one member which the implementation
fills in.
- newtype FontMap = FontMap (ManagedPtr FontMap)
- class GObject o => IsFontMap o
- toFontMap :: IsFontMap o => o -> IO FontMap
- noFontMap :: Maybe FontMap
- data FontMapChangedMethodInfo
- fontMapChanged :: (HasCallStack, MonadIO m, IsFontMap a) => a -> m ()
- data FontMapCreateContextMethodInfo
- fontMapCreateContext :: (HasCallStack, MonadIO m, IsFontMap a) => a -> m Context
- data FontMapGetSerialMethodInfo
- fontMapGetSerial :: (HasCallStack, MonadIO m, IsFontMap a) => a -> m Word32
- data FontMapGetShapeEngineTypeMethodInfo
- fontMapGetShapeEngineType :: (HasCallStack, MonadIO m, IsFontMap a) => a -> m Text
- data FontMapListFamiliesMethodInfo
- fontMapListFamilies :: (HasCallStack, MonadIO m, IsFontMap a) => a -> m [FontFamily]
- data FontMapLoadFontMethodInfo
- fontMapLoadFont :: (HasCallStack, MonadIO m, IsFontMap a, IsContext b) => a -> b -> FontDescription -> m (Maybe Font)
- data FontMapLoadFontsetMethodInfo
- fontMapLoadFontset :: (HasCallStack, MonadIO m, IsFontMap a, IsContext b) => a -> b -> FontDescription -> Language -> m (Maybe Fontset)
Exported types
GObject FontMap Source # | |
IsObject FontMap Source # | |
IsFontMap FontMap Source # | |
((~) * info (ResolveFontMapMethod t FontMap), MethodInfo * info FontMap p) => IsLabel t (FontMap -> p) Source # | |
((~) * info (ResolveFontMapMethod t FontMap), MethodInfo * info FontMap p) => IsLabelProxy t (FontMap -> p) Source # | |
HasAttributeList * FontMap Source # | |
type AttributeList FontMap Source # | |
type SignalList FontMap Source # | |
Methods
changed
data FontMapChangedMethodInfo Source #
((~) * signature (m ()), MonadIO m, IsFontMap a) => MethodInfo * FontMapChangedMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a) | |
=> a |
|
-> m () |
Forces a change in the context, which will cause any Context
using this fontmap to change.
This function is only useful when implementing a new backend for Pango, something applications won't do. Backends should call this function if they have attached extra data to the context and such data is changed.
Since: 1.34
createContext
data FontMapCreateContextMethodInfo Source #
((~) * signature (m Context), MonadIO m, IsFontMap a) => MethodInfo * FontMapCreateContextMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a) | |
=> a |
|
-> m Context | Returns: the newly allocated |
Creates a Context
connected to fontmap
. This is equivalent
to contextNew
followed by contextSetFontMap
.
If you are using Pango as part of a higher-level system,
that system may have it's own way of create a Context
.
For instance, the GTK+ toolkit has, among others,
gdk_pango_context_get_for_screen()
, and
gtk_widget_get_pango_context()
. Use those instead.
Since: 1.22
getSerial
data FontMapGetSerialMethodInfo Source #
((~) * signature (m Word32), MonadIO m, IsFontMap a) => MethodInfo * FontMapGetSerialMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a) | |
=> a |
|
-> m Word32 | Returns: The current serial number of |
Returns the current serial number of fontmap
. The serial number is
initialized to an small number larger than zero when a new fontmap
is created and is increased whenever the fontmap is changed. It may
wrap, but will never have the value 0. Since it can wrap, never compare
it with "less than", always use "not equals".
The fontmap can only be changed using backend-specific API, like changing fontmap resolution.
This can be used to automatically detect changes to a FontMap
, like
in Context
.
Since: 1.32.4
getShapeEngineType
data FontMapGetShapeEngineTypeMethodInfo Source #
((~) * signature (m Text), MonadIO m, IsFontMap a) => MethodInfo * FontMapGetShapeEngineTypeMethodInfo a signature Source # | |
fontMapGetShapeEngineType Source #
:: (HasCallStack, MonadIO m, IsFontMap a) | |
=> a |
|
-> m Text | Returns: the ID string for shape engines for this fontmap. Owned by Pango, should not be modified or freed. |
Deprecated: (Since version 1.38)
Returns the render ID for shape engines for this fontmap.
See the <structfield>render_type</structfield> field of
EngineInfo
.
Since: 1.4
listFamilies
data FontMapListFamiliesMethodInfo Source #
((~) * signature (m [FontFamily]), MonadIO m, IsFontMap a) => MethodInfo * FontMapListFamiliesMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a) | |
=> a |
|
-> m [FontFamily] |
List all families for a fontmap.
loadFont
data FontMapLoadFontMethodInfo Source #
((~) * signature (b -> FontDescription -> m (Maybe Font)), MonadIO m, IsFontMap a, IsContext b) => MethodInfo * FontMapLoadFontMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a, IsContext b) | |
=> a |
|
-> b |
|
-> FontDescription |
|
-> m (Maybe Font) | Returns: the newly allocated |
Load the font in the fontmap that is the closest match for desc
.
loadFontset
data FontMapLoadFontsetMethodInfo Source #
((~) * signature (b -> FontDescription -> Language -> m (Maybe Fontset)), MonadIO m, IsFontMap a, IsContext b) => MethodInfo * FontMapLoadFontsetMethodInfo a signature Source # | |
:: (HasCallStack, MonadIO m, IsFontMap a, IsContext b) | |
=> a |
|
-> b |
|
-> FontDescription |
|
-> Language |
|
-> m (Maybe Fontset) | Returns: the newly allocated
|
Load a set of fonts in the fontmap that can be used to render
a font matching desc
.