|  |  |  | Pango Reference Manual |  | 
|---|---|---|---|---|
                    PangoEngineLang;
                    PangoEngineLangClass;
#define             PANGO_ENGINE_TYPE_LANG
#define             PANGO_ENGINE_LANG_DEFINE_TYPE       (name, prefix, class_init, instance_init)
The language engines are rendering-system independent
engines that determine line, word, and character breaks for character strings.
These engines are used in pango_break().
typedef struct _PangoEngineLang PangoEngineLang;
The PangoEngineLang class is implemented by engines that customize the rendering-system independent part of the Pango pipeline for a particular script or language. For instance, a custom PangoEngineLang could be provided for Thai to implement the dictionary-based word boundary lookups needed for that language.
typedef struct {
  void (*script_break) (PangoEngineLang *engine,
			const char    *text,
			int            len,
			PangoAnalysis *analysis,
			PangoLogAttr  *attrs,
			int            attrs_len);
} PangoEngineLangClass;
Class structure for PangoEngineLang
| 
 | Provides a custom implementation of pango_break().
IfNULL,pango_default_break()is used instead. If notNULL, for
Pango versions before 1.16 (module interface version before 1.6.0),
this was called instead ofpango_default_break(), but in newer versions,pango_default_break()is always called and this is called after that to
allow tailoring the breaking results. | 
#define PANGO_ENGINE_TYPE_LANG "PangoEngineLang"
A string constant defining the engine type for language engines. These engines derive from PangoEngineLang.
#define PANGO_ENGINE_LANG_DEFINE_TYPE(name, prefix, class_init, instance_init)
Outputs the necessary code for GObject type registration for a PangoEngineLang class defined in a module. Two static symbols are defined.
static GTypeprefix_type; static voidprefix_register_type (GTypeModule module);
The prefix, _register_type()script_engine_init() function for
each type that your module implements, and then your script_engine_create()
function can create instances of the object as follows:
 PangoEngine *engine = g_object_new (prefix_type, NULL);