Release 0.41.92
[vala-gnome.git] / vapi / pango.vapi
blob6589df75c9bea6a0aec88b38cb27ef461d490ce8
1 /* pango.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Pango", gir_namespace = "Pango", gir_version = "1.0", lower_case_cprefix = "pango_")]
4 namespace Pango {
5         namespace Scale {
6                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_LARGE")]
7                 public const double LARGE;
8                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_MEDIUM")]
9                 public const double MEDIUM;
10                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_SMALL")]
11                 public const double SMALL;
12                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_XX_LARGE")]
13                 public const double XX_LARGE;
14                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_XX_SMALL")]
15                 public const double XX_SMALL;
16                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_X_LARGE")]
17                 public const double X_LARGE;
18                 [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE_X_SMALL")]
19                 public const double X_SMALL;
20         }
21         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
22         [Compact]
23         public class AttrClass {
24                 public GLib.Callback copy;
25                 public GLib.Callback destroy;
26                 public GLib.Callback equal;
27                 public Pango.AttrType type;
28         }
29         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
30         [Compact]
31         public class AttrColor : Pango.Attribute {
32                 public Pango.Color color;
33         }
34         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
35         [Compact]
36         public class AttrFloat : Pango.Attribute {
37                 public double value;
38         }
39         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
40         [Compact]
41         public class AttrFontDesc : Pango.Attribute {
42                 public weak Pango.FontDescription desc;
43                 [CCode (has_construct_function = false, type = "PangoAttribute*")]
44                 public AttrFontDesc (Pango.FontDescription desc);
45         }
46         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
47         [Compact]
48         public class AttrInt : Pango.Attribute {
49                 public int value;
50         }
51         [CCode (cheader_filename = "pango/pango.h", free_function = "pango_attr_iterator_destroy", has_type_id = false)]
52         [Compact]
53         public class AttrIterator {
54                 public Pango.AttrIterator copy ();
55                 public void destroy ();
56                 public unowned Pango.Attribute? @get (Pango.AttrType type);
57                 [Version (since = "1.2")]
58                 public GLib.SList<Pango.Attribute> get_attrs ();
59                 public void get_font (Pango.FontDescription desc, Pango.Language? language, owned GLib.SList<Pango.Attribute>? extra_attrs);
60                 public bool next ();
61                 public void range (out int start, out int end);
62         }
63         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
64         [Compact]
65         public class AttrLanguage : Pango.Attribute {
66                 public weak Pango.Language value;
67                 [CCode (has_construct_function = false, type = "PangoAttribute*")]
68                 public AttrLanguage (Pango.Language language);
69         }
70         [CCode (cheader_filename = "pango/pango.h", ref_function = "pango_attr_list_ref", type_id = "pango_attr_list_get_type ()", unref_function = "pango_attr_list_unref")]
71         [Compact]
72         public class AttrList {
73                 [CCode (has_construct_function = false)]
74                 public AttrList ();
75                 public void change (owned Pango.Attribute attr);
76                 public Pango.AttrList? copy ();
77                 [Version (since = "1.2")]
78                 public Pango.AttrList? filter (Pango.AttrFilterFunc func);
79                 public Pango.AttrIterator get_iterator ();
80                 public void insert (owned Pango.Attribute attr);
81                 public void insert_before (owned Pango.Attribute attr);
82                 [Version (since = "1.10")]
83                 public unowned Pango.AttrList @ref ();
84                 public void splice (Pango.AttrList other, int pos, int len);
85                 public void unref ();
86         }
87         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
88         [Compact]
89         public class AttrShape<T> : Pango.Attribute {
90                 public weak Pango.AttrDataCopyFunc<T> copy_func;
91                 public T data;
92                 public weak GLib.DestroyNotify destroy_func;
93                 public Pango.Rectangle ink_rect;
94                 public Pango.Rectangle logical_rect;
95                 [CCode (has_construct_function = false, type = "PangoAttribute*")]
96                 public AttrShape (Pango.Rectangle ink_rect, Pango.Rectangle logical_rect);
97                 [CCode (has_construct_function = false, simple_generics = true, type = "PangoAttribute*")]
98                 public AttrShape.with_data (Pango.Rectangle ink_rect, Pango.Rectangle logical_rect, owned T data, Pango.AttrDataCopyFunc<T> copy_func);
99         }
100         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
101         [Compact]
102         public class AttrSize : Pango.Attribute {
103                 public uint absolute;
104                 public int size;
105                 [CCode (has_construct_function = false, type = "PangoAttribute*")]
106                 public AttrSize (int size);
107         }
108         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
109         [Compact]
110         public class AttrString : Pango.Attribute {
111                 public weak string value;
112         }
113         [CCode (cheader_filename = "pango/pango.h", free_function = "pango_attribute_destroy", has_type_id = false)]
114         [Compact]
115         public class Attribute {
116                 public uint end_index;
117                 public weak Pango.AttrClass klass;
118                 public uint start_index;
119                 public Pango.Attribute copy ();
120                 public void destroy ();
121                 public bool equal (Pango.Attribute attr2);
122                 [Version (since = "1.20")]
123                 public void init (Pango.AttrClass klass);
124         }
125         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_context_get_type ()")]
126         public class Context : GLib.Object {
127                 [CCode (has_construct_function = false)]
128                 public Context ();
129                 [Version (since = "1.32.4")]
130                 public void changed ();
131                 public Pango.Direction get_base_dir ();
132                 [Version (since = "1.16")]
133                 public Pango.Gravity get_base_gravity ();
134                 public unowned Pango.FontDescription get_font_description ();
135                 [Version (since = "1.6")]
136                 public unowned Pango.FontMap get_font_map ();
137                 [Version (since = "1.16")]
138                 public Pango.Gravity get_gravity ();
139                 [Version (since = "1.16")]
140                 public Pango.GravityHint get_gravity_hint ();
141                 public Pango.Language get_language ();
142                 [Version (since = "1.6")]
143                 public unowned Pango.Matrix? get_matrix ();
144                 public Pango.FontMetrics get_metrics (Pango.FontDescription? desc, Pango.Language? language);
145                 [Version (since = "1.32.4")]
146                 public uint get_serial ();
147                 public void list_families ([CCode (array_length_cname = "n_families", array_length_pos = 1.1)] out (unowned Pango.FontFamily)[] families);
148                 public Pango.Font? load_font (Pango.FontDescription desc);
149                 public Pango.Fontset? load_fontset (Pango.FontDescription desc, Pango.Language language);
150                 public void set_base_dir (Pango.Direction direction);
151                 [Version (since = "1.16")]
152                 public void set_base_gravity (Pango.Gravity gravity);
153                 public void set_font_description (Pango.FontDescription desc);
154                 public void set_font_map (Pango.FontMap font_map);
155                 [Version (since = "1.16")]
156                 public void set_gravity_hint (Pango.GravityHint hint);
157                 public void set_language (Pango.Language language);
158                 [Version (since = "1.6")]
159                 public void set_matrix (Pango.Matrix? matrix);
160         }
161         [CCode (cheader_filename = "pango/pango.h", has_type_id = false, ref_function = "pango_coverage_ref", unref_function = "pango_coverage_unref")]
162         [Compact]
163         public class Coverage {
164                 [CCode (has_construct_function = false)]
165                 public Coverage ();
166                 public Pango.Coverage copy ();
167                 public static Pango.Coverage from_bytes (uint8[] bytes);
168                 public Pango.CoverageLevel @get (int index_);
169                 public void max (Pango.Coverage other);
170                 public void @set (int index_, Pango.CoverageLevel level);
171                 public void to_bytes ([CCode (array_length_cname = "n_bytes", array_length_pos = 1.1)] out uint8[] bytes);
172                 public void unref ();
173         }
174         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_engine_get_type ()")]
175         [Version (deprecated = true, deprecated_since = "1.38")]
176         public abstract class Engine : GLib.Object {
177                 [CCode (has_construct_function = false)]
178                 protected Engine ();
179         }
180         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_engine_lang_get_type ()")]
181         [Version (deprecated = true, deprecated_since = "1.38")]
182         public abstract class EngineLang : Pango.Engine {
183                 [CCode (has_construct_function = false)]
184                 protected EngineLang ();
185                 [NoWrapper]
186                 public virtual void script_break (string text, int len, Pango.Analysis analysis, Pango.LogAttr attrs, int attrs_len);
187         }
188         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_engine_shape_get_type ()")]
189         [Version (deprecated = true, deprecated_since = "1.38")]
190         public abstract class EngineShape : Pango.Engine {
191                 [CCode (has_construct_function = false)]
192                 protected EngineShape ();
193                 [NoWrapper]
194                 public virtual Pango.CoverageLevel covers (Pango.Font font, Pango.Language language, unichar wc);
195                 [NoWrapper]
196                 public virtual void script_shape (Pango.Font font, string item_text, uint item_length, Pango.Analysis analysis, Pango.GlyphString glyphs, string paragraph_text, uint paragraph_length);
197         }
198         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_font_get_type ()")]
199         public abstract class Font : GLib.Object {
200                 [CCode (has_construct_function = false)]
201                 protected Font ();
202                 public virtual Pango.FontDescription describe ();
203                 [NoWrapper]
204                 public virtual Pango.FontDescription describe_absolute ();
205                 [Version (since = "1.14")]
206                 public Pango.FontDescription describe_with_absolute_size ();
207                 public static void descriptions_free ([CCode (array_length_cname = "n_descs", array_length_pos = 1.1)] owned Pango.FontDescription[]? descs);
208                 public virtual unowned Pango.EngineShape find_shaper (Pango.Language language, uint32 ch);
209                 public virtual Pango.Coverage get_coverage (Pango.Language language);
210                 [Version (since = "1.10")]
211                 public virtual unowned Pango.FontMap? get_font_map ();
212                 public virtual void get_glyph_extents (Pango.Glyph glyph, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
213                 public virtual Pango.FontMetrics get_metrics (Pango.Language? language);
214         }
215         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_font_description_get_type ()")]
216         [Compact]
217         public class FontDescription {
218                 [CCode (has_construct_function = false)]
219                 public FontDescription ();
220                 public bool better_match (Pango.FontDescription? old_match, Pango.FontDescription new_match);
221                 public Pango.FontDescription? copy ();
222                 public Pango.FontDescription? copy_static ();
223                 public bool equal (Pango.FontDescription desc2);
224                 public void free ();
225                 public static Pango.FontDescription from_string (string str);
226                 public unowned string? get_family ();
227                 [Version (since = "1.16")]
228                 public Pango.Gravity get_gravity ();
229                 public Pango.FontMask get_set_fields ();
230                 public int get_size ();
231                 [Version (since = "1.8")]
232                 public bool get_size_is_absolute ();
233                 public Pango.Stretch get_stretch ();
234                 public Pango.Style get_style ();
235                 public Pango.Variant get_variant ();
236                 [Version (since = "1.42")]
237                 public unowned string? get_variations ();
238                 public Pango.Weight get_weight ();
239                 public uint hash ();
240                 public void merge (Pango.FontDescription? desc_to_merge, bool replace_existing);
241                 public void merge_static (Pango.FontDescription desc_to_merge, bool replace_existing);
242                 [Version (since = "1.8")]
243                 public void set_absolute_size (double size);
244                 public void set_family (string family);
245                 public void set_family_static (string family);
246                 [Version (since = "1.16")]
247                 public void set_gravity (Pango.Gravity gravity);
248                 public void set_size (int size);
249                 public void set_stretch (Pango.Stretch stretch);
250                 public void set_style (Pango.Style style);
251                 public void set_variant (Pango.Variant variant);
252                 [Version (since = "1.42")]
253                 public void set_variations (string settings);
254                 [Version (since = "1.42")]
255                 public void set_variations_static (string settings);
256                 public void set_weight (Pango.Weight weight);
257                 public string to_filename ();
258                 public string to_string ();
259                 public void unset_fields (Pango.FontMask to_unset);
260         }
261         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_font_face_get_type ()")]
262         public abstract class FontFace : GLib.Object {
263                 [CCode (has_construct_function = false)]
264                 protected FontFace ();
265                 public virtual Pango.FontDescription describe ();
266                 public virtual unowned string get_face_name ();
267                 [Version (since = "1.18")]
268                 public virtual bool is_synthesized ();
269                 [Version (since = "1.4")]
270                 public virtual void list_sizes ([CCode (array_length_cname = "n_sizes", array_length_pos = 1.1)] out int[]? sizes);
271         }
272         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_font_family_get_type ()")]
273         public abstract class FontFamily : GLib.Object {
274                 [CCode (has_construct_function = false)]
275                 protected FontFamily ();
276                 public virtual unowned string get_name ();
277                 [Version (since = "1.4")]
278                 public virtual bool is_monospace ();
279                 public virtual void list_faces ([CCode (array_length_cname = "n_faces", array_length_pos = 1.1)] out (unowned Pango.FontFace)[] faces);
280         }
281         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_font_map_get_type ()")]
282         public abstract class FontMap : GLib.Object {
283                 [CCode (has_construct_function = false)]
284                 protected FontMap ();
285                 [Version (since = "1.34")]
286                 public virtual void changed ();
287                 [Version (since = "1.22")]
288                 public Pango.Context create_context ();
289                 [Version (since = "1.32.4")]
290                 public virtual uint get_serial ();
291                 [Version (deprecated = true, deprecated_since = "1.38", since = "1.4")]
292                 public unowned string get_shape_engine_type ();
293                 public virtual void list_families ([CCode (array_length_cname = "n_families", array_length_pos = 1.1)] out (unowned Pango.FontFamily)[] families);
294                 public virtual Pango.Font? load_font (Pango.Context context, Pango.FontDescription desc);
295                 public virtual Pango.Fontset? load_fontset (Pango.Context context, Pango.FontDescription desc, Pango.Language language);
296         }
297         [CCode (cheader_filename = "pango/pango.h", ref_function = "pango_font_metrics_ref", type_id = "pango_font_metrics_get_type ()", unref_function = "pango_font_metrics_unref")]
298         [Compact]
299         public class FontMetrics {
300                 [CCode (has_construct_function = false)]
301                 public FontMetrics ();
302                 public int get_approximate_char_width ();
303                 public int get_approximate_digit_width ();
304                 public int get_ascent ();
305                 public int get_descent ();
306                 [Version (since = "1.6")]
307                 public int get_strikethrough_position ();
308                 [Version (since = "1.6")]
309                 public int get_strikethrough_thickness ();
310                 [Version (since = "1.6")]
311                 public int get_underline_position ();
312                 [Version (since = "1.6")]
313                 public int get_underline_thickness ();
314                 public unowned Pango.FontMetrics? @ref ();
315                 public void unref ();
316         }
317         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_fontset_get_type ()")]
318         public abstract class Fontset : GLib.Object {
319                 [CCode (has_construct_function = false)]
320                 protected Fontset ();
321                 [Version (since = "1.4")]
322                 public virtual void @foreach (Pango.FontsetForeachFunc func);
323                 public virtual Pango.Font get_font (uint wc);
324                 [NoWrapper]
325                 public virtual Pango.Language get_language ();
326                 public virtual Pango.FontMetrics get_metrics ();
327         }
328         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_fontset_simple_get_type ()")]
329         public class FontsetSimple : Pango.Fontset {
330                 [CCode (has_construct_function = false)]
331                 public FontsetSimple (Pango.Language language);
332                 public void append (Pango.Font font);
333                 public int size ();
334         }
335         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_glyph_item_get_type ()")]
336         [Compact]
337         public class GlyphItem {
338                 public weak Pango.GlyphString glyphs;
339                 public weak Pango.Item item;
340                 [Version (since = "1.2")]
341                 public GLib.SList<Pango.GlyphItem> apply_attrs (string text, Pango.AttrList list);
342                 [Version (since = "1.20")]
343                 public Pango.GlyphItem? copy ();
344                 [Version (since = "1.6")]
345                 public void free ();
346                 [Version (since = "1.26")]
347                 public void get_logical_widths (string text, [CCode (array_length = false)] int[] logical_widths);
348                 [Version (since = "1.6")]
349                 public void letter_space (string text, [CCode (array_length = false)] Pango.LogAttr[] log_attrs, int letter_spacing);
350                 [Version (since = "1.2")]
351                 public Pango.GlyphItem split (string text, int split_index);
352         }
353         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_glyph_string_get_type ()")]
354         [Compact]
355         public class GlyphString {
356                 [CCode (array_length_cname = "num_glyphs")]
357                 public Pango.GlyphInfo[] glyphs;
358                 [CCode (array_length_cname = "num_glyphs")]
359                 public int[] log_clusters;
360                 public int num_glyphs;
361                 [CCode (has_construct_function = false)]
362                 public GlyphString ();
363                 public Pango.GlyphString? copy ();
364                 public void extents (Pango.Font font, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
365                 public void extents_range (int start, int end, Pango.Font font, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
366                 public void free ();
367                 public void get_logical_widths (string text, int length, int embedding_level, [CCode (array_length = false)] int[] logical_widths);
368                 [Version (since = "1.14")]
369                 public int get_width ();
370                 public void index_to_x (string text, int length, Pango.Analysis analysis, int index_, bool trailing, out int x_pos);
371                 public void set_size (int new_len);
372                 public void x_to_index (string text, int length, Pango.Analysis analysis, int x_pos, out int index_, out int trailing);
373         }
374         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_item_get_type ()")]
375         [Compact]
376         public class Item {
377                 public Pango.Analysis analysis;
378                 public int length;
379                 public int num_chars;
380                 public int offset;
381                 [CCode (has_construct_function = false)]
382                 public Item ();
383                 public Pango.Item? copy ();
384                 public void free ();
385                 public Pango.Item split (int split_index, int split_offset);
386         }
387         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_language_get_type ()")]
388         [Compact]
389         public class Language {
390                 public static unowned Pango.Language? from_string (string? language);
391                 [Version (since = "1.16")]
392                 public static unowned Pango.Language get_default ();
393                 public unowned string get_sample_string ();
394                 [CCode (array_length_pos = 0.1)]
395                 [Version (since = "1.22")]
396                 public unowned Pango.Script[]? get_scripts ();
397                 [Version (since = "1.4")]
398                 public bool includes_script (Pango.Script script);
399                 public bool matches (string range_list);
400                 public unowned string to_string ();
401         }
402         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_layout_get_type ()")]
403         public class Layout : GLib.Object {
404                 [CCode (has_construct_function = false)]
405                 public Layout (Pango.Context context);
406                 public void context_changed ();
407                 public Pango.Layout copy ();
408                 public Pango.Alignment get_alignment ();
409                 public unowned Pango.AttrList get_attributes ();
410                 [Version (since = "1.4")]
411                 public bool get_auto_dir ();
412                 [Version (since = "1.22")]
413                 public int get_baseline ();
414                 [Version (since = "1.30")]
415                 public int get_character_count ();
416                 public unowned Pango.Context get_context ();
417                 public void get_cursor_pos (int index_, out Pango.Rectangle strong_pos, out Pango.Rectangle weak_pos);
418                 [Version (since = "1.6")]
419                 public Pango.EllipsizeMode get_ellipsize ();
420                 public void get_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
421                 [Version (since = "1.8")]
422                 public unowned Pango.FontDescription? get_font_description ();
423                 [Version (since = "1.20")]
424                 public int get_height ();
425                 public int get_indent ();
426                 public Pango.LayoutIter get_iter ();
427                 public bool get_justify ();
428                 public unowned Pango.LayoutLine? get_line (int line);
429                 public int get_line_count ();
430                 [Version (since = "1.16")]
431                 public unowned Pango.LayoutLine? get_line_readonly (int line);
432                 public unowned GLib.SList<Pango.LayoutLine> get_lines ();
433                 [Version (since = "1.16")]
434                 public unowned GLib.SList<Pango.LayoutLine> get_lines_readonly ();
435                 public void get_log_attrs ([CCode (array_length_cname = "n_attrs", array_length_pos = 1.1)] out Pango.LogAttr[] attrs);
436                 [CCode (array_length_pos = 0.1)]
437                 [Version (since = "1.30")]
438                 public unowned Pango.LogAttr[] get_log_attrs_readonly ();
439                 public void get_pixel_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
440                 public void get_pixel_size (out int width, out int height);
441                 [Version (since = "1.32.4")]
442                 public uint get_serial ();
443                 public bool get_single_paragraph_mode ();
444                 public void get_size (out int width, out int height);
445                 public int get_spacing ();
446                 public Pango.TabArray? get_tabs ();
447                 public unowned string get_text ();
448                 [Version (since = "1.16")]
449                 public int get_unknown_glyphs_count ();
450                 public int get_width ();
451                 public Pango.WrapMode get_wrap ();
452                 public void index_to_line_x (int index_, bool trailing, out int line, out int x_pos);
453                 public Pango.Rectangle index_to_pos (int index_);
454                 [Version (since = "1.16")]
455                 public bool is_ellipsized ();
456                 [Version (since = "1.16")]
457                 public bool is_wrapped ();
458                 public void move_cursor_visually (bool strong, int old_index, int old_trailing, int direction, out int new_index, out int new_trailing);
459                 public void set_alignment (Pango.Alignment alignment);
460                 public void set_attributes (Pango.AttrList? attrs);
461                 [Version (since = "1.4")]
462                 public void set_auto_dir (bool auto_dir);
463                 [Version (since = "1.6")]
464                 public void set_ellipsize (Pango.EllipsizeMode ellipsize);
465                 public void set_font_description (Pango.FontDescription? desc);
466                 [Version (since = "1.20")]
467                 public void set_height (int height);
468                 public void set_indent (int indent);
469                 public void set_justify (bool justify);
470                 public void set_markup (string markup, int length);
471                 public void set_markup_with_accel (string markup, int length, unichar accel_marker, out unichar accel_char);
472                 public void set_single_paragraph_mode (bool setting);
473                 public void set_spacing (int spacing);
474                 public void set_tabs (Pango.TabArray? tabs);
475                 public void set_text (string text, int length);
476                 public void set_width (int width);
477                 public void set_wrap (Pango.WrapMode wrap);
478                 public bool xy_to_index (int x, int y, out int index_, out int trailing);
479         }
480         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_layout_iter_get_type ()")]
481         [Compact]
482         public class LayoutIter {
483                 public bool at_last_line ();
484                 [Version (since = "1.20")]
485                 public Pango.LayoutIter? copy ();
486                 public void free ();
487                 public int get_baseline ();
488                 public Pango.Rectangle get_char_extents ();
489                 public void get_cluster_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
490                 public int get_index ();
491                 [Version (since = "1.20")]
492                 public unowned Pango.Layout get_layout ();
493                 public void get_layout_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
494                 public Pango.LayoutLine get_line ();
495                 public void get_line_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
496                 [Version (since = "1.16")]
497                 public unowned Pango.LayoutLine get_line_readonly ();
498                 public void get_line_yrange (out int y0_, out int y1_);
499                 public unowned Pango.LayoutRun? get_run ();
500                 public void get_run_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
501                 [Version (since = "1.16")]
502                 public unowned Pango.LayoutRun? get_run_readonly ();
503                 public bool next_char ();
504                 public bool next_cluster ();
505                 public bool next_line ();
506                 public bool next_run ();
507         }
508         [CCode (cheader_filename = "pango/pango.h", ref_function = "pango_layout_line_ref", type_id = "pango_layout_line_get_type ()", unref_function = "pango_layout_line_unref")]
509         [Compact]
510         public class LayoutLine {
511                 public uint is_paragraph_start;
512                 public weak Pango.Layout layout;
513                 public int length;
514                 public uint resolved_dir;
515                 public weak GLib.SList<Pango.LayoutRun> runs;
516                 public int start_index;
517                 public void get_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
518                 public void get_pixel_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
519                 public void get_x_ranges (int start_index, int end_index, [CCode (array_length_cname = "n_ranges", array_length_pos = 3.1)] out int[] ranges);
520                 public void index_to_x (int index_, bool trailing, out int x_pos);
521                 [Version (since = "1.10")]
522                 public unowned Pango.LayoutLine @ref ();
523                 public void unref ();
524                 public bool x_to_index (int x_pos, out int index_, out int trailing);
525         }
526         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_glyph_item_get_type ()")]
527         [Compact]
528         public class LayoutRun : Pango.GlyphItem {
529         }
530         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
531         [Compact]
532         public class Map {
533         }
534         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
535         [Compact]
536         public class MapEntry {
537         }
538         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_renderer_get_type ()")]
539         [Version (since = "1.8")]
540         public abstract class Renderer : GLib.Object {
541                 public Pango.Matrix matrix;
542                 [CCode (has_construct_function = false)]
543                 protected Renderer ();
544                 public void activate ();
545                 [NoWrapper]
546                 public virtual void begin ();
547                 public void deactivate ();
548                 public virtual void draw_error_underline (int x, int y, int width, int height);
549                 public virtual void draw_glyph (Pango.Font font, Pango.Glyph glyph, double x, double y);
550                 [Version (since = "1.22")]
551                 public virtual void draw_glyph_item (string? text, Pango.GlyphItem glyph_item, int x, int y);
552                 public virtual void draw_glyphs (Pango.Font font, Pango.GlyphString glyphs, int x, int y);
553                 public void draw_layout (Pango.Layout layout, int x, int y);
554                 public void draw_layout_line (Pango.LayoutLine line, int x, int y);
555                 public virtual void draw_rectangle (Pango.RenderPart part, int x, int y, int width, int height);
556                 [NoWrapper]
557                 public virtual void draw_shape (Pango.AttrShape attr, int x, int y);
558                 public virtual void draw_trapezoid (Pango.RenderPart part, double y1_, double x11, double x21, double y2, double x12, double x22);
559                 [NoWrapper]
560                 public virtual void end ();
561                 [Version (since = "1.38")]
562                 public uint16 get_alpha (Pango.RenderPart part);
563                 public unowned Pango.Color? get_color (Pango.RenderPart part);
564                 [Version (since = "1.20")]
565                 public unowned Pango.Layout? get_layout ();
566                 [Version (since = "1.20")]
567                 public unowned Pango.LayoutLine? get_layout_line ();
568                 public unowned Pango.Matrix? get_matrix ();
569                 public virtual void part_changed (Pango.RenderPart part);
570                 [NoWrapper]
571                 public virtual void prepare_run (Pango.LayoutRun run);
572                 [Version (since = "1.38")]
573                 public void set_alpha (Pango.RenderPart part, uint16 alpha);
574                 public void set_color (Pango.RenderPart part, Pango.Color? color);
575                 public void set_matrix (Pango.Matrix? matrix);
576         }
577         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
578         [Compact]
579         public class ScriptIter {
580                 [CCode (has_construct_function = false)]
581                 public ScriptIter (string text, int length);
582                 [Version (since = "1.4")]
583                 public void free ();
584                 [Version (since = "1.4")]
585                 public void get_range (out string start, out string end, out Pango.Script script);
586                 [Version (since = "1.4")]
587                 public bool next ();
588         }
589         [CCode (cheader_filename = "pango/pango.h", copy_function = "g_boxed_copy", free_function = "g_boxed_free", type_id = "pango_tab_array_get_type ()")]
590         [Compact]
591         public class TabArray {
592                 [CCode (has_construct_function = false)]
593                 public TabArray (int initial_size, bool positions_in_pixels);
594                 public Pango.TabArray copy ();
595                 public void free ();
596                 public bool get_positions_in_pixels ();
597                 public int get_size ();
598                 public void get_tab (int tab_index, out Pango.TabAlign alignment, out int location);
599                 public void get_tabs (out Pango.TabAlign alignments, [CCode (array_length = false)] out int[] locations);
600                 public void resize (int new_size);
601                 public void set_tab (int tab_index, Pango.TabAlign alignment, int location);
602                 [CCode (has_construct_function = false)]
603                 public TabArray.with_positions (int size, bool positions_in_pixels, Pango.TabAlign first_alignment, ...);
604         }
605         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
606         public struct Analysis {
607                 public weak Pango.EngineShape shape_engine;
608                 public weak Pango.EngineLang lang_engine;
609                 public weak Pango.Font font;
610                 public uint8 level;
611                 public uint8 gravity;
612                 public uint8 flags;
613                 public uint8 script;
614                 public weak Pango.Language language;
615                 public weak GLib.SList<void*> extra_attrs;
616         }
617         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
618         [Version (since = "1.38")]
619         public struct AttrFontFeatures {
620                 public weak string features;
621         }
622         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_color_get_type ()")]
623         public struct Color {
624                 public uint16 red;
625                 public uint16 green;
626                 public uint16 blue;
627                 public Pango.Color? copy ();
628                 public void free ();
629                 public bool parse (string spec);
630                 [Version (since = "1.16")]
631                 public string to_string ();
632         }
633         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
634         [Version (deprecated = true, deprecated_since = "1.38")]
635         public struct EngineInfo {
636                 public weak string id;
637                 public weak string engine_type;
638                 public weak string render_type;
639                 public Pango.EngineScriptInfo scripts;
640                 public int n_scripts;
641         }
642         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
643         [Version (deprecated = true, deprecated_since = "1.38")]
644         public struct EngineScriptInfo {
645                 public Pango.Script script;
646                 public weak string langs;
647         }
648         [CCode (cheader_filename = "pango/pango.h")]
649         [SimpleType]
650         public struct Glyph : uint32 {
651         }
652         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
653         public struct GlyphGeometry {
654                 public Pango.GlyphUnit width;
655                 public Pango.GlyphUnit x_offset;
656                 public Pango.GlyphUnit y_offset;
657         }
658         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
659         public struct GlyphInfo {
660                 public Pango.Glyph glyph;
661                 public Pango.GlyphGeometry geometry;
662                 public Pango.GlyphVisAttr attr;
663         }
664         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_glyph_item_iter_get_type ()")]
665         [Version (since = "1.22")]
666         public struct GlyphItemIter {
667                 public weak Pango.GlyphItem glyph_item;
668                 public weak string text;
669                 public int start_glyph;
670                 public int start_index;
671                 public int start_char;
672                 public int end_glyph;
673                 public int end_index;
674                 public int end_char;
675                 public Pango.GlyphItemIter? copy ();
676                 public void free ();
677                 public bool init_end (Pango.GlyphItem glyph_item, string text);
678                 public bool init_start (Pango.GlyphItem glyph_item, string text);
679                 public bool next_cluster ();
680                 public bool prev_cluster ();
681         }
682         [CCode (cheader_filename = "pango/pango.h")]
683         [SimpleType]
684         public struct GlyphUnit : int32 {
685         }
686         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
687         public struct GlyphVisAttr {
688                 public uint is_cluster_start;
689         }
690         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
691         public struct LogAttr {
692                 public uint is_line_break;
693                 public uint is_mandatory_break;
694                 public uint is_char_break;
695                 public uint is_white;
696                 public uint is_cursor_position;
697                 public uint is_word_start;
698                 public uint is_word_end;
699                 public uint is_sentence_boundary;
700                 public uint is_sentence_start;
701                 public uint is_sentence_end;
702                 public uint backspace_deletes_character;
703                 public uint is_expandable_space;
704                 public uint is_word_boundary;
705         }
706         [CCode (cheader_filename = "pango/pango.h", type_id = "pango_matrix_get_type ()")]
707         [Version (since = "1.6")]
708         public struct Matrix {
709                 public double xx;
710                 public double xy;
711                 public double yx;
712                 public double yy;
713                 public double x0;
714                 public double y0;
715                 public void concat (Pango.Matrix new_matrix);
716                 public Pango.Matrix? copy ();
717                 public void free ();
718                 [Version (since = "1.12")]
719                 public double get_font_scale_factor ();
720                 [Version (since = "1.38")]
721                 public void get_font_scale_factors (out double xscale, out double yscale);
722                 public void rotate (double degrees);
723                 public void scale (double scale_x, double scale_y);
724                 [Version (since = "1.16")]
725                 public void transform_distance (ref double dx, ref double dy);
726                 [Version (since = "1.16")]
727                 public void transform_pixel_rectangle (ref Pango.Rectangle? rect);
728                 [Version (since = "1.16")]
729                 public void transform_point (ref double x, ref double y);
730                 [Version (since = "1.16")]
731                 public void transform_rectangle (ref Pango.Rectangle? rect);
732                 public void translate (double tx, double ty);
733         }
734         [CCode (cheader_filename = "pango/pango.h", has_type_id = false)]
735         public struct Rectangle {
736                 public int x;
737                 public int y;
738                 public int width;
739                 public int height;
740         }
741         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_ALIGN_", type_id = "pango_alignment_get_type ()")]
742         public enum Alignment {
743                 LEFT,
744                 CENTER,
745                 RIGHT
746         }
747         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_ATTR_", type_id = "pango_attr_type_get_type ()")]
748         public enum AttrType {
749                 INVALID,
750                 LANGUAGE,
751                 FAMILY,
752                 STYLE,
753                 WEIGHT,
754                 VARIANT,
755                 STRETCH,
756                 SIZE,
757                 FONT_DESC,
758                 FOREGROUND,
759                 BACKGROUND,
760                 UNDERLINE,
761                 STRIKETHROUGH,
762                 RISE,
763                 SHAPE,
764                 SCALE,
765                 FALLBACK,
766                 LETTER_SPACING,
767                 UNDERLINE_COLOR,
768                 STRIKETHROUGH_COLOR,
769                 ABSOLUTE_SIZE,
770                 GRAVITY,
771                 GRAVITY_HINT,
772                 FONT_FEATURES,
773                 FOREGROUND_ALPHA,
774                 BACKGROUND_ALPHA;
775                 [Version (since = "1.22")]
776                 public unowned string? get_name ();
777                 public static Pango.AttrType register (string name);
778         }
779         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_BIDI_TYPE_", type_id = "pango_bidi_type_get_type ()")]
780         [Version (since = "1.22")]
781         public enum BidiType {
782                 L,
783                 LRE,
784                 LRO,
785                 R,
786                 AL,
787                 RLE,
788                 RLO,
789                 PDF,
790                 EN,
791                 ES,
792                 ET,
793                 AN,
794                 CS,
795                 NSM,
796                 BN,
797                 B,
798                 S,
799                 WS,
800                 ON;
801                 public static Pango.BidiType for_unichar (unichar ch);
802         }
803         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_COVERAGE_", type_id = "pango_coverage_level_get_type ()")]
804         public enum CoverageLevel {
805                 NONE,
806                 FALLBACK,
807                 APPROXIMATE,
808                 EXACT
809         }
810         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_DIRECTION_", type_id = "pango_direction_get_type ()")]
811         public enum Direction {
812                 LTR,
813                 RTL,
814                 TTB_LTR,
815                 TTB_RTL,
816                 WEAK_LTR,
817                 WEAK_RTL,
818                 NEUTRAL
819         }
820         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_ELLIPSIZE_", type_id = "pango_ellipsize_mode_get_type ()")]
821         public enum EllipsizeMode {
822                 NONE,
823                 START,
824                 MIDDLE,
825                 END
826         }
827         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_FONT_MASK_", type_id = "pango_font_mask_get_type ()")]
828         [Flags]
829         public enum FontMask {
830                 FAMILY,
831                 STYLE,
832                 VARIANT,
833                 WEIGHT,
834                 STRETCH,
835                 SIZE,
836                 GRAVITY,
837                 VARIATIONS
838         }
839         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_GRAVITY_", type_id = "pango_gravity_get_type ()")]
840         [Version (since = "1.16")]
841         public enum Gravity {
842                 SOUTH,
843                 EAST,
844                 NORTH,
845                 WEST,
846                 AUTO;
847                 public static Pango.Gravity get_for_matrix (Pango.Matrix? matrix);
848                 public static Pango.Gravity get_for_script (Pango.Script script, Pango.Gravity base_gravity, Pango.GravityHint hint);
849                 [Version (since = "1.26")]
850                 public static Pango.Gravity get_for_script_and_width (Pango.Script script, bool wide, Pango.Gravity base_gravity, Pango.GravityHint hint);
851                 public double to_rotation ();
852         }
853         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_GRAVITY_HINT_", type_id = "pango_gravity_hint_get_type ()")]
854         [Version (since = "1.16")]
855         public enum GravityHint {
856                 NATURAL,
857                 STRONG,
858                 LINE
859         }
860         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_RENDER_PART_", type_id = "pango_render_part_get_type ()")]
861         [Version (since = "1.8")]
862         public enum RenderPart {
863                 FOREGROUND,
864                 BACKGROUND,
865                 UNDERLINE,
866                 STRIKETHROUGH
867         }
868         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_SCRIPT_", type_id = "pango_script_get_type ()")]
869         public enum Script {
870                 INVALID_CODE,
871                 COMMON,
872                 INHERITED,
873                 ARABIC,
874                 ARMENIAN,
875                 BENGALI,
876                 BOPOMOFO,
877                 CHEROKEE,
878                 COPTIC,
879                 CYRILLIC,
880                 DESERET,
881                 DEVANAGARI,
882                 ETHIOPIC,
883                 GEORGIAN,
884                 GOTHIC,
885                 GREEK,
886                 GUJARATI,
887                 GURMUKHI,
888                 HAN,
889                 HANGUL,
890                 HEBREW,
891                 HIRAGANA,
892                 KANNADA,
893                 KATAKANA,
894                 KHMER,
895                 LAO,
896                 LATIN,
897                 MALAYALAM,
898                 MONGOLIAN,
899                 MYANMAR,
900                 OGHAM,
901                 OLD_ITALIC,
902                 ORIYA,
903                 RUNIC,
904                 SINHALA,
905                 SYRIAC,
906                 TAMIL,
907                 TELUGU,
908                 THAANA,
909                 THAI,
910                 TIBETAN,
911                 CANADIAN_ABORIGINAL,
912                 YI,
913                 TAGALOG,
914                 HANUNOO,
915                 BUHID,
916                 TAGBANWA,
917                 BRAILLE,
918                 CYPRIOT,
919                 LIMBU,
920                 OSMANYA,
921                 SHAVIAN,
922                 LINEAR_B,
923                 TAI_LE,
924                 UGARITIC,
925                 NEW_TAI_LUE,
926                 BUGINESE,
927                 GLAGOLITIC,
928                 TIFINAGH,
929                 SYLOTI_NAGRI,
930                 OLD_PERSIAN,
931                 KHAROSHTHI,
932                 UNKNOWN,
933                 BALINESE,
934                 CUNEIFORM,
935                 PHOENICIAN,
936                 PHAGS_PA,
937                 NKO,
938                 KAYAH_LI,
939                 LEPCHA,
940                 REJANG,
941                 SUNDANESE,
942                 SAURASHTRA,
943                 CHAM,
944                 OL_CHIKI,
945                 VAI,
946                 CARIAN,
947                 LYCIAN,
948                 LYDIAN,
949                 BATAK,
950                 BRAHMI,
951                 MANDAIC,
952                 CHAKMA,
953                 MEROITIC_CURSIVE,
954                 MEROITIC_HIEROGLYPHS,
955                 MIAO,
956                 SHARADA,
957                 SORA_SOMPENG,
958                 TAKRI,
959                 BASSA_VAH,
960                 CAUCASIAN_ALBANIAN,
961                 DUPLOYAN,
962                 ELBASAN,
963                 GRANTHA,
964                 KHOJKI,
965                 KHUDAWADI,
966                 LINEAR_A,
967                 MAHAJANI,
968                 MANICHAEAN,
969                 MENDE_KIKAKUI,
970                 MODI,
971                 MRO,
972                 NABATAEAN,
973                 OLD_NORTH_ARABIAN,
974                 OLD_PERMIC,
975                 PAHAWH_HMONG,
976                 PALMYRENE,
977                 PAU_CIN_HAU,
978                 PSALTER_PAHLAVI,
979                 SIDDHAM,
980                 TIRHUTA,
981                 WARANG_CITI,
982                 AHOM,
983                 ANATOLIAN_HIEROGLYPHS,
984                 HATRAN,
985                 MULTANI,
986                 OLD_HUNGARIAN,
987                 SIGNWRITING;
988                 [Version (since = "1.4")]
989                 public static Pango.Script for_unichar (unichar ch);
990                 [Version (since = "1.4")]
991                 public Pango.Language? get_sample_language ();
992         }
993         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_STRETCH_", type_id = "pango_stretch_get_type ()")]
994         public enum Stretch {
995                 ULTRA_CONDENSED,
996                 EXTRA_CONDENSED,
997                 CONDENSED,
998                 SEMI_CONDENSED,
999                 NORMAL,
1000                 SEMI_EXPANDED,
1001                 EXPANDED,
1002                 EXTRA_EXPANDED,
1003                 ULTRA_EXPANDED
1004         }
1005         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_STYLE_", type_id = "pango_style_get_type ()")]
1006         public enum Style {
1007                 NORMAL,
1008                 OBLIQUE,
1009                 ITALIC
1010         }
1011         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_TAB_", type_id = "pango_tab_align_get_type ()")]
1012         public enum TabAlign {
1013                 LEFT
1014         }
1015         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_UNDERLINE_", type_id = "pango_underline_get_type ()")]
1016         public enum Underline {
1017                 NONE,
1018                 SINGLE,
1019                 DOUBLE,
1020                 LOW,
1021                 ERROR
1022         }
1023         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_VARIANT_", type_id = "pango_variant_get_type ()")]
1024         public enum Variant {
1025                 NORMAL,
1026                 SMALL_CAPS
1027         }
1028         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_WEIGHT_", type_id = "pango_weight_get_type ()")]
1029         public enum Weight {
1030                 THIN,
1031                 ULTRALIGHT,
1032                 LIGHT,
1033                 SEMILIGHT,
1034                 BOOK,
1035                 NORMAL,
1036                 MEDIUM,
1037                 SEMIBOLD,
1038                 BOLD,
1039                 ULTRABOLD,
1040                 HEAVY,
1041                 ULTRAHEAVY
1042         }
1043         [CCode (cheader_filename = "pango/pango.h", cprefix = "PANGO_WRAP_", type_id = "pango_wrap_mode_get_type ()")]
1044         public enum WrapMode {
1045                 WORD,
1046                 CHAR,
1047                 WORD_CHAR
1048         }
1049         [CCode (cheader_filename = "pango/pango.h", has_target = false)]
1050         public delegate T AttrDataCopyFunc<T> (T data);
1051         [CCode (cheader_filename = "pango/pango.h", instance_pos = 1.9)]
1052         public delegate bool AttrFilterFunc (Pango.Attribute attribute);
1053         [CCode (cheader_filename = "pango/pango.h", instance_pos = 2.9)]
1054         [Version (since = "1.4")]
1055         public delegate bool FontsetForeachFunc (Pango.Fontset fontset, Pango.Font font);
1056         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_ANALYSIS_FLAG_CENTERED_BASELINE")]
1057         [Version (since = "1.16")]
1058         public const int ANALYSIS_FLAG_CENTERED_BASELINE;
1059         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_ANALYSIS_FLAG_IS_ELLIPSIS")]
1060         [Version (since = "1.36.7")]
1061         public const int ANALYSIS_FLAG_IS_ELLIPSIS;
1062         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING")]
1063         [Version (since = "1.24")]
1064         public const int ATTR_INDEX_FROM_TEXT_BEGINNING;
1065         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_ENGINE_TYPE_LANG")]
1066         [Version (deprecated = true, deprecated_since = "1.38")]
1067         public const string ENGINE_TYPE_LANG;
1068         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_ENGINE_TYPE_SHAPE")]
1069         [Version (deprecated = true, deprecated_since = "1.38")]
1070         public const string ENGINE_TYPE_SHAPE;
1071         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_GLYPH_EMPTY")]
1072         public const Pango.Glyph GLYPH_EMPTY;
1073         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_GLYPH_INVALID_INPUT")]
1074         [Version (since = "1.20")]
1075         public const Pango.Glyph GLYPH_INVALID_INPUT;
1076         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_GLYPH_UNKNOWN_FLAG")]
1077         public const Pango.Glyph GLYPH_UNKNOWN_FLAG;
1078         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_RENDER_TYPE_NONE")]
1079         [Version (deprecated = true, deprecated_since = "1.38")]
1080         public const string RENDER_TYPE_NONE;
1081         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_SCALE")]
1082         public const int SCALE;
1083         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_UNKNOWN_GLYPH_HEIGHT")]
1084         public const int UNKNOWN_GLYPH_HEIGHT;
1085         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_UNKNOWN_GLYPH_WIDTH")]
1086         public const int UNKNOWN_GLYPH_WIDTH;
1087         [CCode (cheader_filename = "pango/pango.h")]
1088         public const int VERSION_MAJOR;
1089         [CCode (cheader_filename = "pango/pango.h")]
1090         public const int VERSION_MICRO;
1091         [CCode (cheader_filename = "pango/pango.h")]
1092         public const int VERSION_MINOR;
1093         [CCode (cheader_filename = "pango/pango.h", cname = "PANGO_VERSION_MIN_REQUIRED")]
1094         [Version (since = "1.42")]
1095         public const int VERSION_MIN_REQUIRED;
1096         [CCode (cheader_filename = "pango/pango.h")]
1097         public const string VERSION_STRING;
1098         [CCode (cheader_filename = "pango/pango.h")]
1099         [Version (since = "1.38")]
1100         public static Pango.Attribute attr_background_alpha_new (uint16 alpha);
1101         [CCode (cheader_filename = "pango/pango.h")]
1102         public static Pango.Attribute attr_background_new (uint16 red, uint16 green, uint16 blue);
1103         [CCode (cheader_filename = "pango/pango.h")]
1104         [Version (since = "1.4")]
1105         public static Pango.Attribute attr_fallback_new (bool enable_fallback);
1106         [CCode (cheader_filename = "pango/pango.h")]
1107         public static Pango.Attribute attr_family_new (string family);
1108         [CCode (cheader_filename = "pango/pango.h")]
1109         [Version (since = "1.38")]
1110         public static Pango.Attribute attr_foreground_alpha_new (uint16 alpha);
1111         [CCode (cheader_filename = "pango/pango.h")]
1112         public static Pango.Attribute attr_foreground_new (uint16 red, uint16 green, uint16 blue);
1113         [CCode (cheader_filename = "pango/pango.h")]
1114         [Version (since = "1.16")]
1115         public static Pango.Attribute attr_gravity_hint_new (Pango.GravityHint hint);
1116         [CCode (cheader_filename = "pango/pango.h")]
1117         [Version (since = "1.16")]
1118         public static Pango.Attribute attr_gravity_new (Pango.Gravity gravity);
1119         [CCode (cheader_filename = "pango/pango.h")]
1120         [Version (since = "1.6")]
1121         public static Pango.Attribute attr_letter_spacing_new (int letter_spacing);
1122         [CCode (cheader_filename = "pango/pango.h")]
1123         public static Pango.Attribute attr_rise_new (int rise);
1124         [CCode (cheader_filename = "pango/pango.h")]
1125         public static Pango.Attribute attr_scale_new (double scale_factor);
1126         [CCode (cheader_filename = "pango/pango.h")]
1127         public static Pango.Attribute attr_stretch_new (Pango.Stretch stretch);
1128         [CCode (cheader_filename = "pango/pango.h")]
1129         [Version (since = "1.8")]
1130         public static Pango.Attribute attr_strikethrough_color_new (uint16 red, uint16 green, uint16 blue);
1131         [CCode (cheader_filename = "pango/pango.h")]
1132         public static Pango.Attribute attr_strikethrough_new (bool strikethrough);
1133         [CCode (cheader_filename = "pango/pango.h")]
1134         public static Pango.Attribute attr_style_new (Pango.Style style);
1135         [CCode (cheader_filename = "pango/pango.h")]
1136         [Version (since = "1.8")]
1137         public static Pango.Attribute attr_underline_color_new (uint16 red, uint16 green, uint16 blue);
1138         [CCode (cheader_filename = "pango/pango.h")]
1139         public static Pango.Attribute attr_underline_new (Pango.Underline underline);
1140         [CCode (cheader_filename = "pango/pango.h")]
1141         public static Pango.Attribute attr_variant_new (Pango.Variant variant);
1142         [CCode (cheader_filename = "pango/pango.h")]
1143         public static Pango.Attribute attr_weight_new (Pango.Weight weight);
1144         [CCode (cheader_filename = "pango/pango.h")]
1145         public static void @break (string text, int length, Pango.Analysis analysis, [CCode (array_length_cname = "attrs_len", array_length_pos = 4.1)] Pango.LogAttr[] attrs);
1146         [CCode (cheader_filename = "pango/pango.h")]
1147         [Version (deprecated = true, deprecated_since = "1.38")]
1148         public static string? config_key_get (string key);
1149         [CCode (cheader_filename = "pango/pango.h")]
1150         [Version (deprecated = true, deprecated_since = "1.38")]
1151         public static string? config_key_get_system (string key);
1152         [CCode (cheader_filename = "pango/pango.h")]
1153         public static void default_break (string text, int length, Pango.Analysis? analysis, Pango.LogAttr attrs, int attrs_len);
1154         [CCode (cheader_filename = "pango/pango.h")]
1155         [Version (since = "1.16")]
1156         public static void extents_to_pixels (Pango.Rectangle? inclusive, Pango.Rectangle? nearest);
1157         [CCode (cheader_filename = "pango/pango.h")]
1158         [Version (since = "1.4")]
1159         public static Pango.Direction find_base_dir (string text, int length);
1160         [CCode (cheader_filename = "pango/pango.h")]
1161         public static void find_paragraph_boundary (string text, int length, out int paragraph_delimiter_index, out int next_paragraph_start);
1162         [CCode (cheader_filename = "pango/pango.h")]
1163         [Version (deprecated = true, deprecated_since = "1.38")]
1164         public static unowned string get_lib_subdirectory ();
1165         [CCode (cheader_filename = "pango/pango.h")]
1166         public static void get_log_attrs (string text, int length, int level, Pango.Language language, [CCode (array_length_cname = "attrs_len", array_length_pos = 5.1)] Pango.LogAttr[] log_attrs);
1167         [CCode (cheader_filename = "pango/pango.h")]
1168         public static bool get_mirror_char (unichar ch, unichar mirrored_ch);
1169         [CCode (cheader_filename = "pango/pango.h")]
1170         [Version (deprecated = true, deprecated_since = "1.38")]
1171         public static unowned string get_sysconf_subdirectory ();
1172         [CCode (cheader_filename = "pango/pango.h")]
1173         [Version (since = "1.10")]
1174         public static bool is_zero_width (unichar ch);
1175         [CCode (cheader_filename = "pango/pango.h")]
1176         public static GLib.List<Pango.Item> itemize (Pango.Context context, string text, int start_index, int length, Pango.AttrList attrs, Pango.AttrIterator? cached_iter);
1177         [CCode (cheader_filename = "pango/pango.h")]
1178         [Version (since = "1.4")]
1179         public static GLib.List<Pango.Item> itemize_with_base_dir (Pango.Context context, Pango.Direction base_dir, string text, int start_index, int length, Pango.AttrList attrs, Pango.AttrIterator? cached_iter);
1180         [CCode (cheader_filename = "pango/pango.h")]
1181         [Version (since = "1.4")]
1182         public static uint8 log2vis_get_embedding_levels (string text, int length, Pango.Direction pbase_dir);
1183         [CCode (cheader_filename = "pango/pango.h")]
1184         [Version (deprecated = true, deprecated_since = "1.32")]
1185         public static void lookup_aliases (string fontname, [CCode (array_length_cname = "n_families", array_length_pos = 2.1)] out string[] families);
1186         [CCode (cheader_filename = "pango/pango.h")]
1187         [Version (since = "1.31.0")]
1188         public static bool markup_parser_finish (GLib.MarkupParseContext context, out Pango.AttrList attr_list, out string text, out unichar accel_char) throws GLib.Error;
1189         [CCode (cheader_filename = "pango/pango.h")]
1190         [Version (since = "1.31.0")]
1191         public static unowned GLib.MarkupParseContext markup_parser_new (unichar accel_marker);
1192         [CCode (cheader_filename = "pango/pango.h")]
1193         [Version (deprecated = true, deprecated_since = "1.38", since = "1.16")]
1194         public static bool parse_enum (GLib.Type type, string? str, out int value, bool warn, out string possible_values);
1195         [CCode (cheader_filename = "pango/pango.h")]
1196         public static bool parse_markup (string markup_text, int length, unichar accel_marker, out Pango.AttrList attr_list, out string text, out unichar accel_char) throws GLib.Error;
1197         [CCode (cheader_filename = "pango/pango.h")]
1198         public static bool parse_stretch (string str, out Pango.Stretch stretch, bool warn);
1199         [CCode (cheader_filename = "pango/pango.h")]
1200         public static bool parse_style (string str, out Pango.Style style, bool warn);
1201         [CCode (cheader_filename = "pango/pango.h")]
1202         public static bool parse_variant (string str, out Pango.Variant variant, bool warn);
1203         [CCode (cheader_filename = "pango/pango.h")]
1204         public static bool parse_weight (string str, out Pango.Weight weight, bool warn);
1205         [CCode (cheader_filename = "pango/pango.h")]
1206         [Version (since = "1.12")]
1207         public static void quantize_line_geometry (ref int thickness, ref int position);
1208         [CCode (cheader_filename = "pango/pango.h")]
1209         [Version (deprecated = true, deprecated_since = "1.38")]
1210         public static int read_line ([CCode (type = "FILE*")] GLib.FileStream stream, GLib.StringBuilder str);
1211         [CCode (cheader_filename = "pango/pango.h")]
1212         public static GLib.List<Pango.Item> reorder_items (GLib.List<Pango.Item> logical_items);
1213         [CCode (cheader_filename = "pango/pango.h")]
1214         [Version (deprecated = true, deprecated_since = "1.38")]
1215         public static bool scan_int (ref string pos, out int @out);
1216         [CCode (cheader_filename = "pango/pango.h")]
1217         [Version (deprecated = true, deprecated_since = "1.38")]
1218         public static bool scan_string (ref string pos, GLib.StringBuilder @out);
1219         [CCode (cheader_filename = "pango/pango.h")]
1220         [Version (deprecated = true, deprecated_since = "1.38")]
1221         public static bool scan_word (ref string pos, out unowned GLib.StringBuilder @out);
1222         [CCode (cheader_filename = "pango/pango.h")]
1223         public static void shape (string text, int length, Pango.Analysis analysis, Pango.GlyphString glyphs);
1224         [CCode (cheader_filename = "pango/pango.h")]
1225         [Version (since = "1.32")]
1226         public static void shape_full (string item_text, int item_length, string? paragraph_text, int paragraph_length, Pango.Analysis analysis, Pango.GlyphString glyphs);
1227         [CCode (cheader_filename = "pango/pango.h")]
1228         [Version (deprecated = true, deprecated_since = "1.38")]
1229         public static bool skip_space (ref string pos);
1230         [CCode (array_length = false, array_null_terminated = true, cheader_filename = "pango/pango.h")]
1231         [Version (deprecated = true, deprecated_since = "1.38")]
1232         public static string[] split_file_list (string str);
1233         [CCode (cheader_filename = "pango/pango.h")]
1234         [Version (deprecated = true, deprecated_since = "1.38")]
1235         public static string trim_string (string str);
1236         [CCode (cheader_filename = "pango/pango.h")]
1237         public static Pango.Direction unichar_direction (unichar ch);
1238         [CCode (cheader_filename = "pango/pango.h")]
1239         [Version (since = "1.16")]
1240         public static int units_from_double (double d);
1241         [CCode (cheader_filename = "pango/pango.h")]
1242         [Version (since = "1.16")]
1243         public static double units_to_double (int i);
1244         [CCode (cheader_filename = "pango/pango.h")]
1245         [Version (since = "1.16")]
1246         public static int version ();
1247         [CCode (cheader_filename = "pango/pango.h")]
1248         [Version (since = "1.16")]
1249         public static unowned string? version_check (int required_major, int required_minor, int required_micro);
1250         [CCode (cheader_filename = "pango/pango.h")]
1251         [Version (since = "1.16")]
1252         public static unowned string version_string ();