gi-harfbuzz-0.0.9: HarfBuzz bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.HarfBuzz.Callbacks

Description

 
Synopsis

Signals

BufferMessageFuncT

type BufferMessageFuncT Source #

Arguments

 = BufferT

buffer: An BufferT to work upon

-> FontT

font: The FontT the buffer is shaped with

-> Text

message: NULL-terminated message passed to the function

-> IO Int32

Returns: true to perform the shaping step, false to skip it.

A callback method for BufferT. The method gets called with the BufferT it was set on, the FontT the buffer is shaped with and a message describing what step of the shaping process will be performed. Returning false from this method will skip this shaping step and move to the next one.

Since: 1.1.3

type BufferMessageFuncT_WithClosures Source #

Arguments

 = BufferT

buffer: An BufferT to work upon

-> FontT

font: The FontT the buffer is shaped with

-> Text

message: NULL-terminated message passed to the function

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Int32

Returns: true to perform the shaping step, false to skip it.

A callback method for BufferT. The method gets called with the BufferT it was set on, the FontT the buffer is shaped with and a message describing what step of the shaping process will be performed. Returning false from this method will skip this shaping step and move to the next one.

Since: 1.1.3

type C_BufferMessageFuncT = Ptr BufferT -> Ptr FontT -> CString -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

drop_closures_BufferMessageFuncT :: BufferMessageFuncT -> BufferMessageFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_BufferMessageFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_BufferMessageFuncT 
-> BufferT

buffer: An BufferT to work upon

-> FontT

font: The FontT the buffer is shaped with

-> Text

message: NULL-terminated message passed to the function

-> Ptr ()

userData: User data pointer passed by the caller

-> m Int32

Returns: true to perform the shaping step, false to skip it.

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_BufferMessageFuncT :: MonadIO m => BufferMessageFuncT -> m (GClosure C_BufferMessageFuncT) Source #

Wrap the callback into a GClosure.

mk_BufferMessageFuncT :: C_BufferMessageFuncT -> IO (FunPtr C_BufferMessageFuncT) Source #

Generate a function pointer callable from C code, from a C_BufferMessageFuncT.

ColorLineGetColorStopsFuncT

type C_ColorLineGetColorStopsFuncT = Ptr ColorLineT -> Ptr () -> Word32 -> Word32 -> Ptr ColorStopT -> Ptr () -> IO Word32 Source #

Type for the callback on the (unwrapped) C side.

type ColorLineGetColorStopsFuncT Source #

Arguments

 = ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> Word32

start: the index of the first color stop to return

-> [ColorStopT]

colorStops: Array of ColorStopT to populate

-> IO (Word32, [ColorStopT])

Returns: the total number of color stops in colorLine

A virtual method for the ColorLineT to fetch color stops.

Since: 7.0.0

type ColorLineGetColorStopsFuncT_WithClosures Source #

Arguments

 = ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> Word32

start: the index of the first color stop to return

-> [ColorStopT]

colorStops: Array of ColorStopT to populate

-> Ptr ()

userData: the data accompanying this method

-> IO (Word32, [ColorStopT])

Returns: the total number of color stops in colorLine

A virtual method for the ColorLineT to fetch color stops.

Since: 7.0.0

dynamic_ColorLineGetColorStopsFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_ColorLineGetColorStopsFuncT 
-> ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> Word32

start: the index of the first color stop to return

-> [ColorStopT]

colorStops: Array of ColorStopT to populate

-> Ptr ()

userData: the data accompanying this method

-> m (Word32, [ColorStopT])

Returns: the total number of color stops in colorLine

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

ColorLineGetExtendFuncT

type C_ColorLineGetExtendFuncT = Ptr ColorLineT -> Ptr () -> Ptr () -> IO CUInt Source #

Type for the callback on the (unwrapped) C side.

type ColorLineGetExtendFuncT Source #

Arguments

 = ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> IO PaintExtendT

Returns: the extend mode of colorLine

A virtual method for the hbColorLineT to fetches the extend mode.

Since: 7.0.0

type ColorLineGetExtendFuncT_WithClosures Source #

Arguments

 = ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> Ptr ()

userData: the data accompanying this method

-> IO PaintExtendT

Returns: the extend mode of colorLine

A virtual method for the hbColorLineT to fetches the extend mode.

Since: 7.0.0

dynamic_ColorLineGetExtendFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_ColorLineGetExtendFuncT 
-> ColorLineT

colorLine: a ColorLineT object

-> Ptr ()

colorLineData: the data accompanying colorLine

-> Ptr ()

userData: the data accompanying this method

-> m PaintExtendT

Returns: the extend mode of colorLine

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

DestroyFuncT

type C_DestroyFuncT = Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DestroyFuncT = IO () Source #

A virtual method for destroy user-data callbacks.

type DestroyFuncT_WithClosures Source #

Arguments

 = Ptr ()

userData: the data to be destroyed

-> IO () 

A virtual method for destroy user-data callbacks.

drop_closures_DestroyFuncT :: DestroyFuncT -> DestroyFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_DestroyFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DestroyFuncT 
-> Ptr ()

userData: the data to be destroyed

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DestroyFuncT :: MonadIO m => DestroyFuncT -> m (GClosure C_DestroyFuncT) Source #

Wrap the callback into a GClosure.

mk_DestroyFuncT :: C_DestroyFuncT -> IO (FunPtr C_DestroyFuncT) Source #

Generate a function pointer callable from C code, from a C_DestroyFuncT.

DrawClosePathFuncT

type C_DrawClosePathFuncT = Ptr DrawFuncsT -> Ptr () -> Ptr DrawStateT -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DrawClosePathFuncT Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> IO () 

A virtual method for the DrawFuncsT to perform a "close-path" draw operation.

Since: 4.0.0

type DrawClosePathFuncT_WithClosures Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Ptr ()

userData: User data pointer passed to drawFuncsSetClosePathFunc

-> IO () 

A virtual method for the DrawFuncsT to perform a "close-path" draw operation.

Since: 4.0.0

drop_closures_DrawClosePathFuncT :: DrawClosePathFuncT -> DrawClosePathFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_DrawClosePathFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DrawClosePathFuncT 
-> DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Ptr ()

userData: User data pointer passed to drawFuncsSetClosePathFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DrawClosePathFuncT :: MonadIO m => DrawClosePathFuncT -> m (GClosure C_DrawClosePathFuncT) Source #

Wrap the callback into a GClosure.

mk_DrawClosePathFuncT :: C_DrawClosePathFuncT -> IO (FunPtr C_DrawClosePathFuncT) Source #

Generate a function pointer callable from C code, from a C_DrawClosePathFuncT.

DrawCubicToFuncT

type C_DrawCubicToFuncT = Ptr DrawFuncsT -> Ptr () -> Ptr DrawStateT -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DrawCubicToFuncT Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

control1X: X component of first control point

-> Float

control1Y: Y component of first control point

-> Float

control2X: X component of second control point

-> Float

control2Y: Y component of second control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> IO () 

A virtual method for the DrawFuncsT to perform a "cubic-to" draw operation.

Since: 4.0.0

type DrawCubicToFuncT_WithClosures Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

control1X: X component of first control point

-> Float

control1Y: Y component of first control point

-> Float

control2X: X component of second control point

-> Float

control2Y: Y component of second control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetCubicToFunc

-> IO () 

A virtual method for the DrawFuncsT to perform a "cubic-to" draw operation.

Since: 4.0.0

drop_closures_DrawCubicToFuncT :: DrawCubicToFuncT -> DrawCubicToFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_DrawCubicToFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DrawCubicToFuncT 
-> DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

control1X: X component of first control point

-> Float

control1Y: Y component of first control point

-> Float

control2X: X component of second control point

-> Float

control2Y: Y component of second control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetCubicToFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DrawCubicToFuncT :: MonadIO m => DrawCubicToFuncT -> m (GClosure C_DrawCubicToFuncT) Source #

Wrap the callback into a GClosure.

mk_DrawCubicToFuncT :: C_DrawCubicToFuncT -> IO (FunPtr C_DrawCubicToFuncT) Source #

Generate a function pointer callable from C code, from a C_DrawCubicToFuncT.

DrawLineToFuncT

type C_DrawLineToFuncT = Ptr DrawFuncsT -> Ptr () -> Ptr DrawStateT -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DrawLineToFuncT Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> IO () 

A virtual method for the DrawFuncsT to perform a "line-to" draw operation.

Since: 4.0.0

type DrawLineToFuncT_WithClosures Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetLineToFunc

-> IO () 

A virtual method for the DrawFuncsT to perform a "line-to" draw operation.

Since: 4.0.0

drop_closures_DrawLineToFuncT :: DrawLineToFuncT -> DrawLineToFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_DrawLineToFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DrawLineToFuncT 
-> DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetLineToFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DrawLineToFuncT :: MonadIO m => DrawLineToFuncT -> m (GClosure C_DrawLineToFuncT) Source #

Wrap the callback into a GClosure.

mk_DrawLineToFuncT :: C_DrawLineToFuncT -> IO (FunPtr C_DrawLineToFuncT) Source #

Generate a function pointer callable from C code, from a C_DrawLineToFuncT.

DrawMoveToFuncT

type C_DrawMoveToFuncT = Ptr DrawFuncsT -> Ptr () -> Ptr DrawStateT -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DrawMoveToFuncT Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> IO () 

A virtual method for the DrawFuncsT to perform a "move-to" draw operation.

Since: 4.0.0

type DrawMoveToFuncT_WithClosures Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetMoveToFunc

-> IO () 

A virtual method for the DrawFuncsT to perform a "move-to" draw operation.

Since: 4.0.0

drop_closures_DrawMoveToFuncT :: DrawMoveToFuncT -> DrawMoveToFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_DrawMoveToFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DrawMoveToFuncT 
-> DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetMoveToFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DrawMoveToFuncT :: MonadIO m => DrawMoveToFuncT -> m (GClosure C_DrawMoveToFuncT) Source #

Wrap the callback into a GClosure.

mk_DrawMoveToFuncT :: C_DrawMoveToFuncT -> IO (FunPtr C_DrawMoveToFuncT) Source #

Generate a function pointer callable from C code, from a C_DrawMoveToFuncT.

DrawQuadraticToFuncT

type C_DrawQuadraticToFuncT = Ptr DrawFuncsT -> Ptr () -> Ptr DrawStateT -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type DrawQuadraticToFuncT Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

controlX: X component of control point

-> Float

controlY: Y component of control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> IO () 

A virtual method for the DrawFuncsT to perform a "quadratic-to" draw operation.

Since: 4.0.0

type DrawQuadraticToFuncT_WithClosures Source #

Arguments

 = DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

controlX: X component of control point

-> Float

controlY: Y component of control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetQuadraticToFunc

-> IO () 

A virtual method for the DrawFuncsT to perform a "quadratic-to" draw operation.

Since: 4.0.0

dynamic_DrawQuadraticToFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_DrawQuadraticToFuncT 
-> DrawFuncsT

dfuncs: draw functions object

-> Ptr ()

drawData: The data accompanying the draw functions in fontDrawGlyph

-> DrawStateT

st: current draw state

-> Float

controlX: X component of control point

-> Float

controlY: Y component of control point

-> Float

toX: X component of target point

-> Float

toY: Y component of target point

-> Ptr ()

userData: User data pointer passed to drawFuncsSetQuadraticToFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_DrawQuadraticToFuncT :: MonadIO m => DrawQuadraticToFuncT -> m (GClosure C_DrawQuadraticToFuncT) Source #

Wrap the callback into a GClosure.

mk_DrawQuadraticToFuncT :: C_DrawQuadraticToFuncT -> IO (FunPtr C_DrawQuadraticToFuncT) Source #

Generate a function pointer callable from C code, from a C_DrawQuadraticToFuncT.

FontDrawGlyphFuncT

type C_FontDrawGlyphFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr DrawFuncsT -> Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type FontDrawGlyphFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> IO () 

A virtual method for the FontFuncsT of an FontT object.

Since: 7.0.0

type FontDrawGlyphFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> Ptr ()

userData: User data pointer passed by the caller

-> IO () 

A virtual method for the FontFuncsT of an FontT object.

Since: 7.0.0

drop_closures_FontDrawGlyphFuncT :: FontDrawGlyphFuncT -> FontDrawGlyphFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_FontDrawGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontDrawGlyphFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> Ptr ()

userData: User data pointer passed by the caller

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_FontDrawGlyphFuncT :: MonadIO m => FontDrawGlyphFuncT -> m (GClosure C_FontDrawGlyphFuncT) Source #

Wrap the callback into a GClosure.

mk_FontDrawGlyphFuncT :: C_FontDrawGlyphFuncT -> IO (FunPtr C_FontDrawGlyphFuncT) Source #

Generate a function pointer callable from C code, from a C_FontDrawGlyphFuncT.

FontGetFontExtentsFuncT

type C_FontGetFontExtentsFuncT = Ptr FontT -> Ptr () -> Ptr FontExtentsT -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetFontExtentsFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> IO (Int32, FontExtentsT) 

This method should retrieve the extents for a font.

type FontGetFontExtentsFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, FontExtentsT) 

This method should retrieve the extents for a font.

dynamic_FontGetFontExtentsFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetFontExtentsFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, FontExtentsT) 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphAdvanceFuncT

type C_FontGetGlyphAdvanceFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphAdvanceFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> IO Int32

Returns: The advance of glyph within font

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the advance for a specified glyph. The method must return an hb_position_t.

type FontGetGlyphAdvanceFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Int32

Returns: The advance of glyph within font

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the advance for a specified glyph. The method must return an hb_position_t.

dynamic_FontGetGlyphAdvanceFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphAdvanceFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m Int32

Returns: The advance of glyph within font

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphAdvancesFuncT

type C_FontGetGlyphAdvancesFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Word32 -> Ptr Int32 -> Word32 -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphAdvancesFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: The number of glyph IDs in the sequence queried

-> Word32

firstGlyph: The first glyph ID to query

-> Word32

glyphStride: The stride between successive glyph IDs

-> Word32

advanceStride: The stride between successive advances

-> IO Int32 

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the advances for a sequence of glyphs.

type FontGetGlyphAdvancesFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: The number of glyph IDs in the sequence queried

-> Word32

firstGlyph: The first glyph ID to query

-> Word32

glyphStride: The stride between successive glyph IDs

-> Word32

advanceStride: The stride between successive advances

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Int32 

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the advances for a sequence of glyphs.

dynamic_FontGetGlyphAdvancesFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphAdvancesFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: The number of glyph IDs in the sequence queried

-> Word32

firstGlyph: The first glyph ID to query

-> Word32

glyphStride: The stride between successive glyph IDs

-> Word32

advanceStride: The stride between successive advances

-> Ptr ()

userData: User data pointer passed by the caller

-> m Int32 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphContourPointFuncT

type C_FontGetGlyphContourPointFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Ptr Int32 -> Ptr Int32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphContourPointFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Word32

pointIndex: The contour-point index to query

-> IO (Int32, Int32, Int32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the (X,Y) coordinates (in font units) for a specified contour point in a glyph. Each coordinate must be returned as an hb_position_t output parameter.

type FontGetGlyphContourPointFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Word32

pointIndex: The contour-point index to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Int32, Int32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the (X,Y) coordinates (in font units) for a specified contour point in a glyph. Each coordinate must be returned as an hb_position_t output parameter.

dynamic_FontGetGlyphContourPointFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphContourPointFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Word32

pointIndex: The contour-point index to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Int32, Int32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphExtentsFuncT

type C_FontGetGlyphExtentsFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr GlyphExtentsT -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphExtentsFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> IO (Int32, GlyphExtentsT)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the extents for a specified glyph. Extents must be returned in an hb_glyph_extents output parameter.

type FontGetGlyphExtentsFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, GlyphExtentsT)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the extents for a specified glyph. Extents must be returned in an hb_glyph_extents output parameter.

dynamic_FontGetGlyphExtentsFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphExtentsFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, GlyphExtentsT)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphFromNameFuncT

type C_FontGetGlyphFromNameFuncT = Ptr FontT -> Ptr () -> Ptr CString -> Int32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphFromNameFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> [Text]

name: The name string to query

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID that corresponds to a glyph-name string.

type FontGetGlyphFromNameFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> [Text]

name: The name string to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID that corresponds to a glyph-name string.

dynamic_FontGetGlyphFromNameFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphFromNameFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> [Text]

name: The name string to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Word32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphFuncT

type C_FontGetGlyphFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

Deprecated: (Since version 1.2.3)

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID for a specified Unicode code point font, with an optional variation selector.

type FontGetGlyphFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID for a specified Unicode code point font, with an optional variation selector.

drop_closures_FontGetGlyphFuncT :: FontGetGlyphFuncT -> FontGetGlyphFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_FontGetGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Word32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_FontGetGlyphFuncT :: MonadIO m => FontGetGlyphFuncT -> m (GClosure C_FontGetGlyphFuncT) Source #

Wrap the callback into a GClosure.

mk_FontGetGlyphFuncT :: C_FontGetGlyphFuncT -> IO (FunPtr C_FontGetGlyphFuncT) Source #

Generate a function pointer callable from C code, from a C_FontGetGlyphFuncT.

FontGetGlyphKerningFuncT

type C_FontGetGlyphKerningFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphKerningFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

firstGlyph: The glyph ID of the first glyph in the glyph pair

-> Word32

secondGlyph: The glyph ID of the second glyph in the glyph pair

-> IO Int32 

This method should retrieve the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

type FontGetGlyphKerningFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

firstGlyph: The glyph ID of the first glyph in the glyph pair

-> Word32

secondGlyph: The glyph ID of the second glyph in the glyph pair

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Int32 

This method should retrieve the kerning-adjustment value for a glyph-pair in the specified font, for horizontal text segments.

dynamic_FontGetGlyphKerningFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphKerningFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

firstGlyph: The glyph ID of the first glyph in the glyph pair

-> Word32

secondGlyph: The glyph ID of the second glyph in the glyph pair

-> Ptr ()

userData: User data pointer passed by the caller

-> m Int32 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphNameFuncT

type C_FontGetGlyphNameFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr (Ptr CString) -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphNameFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> IO (Int32, [Text])

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph name that corresponds to a glyph ID. The name should be returned in a string output parameter.

type FontGetGlyphNameFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, [Text])

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph name that corresponds to a glyph ID. The name should be returned in a string output parameter.

dynamic_FontGetGlyphNameFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphNameFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, [Text])

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_FontGetGlyphNameFuncT :: MonadIO m => FontGetGlyphNameFuncT -> m (GClosure C_FontGetGlyphNameFuncT) Source #

Wrap the callback into a GClosure.

mk_FontGetGlyphNameFuncT :: C_FontGetGlyphNameFuncT -> IO (FunPtr C_FontGetGlyphNameFuncT) Source #

Generate a function pointer callable from C code, from a C_FontGetGlyphNameFuncT.

FontGetGlyphOriginFuncT

type C_FontGetGlyphOriginFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr Int32 -> Ptr Int32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphOriginFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> IO (Int32, Int32, Int32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the (X,Y) coordinates (in font units) of the origin for a glyph. Each coordinate must be returned in an hb_position_t output parameter.

type FontGetGlyphOriginFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Int32, Int32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the (X,Y) coordinates (in font units) of the origin for a glyph. Each coordinate must be returned in an hb_position_t output parameter.

dynamic_FontGetGlyphOriginFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphOriginFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Int32, Int32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetGlyphShapeFuncT

type C_FontGetGlyphShapeFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr DrawFuncsT -> Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type FontGetGlyphShapeFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> IO () 

Deprecated: (Since version 7.0.0)Use FontDrawGlyphFuncT instead

A virtual method for the FontFuncsT of an FontT object.

Since: 4.0.0

type FontGetGlyphShapeFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> Ptr ()

userData: User data pointer passed by the caller

-> IO () 

A virtual method for the FontFuncsT of an FontT object.

Since: 4.0.0

dynamic_FontGetGlyphShapeFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetGlyphShapeFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> DrawFuncsT

drawFuncs: The draw functions to send the shape data to

-> Ptr ()

drawData: The data accompanying the draw functions

-> Ptr ()

userData: User data pointer passed by the caller

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_FontGetGlyphShapeFuncT :: MonadIO m => FontGetGlyphShapeFuncT -> m (GClosure C_FontGetGlyphShapeFuncT) Source #

Wrap the callback into a GClosure.

FontGetNominalGlyphFuncT

type C_FontGetNominalGlyphFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetNominalGlyphFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the nominal glyph ID for a specified Unicode code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

type FontGetNominalGlyphFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the nominal glyph ID for a specified Unicode code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

dynamic_FontGetNominalGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetNominalGlyphFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Word32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetNominalGlyphsFuncT

type C_FontGetNominalGlyphsFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Word32 -> Ptr Word32 -> Word32 -> Ptr () -> IO Word32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetNominalGlyphsFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: number of code points to query

-> Word32

firstUnicode: The first Unicode code point to query

-> Word32

unicodeStride: The stride between successive code points

-> Word32

glyphStride: The stride between successive glyph IDs

-> IO (Word32, Word32)

Returns: the number of code points processed

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the nominal glyph IDs for a sequence of Unicode code points. Glyph IDs must be returned in a hb_codepoint_t output parameter.

type FontGetNominalGlyphsFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: number of code points to query

-> Word32

firstUnicode: The first Unicode code point to query

-> Word32

unicodeStride: The stride between successive code points

-> Word32

glyphStride: The stride between successive glyph IDs

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Word32, Word32)

Returns: the number of code points processed

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the nominal glyph IDs for a sequence of Unicode code points. Glyph IDs must be returned in a hb_codepoint_t output parameter.

dynamic_FontGetNominalGlyphsFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetNominalGlyphsFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

count: number of code points to query

-> Word32

firstUnicode: The first Unicode code point to query

-> Word32

unicodeStride: The stride between successive code points

-> Word32

glyphStride: The stride between successive glyph IDs

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Word32, Word32)

Returns: the number of code points processed

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontGetVariationGlyphFuncT

type C_FontGetVariationGlyphFuncT = Ptr FontT -> Ptr () -> Word32 -> Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type FontGetVariationGlyphFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID for a specified Unicode code point followed by a specified Variation Selector code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

type FontGetVariationGlyphFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO (Int32, Word32)

Returns: true if data found, false otherwise

A virtual method for the FontFuncsT of an FontT object.

This method should retrieve the glyph ID for a specified Unicode code point followed by a specified Variation Selector code point. Glyph IDs must be returned in a hb_codepoint_t output parameter.

dynamic_FontGetVariationGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontGetVariationGlyphFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

unicode: The Unicode code point to query

-> Word32

variationSelector: The variation-selector code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m (Int32, Word32)

Returns: true if data found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

FontPaintGlyphFuncT

type C_FontPaintGlyphFuncT = Ptr FontT -> Ptr () -> Word32 -> Ptr PaintFuncsT -> Ptr () -> Word32 -> Word32 -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type FontPaintGlyphFuncT Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> PaintFuncsT

paintFuncs: The paint functions to use

-> Ptr ()

paintData: The data accompanying the paint functions

-> Word32

paletteIndex: The color palette to use

-> Word32

foreground: The foreground color

-> IO () 

A virtual method for the FontFuncsT of an FontT object.

Since: 7.0.0

type FontPaintGlyphFuncT_WithClosures Source #

Arguments

 = FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> PaintFuncsT

paintFuncs: The paint functions to use

-> Ptr ()

paintData: The data accompanying the paint functions

-> Word32

paletteIndex: The color palette to use

-> Word32

foreground: The foreground color

-> Ptr ()

userData: User data pointer passed by the caller

-> IO () 

A virtual method for the FontFuncsT of an FontT object.

Since: 7.0.0

drop_closures_FontPaintGlyphFuncT :: FontPaintGlyphFuncT -> FontPaintGlyphFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_FontPaintGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_FontPaintGlyphFuncT 
-> FontT

font: FontT to work upon

-> Ptr ()

fontData: font user data pointer

-> Word32

glyph: The glyph ID to query

-> PaintFuncsT

paintFuncs: The paint functions to use

-> Ptr ()

paintData: The data accompanying the paint functions

-> Word32

paletteIndex: The color palette to use

-> Word32

foreground: The foreground color

-> Ptr ()

userData: User data pointer passed by the caller

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_FontPaintGlyphFuncT :: MonadIO m => FontPaintGlyphFuncT -> m (GClosure C_FontPaintGlyphFuncT) Source #

Wrap the callback into a GClosure.

mk_FontPaintGlyphFuncT :: C_FontPaintGlyphFuncT -> IO (FunPtr C_FontPaintGlyphFuncT) Source #

Generate a function pointer callable from C code, from a C_FontPaintGlyphFuncT.

PaintColorFuncT

type C_PaintColorFuncT = Ptr PaintFuncsT -> Ptr () -> Int32 -> Word32 -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintColorFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Int32

isForeground: whether the color is the foreground

-> Word32

color: The color to use, unpremultiplied

-> IO () 

A virtual method for the PaintFuncsT to paint a color everywhere within the current clip.

Since: 7.0.0

type PaintColorFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Int32

isForeground: whether the color is the foreground

-> Word32

color: The color to use, unpremultiplied

-> Ptr ()

userData: User data pointer passed to paintFuncsSetColorFunc

-> IO () 

A virtual method for the PaintFuncsT to paint a color everywhere within the current clip.

Since: 7.0.0

drop_closures_PaintColorFuncT :: PaintColorFuncT -> PaintColorFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_PaintColorFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintColorFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Int32

isForeground: whether the color is the foreground

-> Word32

color: The color to use, unpremultiplied

-> Ptr ()

userData: User data pointer passed to paintFuncsSetColorFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintColorFuncT :: MonadIO m => PaintColorFuncT -> m (GClosure C_PaintColorFuncT) Source #

Wrap the callback into a GClosure.

mk_PaintColorFuncT :: C_PaintColorFuncT -> IO (FunPtr C_PaintColorFuncT) Source #

Generate a function pointer callable from C code, from a C_PaintColorFuncT.

PaintCustomPaletteColorFuncT

type C_PaintCustomPaletteColorFuncT = Ptr PaintFuncsT -> Ptr () -> Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type PaintCustomPaletteColorFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

colorIndex: the color index

-> IO (Int32, Word32)

Returns: true if found, false otherwise

A virtual method for the PaintFuncsT to fetch a color from the custom color palette.

Custom palette colors override the colors from the fonts selected color palette. It is not necessary to override all palette entries; for entries that should be taken from the font palette, return false.

This function might get called multiple times, but the custom palette is expected to remain unchanged for duration of a fontPaintGlyph call.

Since: 7.0.0

type PaintCustomPaletteColorFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

colorIndex: the color index

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopGroupFunc

-> IO (Int32, Word32)

Returns: true if found, false otherwise

A virtual method for the PaintFuncsT to fetch a color from the custom color palette.

Custom palette colors override the colors from the fonts selected color palette. It is not necessary to override all palette entries; for entries that should be taken from the font palette, return false.

This function might get called multiple times, but the custom palette is expected to remain unchanged for duration of a fontPaintGlyph call.

Since: 7.0.0

dynamic_PaintCustomPaletteColorFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintCustomPaletteColorFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

colorIndex: the color index

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopGroupFunc

-> m (Int32, Word32)

Returns: true if found, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintImageFuncT

type C_PaintImageFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr BlobT -> Word32 -> Word32 -> Word32 -> CFloat -> Ptr GlyphExtentsT -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type PaintImageFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> BlobT

image: the image data

-> Word32

width: width of the raster image in pixels, or 0

-> Word32

height: height of the raster image in pixels, or 0

-> Word32

format: the image format as a tag

-> Float

slant: the synthetic slant ratio to be applied to the image during rendering

-> Maybe GlyphExtentsT

extents: glyph extents for desired rendering

-> IO Int32

Returns: Whether the operation was successful.

A virtual method for the PaintFuncsT to paint a glyph image.

This method is called for glyphs with image blobs in the CBDT, sbix or SVG tables. The format identifies the kind of data that is contained in image. Possible values include HB_PAINT_IMAGE_FORMAT_PNG, HB_PAINT_IMAGE_FORMAT_SVG and HB_PAINT_IMAGE_FORMAT_BGRA.

The image dimensions and glyph extents are provided if available, and should be used to size and position the image.

Since: 7.0.0

type PaintImageFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> BlobT

image: the image data

-> Word32

width: width of the raster image in pixels, or 0

-> Word32

height: height of the raster image in pixels, or 0

-> Word32

format: the image format as a tag

-> Float

slant: the synthetic slant ratio to be applied to the image during rendering

-> Maybe GlyphExtentsT

extents: glyph extents for desired rendering

-> Ptr ()

userData: User data pointer passed to paintFuncsSetImageFunc

-> IO Int32

Returns: Whether the operation was successful.

A virtual method for the PaintFuncsT to paint a glyph image.

This method is called for glyphs with image blobs in the CBDT, sbix or SVG tables. The format identifies the kind of data that is contained in image. Possible values include HB_PAINT_IMAGE_FORMAT_PNG, HB_PAINT_IMAGE_FORMAT_SVG and HB_PAINT_IMAGE_FORMAT_BGRA.

The image dimensions and glyph extents are provided if available, and should be used to size and position the image.

Since: 7.0.0

drop_closures_PaintImageFuncT :: PaintImageFuncT -> PaintImageFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_PaintImageFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintImageFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> BlobT

image: the image data

-> Word32

width: width of the raster image in pixels, or 0

-> Word32

height: height of the raster image in pixels, or 0

-> Word32

format: the image format as a tag

-> Float

slant: the synthetic slant ratio to be applied to the image during rendering

-> Maybe GlyphExtentsT

extents: glyph extents for desired rendering

-> Ptr ()

userData: User data pointer passed to paintFuncsSetImageFunc

-> m Int32

Returns: Whether the operation was successful.

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintImageFuncT :: MonadIO m => PaintImageFuncT -> m (GClosure C_PaintImageFuncT) Source #

Wrap the callback into a GClosure.

mk_PaintImageFuncT :: C_PaintImageFuncT -> IO (FunPtr C_PaintImageFuncT) Source #

Generate a function pointer callable from C code, from a C_PaintImageFuncT.

PaintLinearGradientFuncT

type C_PaintLinearGradientFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr ColorLineT -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintLinearGradientFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first point

-> Float

y0: Y coordinate of the first point

-> Float

x1: X coordinate of the second point

-> Float

y1: Y coordinate of the second point

-> Float

x2: X coordinate of the third point

-> Float

y2: Y coordinate of the third point

-> IO () 

A virtual method for the PaintFuncsT to paint a linear gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

type PaintLinearGradientFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first point

-> Float

y0: Y coordinate of the first point

-> Float

x1: X coordinate of the second point

-> Float

y1: Y coordinate of the second point

-> Float

x2: X coordinate of the third point

-> Float

y2: Y coordinate of the third point

-> Ptr ()

userData: User data pointer passed to paintFuncsSetLinearGradientFunc

-> IO () 

A virtual method for the PaintFuncsT to paint a linear gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

dynamic_PaintLinearGradientFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintLinearGradientFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first point

-> Float

y0: Y coordinate of the first point

-> Float

x1: X coordinate of the second point

-> Float

y1: Y coordinate of the second point

-> Float

x2: X coordinate of the third point

-> Float

y2: Y coordinate of the third point

-> Ptr ()

userData: User data pointer passed to paintFuncsSetLinearGradientFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintPopClipFuncT

type C_PaintPopClipFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPopClipFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_clip_glyph_func_t or hb_paint_funcs_push_clip_rectangle_func_t vfuncs.

Since: 7.0.0

type PaintPopClipFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopClipFunc

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_clip_glyph_func_t or hb_paint_funcs_push_clip_rectangle_func_t vfuncs.

Since: 7.0.0

drop_closures_PaintPopClipFuncT :: PaintPopClipFuncT -> PaintPopClipFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_PaintPopClipFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPopClipFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopClipFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintPopClipFuncT :: MonadIO m => PaintPopClipFuncT -> m (GClosure C_PaintPopClipFuncT) Source #

Wrap the callback into a GClosure.

mk_PaintPopClipFuncT :: C_PaintPopClipFuncT -> IO (FunPtr C_PaintPopClipFuncT) Source #

Generate a function pointer callable from C code, from a C_PaintPopClipFuncT.

PaintPopGroupFuncT

type C_PaintPopGroupFuncT = Ptr PaintFuncsT -> Ptr () -> CUInt -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPopGroupFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> PaintCompositeModeT

mode: the compositing mode to use

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_group_func_t vfunc.

This call stops the redirection to the intermediate surface, and then composites it on the previous surface, using the compositing mode passed to this call.

Since: 7.0.0

type PaintPopGroupFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> PaintCompositeModeT

mode: the compositing mode to use

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopGroupFunc

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_group_func_t vfunc.

This call stops the redirection to the intermediate surface, and then composites it on the previous surface, using the compositing mode passed to this call.

Since: 7.0.0

drop_closures_PaintPopGroupFuncT :: PaintPopGroupFuncT -> PaintPopGroupFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_PaintPopGroupFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPopGroupFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> PaintCompositeModeT

mode: the compositing mode to use

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopGroupFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintPopGroupFuncT :: MonadIO m => PaintPopGroupFuncT -> m (GClosure C_PaintPopGroupFuncT) Source #

Wrap the callback into a GClosure.

mk_PaintPopGroupFuncT :: C_PaintPopGroupFuncT -> IO (FunPtr C_PaintPopGroupFuncT) Source #

Generate a function pointer callable from C code, from a C_PaintPopGroupFuncT.

PaintPopTransformFuncT

type C_PaintPopTransformFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPopTransformFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_transform_func_t vfunc.

Since: 7.0.0

type PaintPopTransformFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopTransformFunc

-> IO () 

A virtual method for the PaintFuncsT to undo the effect of a prior call to the hb_paint_funcs_push_transform_func_t vfunc.

Since: 7.0.0

dynamic_PaintPopTransformFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPopTransformFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPopTransformFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintPopTransformFuncT :: MonadIO m => PaintPopTransformFuncT -> m (GClosure C_PaintPopTransformFuncT) Source #

Wrap the callback into a GClosure.

PaintPushClipGlyphFuncT

type C_PaintPushClipGlyphFuncT = Ptr PaintFuncsT -> Ptr () -> Word32 -> Ptr FontT -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPushClipGlyphFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

glyph: the glyph ID

-> FontT

font: the font

-> IO () 

A virtual method for the PaintFuncsT to clip subsequent paint calls to the outline of a glyph.

The coordinates of the glyph outline are interpreted according to the current transform.

This clip is applied in addition to the current clip, and remains in effect until a matching call to the hb_paint_funcs_pop_clip_func_t vfunc.

Since: 7.0.0

type PaintPushClipGlyphFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

glyph: the glyph ID

-> FontT

font: the font

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushClipGlyphFunc

-> IO () 

A virtual method for the PaintFuncsT to clip subsequent paint calls to the outline of a glyph.

The coordinates of the glyph outline are interpreted according to the current transform.

This clip is applied in addition to the current clip, and remains in effect until a matching call to the hb_paint_funcs_pop_clip_func_t vfunc.

Since: 7.0.0

dynamic_PaintPushClipGlyphFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPushClipGlyphFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Word32

glyph: the glyph ID

-> FontT

font: the font

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushClipGlyphFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintPushClipRectangleFuncT

type C_PaintPushClipRectangleFuncT = Ptr PaintFuncsT -> Ptr () -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPushClipRectangleFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xmin: min X for the rectangle

-> Float

ymin: min Y for the rectangle

-> Float

xmax: max X for the rectangle

-> Float

ymax: max Y for the rectangle

-> IO () 

A virtual method for the PaintFuncsT to clip subsequent paint calls to a rectangle.

The coordinates of the rectangle are interpreted according to the current transform.

This clip is applied in addition to the current clip, and remains in effect until a matching call to the hb_paint_funcs_pop_clip_func_t vfunc.

Since: 7.0.0

type PaintPushClipRectangleFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xmin: min X for the rectangle

-> Float

ymin: min Y for the rectangle

-> Float

xmax: max X for the rectangle

-> Float

ymax: max Y for the rectangle

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushClipRectangleFunc

-> IO () 

A virtual method for the PaintFuncsT to clip subsequent paint calls to a rectangle.

The coordinates of the rectangle are interpreted according to the current transform.

This clip is applied in addition to the current clip, and remains in effect until a matching call to the hb_paint_funcs_pop_clip_func_t vfunc.

Since: 7.0.0

dynamic_PaintPushClipRectangleFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPushClipRectangleFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xmin: min X for the rectangle

-> Float

ymin: min Y for the rectangle

-> Float

xmax: max X for the rectangle

-> Float

ymax: max Y for the rectangle

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushClipRectangleFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintPushGroupFuncT

type C_PaintPushGroupFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPushGroupFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> IO () 

A virtual method for the PaintFuncsT to use an intermediate surface for subsequent paint calls.

The drawing will be redirected to an intermediate surface until a matching call to the hb_paint_funcs_pop_group_func_t vfunc.

Since: 7.0.0

type PaintPushGroupFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushGroupFunc

-> IO () 

A virtual method for the PaintFuncsT to use an intermediate surface for subsequent paint calls.

The drawing will be redirected to an intermediate surface until a matching call to the hb_paint_funcs_pop_group_func_t vfunc.

Since: 7.0.0

drop_closures_PaintPushGroupFuncT :: PaintPushGroupFuncT -> PaintPushGroupFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_PaintPushGroupFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPushGroupFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushGroupFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_PaintPushGroupFuncT :: MonadIO m => PaintPushGroupFuncT -> m (GClosure C_PaintPushGroupFuncT) Source #

Wrap the callback into a GClosure.

mk_PaintPushGroupFuncT :: C_PaintPushGroupFuncT -> IO (FunPtr C_PaintPushGroupFuncT) Source #

Generate a function pointer callable from C code, from a C_PaintPushGroupFuncT.

PaintPushTransformFuncT

type C_PaintPushTransformFuncT = Ptr PaintFuncsT -> Ptr () -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintPushTransformFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xx: xx component of the transform matrix

-> Float

yx: yx component of the transform matrix

-> Float

xy: xy component of the transform matrix

-> Float

yy: yy component of the transform matrix

-> Float

dx: dx component of the transform matrix

-> Float

dy: dy component of the transform matrix

-> IO () 

A virtual method for the PaintFuncsT to apply a transform to subsequent paint calls.

This transform is applied after the current transform, and remains in effect until a matching call to the hb_paint_funcs_pop_transform_func_t vfunc.

Since: 7.0.0

type PaintPushTransformFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xx: xx component of the transform matrix

-> Float

yx: yx component of the transform matrix

-> Float

xy: xy component of the transform matrix

-> Float

yy: yy component of the transform matrix

-> Float

dx: dx component of the transform matrix

-> Float

dy: dy component of the transform matrix

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushTransformFunc

-> IO () 

A virtual method for the PaintFuncsT to apply a transform to subsequent paint calls.

This transform is applied after the current transform, and remains in effect until a matching call to the hb_paint_funcs_pop_transform_func_t vfunc.

Since: 7.0.0

dynamic_PaintPushTransformFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintPushTransformFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> Float

xx: xx component of the transform matrix

-> Float

yx: yx component of the transform matrix

-> Float

xy: xy component of the transform matrix

-> Float

yy: yy component of the transform matrix

-> Float

dx: dx component of the transform matrix

-> Float

dy: dy component of the transform matrix

-> Ptr ()

userData: User data pointer passed to paintFuncsSetPushTransformFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintRadialGradientFuncT

type C_PaintRadialGradientFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr ColorLineT -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintRadialGradientFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first circle's center

-> Float

y0: Y coordinate of the first circle's center

-> Float

r0: radius of the first circle

-> Float

x1: X coordinate of the second circle's center

-> Float

y1: Y coordinate of the second circle's center

-> Float

r1: radius of the second circle

-> IO () 

A virtual method for the PaintFuncsT to paint a radial gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

type PaintRadialGradientFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first circle's center

-> Float

y0: Y coordinate of the first circle's center

-> Float

r0: radius of the first circle

-> Float

x1: X coordinate of the second circle's center

-> Float

y1: Y coordinate of the second circle's center

-> Float

r1: radius of the second circle

-> Ptr ()

userData: User data pointer passed to paintFuncsSetRadialGradientFunc

-> IO () 

A virtual method for the PaintFuncsT to paint a radial gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

dynamic_PaintRadialGradientFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintRadialGradientFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the first circle's center

-> Float

y0: Y coordinate of the first circle's center

-> Float

r0: radius of the first circle

-> Float

x1: X coordinate of the second circle's center

-> Float

y1: Y coordinate of the second circle's center

-> Float

r1: radius of the second circle

-> Ptr ()

userData: User data pointer passed to paintFuncsSetRadialGradientFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

PaintSweepGradientFuncT

type C_PaintSweepGradientFuncT = Ptr PaintFuncsT -> Ptr () -> Ptr ColorLineT -> CFloat -> CFloat -> CFloat -> CFloat -> Ptr () -> IO () Source #

Type for the callback on the (unwrapped) C side.

type PaintSweepGradientFuncT Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the circle's center

-> Float

y0: Y coordinate of the circle's center

-> Float

startAngle: the start angle, in radians

-> Float

endAngle: the end angle, in radians

-> IO () 

A virtual method for the PaintFuncsT to paint a sweep gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

type PaintSweepGradientFuncT_WithClosures Source #

Arguments

 = PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the circle's center

-> Float

y0: Y coordinate of the circle's center

-> Float

startAngle: the start angle, in radians

-> Float

endAngle: the end angle, in radians

-> Ptr ()

userData: User data pointer passed to paintFuncsSetSweepGradientFunc

-> IO () 

A virtual method for the PaintFuncsT to paint a sweep gradient everywhere within the current clip.

The colorLine object contains information about the colors of the gradients. It is only valid for the duration of the callback, you cannot keep it around.

The coordinates of the points are interpreted according to the current transform.

See the OpenType spec COLR section for details on how the points define the direction of the gradient, and how to interpret the colorLine.

Since: 7.0.0

dynamic_PaintSweepGradientFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_PaintSweepGradientFuncT 
-> PaintFuncsT

funcs: paint functions object

-> Ptr ()

paintData: The data accompanying the paint functions in fontPaintGlyph

-> ColorLineT

colorLine: Color information for the gradient

-> Float

x0: X coordinate of the circle's center

-> Float

y0: Y coordinate of the circle's center

-> Float

startAngle: the start angle, in radians

-> Float

endAngle: the end angle, in radians

-> Ptr ()

userData: User data pointer passed to paintFuncsSetSweepGradientFunc

-> m () 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

ReferenceTableFuncT

type C_ReferenceTableFuncT = Ptr FaceT -> Word32 -> Ptr () -> IO (Ptr BlobT) Source #

Type for the callback on the (unwrapped) C side.

type ReferenceTableFuncT Source #

Arguments

 = FaceT

face: an FaceT to reference table for

-> Word32

tag: the tag of the table to reference

-> IO BlobT

Returns: A pointer to the tag table within face

Callback function for faceCreateForTables.

Since: 0.9.2

type ReferenceTableFuncT_WithClosures Source #

Arguments

 = FaceT

face: an FaceT to reference table for

-> Word32

tag: the tag of the table to reference

-> Ptr ()

userData: User data pointer passed by the caller

-> IO BlobT

Returns: A pointer to the tag table within face

Callback function for faceCreateForTables.

Since: 0.9.2

drop_closures_ReferenceTableFuncT :: ReferenceTableFuncT -> ReferenceTableFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_ReferenceTableFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_ReferenceTableFuncT 
-> FaceT

face: an FaceT to reference table for

-> Word32

tag: the tag of the table to reference

-> Ptr ()

userData: User data pointer passed by the caller

-> m BlobT

Returns: A pointer to the tag table within face

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_ReferenceTableFuncT :: MonadIO m => ReferenceTableFuncT -> m (GClosure C_ReferenceTableFuncT) Source #

Wrap the callback into a GClosure.

mk_ReferenceTableFuncT :: C_ReferenceTableFuncT -> IO (FunPtr C_ReferenceTableFuncT) Source #

Generate a function pointer callable from C code, from a C_ReferenceTableFuncT.

UnicodeCombiningClassFuncT

type C_UnicodeCombiningClassFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr () -> IO CUInt Source #

Type for the callback on the (unwrapped) C side.

type UnicodeCombiningClassFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> IO UnicodeCombiningClassT

Returns: The UnicodeCombiningClassT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Canonical Combining Class (ccc) property for a specified Unicode code point.

type UnicodeCombiningClassFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO UnicodeCombiningClassT

Returns: The UnicodeCombiningClassT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Canonical Combining Class (ccc) property for a specified Unicode code point.

dynamic_UnicodeCombiningClassFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeCombiningClassFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m UnicodeCombiningClassT

Returns: The UnicodeCombiningClassT of unicode

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

UnicodeComposeFuncT

type C_UnicodeComposeFuncT = Ptr UnicodeFuncsT -> Word32 -> Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type UnicodeComposeFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

a: The first code point to compose

-> Word32

b: The second code point to compose

-> IO (Int32, Word32)

Returns: true is a,b composed, false otherwise

A virtual method for the UnicodeFuncsT structure.

This method should compose a sequence of two input Unicode code points by canonical equivalence, returning the composed code point in a hb_codepoint_t output parameter (if successful). The method must return an hb_bool_t indicating the success of the composition.

type UnicodeComposeFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

a: The first code point to compose

-> Word32

b: The second code point to compose

-> Ptr ()

userData: user data pointer passed by the caller

-> IO (Int32, Word32)

Returns: true is a,b composed, false otherwise

A virtual method for the UnicodeFuncsT structure.

This method should compose a sequence of two input Unicode code points by canonical equivalence, returning the composed code point in a hb_codepoint_t output parameter (if successful). The method must return an hb_bool_t indicating the success of the composition.

drop_closures_UnicodeComposeFuncT :: UnicodeComposeFuncT -> UnicodeComposeFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_UnicodeComposeFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeComposeFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

a: The first code point to compose

-> Word32

b: The second code point to compose

-> Ptr ()

userData: user data pointer passed by the caller

-> m (Int32, Word32)

Returns: true is a,b composed, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_UnicodeComposeFuncT :: MonadIO m => UnicodeComposeFuncT -> m (GClosure C_UnicodeComposeFuncT) Source #

Wrap the callback into a GClosure.

mk_UnicodeComposeFuncT :: C_UnicodeComposeFuncT -> IO (FunPtr C_UnicodeComposeFuncT) Source #

Generate a function pointer callable from C code, from a C_UnicodeComposeFuncT.

UnicodeDecomposeCompatibilityFuncT

type C_UnicodeDecomposeCompatibilityFuncT = Ptr UnicodeFuncsT -> Word32 -> Word32 -> Ptr () -> IO Word32 Source #

Type for the callback on the (unwrapped) C side.

type UnicodeDecomposeCompatibilityFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: a Unicode function structure

-> Word32

u: codepoint to decompose

-> Word32

decomposed: address of codepoint array (of length UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into

-> IO Word32

Returns: number of codepoints in the full compatibility decomposition of u, or 0 if no decomposition available.

Deprecated: (Since version 2.0.0)

Fully decompose u to its Unicode compatibility decomposition. The codepoints of the decomposition will be written to decomposed. The complete length of the decomposition will be returned.

If u has no compatibility decomposition, zero should be returned.

The Unicode standard guarantees that a buffer of length UNICODE_MAX_DECOMPOSITION_LEN codepoints will always be sufficient for any compatibility decomposition plus an terminating value of 0. Consequently, decompose must be allocated by the caller to be at least this length. Implementations of this function type must ensure that they do not write past the provided array.

type UnicodeDecomposeCompatibilityFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: a Unicode function structure

-> Word32

u: codepoint to decompose

-> Word32

decomposed: address of codepoint array (of length UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into

-> Ptr ()

userData: user data pointer as passed to unicodeFuncsSetDecomposeCompatibilityFunc

-> IO Word32

Returns: number of codepoints in the full compatibility decomposition of u, or 0 if no decomposition available.

Fully decompose u to its Unicode compatibility decomposition. The codepoints of the decomposition will be written to decomposed. The complete length of the decomposition will be returned.

If u has no compatibility decomposition, zero should be returned.

The Unicode standard guarantees that a buffer of length UNICODE_MAX_DECOMPOSITION_LEN codepoints will always be sufficient for any compatibility decomposition plus an terminating value of 0. Consequently, decompose must be allocated by the caller to be at least this length. Implementations of this function type must ensure that they do not write past the provided array.

dynamic_UnicodeDecomposeCompatibilityFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeDecomposeCompatibilityFuncT 
-> UnicodeFuncsT

ufuncs: a Unicode function structure

-> Word32

u: codepoint to decompose

-> Word32

decomposed: address of codepoint array (of length UNICODE_MAX_DECOMPOSITION_LEN) to write decomposition into

-> Ptr ()

userData: user data pointer as passed to unicodeFuncsSetDecomposeCompatibilityFunc

-> m Word32

Returns: number of codepoints in the full compatibility decomposition of u, or 0 if no decomposition available.

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

UnicodeDecomposeFuncT

type C_UnicodeDecomposeFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr Word32 -> Ptr Word32 -> Ptr () -> IO Int32 Source #

Type for the callback on the (unwrapped) C side.

type UnicodeDecomposeFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

ab: The code point to decompose

-> IO (Int32, Word32, Word32)

Returns: true if ab decomposed, false otherwise

A virtual method for the UnicodeFuncsT structure.

This method should decompose an input Unicode code point, returning the two decomposed code points in hb_codepoint_t output parameters (if successful). The method must return an hb_bool_t indicating the success of the composition.

type UnicodeDecomposeFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

ab: The code point to decompose

-> Ptr ()

userData: user data pointer passed by the caller

-> IO (Int32, Word32, Word32)

Returns: true if ab decomposed, false otherwise

A virtual method for the UnicodeFuncsT structure.

This method should decompose an input Unicode code point, returning the two decomposed code points in hb_codepoint_t output parameters (if successful). The method must return an hb_bool_t indicating the success of the composition.

dynamic_UnicodeDecomposeFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeDecomposeFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

ab: The code point to decompose

-> Ptr ()

userData: user data pointer passed by the caller

-> m (Int32, Word32, Word32)

Returns: true if ab decomposed, false otherwise

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_UnicodeDecomposeFuncT :: MonadIO m => UnicodeDecomposeFuncT -> m (GClosure C_UnicodeDecomposeFuncT) Source #

Wrap the callback into a GClosure.

mk_UnicodeDecomposeFuncT :: C_UnicodeDecomposeFuncT -> IO (FunPtr C_UnicodeDecomposeFuncT) Source #

Generate a function pointer callable from C code, from a C_UnicodeDecomposeFuncT.

UnicodeEastasianWidthFuncT

type C_UnicodeEastasianWidthFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr () -> IO Word32 Source #

Type for the callback on the (unwrapped) C side.

type UnicodeEastasianWidthFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> IO Word32 

Deprecated: (Since version 2.0.0)

A virtual method for the UnicodeFuncsT structure.

type UnicodeEastasianWidthFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Word32 

A virtual method for the UnicodeFuncsT structure.

dynamic_UnicodeEastasianWidthFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeEastasianWidthFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m Word32 

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

UnicodeGeneralCategoryFuncT

type C_UnicodeGeneralCategoryFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr () -> IO CUInt Source #

Type for the callback on the (unwrapped) C side.

type UnicodeGeneralCategoryFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> IO UnicodeGeneralCategoryT

Returns: The UnicodeGeneralCategoryT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the General Category property for a specified Unicode code point.

type UnicodeGeneralCategoryFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO UnicodeGeneralCategoryT

Returns: The UnicodeGeneralCategoryT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the General Category property for a specified Unicode code point.

dynamic_UnicodeGeneralCategoryFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeGeneralCategoryFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m UnicodeGeneralCategoryT

Returns: The UnicodeGeneralCategoryT of unicode

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

UnicodeMirroringFuncT

type C_UnicodeMirroringFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr () -> IO Word32 Source #

Type for the callback on the (unwrapped) C side.

type UnicodeMirroringFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> IO Word32

Returns: The hb_codepoint_t of the Mirroring Glyph for unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Bi-Directional Mirroring Glyph code point for a specified Unicode code point.

<note>Note: If a code point does not have a specified Bi-Directional Mirroring Glyph defined, the method should return the original code point.</note>

type UnicodeMirroringFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO Word32

Returns: The hb_codepoint_t of the Mirroring Glyph for unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Bi-Directional Mirroring Glyph code point for a specified Unicode code point.

<note>Note: If a code point does not have a specified Bi-Directional Mirroring Glyph defined, the method should return the original code point.</note>

dynamic_UnicodeMirroringFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeMirroringFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m Word32

Returns: The hb_codepoint_t of the Mirroring Glyph for unicode

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_UnicodeMirroringFuncT :: MonadIO m => UnicodeMirroringFuncT -> m (GClosure C_UnicodeMirroringFuncT) Source #

Wrap the callback into a GClosure.

mk_UnicodeMirroringFuncT :: C_UnicodeMirroringFuncT -> IO (FunPtr C_UnicodeMirroringFuncT) Source #

Generate a function pointer callable from C code, from a C_UnicodeMirroringFuncT.

UnicodeScriptFuncT

type C_UnicodeScriptFuncT = Ptr UnicodeFuncsT -> Word32 -> Ptr () -> IO CUInt Source #

Type for the callback on the (unwrapped) C side.

type UnicodeScriptFuncT Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> IO ScriptT

Returns: The ScriptT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Script property for a specified Unicode code point.

type UnicodeScriptFuncT_WithClosures Source #

Arguments

 = UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> IO ScriptT

Returns: The ScriptT of unicode

A virtual method for the UnicodeFuncsT structure.

This method should retrieve the Script property for a specified Unicode code point.

drop_closures_UnicodeScriptFuncT :: UnicodeScriptFuncT -> UnicodeScriptFuncT_WithClosures Source #

A simple wrapper that ignores the closure arguments.

dynamic_UnicodeScriptFuncT Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> FunPtr C_UnicodeScriptFuncT 
-> UnicodeFuncsT

ufuncs: A Unicode-functions structure

-> Word32

unicode: The code point to query

-> Ptr ()

userData: User data pointer passed by the caller

-> m ScriptT

Returns: The ScriptT of unicode

Given a pointer to a foreign C function, wrap it into a function callable from Haskell.

genClosure_UnicodeScriptFuncT :: MonadIO m => UnicodeScriptFuncT -> m (GClosure C_UnicodeScriptFuncT) Source #

Wrap the callback into a GClosure.

mk_UnicodeScriptFuncT :: C_UnicodeScriptFuncT -> IO (FunPtr C_UnicodeScriptFuncT) Source #

Generate a function pointer callable from C code, from a C_UnicodeScriptFuncT.