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