Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
hb-draw.h File Reference
#include "hb.h"

Go to the source code of this file.

Data Structures

struct  hb_draw_state_t
 

Macros

#define HB_DRAW_STATE_DEFAULT   {0, 0.f, 0.f, 0.f, 0.f, {0.}, {0.}, {0.}}
 

Typedefs

typedef HB_BEGIN_DECLS struct hb_draw_state_t hb_draw_state_t
 
typedef struct hb_draw_funcs_t hb_draw_funcs_t
 
typedef void(* hb_draw_move_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y, void *user_data)
 
typedef void(* hb_draw_line_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y, void *user_data)
 
typedef void(* hb_draw_quadratic_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control_x, float control_y, float to_x, float to_y, void *user_data)
 
typedef void(* hb_draw_cubic_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control1_x, float control1_y, float control2_x, float control2_y, float to_x, float to_y, void *user_data)
 
typedef void(* hb_draw_close_path_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, void *user_data)
 

Functions

HB_EXTERN void hb_draw_funcs_set_move_to_func (hb_draw_funcs_t *dfuncs, hb_draw_move_to_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_draw_funcs_set_line_to_func (hb_draw_funcs_t *dfuncs, hb_draw_line_to_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_draw_funcs_set_quadratic_to_func (hb_draw_funcs_t *dfuncs, hb_draw_quadratic_to_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_draw_funcs_set_cubic_to_func (hb_draw_funcs_t *dfuncs, hb_draw_cubic_to_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN void hb_draw_funcs_set_close_path_func (hb_draw_funcs_t *dfuncs, hb_draw_close_path_func_t func, void *user_data, hb_destroy_func_t destroy)
 
HB_EXTERN hb_draw_funcs_thb_draw_funcs_create (void)
 
HB_EXTERN hb_draw_funcs_thb_draw_funcs_get_empty (void)
 
HB_EXTERN hb_draw_funcs_thb_draw_funcs_reference (hb_draw_funcs_t *dfuncs)
 
HB_EXTERN void hb_draw_funcs_destroy (hb_draw_funcs_t *dfuncs)
 
HB_EXTERN hb_bool_t hb_draw_funcs_set_user_data (hb_draw_funcs_t *dfuncs, hb_user_data_key_t *key, void *data, hb_destroy_func_t destroy, hb_bool_t replace)
 
HB_EXTERN void * hb_draw_funcs_get_user_data (const hb_draw_funcs_t *dfuncs, hb_user_data_key_t *key)
 
HB_EXTERN void hb_draw_funcs_make_immutable (hb_draw_funcs_t *dfuncs)
 
HB_EXTERN hb_bool_t hb_draw_funcs_is_immutable (hb_draw_funcs_t *dfuncs)
 
HB_EXTERN void hb_draw_move_to (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y)
 
HB_EXTERN void hb_draw_line_to (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y)
 
HB_EXTERN void hb_draw_quadratic_to (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control_x, float control_y, float to_x, float to_y)
 
HB_EXTERN void hb_draw_cubic_to (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control1_x, float control1_y, float control2_x, float control2_y, float to_x, float to_y)
 
HB_EXTERN void hb_draw_close_path (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st)
 

Macro Definition Documentation

◆ HB_DRAW_STATE_DEFAULT

#define HB_DRAW_STATE_DEFAULT   {0, 0.f, 0.f, 0.f, 0.f, {0.}, {0.}, {0.}}

HB_DRAW_STATE_DEFAULT:

The default hb_draw_state_t at the start of glyph drawing.

Definition at line 73 of file hb-draw.h.

Typedef Documentation

◆ hb_draw_close_path_func_t

typedef void(* hb_draw_close_path_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, void *user_data)

hb_draw_close_path_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @user_data: User data pointer passed to hb_draw_funcs_set_close_path_func()

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

Since: 4.0.0

Definition at line 194 of file hb-draw.h.

◆ hb_draw_cubic_to_func_t

typedef void(* hb_draw_cubic_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control1_x, float control1_y, float control2_x, float control2_y, float to_x, float to_y, void *user_data)

hb_draw_cubic_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @control1_x: X component of first control point @control1_y: Y component of first control point @control2_x: X component of second control point @control2_y: Y component of second control point @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_cubic_to_func()

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

Since: 4.0.0

Definition at line 174 of file hb-draw.h.

◆ hb_draw_funcs_t

hb_draw_funcs_t:

Glyph draw callbacks.

hb_draw_move_to_func_t, hb_draw_line_to_func_t and hb_draw_cubic_to_func_t calls are necessary to be defined but we translate hb_draw_quadratic_to_func_t calls to hb_draw_cubic_to_func_t if the callback isn't defined.

Since: 4.0.0

Definition at line 89 of file hb-draw.h.

◆ hb_draw_line_to_func_t

typedef void(* hb_draw_line_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y, void *user_data)

hb_draw_line_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_line_to_func()

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

Since: 4.0.0

Definition at line 127 of file hb-draw.h.

◆ hb_draw_move_to_func_t

typedef void(* hb_draw_move_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float to_x, float to_y, void *user_data)

hb_draw_move_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_move_to_func()

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

Since: 4.0.0

Definition at line 107 of file hb-draw.h.

◆ hb_draw_quadratic_to_func_t

typedef void(* hb_draw_quadratic_to_func_t) (hb_draw_funcs_t *dfuncs, void *draw_data, hb_draw_state_t *st, float control_x, float control_y, float to_x, float to_y, void *user_data)

hb_draw_quadratic_to_func_t: @dfuncs: draw functions object @draw_data: The data accompanying the draw functions in hb_font_draw_glyph() @st: current draw state @control_x: X component of control point @control_y: Y component of control point @to_x: X component of target point @to_y: Y component of target point @user_data: User data pointer passed to hb_draw_funcs_set_quadratic_to_func()

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

Since: 4.0.0

Definition at line 149 of file hb-draw.h.

◆ hb_draw_state_t

typedef HB_BEGIN_DECLS struct hb_draw_state_t hb_draw_state_t

hb_draw_state_t @path_open: Whether there is an open path @path_start_x: X component of the start of current path @path_start_y: Y component of the start of current path @current_x: X component of current point @current_y: Y component of current point

Current drawing state.

Since: 4.0.0

Function Documentation

◆ hb_draw_close_path()

HB_EXTERN void hb_draw_close_path ( hb_draw_funcs_t * dfuncs,
void * draw_data,
hb_draw_state_t * st )

◆ hb_draw_cubic_to()

HB_EXTERN void hb_draw_cubic_to ( hb_draw_funcs_t * dfuncs,
void * draw_data,
hb_draw_state_t * st,
float control1_x,
float control1_y,
float control2_x,
float control2_y,
float to_x,
float to_y )

◆ hb_draw_funcs_create()

HB_EXTERN hb_draw_funcs_t * hb_draw_funcs_create ( void )

◆ hb_draw_funcs_destroy()

HB_EXTERN void hb_draw_funcs_destroy ( hb_draw_funcs_t * dfuncs)

◆ hb_draw_funcs_get_empty()

HB_EXTERN hb_draw_funcs_t * hb_draw_funcs_get_empty ( void )

◆ hb_draw_funcs_get_user_data()

HB_EXTERN void * hb_draw_funcs_get_user_data ( const hb_draw_funcs_t * dfuncs,
hb_user_data_key_t * key )

◆ hb_draw_funcs_is_immutable()

HB_EXTERN hb_bool_t hb_draw_funcs_is_immutable ( hb_draw_funcs_t * dfuncs)

◆ hb_draw_funcs_make_immutable()

HB_EXTERN void hb_draw_funcs_make_immutable ( hb_draw_funcs_t * dfuncs)

◆ hb_draw_funcs_reference()

HB_EXTERN hb_draw_funcs_t * hb_draw_funcs_reference ( hb_draw_funcs_t * dfuncs)

◆ hb_draw_funcs_set_close_path_func()

HB_EXTERN void hb_draw_funcs_set_close_path_func ( hb_draw_funcs_t * dfuncs,
hb_draw_close_path_func_t func,
void * user_data,
hb_destroy_func_t destroy )

hb_draw_funcs_set_close_path_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): close-path callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets close-path callback to the draw functions object.

Since: 4.0.0

◆ hb_draw_funcs_set_cubic_to_func()

HB_EXTERN void hb_draw_funcs_set_cubic_to_func ( hb_draw_funcs_t * dfuncs,
hb_draw_cubic_to_func_t func,
void * user_data,
hb_destroy_func_t destroy )

hb_draw_funcs_set_cubic_to_func: @dfuncs: draw functions @func: (closure user_data) (destroy destroy) (scope notified): cubic-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets cubic-to callback to the draw functions object.

Since: 4.0.0

◆ hb_draw_funcs_set_line_to_func()

HB_EXTERN void hb_draw_funcs_set_line_to_func ( hb_draw_funcs_t * dfuncs,
hb_draw_line_to_func_t func,
void * user_data,
hb_destroy_func_t destroy )

hb_draw_funcs_set_line_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): line-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets line-to callback to the draw functions object.

Since: 4.0.0

◆ hb_draw_funcs_set_move_to_func()

HB_EXTERN void hb_draw_funcs_set_move_to_func ( hb_draw_funcs_t * dfuncs,
hb_draw_move_to_func_t func,
void * user_data,
hb_destroy_func_t destroy )

hb_draw_funcs_set_move_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): move-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets move-to callback to the draw functions object.

Since: 4.0.0

◆ hb_draw_funcs_set_quadratic_to_func()

HB_EXTERN void hb_draw_funcs_set_quadratic_to_func ( hb_draw_funcs_t * dfuncs,
hb_draw_quadratic_to_func_t func,
void * user_data,
hb_destroy_func_t destroy )

hb_draw_funcs_set_quadratic_to_func: @dfuncs: draw functions object @func: (closure user_data) (destroy destroy) (scope notified): quadratic-to callback @user_data: Data to pass to @func @destroy: (nullable): The function to call when @user_data is not needed anymore

Sets quadratic-to callback to the draw functions object.

Since: 4.0.0

◆ hb_draw_funcs_set_user_data()

HB_EXTERN hb_bool_t hb_draw_funcs_set_user_data ( hb_draw_funcs_t * dfuncs,
hb_user_data_key_t * key,
void * data,
hb_destroy_func_t destroy,
hb_bool_t replace )

◆ hb_draw_line_to()

HB_EXTERN void hb_draw_line_to ( hb_draw_funcs_t * dfuncs,
void * draw_data,
hb_draw_state_t * st,
float to_x,
float to_y )

◆ hb_draw_move_to()

HB_EXTERN void hb_draw_move_to ( hb_draw_funcs_t * dfuncs,
void * draw_data,
hb_draw_state_t * st,
float to_x,
float to_y )

◆ hb_draw_quadratic_to()

HB_EXTERN void hb_draw_quadratic_to ( hb_draw_funcs_t * dfuncs,
void * draw_data,
hb_draw_state_t * st,
float control_x,
float control_y,
float to_x,
float to_y )