Ignore BusName sender parameters in marshalling code
[vala-lang.git] / vapi / pango.vapi
blob95874e120879bca595c82f1d1cd7d1f7018411e1
1 /* pango.vapi generated by vapigen, do not modify. */
3 [CCode (cprefix = "Pango", lower_case_cprefix = "pango_")]
4 namespace Pango {
5         [Compact]
6         [CCode (cheader_filename = "pango/pango.h")]
7         public class Analysis {
8                 public weak GLib.SList extra_attrs;
9                 public uchar flags;
10                 public weak Pango.Font font;
11                 public uchar gravity;
12                 public weak Pango.EngineLang lang_engine;
13                 public weak Pango.Language language;
14                 public uchar level;
15                 public uchar script;
16                 public weak Pango.EngineShape shape_engine;
17         }
18         [Compact]
19         [CCode (cheader_filename = "pango/pango.h")]
20         public class AttrClass {
21                 public weak GLib.Callback copy;
22                 public weak GLib.Callback destroy;
23                 public weak GLib.Callback equal;
24                 public Pango.AttrType type;
25         }
26         [Compact]
27         [CCode (cheader_filename = "pango/pango.h")]
28         public class AttrColor {
29                 public weak Pango.Attribute attr;
30                 public Pango.Color color;
31         }
32         [Compact]
33         [CCode (cheader_filename = "pango/pango.h")]
34         public class AttrFloat {
35                 public weak Pango.Attribute attr;
36                 public double value;
37         }
38         [Compact]
39         [CCode (cheader_filename = "pango/pango.h")]
40         public class AttrFontDesc {
41                 public weak Pango.Attribute attr;
42                 public weak Pango.FontDescription desc;
43                 [CCode (type = "PangoAttribute*", has_construct_function = false)]
44                 public AttrFontDesc (Pango.FontDescription desc);
45         }
46         [Compact]
47         [CCode (cheader_filename = "pango/pango.h")]
48         public class AttrInt {
49                 public weak Pango.Attribute attr;
50                 public int value;
51         }
52         [Compact]
53         [CCode (copy_function = "pango_attr_iterator_copy", free_function = "pango_attr_iterator_destroy", cheader_filename = "pango/pango.h")]
54         public class AttrIterator {
55                 public unowned Pango.AttrIterator copy ();
56                 public unowned Pango.Attribute get (Pango.AttrType type);
57                 public unowned GLib.SList get_attrs ();
58                 public void get_font (Pango.FontDescription desc, out unowned Pango.Language language, GLib.SList extra_attrs);
59                 public bool next ();
60                 public void range (int start, int end);
61         }
62         [Compact]
63         [CCode (cheader_filename = "pango/pango.h")]
64         public class AttrLanguage {
65                 public weak Pango.Attribute attr;
66                 public weak Pango.Language value;
67                 [CCode (type = "PangoAttribute*", has_construct_function = false)]
68                 public AttrLanguage (Pango.Language language);
69         }
70         [Compact]
71         [CCode (ref_function = "pango_attr_list_ref", unref_function = "pango_attr_list_unref", cheader_filename = "pango/pango.h")]
72         public class AttrList {
73                 public void change (Pango.Attribute attr);
74                 public unowned Pango.AttrList copy ();
75                 public unowned Pango.AttrList filter (Pango.AttrFilterFunc func, void* data);
76                 public unowned Pango.AttrIterator get_iterator ();
77                 public void insert (Pango.Attribute attr);
78                 public void insert_before (Pango.Attribute attr);
79                 [CCode (has_construct_function = false)]
80                 public AttrList ();
81                 public void splice (Pango.AttrList other, int pos, int len);
82         }
83         [Compact]
84         [CCode (cheader_filename = "pango/pango.h")]
85         public class AttrShape {
86                 public weak Pango.Attribute attr;
87                 public weak Pango.AttrDataCopyFunc copy_func;
88                 public void* data;
89                 public weak GLib.DestroyNotify destroy_func;
90                 public Pango.Rectangle ink_rect;
91                 public Pango.Rectangle logical_rect;
92                 [CCode (type = "PangoAttribute*", has_construct_function = false)]
93                 public AttrShape (Pango.Rectangle ink_rect, Pango.Rectangle logical_rect);
94                 [CCode (type = "PangoAttribute*", has_construct_function = false)]
95                 public AttrShape.with_data (Pango.Rectangle ink_rect, Pango.Rectangle logical_rect, void* data, Pango.AttrDataCopyFunc copy_func, GLib.DestroyNotify destroy_func);
96         }
97         [Compact]
98         [CCode (cheader_filename = "pango/pango.h")]
99         public class AttrSize {
100                 public uint absolute;
101                 public weak Pango.Attribute attr;
102                 public int size;
103                 [CCode (type = "PangoAttribute*", has_construct_function = false)]
104                 public AttrSize (int size);
105         }
106         [Compact]
107         [CCode (cheader_filename = "pango/pango.h")]
108         public class AttrString {
109                 public weak Pango.Attribute attr;
110                 public weak string value;
111         }
112         [Compact]
113         [CCode (copy_function = "pango_attribute_copy", free_function = "pango_attribute_destroy", cheader_filename = "pango/pango.h")]
114         public class Attribute {
115                 public uint end_index;
116                 public weak Pango.AttrClass klass;
117                 public uint start_index;
118                 public unowned Pango.Attribute copy ();
119                 public bool equal (Pango.Attribute attr2);
120                 public void init (Pango.AttrClass klass);
121         }
122         [CCode (cheader_filename = "pango/pango.h")]
123         public class Context : GLib.Object {
124                 public Pango.Direction get_base_dir ();
125                 public Pango.Gravity get_base_gravity ();
126                 public unowned Pango.FontDescription get_font_description ();
127                 public unowned Pango.FontMap get_font_map ();
128                 public Pango.Gravity get_gravity ();
129                 public Pango.GravityHint get_gravity_hint ();
130                 public unowned Pango.Language get_language ();
131                 public Pango.Matrix get_matrix ();
132                 public unowned Pango.FontMetrics get_metrics (Pango.FontDescription desc, Pango.Language language);
133                 public void list_families (Pango.FontFamily[] families);
134                 public unowned Pango.Font load_font (Pango.FontDescription desc);
135                 public unowned Pango.Fontset load_fontset (Pango.FontDescription desc, Pango.Language language);
136                 public void set_base_dir (Pango.Direction direction);
137                 public void set_base_gravity (Pango.Gravity gravity);
138                 public void set_font_description (Pango.FontDescription desc);
139                 public void set_gravity_hint (Pango.GravityHint hint);
140                 public void set_language (Pango.Language language);
141                 public void set_matrix (Pango.Matrix matrix);
142         }
143         [Compact]
144         [CCode (cheader_filename = "pango/pango.h")]
145         public class ContextClass {
146         }
147         [Compact]
148         [CCode (ref_function = "pango_coverage_ref", unref_function = "pango_coverage_unref", cheader_filename = "pango/pango.h")]
149         public class Coverage {
150                 public unowned Pango.Coverage copy ();
151                 public static unowned Pango.Coverage from_bytes (uchar[] bytes);
152                 public Pango.CoverageLevel get (int index_);
153                 public void max (Pango.Coverage other);
154                 [CCode (has_construct_function = false)]
155                 public Coverage ();
156                 public void set (int index_, Pango.CoverageLevel level);
157                 public void to_bytes (uchar[] bytes);
158         }
159         [Compact]
160         [CCode (cheader_filename = "pango/pango.h")]
161         public class EngineLang {
162         }
163         [Compact]
164         [CCode (cheader_filename = "pango/pango.h")]
165         public class EngineShape {
166         }
167         [CCode (cheader_filename = "pango/pango.h")]
168         public class Font : GLib.Object {
169                 public unowned Pango.FontDescription describe ();
170                 public unowned Pango.FontDescription describe_with_absolute_size ();
171                 public static void descriptions_free (Pango.FontDescription[] descs);
172                 public unowned Pango.EngineShape find_shaper (Pango.Language language, uint32 ch);
173                 public unowned Pango.Coverage get_coverage (Pango.Language language);
174                 public unowned Pango.FontMap get_font_map ();
175                 public void get_glyph_extents (Pango.Glyph glyph, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
176                 public unowned Pango.FontMetrics get_metrics (Pango.Language language);
177         }
178         [Compact]
179         [CCode (copy_function = "pango_font_description_copy", cheader_filename = "pango/pango.h")]
180         public class FontDescription {
181                 public bool better_match (Pango.FontDescription old_match, Pango.FontDescription new_match);
182                 public unowned Pango.FontDescription copy ();
183                 public unowned Pango.FontDescription copy_static ();
184                 public bool equal (Pango.FontDescription desc2);
185                 public static unowned Pango.FontDescription from_string (string str);
186                 public unowned string get_family ();
187                 public Pango.Gravity get_gravity ();
188                 public Pango.FontMask get_set_fields ();
189                 public int get_size ();
190                 public bool get_size_is_absolute ();
191                 public Pango.Stretch get_stretch ();
192                 public Pango.Style get_style ();
193                 public Pango.Variant get_variant ();
194                 public Pango.Weight get_weight ();
195                 public uint hash ();
196                 public void merge (Pango.FontDescription desc_to_merge, bool replace_existing);
197                 public void merge_static (Pango.FontDescription desc_to_merge, bool replace_existing);
198                 [CCode (has_construct_function = false)]
199                 public FontDescription ();
200                 public void set_absolute_size (double size);
201                 public void set_family (string family);
202                 public void set_family_static (string family);
203                 public void set_gravity (Pango.Gravity gravity);
204                 public void set_size (int size);
205                 public void set_stretch (Pango.Stretch stretch);
206                 public void set_style (Pango.Style style);
207                 public void set_variant (Pango.Variant variant);
208                 public void set_weight (Pango.Weight weight);
209                 public unowned string to_filename ();
210                 public unowned string to_string ();
211                 public void unset_fields (Pango.FontMask to_unset);
212         }
213         [CCode (cheader_filename = "pango/pango.h")]
214         public class FontFace : GLib.Object {
215                 public unowned Pango.FontDescription describe ();
216                 public unowned string get_face_name ();
217                 public bool is_synthesized ();
218                 public void list_sizes (int[] sizes);
219         }
220         [CCode (cheader_filename = "pango/pango.h")]
221         public class FontFamily : GLib.Object {
222                 public unowned string get_name ();
223                 public bool is_monospace ();
224                 public void list_faces (Pango.FontFace[] faces);
225         }
226         [CCode (cheader_filename = "pango/pango.h")]
227         public class FontMap : GLib.Object {
228                 public void list_families (Pango.FontFamily[] families);
229                 public unowned Pango.Font load_font (Pango.Context context, Pango.FontDescription desc);
230                 public unowned Pango.Fontset load_fontset (Pango.Context context, Pango.FontDescription desc, Pango.Language language);
231         }
232         [Compact]
233         [CCode (ref_function = "pango_font_metrics_ref", unref_function = "pango_font_metrics_unref", cheader_filename = "pango/pango.h")]
234         public class FontMetrics {
235                 public int get_approximate_char_width ();
236                 public int get_approximate_digit_width ();
237                 public int get_ascent ();
238                 public int get_descent ();
239                 public int get_strikethrough_position ();
240                 public int get_strikethrough_thickness ();
241                 public int get_underline_position ();
242                 public int get_underline_thickness ();
243         }
244         [CCode (cheader_filename = "pango/pango.h")]
245         public class Fontset : GLib.Object {
246                 public void @foreach (Pango.FontsetForeachFunc func, void* data);
247                 public unowned Pango.Font get_font (uint wc);
248                 public unowned Pango.FontMetrics get_metrics ();
249         }
250         [Compact]
251         [CCode (cheader_filename = "pango/pango.h")]
252         public class Glyph {
253         }
254         [Compact]
255         [CCode (cheader_filename = "pango/pango.h")]
256         public class GlyphGeometry {
257                 public weak Pango.GlyphUnit width;
258                 public weak Pango.GlyphUnit x_offset;
259                 public weak Pango.GlyphUnit y_offset;
260         }
261         [Compact]
262         [CCode (cheader_filename = "pango/pango.h")]
263         public class GlyphInfo {
264                 public weak Pango.GlyphVisAttr attr;
265                 public weak Pango.GlyphGeometry geometry;
266                 public weak Pango.Glyph glyph;
267         }
268         [Compact]
269         [CCode (copy_function = "pango_glyph_item_copy", cheader_filename = "pango/pango.h")]
270         public class GlyphItem {
271                 public weak Pango.GlyphString glyphs;
272                 public weak Pango.Item item;
273                 public unowned GLib.SList apply_attrs (string text, Pango.AttrList list);
274                 public unowned Pango.GlyphItem copy ();
275                 public void letter_space (string text, Pango.LogAttr[] log_attrs, int letter_spacing);
276                 public unowned Pango.GlyphItem split (string text, int split_index);
277         }
278         [Compact]
279         [CCode (copy_function = "pango_glyph_string_copy", cheader_filename = "pango/pango.h")]
280         public class GlyphString {
281                 public weak Pango.GlyphInfo glyphs;
282                 public int log_clusters;
283                 public int num_glyphs;
284                 public int space;
285                 public unowned Pango.GlyphString copy ();
286                 public void extents (Pango.Font font, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
287                 public void extents_range (int start, int end, Pango.Font font, out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
288                 public void get_logical_widths (string text, int length, int embedding_level, int logical_widths);
289                 public int get_width ();
290                 public void index_to_x (string text, int length, Pango.Analysis analysis, int index_, bool trailing, int x_pos);
291                 [CCode (has_construct_function = false)]
292                 public GlyphString ();
293                 public void set_size (int new_len);
294                 public void x_to_index (string text, int length, Pango.Analysis analysis, int x_pos, int index_, int trailing);
295         }
296         [Compact]
297         [CCode (cheader_filename = "pango/pango.h")]
298         public class GlyphUnit {
299         }
300         [Compact]
301         [CCode (cheader_filename = "pango/pango.h")]
302         public class GlyphVisAttr {
303                 public uint is_cluster_start;
304         }
305         [Compact]
306         [CCode (copy_function = "pango_item_copy", cheader_filename = "pango/pango.h")]
307         public class Item {
308                 public weak Pango.Analysis analysis;
309                 public int length;
310                 public int num_chars;
311                 public int offset;
312                 public unowned Pango.Item copy ();
313                 [CCode (has_construct_function = false)]
314                 public Item ();
315                 public unowned Pango.Item split (int split_index, int split_offset);
316         }
317         [CCode (ref_function = "pango_language_ref", unref_function = "pango_language_unref", cheader_filename = "pango/pango.h")]
318         public class Language {
319                 public static unowned Pango.Language from_string (string language);
320                 public static unowned Pango.Language get_default ();
321                 public unowned string get_sample_string ();
322                 public bool includes_script (Pango.Script script);
323                 public bool matches (string range_list);
324                 public unowned string to_string ();
325         }
326         [CCode (cheader_filename = "pango/pango.h")]
327         public class Layout : GLib.Object {
328                 public void context_changed ();
329                 public unowned Pango.Layout copy ();
330                 public Pango.Alignment get_alignment ();
331                 public unowned Pango.AttrList get_attributes ();
332                 public bool get_auto_dir ();
333                 public int get_baseline ();
334                 public unowned Pango.Context get_context ();
335                 public void get_cursor_pos (int index_, out Pango.Rectangle strong_pos, out Pango.Rectangle weak_pos);
336                 public Pango.EllipsizeMode get_ellipsize ();
337                 public void get_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
338                 public unowned Pango.FontDescription get_font_description ();
339                 public int get_height ();
340                 public int get_indent ();
341                 public unowned Pango.LayoutIter get_iter ();
342                 public bool get_justify ();
343                 public unowned Pango.LayoutLine get_line (int line);
344                 public int get_line_count ();
345                 public unowned Pango.LayoutLine get_line_readonly (int line);
346                 public unowned GLib.SList get_lines ();
347                 public unowned GLib.SList get_lines_readonly ();
348                 public void get_log_attrs (Pango.LogAttr[] attrs);
349                 public void get_pixel_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
350                 public void get_pixel_size (out int width, out int height);
351                 public bool get_single_paragraph_mode ();
352                 public void get_size (out int width, out int height);
353                 public int get_spacing ();
354                 public unowned Pango.TabArray get_tabs ();
355                 public unowned string get_text ();
356                 public int get_unknown_glyphs_count ();
357                 public int get_width ();
358                 public Pango.WrapMode get_wrap ();
359                 public void index_to_line_x (int index_, bool trailing, int line, int x_pos);
360                 public void index_to_pos (int index_, out Pango.Rectangle pos);
361                 public bool is_ellipsized ();
362                 public bool is_wrapped ();
363                 public void move_cursor_visually (bool strong, int old_index, int old_trailing, int direction, int new_index, int new_trailing);
364                 [CCode (has_construct_function = false)]
365                 public Layout (Pango.Context context);
366                 public void set_alignment (Pango.Alignment alignment);
367                 public void set_attributes (Pango.AttrList attrs);
368                 public void set_auto_dir (bool auto_dir);
369                 public void set_ellipsize (Pango.EllipsizeMode ellipsize);
370                 public void set_font_description (Pango.FontDescription desc);
371                 public void set_height (int height);
372                 public void set_indent (int indent);
373                 public void set_justify (bool justify);
374                 public void set_markup (string markup, int length);
375                 public void set_markup_with_accel (string markup, int length, unichar accel_marker, unichar accel_char);
376                 public void set_single_paragraph_mode (bool setting);
377                 public void set_spacing (int spacing);
378                 public void set_tabs (Pango.TabArray tabs);
379                 public void set_text (string text, int length);
380                 public void set_width (int width);
381                 public void set_wrap (Pango.WrapMode wrap);
382                 public bool xy_to_index (int x, int y, int index_, int trailing);
383         }
384         [Compact]
385         [CCode (cheader_filename = "pango/pango.h")]
386         public class LayoutClass {
387         }
388         [Compact]
389         [CCode (copy_function = "pango_layout_iter_copy", cheader_filename = "pango/pango.h")]
390         public class LayoutIter {
391                 public bool at_last_line ();
392                 public unowned Pango.LayoutIter copy ();
393                 public int get_baseline ();
394                 public void get_char_extents (out Pango.Rectangle logical_rect);
395                 public void get_cluster_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
396                 public int get_index ();
397                 public unowned Pango.Layout get_layout ();
398                 public void get_layout_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
399                 public unowned Pango.LayoutLine get_line ();
400                 public void get_line_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
401                 public unowned Pango.LayoutLine get_line_readonly ();
402                 public void get_line_yrange (out int y0_, out int y1_);
403                 public unowned Pango.LayoutRun get_run ();
404                 public void get_run_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
405                 public unowned Pango.LayoutRun get_run_readonly ();
406                 public bool next_char ();
407                 public bool next_cluster ();
408                 public bool next_line ();
409                 public bool next_run ();
410         }
411         [Compact]
412         [CCode (ref_function = "pango_layout_line_ref", unref_function = "pango_layout_line_unref", cheader_filename = "pango/pango.h")]
413         public class LayoutLine {
414                 public uint is_paragraph_start;
415                 public weak Pango.Layout layout;
416                 public int length;
417                 public uint resolved_dir;
418                 public weak GLib.SList runs;
419                 public int start_index;
420                 public void get_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
421                 public void get_pixel_extents (out Pango.Rectangle ink_rect, out Pango.Rectangle logical_rect);
422                 public void get_x_ranges (int start_index, int end_index, int[] ranges);
423                 public void index_to_x (int index_, bool trailing, int x_pos);
424                 public bool x_to_index (int x_pos, int index_, int trailing);
425         }
426         [Compact]
427         [CCode (cheader_filename = "pango/pango.h")]
428         public class LayoutRun {
429         }
430         [CCode (cheader_filename = "pango/pango.h")]
431         public class Renderer : GLib.Object {
432                 public int active_count;
433                 public Pango.Matrix matrix;
434                 public bool strikethrough;
435                 public Pango.Underline underline;
436                 public void activate ();
437                 [NoWrapper]
438                 public virtual void begin ();
439                 public void deactivate ();
440                 public virtual void draw_error_underline (int x, int y, int width, int height);
441                 public virtual void draw_glyph (Pango.Font font, Pango.Glyph glyph, double x, double y);
442                 public virtual void draw_glyphs (Pango.Font font, Pango.GlyphString glyphs, int x, int y);
443                 public void draw_layout (Pango.Layout layout, int x, int y);
444                 public void draw_layout_line (Pango.LayoutLine line, int x, int y);
445                 public virtual void draw_rectangle (Pango.RenderPart part, int x, int y, int width, int height);
446                 [NoWrapper]
447                 public virtual void draw_shape (Pango.AttrShape attr, int x, int y);
448                 public virtual void draw_trapezoid (Pango.RenderPart part, double y1_, double x11, double x21, double y2, double x12, double x22);
449                 [NoWrapper]
450                 public virtual void end ();
451                 public Pango.Color get_color (Pango.RenderPart part);
452                 public unowned Pango.Layout get_layout ();
453                 public unowned Pango.LayoutLine get_layout_line ();
454                 public Pango.Matrix get_matrix ();
455                 public virtual void part_changed (Pango.RenderPart part);
456                 [NoWrapper]
457                 public virtual void prepare_run (Pango.LayoutRun run);
458                 public void set_color (Pango.RenderPart part, Pango.Color color);
459                 public void set_matrix (Pango.Matrix matrix);
460         }
461         [Compact]
462         [CCode (cheader_filename = "pango/pango.h")]
463         public class ScriptIter {
464                 public void get_range (out unowned string start, out unowned string end, Pango.Script script);
465                 [CCode (has_construct_function = false)]
466                 public ScriptIter (string text, int length);
467                 public bool next ();
468         }
469         [Compact]
470         [CCode (copy_function = "pango_tab_array_copy", cheader_filename = "pango/pango.h")]
471         public class TabArray {
472                 public unowned Pango.TabArray copy ();
473                 public bool get_positions_in_pixels ();
474                 public int get_size ();
475                 public void get_tab (int tab_index, Pango.TabAlign alignment, int location);
476                 public void get_tabs (out Pango.TabAlign alignments, int locations);
477                 [CCode (has_construct_function = false)]
478                 public TabArray (int initial_size, bool positions_in_pixels);
479                 public void resize (int new_size);
480                 public void set_tab (int tab_index, Pango.TabAlign alignment, int location);
481                 [CCode (has_construct_function = false)]
482                 public TabArray.with_positions (int size, bool positions_in_pixels, Pango.TabAlign first_alignment, ...);
483         }
484         [CCode (type_id = "PANGO_TYPE_COLOR", cheader_filename = "pango/pango.h")]
485         public struct Color {
486                 public uint16 red;
487                 public uint16 green;
488                 public uint16 blue;
489                 public Pango.Color copy ();
490                 public void free ();
491                 public bool parse (string spec);
492                 public unowned string to_string ();
493         }
494         [CCode (type_id = "PANGO_TYPE_LOG_ATTR", cheader_filename = "pango/pango.h")]
495         public struct LogAttr {
496                 public uint is_line_break;
497                 public uint is_mandatory_break;
498                 public uint is_char_break;
499                 public uint is_white;
500                 public uint is_cursor_position;
501                 public uint is_word_start;
502                 public uint is_word_end;
503                 public uint is_sentence_boundary;
504                 public uint is_sentence_start;
505                 public uint is_sentence_end;
506                 public uint backspace_deletes_character;
507                 public uint is_expandable_space;
508                 public uint is_word_boundary;
509         }
510         [CCode (type_id = "PANGO_TYPE_MATRIX", cheader_filename = "pango/pango.h")]
511         public struct Matrix {
512                 public double xx;
513                 public double xy;
514                 public double yx;
515                 public double yy;
516                 public double x0;
517                 public double y0;
518                 public void concat (Pango.Matrix new_matrix);
519                 public Pango.Matrix copy ();
520                 public void free ();
521                 public double get_font_scale_factor ();
522                 public void rotate (double degrees);
523                 public void scale (double scale_x, double scale_y);
524                 public void transform_distance (double dx, double dy);
525                 public void transform_pixel_rectangle (ref Pango.Rectangle rect);
526                 public void transform_point (double x, double y);
527                 public void transform_rectangle (ref Pango.Rectangle rect);
528                 public void translate (double tx, double ty);
529         }
530         [CCode (type_id = "PANGO_TYPE_RECTANGLE", cheader_filename = "pango/pango.h")]
531         public struct Rectangle {
532                 public int x;
533                 public int y;
534                 public int width;
535                 public int height;
536         }
537         [CCode (cprefix = "PANGO_ALIGN_", cheader_filename = "pango/pango.h")]
538         public enum Alignment {
539                 LEFT,
540                 CENTER,
541                 RIGHT
542         }
543         [CCode (cprefix = "PANGO_ATTR_", cheader_filename = "pango/pango.h")]
544         public enum AttrType {
545                 INVALID,
546                 LANGUAGE,
547                 FAMILY,
548                 STYLE,
549                 WEIGHT,
550                 VARIANT,
551                 STRETCH,
552                 SIZE,
553                 FONT_DESC,
554                 FOREGROUND,
555                 BACKGROUND,
556                 UNDERLINE,
557                 STRIKETHROUGH,
558                 RISE,
559                 SHAPE,
560                 SCALE,
561                 FALLBACK,
562                 LETTER_SPACING,
563                 UNDERLINE_COLOR,
564                 STRIKETHROUGH_COLOR,
565                 ABSOLUTE_SIZE,
566                 GRAVITY,
567                 GRAVITY_HINT
568         }
569         [CCode (cprefix = "PANGO_BIDI_TYPE_", cheader_filename = "pango/pango.h")]
570         public enum BidiType {
571                 L,
572                 LRE,
573                 LRO,
574                 R,
575                 AL,
576                 RLE,
577                 RLO,
578                 PDF,
579                 EN,
580                 ES,
581                 ET,
582                 AN,
583                 CS,
584                 NSM,
585                 BN,
586                 B,
587                 S,
588                 WS,
589                 ON
590         }
591         [CCode (cprefix = "PANGO_COVERAGE_", cheader_filename = "pango/pango.h")]
592         public enum CoverageLevel {
593                 NONE,
594                 FALLBACK,
595                 APPROXIMATE,
596                 EXACT
597         }
598         [CCode (cprefix = "PANGO_DIRECTION_", cheader_filename = "pango/pango.h")]
599         public enum Direction {
600                 LTR,
601                 RTL,
602                 TTB_LTR,
603                 TTB_RTL,
604                 WEAK_LTR,
605                 WEAK_RTL,
606                 NEUTRAL
607         }
608         [CCode (cprefix = "PANGO_ELLIPSIZE_", cheader_filename = "pango/pango.h")]
609         public enum EllipsizeMode {
610                 NONE,
611                 START,
612                 MIDDLE,
613                 END
614         }
615         [CCode (cprefix = "PANGO_FONT_MASK_", cheader_filename = "pango/pango.h")]
616         [Flags]
617         public enum FontMask {
618                 FAMILY,
619                 STYLE,
620                 VARIANT,
621                 WEIGHT,
622                 STRETCH,
623                 SIZE,
624                 GRAVITY
625         }
626         [CCode (cprefix = "PANGO_GRAVITY_", cheader_filename = "pango/pango.h")]
627         public enum Gravity {
628                 SOUTH,
629                 EAST,
630                 NORTH,
631                 WEST,
632                 AUTO
633         }
634         [CCode (cprefix = "PANGO_GRAVITY_HINT_", cheader_filename = "pango/pango.h")]
635         public enum GravityHint {
636                 NATURAL,
637                 STRONG,
638                 LINE
639         }
640         [CCode (cprefix = "PANGO_RENDER_PART_", cheader_filename = "pango/pango.h")]
641         public enum RenderPart {
642                 FOREGROUND,
643                 BACKGROUND,
644                 UNDERLINE,
645                 STRIKETHROUGH
646         }
647         [CCode (cprefix = "PANGO_SCALE_", cheader_filename = "pango/pango.h")]
648         public enum Scale {
649                 XX_SMALL,
650                 X_SMALL,
651                 SMALL,
652                 MEDIUM,
653                 LARGE,
654                 X_LARGE,
655                 XX_LARGE
656         }
657         [CCode (cprefix = "PANGO_SCRIPT_", cheader_filename = "pango/pango.h")]
658         public enum Script {
659                 INVALID_CODE,
660                 COMMON,
661                 INHERITED,
662                 ARABIC,
663                 ARMENIAN,
664                 BENGALI,
665                 BOPOMOFO,
666                 CHEROKEE,
667                 COPTIC,
668                 CYRILLIC,
669                 DESERET,
670                 DEVANAGARI,
671                 ETHIOPIC,
672                 GEORGIAN,
673                 GOTHIC,
674                 GREEK,
675                 GUJARATI,
676                 GURMUKHI,
677                 HAN,
678                 HANGUL,
679                 HEBREW,
680                 HIRAGANA,
681                 KANNADA,
682                 KATAKANA,
683                 KHMER,
684                 LAO,
685                 LATIN,
686                 MALAYALAM,
687                 MONGOLIAN,
688                 MYANMAR,
689                 OGHAM,
690                 OLD_ITALIC,
691                 ORIYA,
692                 RUNIC,
693                 SINHALA,
694                 SYRIAC,
695                 TAMIL,
696                 TELUGU,
697                 THAANA,
698                 THAI,
699                 TIBETAN,
700                 CANADIAN_ABORIGINAL,
701                 YI,
702                 TAGALOG,
703                 HANUNOO,
704                 BUHID,
705                 TAGBANWA,
706                 BRAILLE,
707                 CYPRIOT,
708                 LIMBU,
709                 OSMANYA,
710                 SHAVIAN,
711                 LINEAR_B,
712                 TAI_LE,
713                 UGARITIC,
714                 NEW_TAI_LUE,
715                 BUGINESE,
716                 GLAGOLITIC,
717                 TIFINAGH,
718                 SYLOTI_NAGRI,
719                 OLD_PERSIAN,
720                 KHAROSHTHI,
721                 UNKNOWN,
722                 BALINESE,
723                 CUNEIFORM,
724                 PHOENICIAN,
725                 PHAGS_PA,
726                 NKO,
727                 KAYAH_LI,
728                 LEPCHA,
729                 REJANG,
730                 SUNDANESE,
731                 SAURASHTRA,
732                 CHAM,
733                 OL_CHIKI,
734                 VAI,
735                 CARIAN,
736                 LYCIAN,
737                 LYDIAN
738         }
739         [CCode (cprefix = "PANGO_STRETCH_", cheader_filename = "pango/pango.h")]
740         public enum Stretch {
741                 ULTRA_CONDENSED,
742                 EXTRA_CONDENSED,
743                 CONDENSED,
744                 SEMI_CONDENSED,
745                 NORMAL,
746                 SEMI_EXPANDED,
747                 EXPANDED,
748                 EXTRA_EXPANDED,
749                 ULTRA_EXPANDED
750         }
751         [CCode (cprefix = "PANGO_STYLE_", cheader_filename = "pango/pango.h")]
752         public enum Style {
753                 NORMAL,
754                 OBLIQUE,
755                 ITALIC
756         }
757         [CCode (cprefix = "PANGO_TAB_", cheader_filename = "pango/pango.h")]
758         public enum TabAlign {
759                 LEFT
760         }
761         [CCode (cprefix = "PANGO_UNDERLINE_", cheader_filename = "pango/pango.h")]
762         public enum Underline {
763                 NONE,
764                 SINGLE,
765                 DOUBLE,
766                 LOW,
767                 ERROR
768         }
769         [CCode (cprefix = "PANGO_VARIANT_", cheader_filename = "pango/pango.h")]
770         public enum Variant {
771                 NORMAL,
772                 SMALL_CAPS
773         }
774         [CCode (cprefix = "PANGO_WEIGHT_", cheader_filename = "pango/pango.h")]
775         public enum Weight {
776                 ULTRALIGHT,
777                 LIGHT,
778                 NORMAL,
779                 SEMIBOLD,
780                 BOLD,
781                 ULTRABOLD,
782                 HEAVY
783         }
784         [CCode (cprefix = "PANGO_WRAP_", cheader_filename = "pango/pango.h")]
785         public enum WrapMode {
786                 WORD,
787                 CHAR,
788                 WORD_CHAR
789         }
790         [CCode (cheader_filename = "pango/pango.h")]
791         public delegate void* AttrDataCopyFunc ();
792         [CCode (cheader_filename = "pango/pango.h")]
793         public delegate bool AttrFilterFunc (Pango.Attribute attribute);
794         [CCode (cheader_filename = "pango/pango.h")]
795         public delegate bool FontsetForeachFunc (Pango.Fontset fontset, Pango.Font font);
796         [CCode (cheader_filename = "pango/pango.h")]
797         public const int ANALYSIS_FLAG_CENTERED_BASELINE;
798         [CCode (cheader_filename = "pango/pango.h")]
799         public const string ENGINE_TYPE_LANG;
800         [CCode (cheader_filename = "pango/pango.h")]
801         public const string ENGINE_TYPE_SHAPE;
802         [CCode (cheader_filename = "pango/pango.h")]
803         public const string RENDER_TYPE_NONE;
804         [CCode (cheader_filename = "pango/pango.h")]
805         public const int SCALE;
806         [CCode (cheader_filename = "pango/pango.h")]
807         public const int UNKNOWN_GLYPH_HEIGHT;
808         [CCode (cheader_filename = "pango/pango.h")]
809         public const int UNKNOWN_GLYPH_WIDTH;
810         [CCode (cheader_filename = "pango/pango.h")]
811         public const int VERSION_MAJOR;
812         [CCode (cheader_filename = "pango/pango.h")]
813         public const int VERSION_MICRO;
814         [CCode (cheader_filename = "pango/pango.h")]
815         public const int VERSION_MINOR;
816         [CCode (cheader_filename = "pango/pango.h")]
817         public const string VERSION_STRING;
818         [CCode (cheader_filename = "pango/pango.h")]
819         public static unowned Pango.Attribute attr_background_new (uint16 red, uint16 green, uint16 blue);
820         [CCode (cheader_filename = "pango/pango.h")]
821         public static unowned Pango.Attribute attr_fallback_new (bool enable_fallback);
822         [CCode (cheader_filename = "pango/pango.h")]
823         public static unowned Pango.Attribute attr_family_new (string family);
824         [CCode (cheader_filename = "pango/pango.h")]
825         public static unowned Pango.Attribute attr_foreground_new (uint16 red, uint16 green, uint16 blue);
826         [CCode (cheader_filename = "pango/pango.h")]
827         public static unowned Pango.Attribute attr_gravity_hint_new (Pango.GravityHint hint);
828         [CCode (cheader_filename = "pango/pango.h")]
829         public static unowned Pango.Attribute attr_gravity_new (Pango.Gravity gravity);
830         [CCode (cheader_filename = "pango/pango.h")]
831         public static unowned Pango.Attribute attr_letter_spacing_new (int letter_spacing);
832         [CCode (cheader_filename = "pango/pango.h")]
833         public static unowned Pango.Attribute attr_rise_new (int rise);
834         [CCode (cheader_filename = "pango/pango.h")]
835         public static unowned Pango.Attribute attr_scale_new (double scale_factor);
836         [CCode (cheader_filename = "pango/pango.h")]
837         public static unowned Pango.Attribute attr_stretch_new (Pango.Stretch stretch);
838         [CCode (cheader_filename = "pango/pango.h")]
839         public static unowned Pango.Attribute attr_strikethrough_color_new (uint16 red, uint16 green, uint16 blue);
840         [CCode (cheader_filename = "pango/pango.h")]
841         public static unowned Pango.Attribute attr_strikethrough_new (bool strikethrough);
842         [CCode (cheader_filename = "pango/pango.h")]
843         public static unowned Pango.Attribute attr_style_new (Pango.Style style);
844         [CCode (cheader_filename = "pango/pango.h")]
845         public static unowned string attr_type_get_name (Pango.AttrType type);
846         [CCode (cheader_filename = "pango/pango.h")]
847         public static Pango.AttrType attr_type_register (string name);
848         [CCode (cheader_filename = "pango/pango.h")]
849         public static unowned Pango.Attribute attr_underline_color_new (uint16 red, uint16 green, uint16 blue);
850         [CCode (cheader_filename = "pango/pango.h")]
851         public static unowned Pango.Attribute attr_underline_new (Pango.Underline underline);
852         [CCode (cheader_filename = "pango/pango.h")]
853         public static unowned Pango.Attribute attr_variant_new (Pango.Variant variant);
854         [CCode (cheader_filename = "pango/pango.h")]
855         public static unowned Pango.Attribute attr_weight_new (Pango.Weight weight);
856         [CCode (cheader_filename = "pango/pango.h")]
857         public static Pango.BidiType bidi_type_for_unichar (unichar ch);
858         [CCode (cheader_filename = "pango/pango.h")]
859         public static void @break (string text, int length, Pango.Analysis analysis, Pango.LogAttr[] attrs, int attrs_len);
860         [CCode (cheader_filename = "pango/pango.h")]
861         public static void extents_to_pixels (ref Pango.Rectangle inclusive, ref Pango.Rectangle nearest);
862         [CCode (cheader_filename = "pango/pango.h")]
863         public static Pango.Direction find_base_dir (string text, int length);
864         [CCode (cheader_filename = "pango/pango.h")]
865         public static void find_paragraph_boundary (string text, int length, int paragraph_delimiter_index, int next_paragraph_start);
866         [CCode (cheader_filename = "pango/pango.h")]
867         public static void get_log_attrs (string text, int length, int level, Pango.Language language, Pango.LogAttr[] log_attrs, int attrs_len);
868         [CCode (cheader_filename = "pango/pango.h")]
869         public static Pango.Gravity gravity_get_for_matrix (Pango.Matrix matrix);
870         [CCode (cheader_filename = "pango/pango.h")]
871         public static Pango.Gravity gravity_get_for_script (Pango.Script script, Pango.Gravity base_gravity, Pango.GravityHint hint);
872         [CCode (cheader_filename = "pango/pango.h")]
873         public static double gravity_to_rotation (Pango.Gravity gravity);
874         [CCode (cheader_filename = "pango/pango.h")]
875         public static bool is_zero_width (unichar ch);
876         [CCode (cheader_filename = "pango/pango.h")]
877         public static unowned GLib.List itemize (Pango.Context context, string text, int start_index, int length, Pango.AttrList attrs, Pango.AttrIterator cached_iter);
878         [CCode (cheader_filename = "pango/pango.h")]
879         public static unowned GLib.List 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);
880         [CCode (cheader_filename = "pango/pango.h")]
881         public static uchar log2vis_get_embedding_levels (string text, int length, Pango.Direction pbase_dir);
882         [CCode (cheader_filename = "pango/pango.h")]
883         public static bool parse_enum (GLib.Type type, string str, int value, bool warn, out unowned string possible_values);
884         [CCode (cheader_filename = "pango/pango.h")]
885         public static bool parse_markup (string markup_text, int length, unichar accel_marker, out unowned Pango.AttrList attr_list, out unowned string text, unichar accel_char) throws GLib.Error;
886         [CCode (cheader_filename = "pango/pango.h")]
887         public static bool parse_stretch (string str, Pango.Stretch stretch, bool warn);
888         [CCode (cheader_filename = "pango/pango.h")]
889         public static bool parse_style (string str, Pango.Style style, bool warn);
890         [CCode (cheader_filename = "pango/pango.h")]
891         public static bool parse_variant (string str, Pango.Variant variant, bool warn);
892         [CCode (cheader_filename = "pango/pango.h")]
893         public static bool parse_weight (string str, Pango.Weight weight, bool warn);
894         [CCode (cheader_filename = "pango/pango.h")]
895         public static void quantize_line_geometry (int thickness, int position);
896         [CCode (cheader_filename = "pango/pango.h")]
897         public static int read_line (GLib.FileStream stream, GLib.StringBuilder str);
898         [CCode (cheader_filename = "pango/pango.h")]
899         public static unowned GLib.List reorder_items (GLib.List logical_items);
900         [CCode (cheader_filename = "pango/pango.h")]
901         public static bool scan_int (out unowned string pos, int @out);
902         [CCode (cheader_filename = "pango/pango.h")]
903         public static bool scan_string (out unowned string pos, GLib.StringBuilder @out);
904         [CCode (cheader_filename = "pango/pango.h")]
905         public static bool scan_word (out unowned string pos, GLib.StringBuilder @out);
906         [CCode (cheader_filename = "pango/pango.h")]
907         public static Pango.Script script_for_unichar (unichar ch);
908         [CCode (cheader_filename = "pango/pango.h")]
909         public static unowned Pango.Language script_get_sample_language (Pango.Script script);
910         [CCode (cheader_filename = "pango/pango.h")]
911         public static void shape (string text, int length, Pango.Analysis analysis, Pango.GlyphString glyphs);
912         [CCode (cheader_filename = "pango/pango.h")]
913         public static bool skip_space (out unowned string pos);
914         [CCode (cheader_filename = "pango/pango.h")]
915         public static unowned string split_file_list (string str);
916         [CCode (cheader_filename = "pango/pango.h")]
917         public static unowned string trim_string (string str);
918         [CCode (cheader_filename = "pango/pango.h")]
919         public static Pango.Direction unichar_direction (unichar ch);
920         [CCode (cheader_filename = "pango/pango.h")]
921         public static int units_from_double (double d);
922         [CCode (cheader_filename = "pango/pango.h")]
923         public static double units_to_double (int i);
924         [CCode (cheader_filename = "pango/pango.h")]
925         public static int version ();
926         [CCode (cheader_filename = "pango/pango.h")]
927         public static unowned string version_check (int required_major, int required_minor, int required_micro);
928         [CCode (cheader_filename = "pango/pango.h")]
929         public static unowned string version_string ();