1 // This file was generated by gir (https://github.com/gtk-rs/gir)
2 // from gir-files (https://github.com/gtk-rs/gir-files)
3 // DO NOT EDIT
4 
5 #![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
6 #![allow(
7     clippy::approx_constant,
8     clippy::type_complexity,
9     clippy::unreadable_literal
10 )]
11 
12 extern crate glib_sys as glib;
13 extern crate gobject_sys as gobject;
14 extern crate libc;
15 
16 #[allow(unused_imports)]
17 use libc::{
18     c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
19     intptr_t, size_t, ssize_t, time_t, uintptr_t, FILE,
20 };
21 
22 #[allow(unused_imports)]
23 use glib::{gboolean, gconstpointer, gpointer, GType};
24 
25 // Aliases
26 pub type PangoGlyph = u32;
27 pub type PangoGlyphUnit = i32;
28 pub type PangoLayoutRun = PangoGlyphItem;
29 
30 // Enums
31 pub type PangoAlignment = c_int;
32 pub const PANGO_ALIGN_LEFT: PangoAlignment = 0;
33 pub const PANGO_ALIGN_CENTER: PangoAlignment = 1;
34 pub const PANGO_ALIGN_RIGHT: PangoAlignment = 2;
35 
36 pub type PangoAttrType = c_int;
37 pub const PANGO_ATTR_INVALID: PangoAttrType = 0;
38 pub const PANGO_ATTR_LANGUAGE: PangoAttrType = 1;
39 pub const PANGO_ATTR_FAMILY: PangoAttrType = 2;
40 pub const PANGO_ATTR_STYLE: PangoAttrType = 3;
41 pub const PANGO_ATTR_WEIGHT: PangoAttrType = 4;
42 pub const PANGO_ATTR_VARIANT: PangoAttrType = 5;
43 pub const PANGO_ATTR_STRETCH: PangoAttrType = 6;
44 pub const PANGO_ATTR_SIZE: PangoAttrType = 7;
45 pub const PANGO_ATTR_FONT_DESC: PangoAttrType = 8;
46 pub const PANGO_ATTR_FOREGROUND: PangoAttrType = 9;
47 pub const PANGO_ATTR_BACKGROUND: PangoAttrType = 10;
48 pub const PANGO_ATTR_UNDERLINE: PangoAttrType = 11;
49 pub const PANGO_ATTR_STRIKETHROUGH: PangoAttrType = 12;
50 pub const PANGO_ATTR_RISE: PangoAttrType = 13;
51 pub const PANGO_ATTR_SHAPE: PangoAttrType = 14;
52 pub const PANGO_ATTR_SCALE: PangoAttrType = 15;
53 pub const PANGO_ATTR_FALLBACK: PangoAttrType = 16;
54 pub const PANGO_ATTR_LETTER_SPACING: PangoAttrType = 17;
55 pub const PANGO_ATTR_UNDERLINE_COLOR: PangoAttrType = 18;
56 pub const PANGO_ATTR_STRIKETHROUGH_COLOR: PangoAttrType = 19;
57 pub const PANGO_ATTR_ABSOLUTE_SIZE: PangoAttrType = 20;
58 pub const PANGO_ATTR_GRAVITY: PangoAttrType = 21;
59 pub const PANGO_ATTR_GRAVITY_HINT: PangoAttrType = 22;
60 pub const PANGO_ATTR_FONT_FEATURES: PangoAttrType = 23;
61 pub const PANGO_ATTR_FOREGROUND_ALPHA: PangoAttrType = 24;
62 pub const PANGO_ATTR_BACKGROUND_ALPHA: PangoAttrType = 25;
63 
64 pub type PangoBidiType = c_int;
65 pub const PANGO_BIDI_TYPE_L: PangoBidiType = 0;
66 pub const PANGO_BIDI_TYPE_LRE: PangoBidiType = 1;
67 pub const PANGO_BIDI_TYPE_LRO: PangoBidiType = 2;
68 pub const PANGO_BIDI_TYPE_R: PangoBidiType = 3;
69 pub const PANGO_BIDI_TYPE_AL: PangoBidiType = 4;
70 pub const PANGO_BIDI_TYPE_RLE: PangoBidiType = 5;
71 pub const PANGO_BIDI_TYPE_RLO: PangoBidiType = 6;
72 pub const PANGO_BIDI_TYPE_PDF: PangoBidiType = 7;
73 pub const PANGO_BIDI_TYPE_EN: PangoBidiType = 8;
74 pub const PANGO_BIDI_TYPE_ES: PangoBidiType = 9;
75 pub const PANGO_BIDI_TYPE_ET: PangoBidiType = 10;
76 pub const PANGO_BIDI_TYPE_AN: PangoBidiType = 11;
77 pub const PANGO_BIDI_TYPE_CS: PangoBidiType = 12;
78 pub const PANGO_BIDI_TYPE_NSM: PangoBidiType = 13;
79 pub const PANGO_BIDI_TYPE_BN: PangoBidiType = 14;
80 pub const PANGO_BIDI_TYPE_B: PangoBidiType = 15;
81 pub const PANGO_BIDI_TYPE_S: PangoBidiType = 16;
82 pub const PANGO_BIDI_TYPE_WS: PangoBidiType = 17;
83 pub const PANGO_BIDI_TYPE_ON: PangoBidiType = 18;
84 
85 pub type PangoCoverageLevel = c_int;
86 pub const PANGO_COVERAGE_NONE: PangoCoverageLevel = 0;
87 pub const PANGO_COVERAGE_FALLBACK: PangoCoverageLevel = 1;
88 pub const PANGO_COVERAGE_APPROXIMATE: PangoCoverageLevel = 2;
89 pub const PANGO_COVERAGE_EXACT: PangoCoverageLevel = 3;
90 
91 pub type PangoDirection = c_int;
92 pub const PANGO_DIRECTION_LTR: PangoDirection = 0;
93 pub const PANGO_DIRECTION_RTL: PangoDirection = 1;
94 pub const PANGO_DIRECTION_TTB_LTR: PangoDirection = 2;
95 pub const PANGO_DIRECTION_TTB_RTL: PangoDirection = 3;
96 pub const PANGO_DIRECTION_WEAK_LTR: PangoDirection = 4;
97 pub const PANGO_DIRECTION_WEAK_RTL: PangoDirection = 5;
98 pub const PANGO_DIRECTION_NEUTRAL: PangoDirection = 6;
99 
100 pub type PangoEllipsizeMode = c_int;
101 pub const PANGO_ELLIPSIZE_NONE: PangoEllipsizeMode = 0;
102 pub const PANGO_ELLIPSIZE_START: PangoEllipsizeMode = 1;
103 pub const PANGO_ELLIPSIZE_MIDDLE: PangoEllipsizeMode = 2;
104 pub const PANGO_ELLIPSIZE_END: PangoEllipsizeMode = 3;
105 
106 pub type PangoGravity = c_int;
107 pub const PANGO_GRAVITY_SOUTH: PangoGravity = 0;
108 pub const PANGO_GRAVITY_EAST: PangoGravity = 1;
109 pub const PANGO_GRAVITY_NORTH: PangoGravity = 2;
110 pub const PANGO_GRAVITY_WEST: PangoGravity = 3;
111 pub const PANGO_GRAVITY_AUTO: PangoGravity = 4;
112 
113 pub type PangoGravityHint = c_int;
114 pub const PANGO_GRAVITY_HINT_NATURAL: PangoGravityHint = 0;
115 pub const PANGO_GRAVITY_HINT_STRONG: PangoGravityHint = 1;
116 pub const PANGO_GRAVITY_HINT_LINE: PangoGravityHint = 2;
117 
118 pub type PangoRenderPart = c_int;
119 pub const PANGO_RENDER_PART_FOREGROUND: PangoRenderPart = 0;
120 pub const PANGO_RENDER_PART_BACKGROUND: PangoRenderPart = 1;
121 pub const PANGO_RENDER_PART_UNDERLINE: PangoRenderPart = 2;
122 pub const PANGO_RENDER_PART_STRIKETHROUGH: PangoRenderPart = 3;
123 
124 pub type PangoScript = c_int;
125 pub const PANGO_SCRIPT_INVALID_CODE: PangoScript = -1;
126 pub const PANGO_SCRIPT_COMMON: PangoScript = 0;
127 pub const PANGO_SCRIPT_INHERITED: PangoScript = 1;
128 pub const PANGO_SCRIPT_ARABIC: PangoScript = 2;
129 pub const PANGO_SCRIPT_ARMENIAN: PangoScript = 3;
130 pub const PANGO_SCRIPT_BENGALI: PangoScript = 4;
131 pub const PANGO_SCRIPT_BOPOMOFO: PangoScript = 5;
132 pub const PANGO_SCRIPT_CHEROKEE: PangoScript = 6;
133 pub const PANGO_SCRIPT_COPTIC: PangoScript = 7;
134 pub const PANGO_SCRIPT_CYRILLIC: PangoScript = 8;
135 pub const PANGO_SCRIPT_DESERET: PangoScript = 9;
136 pub const PANGO_SCRIPT_DEVANAGARI: PangoScript = 10;
137 pub const PANGO_SCRIPT_ETHIOPIC: PangoScript = 11;
138 pub const PANGO_SCRIPT_GEORGIAN: PangoScript = 12;
139 pub const PANGO_SCRIPT_GOTHIC: PangoScript = 13;
140 pub const PANGO_SCRIPT_GREEK: PangoScript = 14;
141 pub const PANGO_SCRIPT_GUJARATI: PangoScript = 15;
142 pub const PANGO_SCRIPT_GURMUKHI: PangoScript = 16;
143 pub const PANGO_SCRIPT_HAN: PangoScript = 17;
144 pub const PANGO_SCRIPT_HANGUL: PangoScript = 18;
145 pub const PANGO_SCRIPT_HEBREW: PangoScript = 19;
146 pub const PANGO_SCRIPT_HIRAGANA: PangoScript = 20;
147 pub const PANGO_SCRIPT_KANNADA: PangoScript = 21;
148 pub const PANGO_SCRIPT_KATAKANA: PangoScript = 22;
149 pub const PANGO_SCRIPT_KHMER: PangoScript = 23;
150 pub const PANGO_SCRIPT_LAO: PangoScript = 24;
151 pub const PANGO_SCRIPT_LATIN: PangoScript = 25;
152 pub const PANGO_SCRIPT_MALAYALAM: PangoScript = 26;
153 pub const PANGO_SCRIPT_MONGOLIAN: PangoScript = 27;
154 pub const PANGO_SCRIPT_MYANMAR: PangoScript = 28;
155 pub const PANGO_SCRIPT_OGHAM: PangoScript = 29;
156 pub const PANGO_SCRIPT_OLD_ITALIC: PangoScript = 30;
157 pub const PANGO_SCRIPT_ORIYA: PangoScript = 31;
158 pub const PANGO_SCRIPT_RUNIC: PangoScript = 32;
159 pub const PANGO_SCRIPT_SINHALA: PangoScript = 33;
160 pub const PANGO_SCRIPT_SYRIAC: PangoScript = 34;
161 pub const PANGO_SCRIPT_TAMIL: PangoScript = 35;
162 pub const PANGO_SCRIPT_TELUGU: PangoScript = 36;
163 pub const PANGO_SCRIPT_THAANA: PangoScript = 37;
164 pub const PANGO_SCRIPT_THAI: PangoScript = 38;
165 pub const PANGO_SCRIPT_TIBETAN: PangoScript = 39;
166 pub const PANGO_SCRIPT_CANADIAN_ABORIGINAL: PangoScript = 40;
167 pub const PANGO_SCRIPT_YI: PangoScript = 41;
168 pub const PANGO_SCRIPT_TAGALOG: PangoScript = 42;
169 pub const PANGO_SCRIPT_HANUNOO: PangoScript = 43;
170 pub const PANGO_SCRIPT_BUHID: PangoScript = 44;
171 pub const PANGO_SCRIPT_TAGBANWA: PangoScript = 45;
172 pub const PANGO_SCRIPT_BRAILLE: PangoScript = 46;
173 pub const PANGO_SCRIPT_CYPRIOT: PangoScript = 47;
174 pub const PANGO_SCRIPT_LIMBU: PangoScript = 48;
175 pub const PANGO_SCRIPT_OSMANYA: PangoScript = 49;
176 pub const PANGO_SCRIPT_SHAVIAN: PangoScript = 50;
177 pub const PANGO_SCRIPT_LINEAR_B: PangoScript = 51;
178 pub const PANGO_SCRIPT_TAI_LE: PangoScript = 52;
179 pub const PANGO_SCRIPT_UGARITIC: PangoScript = 53;
180 pub const PANGO_SCRIPT_NEW_TAI_LUE: PangoScript = 54;
181 pub const PANGO_SCRIPT_BUGINESE: PangoScript = 55;
182 pub const PANGO_SCRIPT_GLAGOLITIC: PangoScript = 56;
183 pub const PANGO_SCRIPT_TIFINAGH: PangoScript = 57;
184 pub const PANGO_SCRIPT_SYLOTI_NAGRI: PangoScript = 58;
185 pub const PANGO_SCRIPT_OLD_PERSIAN: PangoScript = 59;
186 pub const PANGO_SCRIPT_KHAROSHTHI: PangoScript = 60;
187 pub const PANGO_SCRIPT_UNKNOWN: PangoScript = 61;
188 pub const PANGO_SCRIPT_BALINESE: PangoScript = 62;
189 pub const PANGO_SCRIPT_CUNEIFORM: PangoScript = 63;
190 pub const PANGO_SCRIPT_PHOENICIAN: PangoScript = 64;
191 pub const PANGO_SCRIPT_PHAGS_PA: PangoScript = 65;
192 pub const PANGO_SCRIPT_NKO: PangoScript = 66;
193 pub const PANGO_SCRIPT_KAYAH_LI: PangoScript = 67;
194 pub const PANGO_SCRIPT_LEPCHA: PangoScript = 68;
195 pub const PANGO_SCRIPT_REJANG: PangoScript = 69;
196 pub const PANGO_SCRIPT_SUNDANESE: PangoScript = 70;
197 pub const PANGO_SCRIPT_SAURASHTRA: PangoScript = 71;
198 pub const PANGO_SCRIPT_CHAM: PangoScript = 72;
199 pub const PANGO_SCRIPT_OL_CHIKI: PangoScript = 73;
200 pub const PANGO_SCRIPT_VAI: PangoScript = 74;
201 pub const PANGO_SCRIPT_CARIAN: PangoScript = 75;
202 pub const PANGO_SCRIPT_LYCIAN: PangoScript = 76;
203 pub const PANGO_SCRIPT_LYDIAN: PangoScript = 77;
204 pub const PANGO_SCRIPT_BATAK: PangoScript = 78;
205 pub const PANGO_SCRIPT_BRAHMI: PangoScript = 79;
206 pub const PANGO_SCRIPT_MANDAIC: PangoScript = 80;
207 pub const PANGO_SCRIPT_CHAKMA: PangoScript = 81;
208 pub const PANGO_SCRIPT_MEROITIC_CURSIVE: PangoScript = 82;
209 pub const PANGO_SCRIPT_MEROITIC_HIEROGLYPHS: PangoScript = 83;
210 pub const PANGO_SCRIPT_MIAO: PangoScript = 84;
211 pub const PANGO_SCRIPT_SHARADA: PangoScript = 85;
212 pub const PANGO_SCRIPT_SORA_SOMPENG: PangoScript = 86;
213 pub const PANGO_SCRIPT_TAKRI: PangoScript = 87;
214 pub const PANGO_SCRIPT_BASSA_VAH: PangoScript = 88;
215 pub const PANGO_SCRIPT_CAUCASIAN_ALBANIAN: PangoScript = 89;
216 pub const PANGO_SCRIPT_DUPLOYAN: PangoScript = 90;
217 pub const PANGO_SCRIPT_ELBASAN: PangoScript = 91;
218 pub const PANGO_SCRIPT_GRANTHA: PangoScript = 92;
219 pub const PANGO_SCRIPT_KHOJKI: PangoScript = 93;
220 pub const PANGO_SCRIPT_KHUDAWADI: PangoScript = 94;
221 pub const PANGO_SCRIPT_LINEAR_A: PangoScript = 95;
222 pub const PANGO_SCRIPT_MAHAJANI: PangoScript = 96;
223 pub const PANGO_SCRIPT_MANICHAEAN: PangoScript = 97;
224 pub const PANGO_SCRIPT_MENDE_KIKAKUI: PangoScript = 98;
225 pub const PANGO_SCRIPT_MODI: PangoScript = 99;
226 pub const PANGO_SCRIPT_MRO: PangoScript = 100;
227 pub const PANGO_SCRIPT_NABATAEAN: PangoScript = 101;
228 pub const PANGO_SCRIPT_OLD_NORTH_ARABIAN: PangoScript = 102;
229 pub const PANGO_SCRIPT_OLD_PERMIC: PangoScript = 103;
230 pub const PANGO_SCRIPT_PAHAWH_HMONG: PangoScript = 104;
231 pub const PANGO_SCRIPT_PALMYRENE: PangoScript = 105;
232 pub const PANGO_SCRIPT_PAU_CIN_HAU: PangoScript = 106;
233 pub const PANGO_SCRIPT_PSALTER_PAHLAVI: PangoScript = 107;
234 pub const PANGO_SCRIPT_SIDDHAM: PangoScript = 108;
235 pub const PANGO_SCRIPT_TIRHUTA: PangoScript = 109;
236 pub const PANGO_SCRIPT_WARANG_CITI: PangoScript = 110;
237 pub const PANGO_SCRIPT_AHOM: PangoScript = 111;
238 pub const PANGO_SCRIPT_ANATOLIAN_HIEROGLYPHS: PangoScript = 112;
239 pub const PANGO_SCRIPT_HATRAN: PangoScript = 113;
240 pub const PANGO_SCRIPT_MULTANI: PangoScript = 114;
241 pub const PANGO_SCRIPT_OLD_HUNGARIAN: PangoScript = 115;
242 pub const PANGO_SCRIPT_SIGNWRITING: PangoScript = 116;
243 
244 pub type PangoStretch = c_int;
245 pub const PANGO_STRETCH_ULTRA_CONDENSED: PangoStretch = 0;
246 pub const PANGO_STRETCH_EXTRA_CONDENSED: PangoStretch = 1;
247 pub const PANGO_STRETCH_CONDENSED: PangoStretch = 2;
248 pub const PANGO_STRETCH_SEMI_CONDENSED: PangoStretch = 3;
249 pub const PANGO_STRETCH_NORMAL: PangoStretch = 4;
250 pub const PANGO_STRETCH_SEMI_EXPANDED: PangoStretch = 5;
251 pub const PANGO_STRETCH_EXPANDED: PangoStretch = 6;
252 pub const PANGO_STRETCH_EXTRA_EXPANDED: PangoStretch = 7;
253 pub const PANGO_STRETCH_ULTRA_EXPANDED: PangoStretch = 8;
254 
255 pub type PangoStyle = c_int;
256 pub const PANGO_STYLE_NORMAL: PangoStyle = 0;
257 pub const PANGO_STYLE_OBLIQUE: PangoStyle = 1;
258 pub const PANGO_STYLE_ITALIC: PangoStyle = 2;
259 
260 pub type PangoTabAlign = c_int;
261 pub const PANGO_TAB_LEFT: PangoTabAlign = 0;
262 
263 pub type PangoUnderline = c_int;
264 pub const PANGO_UNDERLINE_NONE: PangoUnderline = 0;
265 pub const PANGO_UNDERLINE_SINGLE: PangoUnderline = 1;
266 pub const PANGO_UNDERLINE_DOUBLE: PangoUnderline = 2;
267 pub const PANGO_UNDERLINE_LOW: PangoUnderline = 3;
268 pub const PANGO_UNDERLINE_ERROR: PangoUnderline = 4;
269 
270 pub type PangoVariant = c_int;
271 pub const PANGO_VARIANT_NORMAL: PangoVariant = 0;
272 pub const PANGO_VARIANT_SMALL_CAPS: PangoVariant = 1;
273 
274 pub type PangoWeight = c_int;
275 pub const PANGO_WEIGHT_THIN: PangoWeight = 100;
276 pub const PANGO_WEIGHT_ULTRALIGHT: PangoWeight = 200;
277 pub const PANGO_WEIGHT_LIGHT: PangoWeight = 300;
278 pub const PANGO_WEIGHT_SEMILIGHT: PangoWeight = 350;
279 pub const PANGO_WEIGHT_BOOK: PangoWeight = 380;
280 pub const PANGO_WEIGHT_NORMAL: PangoWeight = 400;
281 pub const PANGO_WEIGHT_MEDIUM: PangoWeight = 500;
282 pub const PANGO_WEIGHT_SEMIBOLD: PangoWeight = 600;
283 pub const PANGO_WEIGHT_BOLD: PangoWeight = 700;
284 pub const PANGO_WEIGHT_ULTRABOLD: PangoWeight = 800;
285 pub const PANGO_WEIGHT_HEAVY: PangoWeight = 900;
286 pub const PANGO_WEIGHT_ULTRAHEAVY: PangoWeight = 1000;
287 
288 pub type PangoWrapMode = c_int;
289 pub const PANGO_WRAP_WORD: PangoWrapMode = 0;
290 pub const PANGO_WRAP_CHAR: PangoWrapMode = 1;
291 pub const PANGO_WRAP_WORD_CHAR: PangoWrapMode = 2;
292 
293 // Constants
294 pub const PANGO_ANALYSIS_FLAG_CENTERED_BASELINE: c_int = 1;
295 pub const PANGO_ANALYSIS_FLAG_IS_ELLIPSIS: c_int = 2;
296 pub const PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING: c_int = 0;
297 pub const PANGO_ENGINE_TYPE_LANG: *const c_char =
298     b"PangoEngineLang\0" as *const u8 as *const c_char;
299 pub const PANGO_ENGINE_TYPE_SHAPE: *const c_char =
300     b"PangoEngineShape\0" as *const u8 as *const c_char;
301 pub const PANGO_GLYPH_EMPTY: PangoGlyph = 268435455;
302 pub const PANGO_GLYPH_INVALID_INPUT: PangoGlyph = 4294967295;
303 pub const PANGO_GLYPH_UNKNOWN_FLAG: PangoGlyph = 268435456;
304 pub const PANGO_RENDER_TYPE_NONE: *const c_char =
305     b"PangoRenderNone\0" as *const u8 as *const c_char;
306 pub const PANGO_SCALE: c_int = 1024;
307 pub const PANGO_UNKNOWN_GLYPH_HEIGHT: c_int = 14;
308 pub const PANGO_UNKNOWN_GLYPH_WIDTH: c_int = 10;
309 pub const PANGO_VERSION_MIN_REQUIRED: c_int = 2;
310 
311 // Flags
312 pub type PangoFontMask = c_uint;
313 pub const PANGO_FONT_MASK_FAMILY: PangoFontMask = 1;
314 pub const PANGO_FONT_MASK_STYLE: PangoFontMask = 2;
315 pub const PANGO_FONT_MASK_VARIANT: PangoFontMask = 4;
316 pub const PANGO_FONT_MASK_WEIGHT: PangoFontMask = 8;
317 pub const PANGO_FONT_MASK_STRETCH: PangoFontMask = 16;
318 pub const PANGO_FONT_MASK_SIZE: PangoFontMask = 32;
319 pub const PANGO_FONT_MASK_GRAVITY: PangoFontMask = 64;
320 pub const PANGO_FONT_MASK_VARIATIONS: PangoFontMask = 128;
321 
322 // Callbacks
323 pub type PangoAttrDataCopyFunc = Option<unsafe extern "C" fn(gconstpointer) -> gpointer>;
324 pub type PangoAttrFilterFunc =
325     Option<unsafe extern "C" fn(*mut PangoAttribute, gpointer) -> gboolean>;
326 pub type PangoFontsetForeachFunc =
327     Option<unsafe extern "C" fn(*mut PangoFontset, *mut PangoFont, gpointer) -> gboolean>;
328 
329 // Records
330 #[repr(C)]
331 #[derive(Copy, Clone)]
332 pub struct PangoAnalysis {
333     pub shape_engine: *mut PangoEngineShape,
334     pub lang_engine: *mut PangoEngineLang,
335     pub font: *mut PangoFont,
336     pub level: u8,
337     pub gravity: u8,
338     pub flags: u8,
339     pub script: u8,
340     pub language: *mut PangoLanguage,
341     pub extra_attrs: *mut glib::GSList,
342 }
343 
344 impl ::std::fmt::Debug for PangoAnalysis {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result345     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
346         f.debug_struct(&format!("PangoAnalysis @ {:?}", self as *const _))
347             .field("shape_engine", &self.shape_engine)
348             .field("lang_engine", &self.lang_engine)
349             .field("font", &self.font)
350             .field("level", &self.level)
351             .field("gravity", &self.gravity)
352             .field("flags", &self.flags)
353             .field("script", &self.script)
354             .field("language", &self.language)
355             .field("extra_attrs", &self.extra_attrs)
356             .finish()
357     }
358 }
359 
360 #[repr(C)]
361 #[derive(Copy, Clone)]
362 pub struct PangoAttrClass {
363     pub type_: PangoAttrType,
364     pub copy: Option<unsafe extern "C" fn(*const PangoAttribute) -> *mut PangoAttribute>,
365     pub destroy: Option<unsafe extern "C" fn(*mut PangoAttribute)>,
366     pub equal:
367         Option<unsafe extern "C" fn(*const PangoAttribute, *const PangoAttribute) -> gboolean>,
368 }
369 
370 impl ::std::fmt::Debug for PangoAttrClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result371     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
372         f.debug_struct(&format!("PangoAttrClass @ {:?}", self as *const _))
373             .field("type_", &self.type_)
374             .field("copy", &self.copy)
375             .field("destroy", &self.destroy)
376             .field("equal", &self.equal)
377             .finish()
378     }
379 }
380 
381 #[repr(C)]
382 #[derive(Copy, Clone)]
383 pub struct PangoAttrColor {
384     pub attr: PangoAttribute,
385     pub color: PangoColor,
386 }
387 
388 impl ::std::fmt::Debug for PangoAttrColor {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result389     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
390         f.debug_struct(&format!("PangoAttrColor @ {:?}", self as *const _))
391             .field("attr", &self.attr)
392             .field("color", &self.color)
393             .finish()
394     }
395 }
396 
397 #[repr(C)]
398 #[derive(Copy, Clone)]
399 pub struct PangoAttrFloat {
400     pub attr: PangoAttribute,
401     pub value: c_double,
402 }
403 
404 impl ::std::fmt::Debug for PangoAttrFloat {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result405     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
406         f.debug_struct(&format!("PangoAttrFloat @ {:?}", self as *const _))
407             .field("attr", &self.attr)
408             .field("value", &self.value)
409             .finish()
410     }
411 }
412 
413 #[repr(C)]
414 #[derive(Copy, Clone)]
415 pub struct PangoAttrFontDesc {
416     pub attr: PangoAttribute,
417     pub desc: *mut PangoFontDescription,
418 }
419 
420 impl ::std::fmt::Debug for PangoAttrFontDesc {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result421     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
422         f.debug_struct(&format!("PangoAttrFontDesc @ {:?}", self as *const _))
423             .field("attr", &self.attr)
424             .field("desc", &self.desc)
425             .finish()
426     }
427 }
428 
429 #[repr(C)]
430 #[derive(Copy, Clone)]
431 pub struct PangoAttrFontFeatures {
432     pub attr: PangoAttribute,
433     pub features: *mut c_char,
434 }
435 
436 impl ::std::fmt::Debug for PangoAttrFontFeatures {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result437     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
438         f.debug_struct(&format!("PangoAttrFontFeatures @ {:?}", self as *const _))
439             .field("attr", &self.attr)
440             .field("features", &self.features)
441             .finish()
442     }
443 }
444 
445 #[repr(C)]
446 #[derive(Copy, Clone)]
447 pub struct PangoAttrInt {
448     pub attr: PangoAttribute,
449     pub value: c_int,
450 }
451 
452 impl ::std::fmt::Debug for PangoAttrInt {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result453     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
454         f.debug_struct(&format!("PangoAttrInt @ {:?}", self as *const _))
455             .field("attr", &self.attr)
456             .field("value", &self.value)
457             .finish()
458     }
459 }
460 
461 #[repr(C)]
462 pub struct _PangoAttrIterator(c_void);
463 
464 pub type PangoAttrIterator = *mut _PangoAttrIterator;
465 
466 #[repr(C)]
467 #[derive(Copy, Clone)]
468 pub struct PangoAttrLanguage {
469     pub attr: PangoAttribute,
470     pub value: *mut PangoLanguage,
471 }
472 
473 impl ::std::fmt::Debug for PangoAttrLanguage {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result474     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
475         f.debug_struct(&format!("PangoAttrLanguage @ {:?}", self as *const _))
476             .field("attr", &self.attr)
477             .field("value", &self.value)
478             .finish()
479     }
480 }
481 
482 #[repr(C)]
483 pub struct PangoAttrList(c_void);
484 
485 impl ::std::fmt::Debug for PangoAttrList {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result486     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
487         f.debug_struct(&format!("PangoAttrList @ {:?}", self as *const _))
488             .finish()
489     }
490 }
491 
492 #[repr(C)]
493 #[derive(Copy, Clone)]
494 pub struct PangoAttrShape {
495     pub attr: PangoAttribute,
496     pub ink_rect: PangoRectangle,
497     pub logical_rect: PangoRectangle,
498     pub data: gpointer,
499     pub copy_func: PangoAttrDataCopyFunc,
500     pub destroy_func: glib::GDestroyNotify,
501 }
502 
503 impl ::std::fmt::Debug for PangoAttrShape {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result504     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
505         f.debug_struct(&format!("PangoAttrShape @ {:?}", self as *const _))
506             .field("attr", &self.attr)
507             .field("ink_rect", &self.ink_rect)
508             .field("logical_rect", &self.logical_rect)
509             .field("data", &self.data)
510             .field("copy_func", &self.copy_func)
511             .field("destroy_func", &self.destroy_func)
512             .finish()
513     }
514 }
515 
516 #[repr(C)]
517 #[derive(Copy, Clone)]
518 pub struct PangoAttrSize {
519     pub attr: PangoAttribute,
520     pub size: c_int,
521     pub absolute: c_uint,
522 }
523 
524 impl ::std::fmt::Debug for PangoAttrSize {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result525     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
526         f.debug_struct(&format!("PangoAttrSize @ {:?}", self as *const _))
527             .field("attr", &self.attr)
528             .field("size", &self.size)
529             .field("absolute", &self.absolute)
530             .finish()
531     }
532 }
533 
534 #[repr(C)]
535 #[derive(Copy, Clone)]
536 pub struct PangoAttrString {
537     pub attr: PangoAttribute,
538     pub value: *mut c_char,
539 }
540 
541 impl ::std::fmt::Debug for PangoAttrString {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result542     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
543         f.debug_struct(&format!("PangoAttrString @ {:?}", self as *const _))
544             .field("attr", &self.attr)
545             .field("value", &self.value)
546             .finish()
547     }
548 }
549 
550 #[repr(C)]
551 #[derive(Copy, Clone)]
552 pub struct PangoAttribute {
553     pub klass: *const PangoAttrClass,
554     pub start_index: c_uint,
555     pub end_index: c_uint,
556 }
557 
558 impl ::std::fmt::Debug for PangoAttribute {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result559     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
560         f.debug_struct(&format!("PangoAttribute @ {:?}", self as *const _))
561             .field("klass", &self.klass)
562             .field("start_index", &self.start_index)
563             .field("end_index", &self.end_index)
564             .finish()
565     }
566 }
567 
568 #[repr(C)]
569 #[derive(Copy, Clone)]
570 pub struct PangoColor {
571     pub red: u16,
572     pub green: u16,
573     pub blue: u16,
574 }
575 
576 impl ::std::fmt::Debug for PangoColor {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result577     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
578         f.debug_struct(&format!("PangoColor @ {:?}", self as *const _))
579             .field("red", &self.red)
580             .field("green", &self.green)
581             .field("blue", &self.blue)
582             .finish()
583     }
584 }
585 
586 #[repr(C)]
587 pub struct _PangoContextClass(c_void);
588 
589 pub type PangoContextClass = *mut _PangoContextClass;
590 
591 #[repr(C)]
592 pub struct _PangoCoverage(c_void);
593 
594 pub type PangoCoverage = *mut _PangoCoverage;
595 
596 #[repr(C)]
597 #[derive(Copy, Clone)]
598 pub struct PangoEngineClass {
599     pub parent_class: gobject::GObjectClass,
600 }
601 
602 impl ::std::fmt::Debug for PangoEngineClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result603     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
604         f.debug_struct(&format!("PangoEngineClass @ {:?}", self as *const _))
605             .finish()
606     }
607 }
608 
609 #[repr(C)]
610 #[derive(Copy, Clone)]
611 pub struct PangoEngineInfo {
612     pub id: *const c_char,
613     pub engine_type: *const c_char,
614     pub render_type: *const c_char,
615     pub scripts: *mut PangoEngineScriptInfo,
616     pub n_scripts: c_int,
617 }
618 
619 impl ::std::fmt::Debug for PangoEngineInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result620     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
621         f.debug_struct(&format!("PangoEngineInfo @ {:?}", self as *const _))
622             .field("id", &self.id)
623             .field("engine_type", &self.engine_type)
624             .field("render_type", &self.render_type)
625             .field("scripts", &self.scripts)
626             .field("n_scripts", &self.n_scripts)
627             .finish()
628     }
629 }
630 
631 #[repr(C)]
632 #[derive(Copy, Clone)]
633 pub struct PangoEngineLangClass {
634     pub parent_class: PangoEngineClass,
635     pub script_break: Option<
636         unsafe extern "C" fn(
637             *mut PangoEngineLang,
638             *const c_char,
639             c_int,
640             *mut PangoAnalysis,
641             *mut PangoLogAttr,
642             c_int,
643         ),
644     >,
645 }
646 
647 impl ::std::fmt::Debug for PangoEngineLangClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result648     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
649         f.debug_struct(&format!("PangoEngineLangClass @ {:?}", self as *const _))
650             .field("script_break", &self.script_break)
651             .finish()
652     }
653 }
654 
655 #[repr(C)]
656 #[derive(Copy, Clone)]
657 pub struct PangoEngineScriptInfo {
658     pub script: PangoScript,
659     pub langs: *const c_char,
660 }
661 
662 impl ::std::fmt::Debug for PangoEngineScriptInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result663     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
664         f.debug_struct(&format!("PangoEngineScriptInfo @ {:?}", self as *const _))
665             .field("script", &self.script)
666             .field("langs", &self.langs)
667             .finish()
668     }
669 }
670 
671 #[repr(C)]
672 #[derive(Copy, Clone)]
673 pub struct PangoEngineShapeClass {
674     pub parent_class: PangoEngineClass,
675     pub script_shape: Option<
676         unsafe extern "C" fn(
677             *mut PangoEngineShape,
678             *mut PangoFont,
679             *const c_char,
680             c_uint,
681             *const PangoAnalysis,
682             *mut PangoGlyphString,
683             *const c_char,
684             c_uint,
685         ),
686     >,
687     pub covers: Option<
688         unsafe extern "C" fn(
689             *mut PangoEngineShape,
690             *mut PangoFont,
691             *mut PangoLanguage,
692             u32,
693         ) -> PangoCoverageLevel,
694     >,
695 }
696 
697 impl ::std::fmt::Debug for PangoEngineShapeClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result698     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
699         f.debug_struct(&format!("PangoEngineShapeClass @ {:?}", self as *const _))
700             .field("script_shape", &self.script_shape)
701             .field("covers", &self.covers)
702             .finish()
703     }
704 }
705 
706 #[repr(C)]
707 #[derive(Copy, Clone)]
708 pub struct PangoFontClass {
709     pub parent_class: gobject::GObjectClass,
710     pub describe: Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontDescription>,
711     pub get_coverage:
712         Option<unsafe extern "C" fn(*mut PangoFont, *mut PangoLanguage) -> *mut PangoCoverage>,
713     pub find_shaper: Option<
714         unsafe extern "C" fn(*mut PangoFont, *mut PangoLanguage, u32) -> *mut PangoEngineShape,
715     >,
716     pub get_glyph_extents: Option<
717         unsafe extern "C" fn(*mut PangoFont, PangoGlyph, *mut PangoRectangle, *mut PangoRectangle),
718     >,
719     pub get_metrics:
720         Option<unsafe extern "C" fn(*mut PangoFont, *mut PangoLanguage) -> *mut PangoFontMetrics>,
721     pub get_font_map: Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontMap>,
722     pub describe_absolute:
723         Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontDescription>,
724     pub _pango_reserved1: Option<unsafe extern "C" fn()>,
725     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
726 }
727 
728 impl ::std::fmt::Debug for PangoFontClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result729     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
730         f.debug_struct(&format!("PangoFontClass @ {:?}", self as *const _))
731             .field("parent_class", &self.parent_class)
732             .field("describe", &self.describe)
733             .field("get_coverage", &self.get_coverage)
734             .field("find_shaper", &self.find_shaper)
735             .field("get_glyph_extents", &self.get_glyph_extents)
736             .field("get_metrics", &self.get_metrics)
737             .field("get_font_map", &self.get_font_map)
738             .field("describe_absolute", &self.describe_absolute)
739             .field("_pango_reserved1", &self._pango_reserved1)
740             .field("_pango_reserved2", &self._pango_reserved2)
741             .finish()
742     }
743 }
744 
745 #[repr(C)]
746 pub struct PangoFontDescription(c_void);
747 
748 impl ::std::fmt::Debug for PangoFontDescription {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result749     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
750         f.debug_struct(&format!("PangoFontDescription @ {:?}", self as *const _))
751             .finish()
752     }
753 }
754 
755 #[repr(C)]
756 #[derive(Copy, Clone)]
757 pub struct PangoFontFaceClass {
758     pub parent_class: gobject::GObjectClass,
759     pub get_face_name: Option<unsafe extern "C" fn(*mut PangoFontFace) -> *const c_char>,
760     pub describe: Option<unsafe extern "C" fn(*mut PangoFontFace) -> *mut PangoFontDescription>,
761     pub list_sizes: Option<unsafe extern "C" fn(*mut PangoFontFace, *mut *mut c_int, *mut c_int)>,
762     pub is_synthesized: Option<unsafe extern "C" fn(*mut PangoFontFace) -> gboolean>,
763     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
764     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
765 }
766 
767 impl ::std::fmt::Debug for PangoFontFaceClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result768     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
769         f.debug_struct(&format!("PangoFontFaceClass @ {:?}", self as *const _))
770             .field("parent_class", &self.parent_class)
771             .field("get_face_name", &self.get_face_name)
772             .field("describe", &self.describe)
773             .field("list_sizes", &self.list_sizes)
774             .field("is_synthesized", &self.is_synthesized)
775             .field("_pango_reserved3", &self._pango_reserved3)
776             .field("_pango_reserved4", &self._pango_reserved4)
777             .finish()
778     }
779 }
780 
781 #[repr(C)]
782 #[derive(Copy, Clone)]
783 pub struct PangoFontFamilyClass {
784     pub parent_class: gobject::GObjectClass,
785     pub list_faces: Option<
786         unsafe extern "C" fn(*mut PangoFontFamily, *mut *mut *mut PangoFontFace, *mut c_int),
787     >,
788     pub get_name: Option<unsafe extern "C" fn(*mut PangoFontFamily) -> *const c_char>,
789     pub is_monospace: Option<unsafe extern "C" fn(*mut PangoFontFamily) -> gboolean>,
790     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
791     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
792     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
793 }
794 
795 impl ::std::fmt::Debug for PangoFontFamilyClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result796     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
797         f.debug_struct(&format!("PangoFontFamilyClass @ {:?}", self as *const _))
798             .field("parent_class", &self.parent_class)
799             .field("list_faces", &self.list_faces)
800             .field("get_name", &self.get_name)
801             .field("is_monospace", &self.is_monospace)
802             .field("_pango_reserved2", &self._pango_reserved2)
803             .field("_pango_reserved3", &self._pango_reserved3)
804             .field("_pango_reserved4", &self._pango_reserved4)
805             .finish()
806     }
807 }
808 
809 #[repr(C)]
810 #[derive(Copy, Clone)]
811 pub struct PangoFontMapClass {
812     pub parent_class: gobject::GObjectClass,
813     pub load_font: Option<
814         unsafe extern "C" fn(
815             *mut PangoFontMap,
816             *mut PangoContext,
817             *const PangoFontDescription,
818         ) -> *mut PangoFont,
819     >,
820     pub list_families:
821         Option<unsafe extern "C" fn(*mut PangoFontMap, *mut *mut *mut PangoFontFamily, *mut c_int)>,
822     pub load_fontset: Option<
823         unsafe extern "C" fn(
824             *mut PangoFontMap,
825             *mut PangoContext,
826             *const PangoFontDescription,
827             *mut PangoLanguage,
828         ) -> *mut PangoFontset,
829     >,
830     pub shape_engine_type: *const c_char,
831     pub get_serial: Option<unsafe extern "C" fn(*mut PangoFontMap) -> c_uint>,
832     pub changed: Option<unsafe extern "C" fn(*mut PangoFontMap)>,
833     pub _pango_reserved1: Option<unsafe extern "C" fn()>,
834     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
835 }
836 
837 impl ::std::fmt::Debug for PangoFontMapClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result838     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
839         f.debug_struct(&format!("PangoFontMapClass @ {:?}", self as *const _))
840             .field("parent_class", &self.parent_class)
841             .field("load_font", &self.load_font)
842             .field("list_families", &self.list_families)
843             .field("load_fontset", &self.load_fontset)
844             .field("shape_engine_type", &self.shape_engine_type)
845             .field("get_serial", &self.get_serial)
846             .field("changed", &self.changed)
847             .field("_pango_reserved1", &self._pango_reserved1)
848             .field("_pango_reserved2", &self._pango_reserved2)
849             .finish()
850     }
851 }
852 
853 #[repr(C)]
854 #[derive(Copy, Clone)]
855 pub struct PangoFontMetrics {
856     pub ref_count: c_uint,
857     pub ascent: c_int,
858     pub descent: c_int,
859     pub approximate_char_width: c_int,
860     pub approximate_digit_width: c_int,
861     pub underline_position: c_int,
862     pub underline_thickness: c_int,
863     pub strikethrough_position: c_int,
864     pub strikethrough_thickness: c_int,
865 }
866 
867 impl ::std::fmt::Debug for PangoFontMetrics {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result868     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
869         f.debug_struct(&format!("PangoFontMetrics @ {:?}", self as *const _))
870             .finish()
871     }
872 }
873 
874 #[repr(C)]
875 #[derive(Copy, Clone)]
876 pub struct PangoFontsetClass {
877     pub parent_class: gobject::GObjectClass,
878     pub get_font: Option<unsafe extern "C" fn(*mut PangoFontset, c_uint) -> *mut PangoFont>,
879     pub get_metrics: Option<unsafe extern "C" fn(*mut PangoFontset) -> *mut PangoFontMetrics>,
880     pub get_language: Option<unsafe extern "C" fn(*mut PangoFontset) -> *mut PangoLanguage>,
881     pub foreach: Option<unsafe extern "C" fn(*mut PangoFontset, PangoFontsetForeachFunc, gpointer)>,
882     pub _pango_reserved1: Option<unsafe extern "C" fn()>,
883     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
884     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
885     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
886 }
887 
888 impl ::std::fmt::Debug for PangoFontsetClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result889     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
890         f.debug_struct(&format!("PangoFontsetClass @ {:?}", self as *const _))
891             .field("parent_class", &self.parent_class)
892             .field("get_font", &self.get_font)
893             .field("get_metrics", &self.get_metrics)
894             .field("get_language", &self.get_language)
895             .field("foreach", &self.foreach)
896             .field("_pango_reserved1", &self._pango_reserved1)
897             .field("_pango_reserved2", &self._pango_reserved2)
898             .field("_pango_reserved3", &self._pango_reserved3)
899             .field("_pango_reserved4", &self._pango_reserved4)
900             .finish()
901     }
902 }
903 
904 #[repr(C)]
905 pub struct _PangoFontsetSimpleClass(c_void);
906 
907 pub type PangoFontsetSimpleClass = *mut _PangoFontsetSimpleClass;
908 
909 #[repr(C)]
910 #[derive(Copy, Clone)]
911 pub struct PangoGlyphGeometry {
912     pub width: PangoGlyphUnit,
913     pub x_offset: PangoGlyphUnit,
914     pub y_offset: PangoGlyphUnit,
915 }
916 
917 impl ::std::fmt::Debug for PangoGlyphGeometry {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result918     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
919         f.debug_struct(&format!("PangoGlyphGeometry @ {:?}", self as *const _))
920             .field("width", &self.width)
921             .field("x_offset", &self.x_offset)
922             .field("y_offset", &self.y_offset)
923             .finish()
924     }
925 }
926 
927 #[repr(C)]
928 #[derive(Copy, Clone)]
929 pub struct PangoGlyphInfo {
930     pub glyph: PangoGlyph,
931     pub geometry: PangoGlyphGeometry,
932     pub attr: PangoGlyphVisAttr,
933 }
934 
935 impl ::std::fmt::Debug for PangoGlyphInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result936     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
937         f.debug_struct(&format!("PangoGlyphInfo @ {:?}", self as *const _))
938             .field("glyph", &self.glyph)
939             .field("geometry", &self.geometry)
940             .field("attr", &self.attr)
941             .finish()
942     }
943 }
944 
945 #[repr(C)]
946 #[derive(Copy, Clone)]
947 pub struct PangoGlyphItem {
948     pub item: *mut PangoItem,
949     pub glyphs: *mut PangoGlyphString,
950 }
951 
952 impl ::std::fmt::Debug for PangoGlyphItem {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result953     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
954         f.debug_struct(&format!("PangoGlyphItem @ {:?}", self as *const _))
955             .field("item", &self.item)
956             .field("glyphs", &self.glyphs)
957             .finish()
958     }
959 }
960 
961 #[repr(C)]
962 #[derive(Copy, Clone)]
963 pub struct PangoGlyphItemIter {
964     pub glyph_item: *mut PangoGlyphItem,
965     pub text: *const c_char,
966     pub start_glyph: c_int,
967     pub start_index: c_int,
968     pub start_char: c_int,
969     pub end_glyph: c_int,
970     pub end_index: c_int,
971     pub end_char: c_int,
972 }
973 
974 impl ::std::fmt::Debug for PangoGlyphItemIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result975     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
976         f.debug_struct(&format!("PangoGlyphItemIter @ {:?}", self as *const _))
977             .field("glyph_item", &self.glyph_item)
978             .field("text", &self.text)
979             .field("start_glyph", &self.start_glyph)
980             .field("start_index", &self.start_index)
981             .field("start_char", &self.start_char)
982             .field("end_glyph", &self.end_glyph)
983             .field("end_index", &self.end_index)
984             .field("end_char", &self.end_char)
985             .finish()
986     }
987 }
988 
989 #[repr(C)]
990 #[derive(Copy, Clone)]
991 pub struct PangoGlyphString {
992     pub num_glyphs: c_int,
993     pub glyphs: *mut PangoGlyphInfo,
994     pub log_clusters: *mut c_int,
995     pub space: c_int,
996 }
997 
998 impl ::std::fmt::Debug for PangoGlyphString {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result999     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1000         f.debug_struct(&format!("PangoGlyphString @ {:?}", self as *const _))
1001             .field("num_glyphs", &self.num_glyphs)
1002             .field("glyphs", &self.glyphs)
1003             .field("log_clusters", &self.log_clusters)
1004             .finish()
1005     }
1006 }
1007 
1008 #[repr(C)]
1009 #[derive(Copy, Clone)]
1010 pub struct PangoGlyphVisAttr {
1011     pub is_cluster_start: c_uint,
1012 }
1013 
1014 impl ::std::fmt::Debug for PangoGlyphVisAttr {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1015     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1016         f.debug_struct(&format!("PangoGlyphVisAttr @ {:?}", self as *const _))
1017             .field("is_cluster_start", &self.is_cluster_start)
1018             .finish()
1019     }
1020 }
1021 
1022 #[repr(C)]
1023 #[derive(Copy, Clone)]
1024 pub struct PangoIncludedModule {
1025     pub list: Option<unsafe extern "C" fn(*mut *mut PangoEngineInfo, *mut c_int)>,
1026     pub init: Option<unsafe extern "C" fn(*mut gobject::GTypeModule)>,
1027     pub exit: Option<unsafe extern "C" fn()>,
1028     pub create: Option<unsafe extern "C" fn(*const c_char) -> *mut PangoEngine>,
1029 }
1030 
1031 impl ::std::fmt::Debug for PangoIncludedModule {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1032     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1033         f.debug_struct(&format!("PangoIncludedModule @ {:?}", self as *const _))
1034             .field("list", &self.list)
1035             .field("init", &self.init)
1036             .field("exit", &self.exit)
1037             .field("create", &self.create)
1038             .finish()
1039     }
1040 }
1041 
1042 #[repr(C)]
1043 #[derive(Copy, Clone)]
1044 pub struct PangoItem {
1045     pub offset: c_int,
1046     pub length: c_int,
1047     pub num_chars: c_int,
1048     pub analysis: PangoAnalysis,
1049 }
1050 
1051 impl ::std::fmt::Debug for PangoItem {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1052     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1053         f.debug_struct(&format!("PangoItem @ {:?}", self as *const _))
1054             .field("offset", &self.offset)
1055             .field("length", &self.length)
1056             .field("num_chars", &self.num_chars)
1057             .field("analysis", &self.analysis)
1058             .finish()
1059     }
1060 }
1061 
1062 #[repr(C)]
1063 pub struct PangoLanguage(c_void);
1064 
1065 impl ::std::fmt::Debug for PangoLanguage {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1066     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1067         f.debug_struct(&format!("PangoLanguage @ {:?}", self as *const _))
1068             .finish()
1069     }
1070 }
1071 
1072 #[repr(C)]
1073 pub struct _PangoLayoutClass(c_void);
1074 
1075 pub type PangoLayoutClass = *mut _PangoLayoutClass;
1076 
1077 #[repr(C)]
1078 pub struct PangoLayoutIter(c_void);
1079 
1080 impl ::std::fmt::Debug for PangoLayoutIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1081     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1082         f.debug_struct(&format!("PangoLayoutIter @ {:?}", self as *const _))
1083             .finish()
1084     }
1085 }
1086 
1087 #[repr(C)]
1088 pub struct PangoLayoutLine {
1089     pub layout: *mut PangoLayout,
1090     pub start_index: c_int,
1091     pub length: c_int,
1092     pub runs: *mut glib::GSList,
1093     pub is_paragraph_start: c_uint,
1094     _truncated_record_marker: c_void,
1095     // field resolved_dir has incomplete type
1096 }
1097 
1098 impl ::std::fmt::Debug for PangoLayoutLine {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1099     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1100         f.debug_struct(&format!("PangoLayoutLine @ {:?}", self as *const _))
1101             .field("layout", &self.layout)
1102             .field("start_index", &self.start_index)
1103             .field("length", &self.length)
1104             .field("runs", &self.runs)
1105             .field("is_paragraph_start", &self.is_paragraph_start)
1106             .finish()
1107     }
1108 }
1109 
1110 #[repr(C)]
1111 pub struct PangoLogAttr {
1112     pub is_line_break: c_uint,
1113     _truncated_record_marker: c_void,
1114     // field is_mandatory_break has incomplete type
1115 }
1116 
1117 impl ::std::fmt::Debug for PangoLogAttr {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1118     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1119         f.debug_struct(&format!("PangoLogAttr @ {:?}", self as *const _))
1120             .field("is_line_break", &self.is_line_break)
1121             .finish()
1122     }
1123 }
1124 
1125 #[repr(C)]
1126 pub struct _PangoMap(c_void);
1127 
1128 pub type PangoMap = *mut _PangoMap;
1129 
1130 #[repr(C)]
1131 pub struct _PangoMapEntry(c_void);
1132 
1133 pub type PangoMapEntry = *mut _PangoMapEntry;
1134 
1135 #[repr(C)]
1136 #[derive(Copy, Clone)]
1137 pub struct PangoMatrix {
1138     pub xx: c_double,
1139     pub xy: c_double,
1140     pub yx: c_double,
1141     pub yy: c_double,
1142     pub x0: c_double,
1143     pub y0: c_double,
1144 }
1145 
1146 impl ::std::fmt::Debug for PangoMatrix {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1147     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1148         f.debug_struct(&format!("PangoMatrix @ {:?}", self as *const _))
1149             .field("xx", &self.xx)
1150             .field("xy", &self.xy)
1151             .field("yx", &self.yx)
1152             .field("yy", &self.yy)
1153             .field("x0", &self.x0)
1154             .field("y0", &self.y0)
1155             .finish()
1156     }
1157 }
1158 
1159 #[repr(C)]
1160 #[derive(Copy, Clone)]
1161 pub struct PangoRectangle {
1162     pub x: c_int,
1163     pub y: c_int,
1164     pub width: c_int,
1165     pub height: c_int,
1166 }
1167 
1168 impl ::std::fmt::Debug for PangoRectangle {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1169     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1170         f.debug_struct(&format!("PangoRectangle @ {:?}", self as *const _))
1171             .field("x", &self.x)
1172             .field("y", &self.y)
1173             .field("width", &self.width)
1174             .field("height", &self.height)
1175             .finish()
1176     }
1177 }
1178 
1179 #[repr(C)]
1180 #[derive(Copy, Clone)]
1181 pub struct PangoRendererClass {
1182     pub parent_class: gobject::GObjectClass,
1183     pub draw_glyphs: Option<
1184         unsafe extern "C" fn(
1185             *mut PangoRenderer,
1186             *mut PangoFont,
1187             *mut PangoGlyphString,
1188             c_int,
1189             c_int,
1190         ),
1191     >,
1192     pub draw_rectangle: Option<
1193         unsafe extern "C" fn(*mut PangoRenderer, PangoRenderPart, c_int, c_int, c_int, c_int),
1194     >,
1195     pub draw_error_underline:
1196         Option<unsafe extern "C" fn(*mut PangoRenderer, c_int, c_int, c_int, c_int)>,
1197     pub draw_shape:
1198         Option<unsafe extern "C" fn(*mut PangoRenderer, *mut PangoAttrShape, c_int, c_int)>,
1199     pub draw_trapezoid: Option<
1200         unsafe extern "C" fn(
1201             *mut PangoRenderer,
1202             PangoRenderPart,
1203             c_double,
1204             c_double,
1205             c_double,
1206             c_double,
1207             c_double,
1208             c_double,
1209         ),
1210     >,
1211     pub draw_glyph: Option<
1212         unsafe extern "C" fn(*mut PangoRenderer, *mut PangoFont, PangoGlyph, c_double, c_double),
1213     >,
1214     pub part_changed: Option<unsafe extern "C" fn(*mut PangoRenderer, PangoRenderPart)>,
1215     pub begin: Option<unsafe extern "C" fn(*mut PangoRenderer)>,
1216     pub end: Option<unsafe extern "C" fn(*mut PangoRenderer)>,
1217     pub prepare_run: Option<unsafe extern "C" fn(*mut PangoRenderer, *mut PangoLayoutRun)>,
1218     pub draw_glyph_item: Option<
1219         unsafe extern "C" fn(*mut PangoRenderer, *const c_char, *mut PangoGlyphItem, c_int, c_int),
1220     >,
1221     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
1222     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
1223     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
1224 }
1225 
1226 impl ::std::fmt::Debug for PangoRendererClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1227     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1228         f.debug_struct(&format!("PangoRendererClass @ {:?}", self as *const _))
1229             .field("draw_glyphs", &self.draw_glyphs)
1230             .field("draw_rectangle", &self.draw_rectangle)
1231             .field("draw_error_underline", &self.draw_error_underline)
1232             .field("draw_shape", &self.draw_shape)
1233             .field("draw_trapezoid", &self.draw_trapezoid)
1234             .field("draw_glyph", &self.draw_glyph)
1235             .field("part_changed", &self.part_changed)
1236             .field("begin", &self.begin)
1237             .field("end", &self.end)
1238             .field("prepare_run", &self.prepare_run)
1239             .field("draw_glyph_item", &self.draw_glyph_item)
1240             .field("_pango_reserved2", &self._pango_reserved2)
1241             .field("_pango_reserved3", &self._pango_reserved3)
1242             .field("_pango_reserved4", &self._pango_reserved4)
1243             .finish()
1244     }
1245 }
1246 
1247 #[repr(C)]
1248 pub struct _PangoRendererPrivate(c_void);
1249 
1250 pub type PangoRendererPrivate = *mut _PangoRendererPrivate;
1251 
1252 #[repr(C)]
1253 pub struct _PangoScriptIter(c_void);
1254 
1255 pub type PangoScriptIter = *mut _PangoScriptIter;
1256 
1257 #[repr(C)]
1258 pub struct PangoTabArray(c_void);
1259 
1260 impl ::std::fmt::Debug for PangoTabArray {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1261     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1262         f.debug_struct(&format!("PangoTabArray @ {:?}", self as *const _))
1263             .finish()
1264     }
1265 }
1266 
1267 // Classes
1268 #[repr(C)]
1269 pub struct PangoContext(c_void);
1270 
1271 impl ::std::fmt::Debug for PangoContext {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1272     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1273         f.debug_struct(&format!("PangoContext @ {:?}", self as *const _))
1274             .finish()
1275     }
1276 }
1277 
1278 #[repr(C)]
1279 #[derive(Copy, Clone)]
1280 pub struct PangoEngine {
1281     pub parent_instance: gobject::GObject,
1282 }
1283 
1284 impl ::std::fmt::Debug for PangoEngine {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1285     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1286         f.debug_struct(&format!("PangoEngine @ {:?}", self as *const _))
1287             .finish()
1288     }
1289 }
1290 
1291 #[repr(C)]
1292 #[derive(Copy, Clone)]
1293 pub struct PangoEngineLang {
1294     pub parent_instance: PangoEngine,
1295 }
1296 
1297 impl ::std::fmt::Debug for PangoEngineLang {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1298     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1299         f.debug_struct(&format!("PangoEngineLang @ {:?}", self as *const _))
1300             .finish()
1301     }
1302 }
1303 
1304 #[repr(C)]
1305 #[derive(Copy, Clone)]
1306 pub struct PangoEngineShape {
1307     pub parent_instance: PangoEngine,
1308 }
1309 
1310 impl ::std::fmt::Debug for PangoEngineShape {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1311     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1312         f.debug_struct(&format!("PangoEngineShape @ {:?}", self as *const _))
1313             .field("parent_instance", &self.parent_instance)
1314             .finish()
1315     }
1316 }
1317 
1318 #[repr(C)]
1319 #[derive(Copy, Clone)]
1320 pub struct PangoFont {
1321     pub parent_instance: gobject::GObject,
1322 }
1323 
1324 impl ::std::fmt::Debug for PangoFont {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1325     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1326         f.debug_struct(&format!("PangoFont @ {:?}", self as *const _))
1327             .field("parent_instance", &self.parent_instance)
1328             .finish()
1329     }
1330 }
1331 
1332 #[repr(C)]
1333 #[derive(Copy, Clone)]
1334 pub struct PangoFontFace {
1335     pub parent_instance: gobject::GObject,
1336 }
1337 
1338 impl ::std::fmt::Debug for PangoFontFace {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1339     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1340         f.debug_struct(&format!("PangoFontFace @ {:?}", self as *const _))
1341             .field("parent_instance", &self.parent_instance)
1342             .finish()
1343     }
1344 }
1345 
1346 #[repr(C)]
1347 #[derive(Copy, Clone)]
1348 pub struct PangoFontFamily {
1349     pub parent_instance: gobject::GObject,
1350 }
1351 
1352 impl ::std::fmt::Debug for PangoFontFamily {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1353     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1354         f.debug_struct(&format!("PangoFontFamily @ {:?}", self as *const _))
1355             .field("parent_instance", &self.parent_instance)
1356             .finish()
1357     }
1358 }
1359 
1360 #[repr(C)]
1361 #[derive(Copy, Clone)]
1362 pub struct PangoFontMap {
1363     pub parent_instance: gobject::GObject,
1364 }
1365 
1366 impl ::std::fmt::Debug for PangoFontMap {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1367     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1368         f.debug_struct(&format!("PangoFontMap @ {:?}", self as *const _))
1369             .field("parent_instance", &self.parent_instance)
1370             .finish()
1371     }
1372 }
1373 
1374 #[repr(C)]
1375 #[derive(Copy, Clone)]
1376 pub struct PangoFontset {
1377     pub parent_instance: gobject::GObject,
1378 }
1379 
1380 impl ::std::fmt::Debug for PangoFontset {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1381     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1382         f.debug_struct(&format!("PangoFontset @ {:?}", self as *const _))
1383             .field("parent_instance", &self.parent_instance)
1384             .finish()
1385     }
1386 }
1387 
1388 #[repr(C)]
1389 pub struct PangoFontsetSimple(c_void);
1390 
1391 impl ::std::fmt::Debug for PangoFontsetSimple {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1392     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1393         f.debug_struct(&format!("PangoFontsetSimple @ {:?}", self as *const _))
1394             .finish()
1395     }
1396 }
1397 
1398 #[repr(C)]
1399 pub struct PangoLayout(c_void);
1400 
1401 impl ::std::fmt::Debug for PangoLayout {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1402     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1403         f.debug_struct(&format!("PangoLayout @ {:?}", self as *const _))
1404             .finish()
1405     }
1406 }
1407 
1408 #[repr(C)]
1409 #[derive(Copy, Clone)]
1410 pub struct PangoRenderer {
1411     pub parent_instance: gobject::GObject,
1412     pub underline: PangoUnderline,
1413     pub strikethrough: gboolean,
1414     pub active_count: c_int,
1415     pub matrix: *mut PangoMatrix,
1416     pub priv_: *mut PangoRendererPrivate,
1417 }
1418 
1419 impl ::std::fmt::Debug for PangoRenderer {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1420     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1421         f.debug_struct(&format!("PangoRenderer @ {:?}", self as *const _))
1422             .field("matrix", &self.matrix)
1423             .finish()
1424     }
1425 }
1426 
1427 extern "C" {
1428 
1429     //=========================================================================
1430     // PangoAlignment
1431     //=========================================================================
pango_alignment_get_type() -> GType1432     pub fn pango_alignment_get_type() -> GType;
1433 
1434     //=========================================================================
1435     // PangoAttrType
1436     //=========================================================================
pango_attr_type_get_type() -> GType1437     pub fn pango_attr_type_get_type() -> GType;
pango_attr_type_get_name(type_: PangoAttrType) -> *const c_char1438     pub fn pango_attr_type_get_name(type_: PangoAttrType) -> *const c_char;
pango_attr_type_register(name: *const c_char) -> PangoAttrType1439     pub fn pango_attr_type_register(name: *const c_char) -> PangoAttrType;
1440 
1441     //=========================================================================
1442     // PangoBidiType
1443     //=========================================================================
pango_bidi_type_get_type() -> GType1444     pub fn pango_bidi_type_get_type() -> GType;
pango_bidi_type_for_unichar(ch: u32) -> PangoBidiType1445     pub fn pango_bidi_type_for_unichar(ch: u32) -> PangoBidiType;
1446 
1447     //=========================================================================
1448     // PangoCoverageLevel
1449     //=========================================================================
pango_coverage_level_get_type() -> GType1450     pub fn pango_coverage_level_get_type() -> GType;
1451 
1452     //=========================================================================
1453     // PangoDirection
1454     //=========================================================================
pango_direction_get_type() -> GType1455     pub fn pango_direction_get_type() -> GType;
1456 
1457     //=========================================================================
1458     // PangoEllipsizeMode
1459     //=========================================================================
pango_ellipsize_mode_get_type() -> GType1460     pub fn pango_ellipsize_mode_get_type() -> GType;
1461 
1462     //=========================================================================
1463     // PangoGravity
1464     //=========================================================================
pango_gravity_get_type() -> GType1465     pub fn pango_gravity_get_type() -> GType;
pango_gravity_get_for_matrix(matrix: *const PangoMatrix) -> PangoGravity1466     pub fn pango_gravity_get_for_matrix(matrix: *const PangoMatrix) -> PangoGravity;
pango_gravity_get_for_script( script: PangoScript, base_gravity: PangoGravity, hint: PangoGravityHint, ) -> PangoGravity1467     pub fn pango_gravity_get_for_script(
1468         script: PangoScript,
1469         base_gravity: PangoGravity,
1470         hint: PangoGravityHint,
1471     ) -> PangoGravity;
pango_gravity_get_for_script_and_width( script: PangoScript, wide: gboolean, base_gravity: PangoGravity, hint: PangoGravityHint, ) -> PangoGravity1472     pub fn pango_gravity_get_for_script_and_width(
1473         script: PangoScript,
1474         wide: gboolean,
1475         base_gravity: PangoGravity,
1476         hint: PangoGravityHint,
1477     ) -> PangoGravity;
pango_gravity_to_rotation(gravity: PangoGravity) -> c_double1478     pub fn pango_gravity_to_rotation(gravity: PangoGravity) -> c_double;
1479 
1480     //=========================================================================
1481     // PangoGravityHint
1482     //=========================================================================
pango_gravity_hint_get_type() -> GType1483     pub fn pango_gravity_hint_get_type() -> GType;
1484 
1485     //=========================================================================
1486     // PangoRenderPart
1487     //=========================================================================
pango_render_part_get_type() -> GType1488     pub fn pango_render_part_get_type() -> GType;
1489 
1490     //=========================================================================
1491     // PangoScript
1492     //=========================================================================
pango_script_get_type() -> GType1493     pub fn pango_script_get_type() -> GType;
pango_script_for_unichar(ch: u32) -> PangoScript1494     pub fn pango_script_for_unichar(ch: u32) -> PangoScript;
pango_script_get_sample_language(script: PangoScript) -> *mut PangoLanguage1495     pub fn pango_script_get_sample_language(script: PangoScript) -> *mut PangoLanguage;
1496 
1497     //=========================================================================
1498     // PangoStretch
1499     //=========================================================================
pango_stretch_get_type() -> GType1500     pub fn pango_stretch_get_type() -> GType;
1501 
1502     //=========================================================================
1503     // PangoStyle
1504     //=========================================================================
pango_style_get_type() -> GType1505     pub fn pango_style_get_type() -> GType;
1506 
1507     //=========================================================================
1508     // PangoTabAlign
1509     //=========================================================================
pango_tab_align_get_type() -> GType1510     pub fn pango_tab_align_get_type() -> GType;
1511 
1512     //=========================================================================
1513     // PangoUnderline
1514     //=========================================================================
pango_underline_get_type() -> GType1515     pub fn pango_underline_get_type() -> GType;
1516 
1517     //=========================================================================
1518     // PangoVariant
1519     //=========================================================================
pango_variant_get_type() -> GType1520     pub fn pango_variant_get_type() -> GType;
1521 
1522     //=========================================================================
1523     // PangoWeight
1524     //=========================================================================
pango_weight_get_type() -> GType1525     pub fn pango_weight_get_type() -> GType;
1526 
1527     //=========================================================================
1528     // PangoWrapMode
1529     //=========================================================================
pango_wrap_mode_get_type() -> GType1530     pub fn pango_wrap_mode_get_type() -> GType;
1531 
1532     //=========================================================================
1533     // PangoFontMask
1534     //=========================================================================
pango_font_mask_get_type() -> GType1535     pub fn pango_font_mask_get_type() -> GType;
1536 
1537     //=========================================================================
1538     // PangoAttrFontDesc
1539     //=========================================================================
pango_attr_font_desc_new(desc: *const PangoFontDescription) -> *mut PangoAttribute1540     pub fn pango_attr_font_desc_new(desc: *const PangoFontDescription) -> *mut PangoAttribute;
1541 
1542     //=========================================================================
1543     // PangoAttrFontFeatures
1544     //=========================================================================
1545     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_attr_font_features_new(features: *const c_char) -> *mut PangoAttribute1546     pub fn pango_attr_font_features_new(features: *const c_char) -> *mut PangoAttribute;
1547 
1548     //=========================================================================
1549     // PangoAttrIterator
1550     //=========================================================================
pango_attr_iterator_copy(iterator: *mut PangoAttrIterator) -> *mut PangoAttrIterator1551     pub fn pango_attr_iterator_copy(iterator: *mut PangoAttrIterator) -> *mut PangoAttrIterator;
pango_attr_iterator_destroy(iterator: *mut PangoAttrIterator)1552     pub fn pango_attr_iterator_destroy(iterator: *mut PangoAttrIterator);
pango_attr_iterator_get( iterator: *mut PangoAttrIterator, type_: PangoAttrType, ) -> *mut PangoAttribute1553     pub fn pango_attr_iterator_get(
1554         iterator: *mut PangoAttrIterator,
1555         type_: PangoAttrType,
1556     ) -> *mut PangoAttribute;
pango_attr_iterator_get_attrs(iterator: *mut PangoAttrIterator) -> *mut glib::GSList1557     pub fn pango_attr_iterator_get_attrs(iterator: *mut PangoAttrIterator) -> *mut glib::GSList;
pango_attr_iterator_get_font( iterator: *mut PangoAttrIterator, desc: *mut PangoFontDescription, language: *mut *mut PangoLanguage, extra_attrs: *mut *mut glib::GSList, )1558     pub fn pango_attr_iterator_get_font(
1559         iterator: *mut PangoAttrIterator,
1560         desc: *mut PangoFontDescription,
1561         language: *mut *mut PangoLanguage,
1562         extra_attrs: *mut *mut glib::GSList,
1563     );
pango_attr_iterator_next(iterator: *mut PangoAttrIterator) -> gboolean1564     pub fn pango_attr_iterator_next(iterator: *mut PangoAttrIterator) -> gboolean;
pango_attr_iterator_range( iterator: *mut PangoAttrIterator, start: *mut c_int, end: *mut c_int, )1565     pub fn pango_attr_iterator_range(
1566         iterator: *mut PangoAttrIterator,
1567         start: *mut c_int,
1568         end: *mut c_int,
1569     );
1570 
1571     //=========================================================================
1572     // PangoAttrLanguage
1573     //=========================================================================
pango_attr_language_new(language: *mut PangoLanguage) -> *mut PangoAttribute1574     pub fn pango_attr_language_new(language: *mut PangoLanguage) -> *mut PangoAttribute;
1575 
1576     //=========================================================================
1577     // PangoAttrList
1578     //=========================================================================
pango_attr_list_get_type() -> GType1579     pub fn pango_attr_list_get_type() -> GType;
pango_attr_list_new() -> *mut PangoAttrList1580     pub fn pango_attr_list_new() -> *mut PangoAttrList;
pango_attr_list_change(list: *mut PangoAttrList, attr: *mut PangoAttribute)1581     pub fn pango_attr_list_change(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_copy(list: *mut PangoAttrList) -> *mut PangoAttrList1582     pub fn pango_attr_list_copy(list: *mut PangoAttrList) -> *mut PangoAttrList;
pango_attr_list_filter( list: *mut PangoAttrList, func: PangoAttrFilterFunc, data: gpointer, ) -> *mut PangoAttrList1583     pub fn pango_attr_list_filter(
1584         list: *mut PangoAttrList,
1585         func: PangoAttrFilterFunc,
1586         data: gpointer,
1587     ) -> *mut PangoAttrList;
pango_attr_list_get_iterator(list: *mut PangoAttrList) -> *mut PangoAttrIterator1588     pub fn pango_attr_list_get_iterator(list: *mut PangoAttrList) -> *mut PangoAttrIterator;
pango_attr_list_insert(list: *mut PangoAttrList, attr: *mut PangoAttribute)1589     pub fn pango_attr_list_insert(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_insert_before(list: *mut PangoAttrList, attr: *mut PangoAttribute)1590     pub fn pango_attr_list_insert_before(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_ref(list: *mut PangoAttrList) -> *mut PangoAttrList1591     pub fn pango_attr_list_ref(list: *mut PangoAttrList) -> *mut PangoAttrList;
pango_attr_list_splice( list: *mut PangoAttrList, other: *mut PangoAttrList, pos: c_int, len: c_int, )1592     pub fn pango_attr_list_splice(
1593         list: *mut PangoAttrList,
1594         other: *mut PangoAttrList,
1595         pos: c_int,
1596         len: c_int,
1597     );
pango_attr_list_unref(list: *mut PangoAttrList)1598     pub fn pango_attr_list_unref(list: *mut PangoAttrList);
1599 
1600     //=========================================================================
1601     // PangoAttrShape
1602     //=========================================================================
pango_attr_shape_new( ink_rect: *const PangoRectangle, logical_rect: *const PangoRectangle, ) -> *mut PangoAttribute1603     pub fn pango_attr_shape_new(
1604         ink_rect: *const PangoRectangle,
1605         logical_rect: *const PangoRectangle,
1606     ) -> *mut PangoAttribute;
pango_attr_shape_new_with_data( ink_rect: *const PangoRectangle, logical_rect: *const PangoRectangle, data: gpointer, copy_func: PangoAttrDataCopyFunc, destroy_func: glib::GDestroyNotify, ) -> *mut PangoAttribute1607     pub fn pango_attr_shape_new_with_data(
1608         ink_rect: *const PangoRectangle,
1609         logical_rect: *const PangoRectangle,
1610         data: gpointer,
1611         copy_func: PangoAttrDataCopyFunc,
1612         destroy_func: glib::GDestroyNotify,
1613     ) -> *mut PangoAttribute;
1614 
1615     //=========================================================================
1616     // PangoAttrSize
1617     //=========================================================================
pango_attr_size_new(size: c_int) -> *mut PangoAttribute1618     pub fn pango_attr_size_new(size: c_int) -> *mut PangoAttribute;
pango_attr_size_new_absolute(size: c_int) -> *mut PangoAttribute1619     pub fn pango_attr_size_new_absolute(size: c_int) -> *mut PangoAttribute;
1620 
1621     //=========================================================================
1622     // PangoAttribute
1623     //=========================================================================
pango_attribute_copy(attr: *const PangoAttribute) -> *mut PangoAttribute1624     pub fn pango_attribute_copy(attr: *const PangoAttribute) -> *mut PangoAttribute;
pango_attribute_destroy(attr: *mut PangoAttribute)1625     pub fn pango_attribute_destroy(attr: *mut PangoAttribute);
pango_attribute_equal( attr1: *const PangoAttribute, attr2: *const PangoAttribute, ) -> gboolean1626     pub fn pango_attribute_equal(
1627         attr1: *const PangoAttribute,
1628         attr2: *const PangoAttribute,
1629     ) -> gboolean;
pango_attribute_init(attr: *mut PangoAttribute, klass: *const PangoAttrClass)1630     pub fn pango_attribute_init(attr: *mut PangoAttribute, klass: *const PangoAttrClass);
1631 
1632     //=========================================================================
1633     // PangoColor
1634     //=========================================================================
pango_color_get_type() -> GType1635     pub fn pango_color_get_type() -> GType;
pango_color_copy(src: *const PangoColor) -> *mut PangoColor1636     pub fn pango_color_copy(src: *const PangoColor) -> *mut PangoColor;
pango_color_free(color: *mut PangoColor)1637     pub fn pango_color_free(color: *mut PangoColor);
pango_color_parse(color: *mut PangoColor, spec: *const c_char) -> gboolean1638     pub fn pango_color_parse(color: *mut PangoColor, spec: *const c_char) -> gboolean;
pango_color_to_string(color: *const PangoColor) -> *mut c_char1639     pub fn pango_color_to_string(color: *const PangoColor) -> *mut c_char;
1640 
1641     //=========================================================================
1642     // PangoCoverage
1643     //=========================================================================
pango_coverage_copy(coverage: *mut PangoCoverage) -> *mut PangoCoverage1644     pub fn pango_coverage_copy(coverage: *mut PangoCoverage) -> *mut PangoCoverage;
pango_coverage_get(coverage: *mut PangoCoverage, index_: c_int) -> PangoCoverageLevel1645     pub fn pango_coverage_get(coverage: *mut PangoCoverage, index_: c_int) -> PangoCoverageLevel;
pango_coverage_max(coverage: *mut PangoCoverage, other: *mut PangoCoverage)1646     pub fn pango_coverage_max(coverage: *mut PangoCoverage, other: *mut PangoCoverage);
pango_coverage_ref(coverage: *mut PangoCoverage) -> *mut PangoCoverage1647     pub fn pango_coverage_ref(coverage: *mut PangoCoverage) -> *mut PangoCoverage;
pango_coverage_set( coverage: *mut PangoCoverage, index_: c_int, level: PangoCoverageLevel, )1648     pub fn pango_coverage_set(
1649         coverage: *mut PangoCoverage,
1650         index_: c_int,
1651         level: PangoCoverageLevel,
1652     );
pango_coverage_to_bytes( coverage: *mut PangoCoverage, bytes: *mut *mut u8, n_bytes: *mut c_int, )1653     pub fn pango_coverage_to_bytes(
1654         coverage: *mut PangoCoverage,
1655         bytes: *mut *mut u8,
1656         n_bytes: *mut c_int,
1657     );
pango_coverage_unref(coverage: *mut PangoCoverage)1658     pub fn pango_coverage_unref(coverage: *mut PangoCoverage);
pango_coverage_from_bytes(bytes: *mut u8, n_bytes: c_int) -> *mut PangoCoverage1659     pub fn pango_coverage_from_bytes(bytes: *mut u8, n_bytes: c_int) -> *mut PangoCoverage;
pango_coverage_new() -> *mut PangoCoverage1660     pub fn pango_coverage_new() -> *mut PangoCoverage;
1661 
1662     //=========================================================================
1663     // PangoFontDescription
1664     //=========================================================================
pango_font_description_get_type() -> GType1665     pub fn pango_font_description_get_type() -> GType;
pango_font_description_new() -> *mut PangoFontDescription1666     pub fn pango_font_description_new() -> *mut PangoFontDescription;
pango_font_description_better_match( desc: *const PangoFontDescription, old_match: *const PangoFontDescription, new_match: *const PangoFontDescription, ) -> gboolean1667     pub fn pango_font_description_better_match(
1668         desc: *const PangoFontDescription,
1669         old_match: *const PangoFontDescription,
1670         new_match: *const PangoFontDescription,
1671     ) -> gboolean;
pango_font_description_copy( desc: *const PangoFontDescription, ) -> *mut PangoFontDescription1672     pub fn pango_font_description_copy(
1673         desc: *const PangoFontDescription,
1674     ) -> *mut PangoFontDescription;
pango_font_description_copy_static( desc: *const PangoFontDescription, ) -> *mut PangoFontDescription1675     pub fn pango_font_description_copy_static(
1676         desc: *const PangoFontDescription,
1677     ) -> *mut PangoFontDescription;
pango_font_description_equal( desc1: *const PangoFontDescription, desc2: *const PangoFontDescription, ) -> gboolean1678     pub fn pango_font_description_equal(
1679         desc1: *const PangoFontDescription,
1680         desc2: *const PangoFontDescription,
1681     ) -> gboolean;
pango_font_description_free(desc: *mut PangoFontDescription)1682     pub fn pango_font_description_free(desc: *mut PangoFontDescription);
pango_font_description_get_family(desc: *const PangoFontDescription) -> *const c_char1683     pub fn pango_font_description_get_family(desc: *const PangoFontDescription) -> *const c_char;
pango_font_description_get_gravity(desc: *const PangoFontDescription) -> PangoGravity1684     pub fn pango_font_description_get_gravity(desc: *const PangoFontDescription) -> PangoGravity;
pango_font_description_get_set_fields( desc: *const PangoFontDescription, ) -> PangoFontMask1685     pub fn pango_font_description_get_set_fields(
1686         desc: *const PangoFontDescription,
1687     ) -> PangoFontMask;
pango_font_description_get_size(desc: *const PangoFontDescription) -> c_int1688     pub fn pango_font_description_get_size(desc: *const PangoFontDescription) -> c_int;
pango_font_description_get_size_is_absolute( desc: *const PangoFontDescription, ) -> gboolean1689     pub fn pango_font_description_get_size_is_absolute(
1690         desc: *const PangoFontDescription,
1691     ) -> gboolean;
pango_font_description_get_stretch(desc: *const PangoFontDescription) -> PangoStretch1692     pub fn pango_font_description_get_stretch(desc: *const PangoFontDescription) -> PangoStretch;
pango_font_description_get_style(desc: *const PangoFontDescription) -> PangoStyle1693     pub fn pango_font_description_get_style(desc: *const PangoFontDescription) -> PangoStyle;
pango_font_description_get_variant(desc: *const PangoFontDescription) -> PangoVariant1694     pub fn pango_font_description_get_variant(desc: *const PangoFontDescription) -> PangoVariant;
1695     #[cfg(any(feature = "v1_42", feature = "dox"))]
pango_font_description_get_variations( desc: *const PangoFontDescription, ) -> *const c_char1696     pub fn pango_font_description_get_variations(
1697         desc: *const PangoFontDescription,
1698     ) -> *const c_char;
pango_font_description_get_weight(desc: *const PangoFontDescription) -> PangoWeight1699     pub fn pango_font_description_get_weight(desc: *const PangoFontDescription) -> PangoWeight;
pango_font_description_hash(desc: *const PangoFontDescription) -> c_uint1700     pub fn pango_font_description_hash(desc: *const PangoFontDescription) -> c_uint;
pango_font_description_merge( desc: *mut PangoFontDescription, desc_to_merge: *const PangoFontDescription, replace_existing: gboolean, )1701     pub fn pango_font_description_merge(
1702         desc: *mut PangoFontDescription,
1703         desc_to_merge: *const PangoFontDescription,
1704         replace_existing: gboolean,
1705     );
pango_font_description_merge_static( desc: *mut PangoFontDescription, desc_to_merge: *const PangoFontDescription, replace_existing: gboolean, )1706     pub fn pango_font_description_merge_static(
1707         desc: *mut PangoFontDescription,
1708         desc_to_merge: *const PangoFontDescription,
1709         replace_existing: gboolean,
1710     );
pango_font_description_set_absolute_size( desc: *mut PangoFontDescription, size: c_double, )1711     pub fn pango_font_description_set_absolute_size(
1712         desc: *mut PangoFontDescription,
1713         size: c_double,
1714     );
pango_font_description_set_family( desc: *mut PangoFontDescription, family: *const c_char, )1715     pub fn pango_font_description_set_family(
1716         desc: *mut PangoFontDescription,
1717         family: *const c_char,
1718     );
pango_font_description_set_family_static( desc: *mut PangoFontDescription, family: *const c_char, )1719     pub fn pango_font_description_set_family_static(
1720         desc: *mut PangoFontDescription,
1721         family: *const c_char,
1722     );
pango_font_description_set_gravity( desc: *mut PangoFontDescription, gravity: PangoGravity, )1723     pub fn pango_font_description_set_gravity(
1724         desc: *mut PangoFontDescription,
1725         gravity: PangoGravity,
1726     );
pango_font_description_set_size(desc: *mut PangoFontDescription, size: c_int)1727     pub fn pango_font_description_set_size(desc: *mut PangoFontDescription, size: c_int);
pango_font_description_set_stretch( desc: *mut PangoFontDescription, stretch: PangoStretch, )1728     pub fn pango_font_description_set_stretch(
1729         desc: *mut PangoFontDescription,
1730         stretch: PangoStretch,
1731     );
pango_font_description_set_style(desc: *mut PangoFontDescription, style: PangoStyle)1732     pub fn pango_font_description_set_style(desc: *mut PangoFontDescription, style: PangoStyle);
pango_font_description_set_variant( desc: *mut PangoFontDescription, variant: PangoVariant, )1733     pub fn pango_font_description_set_variant(
1734         desc: *mut PangoFontDescription,
1735         variant: PangoVariant,
1736     );
1737     #[cfg(any(feature = "v1_42", feature = "dox"))]
pango_font_description_set_variations( desc: *mut PangoFontDescription, settings: *const c_char, )1738     pub fn pango_font_description_set_variations(
1739         desc: *mut PangoFontDescription,
1740         settings: *const c_char,
1741     );
1742     #[cfg(any(feature = "v1_42", feature = "dox"))]
pango_font_description_set_variations_static( desc: *mut PangoFontDescription, settings: *const c_char, )1743     pub fn pango_font_description_set_variations_static(
1744         desc: *mut PangoFontDescription,
1745         settings: *const c_char,
1746     );
pango_font_description_set_weight(desc: *mut PangoFontDescription, weight: PangoWeight)1747     pub fn pango_font_description_set_weight(desc: *mut PangoFontDescription, weight: PangoWeight);
pango_font_description_to_filename(desc: *const PangoFontDescription) -> *mut c_char1748     pub fn pango_font_description_to_filename(desc: *const PangoFontDescription) -> *mut c_char;
pango_font_description_to_string(desc: *const PangoFontDescription) -> *mut c_char1749     pub fn pango_font_description_to_string(desc: *const PangoFontDescription) -> *mut c_char;
pango_font_description_unset_fields( desc: *mut PangoFontDescription, to_unset: PangoFontMask, )1750     pub fn pango_font_description_unset_fields(
1751         desc: *mut PangoFontDescription,
1752         to_unset: PangoFontMask,
1753     );
pango_font_description_from_string(str: *const c_char) -> *mut PangoFontDescription1754     pub fn pango_font_description_from_string(str: *const c_char) -> *mut PangoFontDescription;
1755 
1756     //=========================================================================
1757     // PangoFontMetrics
1758     //=========================================================================
pango_font_metrics_get_type() -> GType1759     pub fn pango_font_metrics_get_type() -> GType;
pango_font_metrics_new() -> *mut PangoFontMetrics1760     pub fn pango_font_metrics_new() -> *mut PangoFontMetrics;
pango_font_metrics_get_approximate_char_width(metrics: *mut PangoFontMetrics) -> c_int1761     pub fn pango_font_metrics_get_approximate_char_width(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_approximate_digit_width(metrics: *mut PangoFontMetrics) -> c_int1762     pub fn pango_font_metrics_get_approximate_digit_width(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_ascent(metrics: *mut PangoFontMetrics) -> c_int1763     pub fn pango_font_metrics_get_ascent(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_descent(metrics: *mut PangoFontMetrics) -> c_int1764     pub fn pango_font_metrics_get_descent(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_strikethrough_position(metrics: *mut PangoFontMetrics) -> c_int1765     pub fn pango_font_metrics_get_strikethrough_position(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_strikethrough_thickness(metrics: *mut PangoFontMetrics) -> c_int1766     pub fn pango_font_metrics_get_strikethrough_thickness(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_underline_position(metrics: *mut PangoFontMetrics) -> c_int1767     pub fn pango_font_metrics_get_underline_position(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_underline_thickness(metrics: *mut PangoFontMetrics) -> c_int1768     pub fn pango_font_metrics_get_underline_thickness(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_ref(metrics: *mut PangoFontMetrics) -> *mut PangoFontMetrics1769     pub fn pango_font_metrics_ref(metrics: *mut PangoFontMetrics) -> *mut PangoFontMetrics;
pango_font_metrics_unref(metrics: *mut PangoFontMetrics)1770     pub fn pango_font_metrics_unref(metrics: *mut PangoFontMetrics);
1771 
1772     //=========================================================================
1773     // PangoGlyphItem
1774     //=========================================================================
pango_glyph_item_get_type() -> GType1775     pub fn pango_glyph_item_get_type() -> GType;
pango_glyph_item_apply_attrs( glyph_item: *mut PangoGlyphItem, text: *const c_char, list: *mut PangoAttrList, ) -> *mut glib::GSList1776     pub fn pango_glyph_item_apply_attrs(
1777         glyph_item: *mut PangoGlyphItem,
1778         text: *const c_char,
1779         list: *mut PangoAttrList,
1780     ) -> *mut glib::GSList;
pango_glyph_item_copy(orig: *mut PangoGlyphItem) -> *mut PangoGlyphItem1781     pub fn pango_glyph_item_copy(orig: *mut PangoGlyphItem) -> *mut PangoGlyphItem;
pango_glyph_item_free(glyph_item: *mut PangoGlyphItem)1782     pub fn pango_glyph_item_free(glyph_item: *mut PangoGlyphItem);
pango_glyph_item_get_logical_widths( glyph_item: *mut PangoGlyphItem, text: *const c_char, logical_widths: *mut c_int, )1783     pub fn pango_glyph_item_get_logical_widths(
1784         glyph_item: *mut PangoGlyphItem,
1785         text: *const c_char,
1786         logical_widths: *mut c_int,
1787     );
pango_glyph_item_letter_space( glyph_item: *mut PangoGlyphItem, text: *const c_char, log_attrs: *mut PangoLogAttr, letter_spacing: c_int, )1788     pub fn pango_glyph_item_letter_space(
1789         glyph_item: *mut PangoGlyphItem,
1790         text: *const c_char,
1791         log_attrs: *mut PangoLogAttr,
1792         letter_spacing: c_int,
1793     );
pango_glyph_item_split( orig: *mut PangoGlyphItem, text: *const c_char, split_index: c_int, ) -> *mut PangoGlyphItem1794     pub fn pango_glyph_item_split(
1795         orig: *mut PangoGlyphItem,
1796         text: *const c_char,
1797         split_index: c_int,
1798     ) -> *mut PangoGlyphItem;
1799 
1800     //=========================================================================
1801     // PangoGlyphItemIter
1802     //=========================================================================
pango_glyph_item_iter_get_type() -> GType1803     pub fn pango_glyph_item_iter_get_type() -> GType;
pango_glyph_item_iter_copy(orig: *mut PangoGlyphItemIter) -> *mut PangoGlyphItemIter1804     pub fn pango_glyph_item_iter_copy(orig: *mut PangoGlyphItemIter) -> *mut PangoGlyphItemIter;
pango_glyph_item_iter_free(iter: *mut PangoGlyphItemIter)1805     pub fn pango_glyph_item_iter_free(iter: *mut PangoGlyphItemIter);
pango_glyph_item_iter_init_end( iter: *mut PangoGlyphItemIter, glyph_item: *mut PangoGlyphItem, text: *const c_char, ) -> gboolean1806     pub fn pango_glyph_item_iter_init_end(
1807         iter: *mut PangoGlyphItemIter,
1808         glyph_item: *mut PangoGlyphItem,
1809         text: *const c_char,
1810     ) -> gboolean;
pango_glyph_item_iter_init_start( iter: *mut PangoGlyphItemIter, glyph_item: *mut PangoGlyphItem, text: *const c_char, ) -> gboolean1811     pub fn pango_glyph_item_iter_init_start(
1812         iter: *mut PangoGlyphItemIter,
1813         glyph_item: *mut PangoGlyphItem,
1814         text: *const c_char,
1815     ) -> gboolean;
pango_glyph_item_iter_next_cluster(iter: *mut PangoGlyphItemIter) -> gboolean1816     pub fn pango_glyph_item_iter_next_cluster(iter: *mut PangoGlyphItemIter) -> gboolean;
pango_glyph_item_iter_prev_cluster(iter: *mut PangoGlyphItemIter) -> gboolean1817     pub fn pango_glyph_item_iter_prev_cluster(iter: *mut PangoGlyphItemIter) -> gboolean;
1818 
1819     //=========================================================================
1820     // PangoGlyphString
1821     //=========================================================================
pango_glyph_string_get_type() -> GType1822     pub fn pango_glyph_string_get_type() -> GType;
pango_glyph_string_new() -> *mut PangoGlyphString1823     pub fn pango_glyph_string_new() -> *mut PangoGlyphString;
pango_glyph_string_copy(string: *mut PangoGlyphString) -> *mut PangoGlyphString1824     pub fn pango_glyph_string_copy(string: *mut PangoGlyphString) -> *mut PangoGlyphString;
pango_glyph_string_extents( glyphs: *mut PangoGlyphString, font: *mut PangoFont, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1825     pub fn pango_glyph_string_extents(
1826         glyphs: *mut PangoGlyphString,
1827         font: *mut PangoFont,
1828         ink_rect: *mut PangoRectangle,
1829         logical_rect: *mut PangoRectangle,
1830     );
pango_glyph_string_extents_range( glyphs: *mut PangoGlyphString, start: c_int, end: c_int, font: *mut PangoFont, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1831     pub fn pango_glyph_string_extents_range(
1832         glyphs: *mut PangoGlyphString,
1833         start: c_int,
1834         end: c_int,
1835         font: *mut PangoFont,
1836         ink_rect: *mut PangoRectangle,
1837         logical_rect: *mut PangoRectangle,
1838     );
pango_glyph_string_free(string: *mut PangoGlyphString)1839     pub fn pango_glyph_string_free(string: *mut PangoGlyphString);
pango_glyph_string_get_logical_widths( glyphs: *mut PangoGlyphString, text: *const c_char, length: c_int, embedding_level: c_int, logical_widths: *mut c_int, )1840     pub fn pango_glyph_string_get_logical_widths(
1841         glyphs: *mut PangoGlyphString,
1842         text: *const c_char,
1843         length: c_int,
1844         embedding_level: c_int,
1845         logical_widths: *mut c_int,
1846     );
pango_glyph_string_get_width(glyphs: *mut PangoGlyphString) -> c_int1847     pub fn pango_glyph_string_get_width(glyphs: *mut PangoGlyphString) -> c_int;
pango_glyph_string_index_to_x( glyphs: *mut PangoGlyphString, text: *mut c_char, length: c_int, analysis: *mut PangoAnalysis, index_: c_int, trailing: gboolean, x_pos: *mut c_int, )1848     pub fn pango_glyph_string_index_to_x(
1849         glyphs: *mut PangoGlyphString,
1850         text: *mut c_char,
1851         length: c_int,
1852         analysis: *mut PangoAnalysis,
1853         index_: c_int,
1854         trailing: gboolean,
1855         x_pos: *mut c_int,
1856     );
pango_glyph_string_set_size(string: *mut PangoGlyphString, new_len: c_int)1857     pub fn pango_glyph_string_set_size(string: *mut PangoGlyphString, new_len: c_int);
pango_glyph_string_x_to_index( glyphs: *mut PangoGlyphString, text: *mut c_char, length: c_int, analysis: *mut PangoAnalysis, x_pos: c_int, index_: *mut c_int, trailing: *mut c_int, )1858     pub fn pango_glyph_string_x_to_index(
1859         glyphs: *mut PangoGlyphString,
1860         text: *mut c_char,
1861         length: c_int,
1862         analysis: *mut PangoAnalysis,
1863         x_pos: c_int,
1864         index_: *mut c_int,
1865         trailing: *mut c_int,
1866     );
1867 
1868     //=========================================================================
1869     // PangoItem
1870     //=========================================================================
pango_item_get_type() -> GType1871     pub fn pango_item_get_type() -> GType;
pango_item_new() -> *mut PangoItem1872     pub fn pango_item_new() -> *mut PangoItem;
pango_item_copy(item: *mut PangoItem) -> *mut PangoItem1873     pub fn pango_item_copy(item: *mut PangoItem) -> *mut PangoItem;
pango_item_free(item: *mut PangoItem)1874     pub fn pango_item_free(item: *mut PangoItem);
pango_item_split( orig: *mut PangoItem, split_index: c_int, split_offset: c_int, ) -> *mut PangoItem1875     pub fn pango_item_split(
1876         orig: *mut PangoItem,
1877         split_index: c_int,
1878         split_offset: c_int,
1879     ) -> *mut PangoItem;
1880 
1881     //=========================================================================
1882     // PangoLanguage
1883     //=========================================================================
pango_language_get_type() -> GType1884     pub fn pango_language_get_type() -> GType;
pango_language_get_sample_string(language: *mut PangoLanguage) -> *const c_char1885     pub fn pango_language_get_sample_string(language: *mut PangoLanguage) -> *const c_char;
pango_language_get_scripts( language: *mut PangoLanguage, num_scripts: *mut c_int, ) -> *const PangoScript1886     pub fn pango_language_get_scripts(
1887         language: *mut PangoLanguage,
1888         num_scripts: *mut c_int,
1889     ) -> *const PangoScript;
pango_language_includes_script( language: *mut PangoLanguage, script: PangoScript, ) -> gboolean1890     pub fn pango_language_includes_script(
1891         language: *mut PangoLanguage,
1892         script: PangoScript,
1893     ) -> gboolean;
pango_language_matches( language: *mut PangoLanguage, range_list: *const c_char, ) -> gboolean1894     pub fn pango_language_matches(
1895         language: *mut PangoLanguage,
1896         range_list: *const c_char,
1897     ) -> gboolean;
pango_language_to_string(language: *mut PangoLanguage) -> *const c_char1898     pub fn pango_language_to_string(language: *mut PangoLanguage) -> *const c_char;
pango_language_from_string(language: *const c_char) -> *mut PangoLanguage1899     pub fn pango_language_from_string(language: *const c_char) -> *mut PangoLanguage;
pango_language_get_default() -> *mut PangoLanguage1900     pub fn pango_language_get_default() -> *mut PangoLanguage;
1901 
1902     //=========================================================================
1903     // PangoLayoutIter
1904     //=========================================================================
pango_layout_iter_get_type() -> GType1905     pub fn pango_layout_iter_get_type() -> GType;
pango_layout_iter_at_last_line(iter: *mut PangoLayoutIter) -> gboolean1906     pub fn pango_layout_iter_at_last_line(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_copy(iter: *mut PangoLayoutIter) -> *mut PangoLayoutIter1907     pub fn pango_layout_iter_copy(iter: *mut PangoLayoutIter) -> *mut PangoLayoutIter;
pango_layout_iter_free(iter: *mut PangoLayoutIter)1908     pub fn pango_layout_iter_free(iter: *mut PangoLayoutIter);
pango_layout_iter_get_baseline(iter: *mut PangoLayoutIter) -> c_int1909     pub fn pango_layout_iter_get_baseline(iter: *mut PangoLayoutIter) -> c_int;
pango_layout_iter_get_char_extents( iter: *mut PangoLayoutIter, logical_rect: *mut PangoRectangle, )1910     pub fn pango_layout_iter_get_char_extents(
1911         iter: *mut PangoLayoutIter,
1912         logical_rect: *mut PangoRectangle,
1913     );
pango_layout_iter_get_cluster_extents( iter: *mut PangoLayoutIter, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1914     pub fn pango_layout_iter_get_cluster_extents(
1915         iter: *mut PangoLayoutIter,
1916         ink_rect: *mut PangoRectangle,
1917         logical_rect: *mut PangoRectangle,
1918     );
pango_layout_iter_get_index(iter: *mut PangoLayoutIter) -> c_int1919     pub fn pango_layout_iter_get_index(iter: *mut PangoLayoutIter) -> c_int;
pango_layout_iter_get_layout(iter: *mut PangoLayoutIter) -> *mut PangoLayout1920     pub fn pango_layout_iter_get_layout(iter: *mut PangoLayoutIter) -> *mut PangoLayout;
pango_layout_iter_get_layout_extents( iter: *mut PangoLayoutIter, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1921     pub fn pango_layout_iter_get_layout_extents(
1922         iter: *mut PangoLayoutIter,
1923         ink_rect: *mut PangoRectangle,
1924         logical_rect: *mut PangoRectangle,
1925     );
pango_layout_iter_get_line(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine1926     pub fn pango_layout_iter_get_line(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine;
pango_layout_iter_get_line_extents( iter: *mut PangoLayoutIter, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1927     pub fn pango_layout_iter_get_line_extents(
1928         iter: *mut PangoLayoutIter,
1929         ink_rect: *mut PangoRectangle,
1930         logical_rect: *mut PangoRectangle,
1931     );
pango_layout_iter_get_line_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine1932     pub fn pango_layout_iter_get_line_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine;
pango_layout_iter_get_line_yrange( iter: *mut PangoLayoutIter, y0_: *mut c_int, y1_: *mut c_int, )1933     pub fn pango_layout_iter_get_line_yrange(
1934         iter: *mut PangoLayoutIter,
1935         y0_: *mut c_int,
1936         y1_: *mut c_int,
1937     );
pango_layout_iter_get_run(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun1938     pub fn pango_layout_iter_get_run(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun;
pango_layout_iter_get_run_extents( iter: *mut PangoLayoutIter, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1939     pub fn pango_layout_iter_get_run_extents(
1940         iter: *mut PangoLayoutIter,
1941         ink_rect: *mut PangoRectangle,
1942         logical_rect: *mut PangoRectangle,
1943     );
pango_layout_iter_get_run_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun1944     pub fn pango_layout_iter_get_run_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun;
pango_layout_iter_next_char(iter: *mut PangoLayoutIter) -> gboolean1945     pub fn pango_layout_iter_next_char(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_cluster(iter: *mut PangoLayoutIter) -> gboolean1946     pub fn pango_layout_iter_next_cluster(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_line(iter: *mut PangoLayoutIter) -> gboolean1947     pub fn pango_layout_iter_next_line(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_run(iter: *mut PangoLayoutIter) -> gboolean1948     pub fn pango_layout_iter_next_run(iter: *mut PangoLayoutIter) -> gboolean;
1949 
1950     //=========================================================================
1951     // PangoLayoutLine
1952     //=========================================================================
pango_layout_line_get_type() -> GType1953     pub fn pango_layout_line_get_type() -> GType;
pango_layout_line_get_extents( line: *mut PangoLayoutLine, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1954     pub fn pango_layout_line_get_extents(
1955         line: *mut PangoLayoutLine,
1956         ink_rect: *mut PangoRectangle,
1957         logical_rect: *mut PangoRectangle,
1958     );
pango_layout_line_get_pixel_extents( layout_line: *mut PangoLayoutLine, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1959     pub fn pango_layout_line_get_pixel_extents(
1960         layout_line: *mut PangoLayoutLine,
1961         ink_rect: *mut PangoRectangle,
1962         logical_rect: *mut PangoRectangle,
1963     );
pango_layout_line_get_x_ranges( line: *mut PangoLayoutLine, start_index: c_int, end_index: c_int, ranges: *mut *mut c_int, n_ranges: *mut c_int, )1964     pub fn pango_layout_line_get_x_ranges(
1965         line: *mut PangoLayoutLine,
1966         start_index: c_int,
1967         end_index: c_int,
1968         ranges: *mut *mut c_int,
1969         n_ranges: *mut c_int,
1970     );
pango_layout_line_index_to_x( line: *mut PangoLayoutLine, index_: c_int, trailing: gboolean, x_pos: *mut c_int, )1971     pub fn pango_layout_line_index_to_x(
1972         line: *mut PangoLayoutLine,
1973         index_: c_int,
1974         trailing: gboolean,
1975         x_pos: *mut c_int,
1976     );
pango_layout_line_ref(line: *mut PangoLayoutLine) -> *mut PangoLayoutLine1977     pub fn pango_layout_line_ref(line: *mut PangoLayoutLine) -> *mut PangoLayoutLine;
pango_layout_line_unref(line: *mut PangoLayoutLine)1978     pub fn pango_layout_line_unref(line: *mut PangoLayoutLine);
pango_layout_line_x_to_index( line: *mut PangoLayoutLine, x_pos: c_int, index_: *mut c_int, trailing: *mut c_int, ) -> gboolean1979     pub fn pango_layout_line_x_to_index(
1980         line: *mut PangoLayoutLine,
1981         x_pos: c_int,
1982         index_: *mut c_int,
1983         trailing: *mut c_int,
1984     ) -> gboolean;
1985 
1986     //=========================================================================
1987     // PangoMap
1988     //=========================================================================
pango_map_get_engine(map: *mut PangoMap, script: PangoScript) -> *mut PangoEngine1989     pub fn pango_map_get_engine(map: *mut PangoMap, script: PangoScript) -> *mut PangoEngine;
pango_map_get_engines( map: *mut PangoMap, script: PangoScript, exact_engines: *mut *mut glib::GSList, fallback_engines: *mut *mut glib::GSList, )1990     pub fn pango_map_get_engines(
1991         map: *mut PangoMap,
1992         script: PangoScript,
1993         exact_engines: *mut *mut glib::GSList,
1994         fallback_engines: *mut *mut glib::GSList,
1995     );
1996 
1997     //=========================================================================
1998     // PangoMatrix
1999     //=========================================================================
pango_matrix_get_type() -> GType2000     pub fn pango_matrix_get_type() -> GType;
pango_matrix_concat(matrix: *mut PangoMatrix, new_matrix: *const PangoMatrix)2001     pub fn pango_matrix_concat(matrix: *mut PangoMatrix, new_matrix: *const PangoMatrix);
pango_matrix_copy(matrix: *const PangoMatrix) -> *mut PangoMatrix2002     pub fn pango_matrix_copy(matrix: *const PangoMatrix) -> *mut PangoMatrix;
pango_matrix_free(matrix: *mut PangoMatrix)2003     pub fn pango_matrix_free(matrix: *mut PangoMatrix);
pango_matrix_get_font_scale_factor(matrix: *const PangoMatrix) -> c_double2004     pub fn pango_matrix_get_font_scale_factor(matrix: *const PangoMatrix) -> c_double;
2005     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_matrix_get_font_scale_factors( matrix: *const PangoMatrix, xscale: *mut c_double, yscale: *mut c_double, )2006     pub fn pango_matrix_get_font_scale_factors(
2007         matrix: *const PangoMatrix,
2008         xscale: *mut c_double,
2009         yscale: *mut c_double,
2010     );
pango_matrix_rotate(matrix: *mut PangoMatrix, degrees: c_double)2011     pub fn pango_matrix_rotate(matrix: *mut PangoMatrix, degrees: c_double);
pango_matrix_scale(matrix: *mut PangoMatrix, scale_x: c_double, scale_y: c_double)2012     pub fn pango_matrix_scale(matrix: *mut PangoMatrix, scale_x: c_double, scale_y: c_double);
pango_matrix_transform_distance( matrix: *const PangoMatrix, dx: *mut c_double, dy: *mut c_double, )2013     pub fn pango_matrix_transform_distance(
2014         matrix: *const PangoMatrix,
2015         dx: *mut c_double,
2016         dy: *mut c_double,
2017     );
pango_matrix_transform_pixel_rectangle( matrix: *const PangoMatrix, rect: *mut PangoRectangle, )2018     pub fn pango_matrix_transform_pixel_rectangle(
2019         matrix: *const PangoMatrix,
2020         rect: *mut PangoRectangle,
2021     );
pango_matrix_transform_point( matrix: *const PangoMatrix, x: *mut c_double, y: *mut c_double, )2022     pub fn pango_matrix_transform_point(
2023         matrix: *const PangoMatrix,
2024         x: *mut c_double,
2025         y: *mut c_double,
2026     );
pango_matrix_transform_rectangle(matrix: *const PangoMatrix, rect: *mut PangoRectangle)2027     pub fn pango_matrix_transform_rectangle(matrix: *const PangoMatrix, rect: *mut PangoRectangle);
pango_matrix_translate(matrix: *mut PangoMatrix, tx: c_double, ty: c_double)2028     pub fn pango_matrix_translate(matrix: *mut PangoMatrix, tx: c_double, ty: c_double);
2029 
2030     //=========================================================================
2031     // PangoScriptIter
2032     //=========================================================================
pango_script_iter_free(iter: *mut PangoScriptIter)2033     pub fn pango_script_iter_free(iter: *mut PangoScriptIter);
pango_script_iter_get_range( iter: *mut PangoScriptIter, start: *mut *const c_char, end: *mut *const c_char, script: *mut PangoScript, )2034     pub fn pango_script_iter_get_range(
2035         iter: *mut PangoScriptIter,
2036         start: *mut *const c_char,
2037         end: *mut *const c_char,
2038         script: *mut PangoScript,
2039     );
pango_script_iter_next(iter: *mut PangoScriptIter) -> gboolean2040     pub fn pango_script_iter_next(iter: *mut PangoScriptIter) -> gboolean;
pango_script_iter_new(text: *const c_char, length: c_int) -> *mut PangoScriptIter2041     pub fn pango_script_iter_new(text: *const c_char, length: c_int) -> *mut PangoScriptIter;
2042 
2043     //=========================================================================
2044     // PangoTabArray
2045     //=========================================================================
pango_tab_array_get_type() -> GType2046     pub fn pango_tab_array_get_type() -> GType;
pango_tab_array_new( initial_size: c_int, positions_in_pixels: gboolean, ) -> *mut PangoTabArray2047     pub fn pango_tab_array_new(
2048         initial_size: c_int,
2049         positions_in_pixels: gboolean,
2050     ) -> *mut PangoTabArray;
pango_tab_array_new_with_positions( size: c_int, positions_in_pixels: gboolean, first_alignment: PangoTabAlign, first_position: c_int, ... ) -> *mut PangoTabArray2051     pub fn pango_tab_array_new_with_positions(
2052         size: c_int,
2053         positions_in_pixels: gboolean,
2054         first_alignment: PangoTabAlign,
2055         first_position: c_int,
2056         ...
2057     ) -> *mut PangoTabArray;
pango_tab_array_copy(src: *mut PangoTabArray) -> *mut PangoTabArray2058     pub fn pango_tab_array_copy(src: *mut PangoTabArray) -> *mut PangoTabArray;
pango_tab_array_free(tab_array: *mut PangoTabArray)2059     pub fn pango_tab_array_free(tab_array: *mut PangoTabArray);
pango_tab_array_get_positions_in_pixels(tab_array: *mut PangoTabArray) -> gboolean2060     pub fn pango_tab_array_get_positions_in_pixels(tab_array: *mut PangoTabArray) -> gboolean;
pango_tab_array_get_size(tab_array: *mut PangoTabArray) -> c_int2061     pub fn pango_tab_array_get_size(tab_array: *mut PangoTabArray) -> c_int;
pango_tab_array_get_tab( tab_array: *mut PangoTabArray, tab_index: c_int, alignment: *mut PangoTabAlign, location: *mut c_int, )2062     pub fn pango_tab_array_get_tab(
2063         tab_array: *mut PangoTabArray,
2064         tab_index: c_int,
2065         alignment: *mut PangoTabAlign,
2066         location: *mut c_int,
2067     );
pango_tab_array_get_tabs( tab_array: *mut PangoTabArray, alignments: *mut *mut PangoTabAlign, locations: *mut *mut c_int, )2068     pub fn pango_tab_array_get_tabs(
2069         tab_array: *mut PangoTabArray,
2070         alignments: *mut *mut PangoTabAlign,
2071         locations: *mut *mut c_int,
2072     );
pango_tab_array_resize(tab_array: *mut PangoTabArray, new_size: c_int)2073     pub fn pango_tab_array_resize(tab_array: *mut PangoTabArray, new_size: c_int);
pango_tab_array_set_tab( tab_array: *mut PangoTabArray, tab_index: c_int, alignment: PangoTabAlign, location: c_int, )2074     pub fn pango_tab_array_set_tab(
2075         tab_array: *mut PangoTabArray,
2076         tab_index: c_int,
2077         alignment: PangoTabAlign,
2078         location: c_int,
2079     );
2080 
2081     //=========================================================================
2082     // PangoContext
2083     //=========================================================================
pango_context_get_type() -> GType2084     pub fn pango_context_get_type() -> GType;
pango_context_new() -> *mut PangoContext2085     pub fn pango_context_new() -> *mut PangoContext;
pango_context_changed(context: *mut PangoContext)2086     pub fn pango_context_changed(context: *mut PangoContext);
pango_context_get_base_dir(context: *mut PangoContext) -> PangoDirection2087     pub fn pango_context_get_base_dir(context: *mut PangoContext) -> PangoDirection;
pango_context_get_base_gravity(context: *mut PangoContext) -> PangoGravity2088     pub fn pango_context_get_base_gravity(context: *mut PangoContext) -> PangoGravity;
pango_context_get_font_description( context: *mut PangoContext, ) -> *mut PangoFontDescription2089     pub fn pango_context_get_font_description(
2090         context: *mut PangoContext,
2091     ) -> *mut PangoFontDescription;
pango_context_get_font_map(context: *mut PangoContext) -> *mut PangoFontMap2092     pub fn pango_context_get_font_map(context: *mut PangoContext) -> *mut PangoFontMap;
pango_context_get_gravity(context: *mut PangoContext) -> PangoGravity2093     pub fn pango_context_get_gravity(context: *mut PangoContext) -> PangoGravity;
pango_context_get_gravity_hint(context: *mut PangoContext) -> PangoGravityHint2094     pub fn pango_context_get_gravity_hint(context: *mut PangoContext) -> PangoGravityHint;
pango_context_get_language(context: *mut PangoContext) -> *mut PangoLanguage2095     pub fn pango_context_get_language(context: *mut PangoContext) -> *mut PangoLanguage;
pango_context_get_matrix(context: *mut PangoContext) -> *const PangoMatrix2096     pub fn pango_context_get_matrix(context: *mut PangoContext) -> *const PangoMatrix;
pango_context_get_metrics( context: *mut PangoContext, desc: *const PangoFontDescription, language: *mut PangoLanguage, ) -> *mut PangoFontMetrics2097     pub fn pango_context_get_metrics(
2098         context: *mut PangoContext,
2099         desc: *const PangoFontDescription,
2100         language: *mut PangoLanguage,
2101     ) -> *mut PangoFontMetrics;
pango_context_get_serial(context: *mut PangoContext) -> c_uint2102     pub fn pango_context_get_serial(context: *mut PangoContext) -> c_uint;
pango_context_list_families( context: *mut PangoContext, families: *mut *mut *mut PangoFontFamily, n_families: *mut c_int, )2103     pub fn pango_context_list_families(
2104         context: *mut PangoContext,
2105         families: *mut *mut *mut PangoFontFamily,
2106         n_families: *mut c_int,
2107     );
pango_context_load_font( context: *mut PangoContext, desc: *const PangoFontDescription, ) -> *mut PangoFont2108     pub fn pango_context_load_font(
2109         context: *mut PangoContext,
2110         desc: *const PangoFontDescription,
2111     ) -> *mut PangoFont;
pango_context_load_fontset( context: *mut PangoContext, desc: *const PangoFontDescription, language: *mut PangoLanguage, ) -> *mut PangoFontset2112     pub fn pango_context_load_fontset(
2113         context: *mut PangoContext,
2114         desc: *const PangoFontDescription,
2115         language: *mut PangoLanguage,
2116     ) -> *mut PangoFontset;
pango_context_set_base_dir(context: *mut PangoContext, direction: PangoDirection)2117     pub fn pango_context_set_base_dir(context: *mut PangoContext, direction: PangoDirection);
pango_context_set_base_gravity(context: *mut PangoContext, gravity: PangoGravity)2118     pub fn pango_context_set_base_gravity(context: *mut PangoContext, gravity: PangoGravity);
pango_context_set_font_description( context: *mut PangoContext, desc: *const PangoFontDescription, )2119     pub fn pango_context_set_font_description(
2120         context: *mut PangoContext,
2121         desc: *const PangoFontDescription,
2122     );
pango_context_set_font_map(context: *mut PangoContext, font_map: *mut PangoFontMap)2123     pub fn pango_context_set_font_map(context: *mut PangoContext, font_map: *mut PangoFontMap);
pango_context_set_gravity_hint(context: *mut PangoContext, hint: PangoGravityHint)2124     pub fn pango_context_set_gravity_hint(context: *mut PangoContext, hint: PangoGravityHint);
pango_context_set_language(context: *mut PangoContext, language: *mut PangoLanguage)2125     pub fn pango_context_set_language(context: *mut PangoContext, language: *mut PangoLanguage);
pango_context_set_matrix(context: *mut PangoContext, matrix: *const PangoMatrix)2126     pub fn pango_context_set_matrix(context: *mut PangoContext, matrix: *const PangoMatrix);
2127 
2128     //=========================================================================
2129     // PangoEngine
2130     //=========================================================================
pango_engine_get_type() -> GType2131     pub fn pango_engine_get_type() -> GType;
2132 
2133     //=========================================================================
2134     // PangoEngineLang
2135     //=========================================================================
pango_engine_lang_get_type() -> GType2136     pub fn pango_engine_lang_get_type() -> GType;
2137 
2138     //=========================================================================
2139     // PangoEngineShape
2140     //=========================================================================
pango_engine_shape_get_type() -> GType2141     pub fn pango_engine_shape_get_type() -> GType;
2142 
2143     //=========================================================================
2144     // PangoFont
2145     //=========================================================================
pango_font_get_type() -> GType2146     pub fn pango_font_get_type() -> GType;
pango_font_descriptions_free(descs: *mut *mut PangoFontDescription, n_descs: c_int)2147     pub fn pango_font_descriptions_free(descs: *mut *mut PangoFontDescription, n_descs: c_int);
pango_font_describe(font: *mut PangoFont) -> *mut PangoFontDescription2148     pub fn pango_font_describe(font: *mut PangoFont) -> *mut PangoFontDescription;
pango_font_describe_with_absolute_size( font: *mut PangoFont, ) -> *mut PangoFontDescription2149     pub fn pango_font_describe_with_absolute_size(
2150         font: *mut PangoFont,
2151     ) -> *mut PangoFontDescription;
pango_font_find_shaper( font: *mut PangoFont, language: *mut PangoLanguage, ch: u32, ) -> *mut PangoEngineShape2152     pub fn pango_font_find_shaper(
2153         font: *mut PangoFont,
2154         language: *mut PangoLanguage,
2155         ch: u32,
2156     ) -> *mut PangoEngineShape;
pango_font_get_coverage( font: *mut PangoFont, language: *mut PangoLanguage, ) -> *mut PangoCoverage2157     pub fn pango_font_get_coverage(
2158         font: *mut PangoFont,
2159         language: *mut PangoLanguage,
2160     ) -> *mut PangoCoverage;
pango_font_get_font_map(font: *mut PangoFont) -> *mut PangoFontMap2161     pub fn pango_font_get_font_map(font: *mut PangoFont) -> *mut PangoFontMap;
pango_font_get_glyph_extents( font: *mut PangoFont, glyph: PangoGlyph, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2162     pub fn pango_font_get_glyph_extents(
2163         font: *mut PangoFont,
2164         glyph: PangoGlyph,
2165         ink_rect: *mut PangoRectangle,
2166         logical_rect: *mut PangoRectangle,
2167     );
pango_font_get_metrics( font: *mut PangoFont, language: *mut PangoLanguage, ) -> *mut PangoFontMetrics2168     pub fn pango_font_get_metrics(
2169         font: *mut PangoFont,
2170         language: *mut PangoLanguage,
2171     ) -> *mut PangoFontMetrics;
2172 
2173     //=========================================================================
2174     // PangoFontFace
2175     //=========================================================================
pango_font_face_get_type() -> GType2176     pub fn pango_font_face_get_type() -> GType;
pango_font_face_describe(face: *mut PangoFontFace) -> *mut PangoFontDescription2177     pub fn pango_font_face_describe(face: *mut PangoFontFace) -> *mut PangoFontDescription;
pango_font_face_get_face_name(face: *mut PangoFontFace) -> *const c_char2178     pub fn pango_font_face_get_face_name(face: *mut PangoFontFace) -> *const c_char;
pango_font_face_is_synthesized(face: *mut PangoFontFace) -> gboolean2179     pub fn pango_font_face_is_synthesized(face: *mut PangoFontFace) -> gboolean;
pango_font_face_list_sizes( face: *mut PangoFontFace, sizes: *mut *mut c_int, n_sizes: *mut c_int, )2180     pub fn pango_font_face_list_sizes(
2181         face: *mut PangoFontFace,
2182         sizes: *mut *mut c_int,
2183         n_sizes: *mut c_int,
2184     );
2185 
2186     //=========================================================================
2187     // PangoFontFamily
2188     //=========================================================================
pango_font_family_get_type() -> GType2189     pub fn pango_font_family_get_type() -> GType;
pango_font_family_get_name(family: *mut PangoFontFamily) -> *const c_char2190     pub fn pango_font_family_get_name(family: *mut PangoFontFamily) -> *const c_char;
pango_font_family_is_monospace(family: *mut PangoFontFamily) -> gboolean2191     pub fn pango_font_family_is_monospace(family: *mut PangoFontFamily) -> gboolean;
pango_font_family_list_faces( family: *mut PangoFontFamily, faces: *mut *mut *mut PangoFontFace, n_faces: *mut c_int, )2192     pub fn pango_font_family_list_faces(
2193         family: *mut PangoFontFamily,
2194         faces: *mut *mut *mut PangoFontFace,
2195         n_faces: *mut c_int,
2196     );
2197 
2198     //=========================================================================
2199     // PangoFontMap
2200     //=========================================================================
pango_font_map_get_type() -> GType2201     pub fn pango_font_map_get_type() -> GType;
pango_font_map_changed(fontmap: *mut PangoFontMap)2202     pub fn pango_font_map_changed(fontmap: *mut PangoFontMap);
pango_font_map_create_context(fontmap: *mut PangoFontMap) -> *mut PangoContext2203     pub fn pango_font_map_create_context(fontmap: *mut PangoFontMap) -> *mut PangoContext;
pango_font_map_get_serial(fontmap: *mut PangoFontMap) -> c_uint2204     pub fn pango_font_map_get_serial(fontmap: *mut PangoFontMap) -> c_uint;
pango_font_map_get_shape_engine_type(fontmap: *mut PangoFontMap) -> *const c_char2205     pub fn pango_font_map_get_shape_engine_type(fontmap: *mut PangoFontMap) -> *const c_char;
pango_font_map_list_families( fontmap: *mut PangoFontMap, families: *mut *mut *mut PangoFontFamily, n_families: *mut c_int, )2206     pub fn pango_font_map_list_families(
2207         fontmap: *mut PangoFontMap,
2208         families: *mut *mut *mut PangoFontFamily,
2209         n_families: *mut c_int,
2210     );
pango_font_map_load_font( fontmap: *mut PangoFontMap, context: *mut PangoContext, desc: *const PangoFontDescription, ) -> *mut PangoFont2211     pub fn pango_font_map_load_font(
2212         fontmap: *mut PangoFontMap,
2213         context: *mut PangoContext,
2214         desc: *const PangoFontDescription,
2215     ) -> *mut PangoFont;
pango_font_map_load_fontset( fontmap: *mut PangoFontMap, context: *mut PangoContext, desc: *const PangoFontDescription, language: *mut PangoLanguage, ) -> *mut PangoFontset2216     pub fn pango_font_map_load_fontset(
2217         fontmap: *mut PangoFontMap,
2218         context: *mut PangoContext,
2219         desc: *const PangoFontDescription,
2220         language: *mut PangoLanguage,
2221     ) -> *mut PangoFontset;
2222 
2223     //=========================================================================
2224     // PangoFontset
2225     //=========================================================================
pango_fontset_get_type() -> GType2226     pub fn pango_fontset_get_type() -> GType;
pango_fontset_foreach( fontset: *mut PangoFontset, func: PangoFontsetForeachFunc, data: gpointer, )2227     pub fn pango_fontset_foreach(
2228         fontset: *mut PangoFontset,
2229         func: PangoFontsetForeachFunc,
2230         data: gpointer,
2231     );
pango_fontset_get_font(fontset: *mut PangoFontset, wc: c_uint) -> *mut PangoFont2232     pub fn pango_fontset_get_font(fontset: *mut PangoFontset, wc: c_uint) -> *mut PangoFont;
pango_fontset_get_metrics(fontset: *mut PangoFontset) -> *mut PangoFontMetrics2233     pub fn pango_fontset_get_metrics(fontset: *mut PangoFontset) -> *mut PangoFontMetrics;
2234 
2235     //=========================================================================
2236     // PangoFontsetSimple
2237     //=========================================================================
pango_fontset_simple_get_type() -> GType2238     pub fn pango_fontset_simple_get_type() -> GType;
pango_fontset_simple_new(language: *mut PangoLanguage) -> *mut PangoFontsetSimple2239     pub fn pango_fontset_simple_new(language: *mut PangoLanguage) -> *mut PangoFontsetSimple;
pango_fontset_simple_append(fontset: *mut PangoFontsetSimple, font: *mut PangoFont)2240     pub fn pango_fontset_simple_append(fontset: *mut PangoFontsetSimple, font: *mut PangoFont);
pango_fontset_simple_size(fontset: *mut PangoFontsetSimple) -> c_int2241     pub fn pango_fontset_simple_size(fontset: *mut PangoFontsetSimple) -> c_int;
2242 
2243     //=========================================================================
2244     // PangoLayout
2245     //=========================================================================
pango_layout_get_type() -> GType2246     pub fn pango_layout_get_type() -> GType;
pango_layout_new(context: *mut PangoContext) -> *mut PangoLayout2247     pub fn pango_layout_new(context: *mut PangoContext) -> *mut PangoLayout;
pango_layout_context_changed(layout: *mut PangoLayout)2248     pub fn pango_layout_context_changed(layout: *mut PangoLayout);
pango_layout_copy(src: *mut PangoLayout) -> *mut PangoLayout2249     pub fn pango_layout_copy(src: *mut PangoLayout) -> *mut PangoLayout;
pango_layout_get_alignment(layout: *mut PangoLayout) -> PangoAlignment2250     pub fn pango_layout_get_alignment(layout: *mut PangoLayout) -> PangoAlignment;
pango_layout_get_attributes(layout: *mut PangoLayout) -> *mut PangoAttrList2251     pub fn pango_layout_get_attributes(layout: *mut PangoLayout) -> *mut PangoAttrList;
pango_layout_get_auto_dir(layout: *mut PangoLayout) -> gboolean2252     pub fn pango_layout_get_auto_dir(layout: *mut PangoLayout) -> gboolean;
pango_layout_get_baseline(layout: *mut PangoLayout) -> c_int2253     pub fn pango_layout_get_baseline(layout: *mut PangoLayout) -> c_int;
pango_layout_get_character_count(layout: *mut PangoLayout) -> c_int2254     pub fn pango_layout_get_character_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_context(layout: *mut PangoLayout) -> *mut PangoContext2255     pub fn pango_layout_get_context(layout: *mut PangoLayout) -> *mut PangoContext;
pango_layout_get_cursor_pos( layout: *mut PangoLayout, index_: c_int, strong_pos: *mut PangoRectangle, weak_pos: *mut PangoRectangle, )2256     pub fn pango_layout_get_cursor_pos(
2257         layout: *mut PangoLayout,
2258         index_: c_int,
2259         strong_pos: *mut PangoRectangle,
2260         weak_pos: *mut PangoRectangle,
2261     );
pango_layout_get_ellipsize(layout: *mut PangoLayout) -> PangoEllipsizeMode2262     pub fn pango_layout_get_ellipsize(layout: *mut PangoLayout) -> PangoEllipsizeMode;
pango_layout_get_extents( layout: *mut PangoLayout, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2263     pub fn pango_layout_get_extents(
2264         layout: *mut PangoLayout,
2265         ink_rect: *mut PangoRectangle,
2266         logical_rect: *mut PangoRectangle,
2267     );
pango_layout_get_font_description( layout: *mut PangoLayout, ) -> *const PangoFontDescription2268     pub fn pango_layout_get_font_description(
2269         layout: *mut PangoLayout,
2270     ) -> *const PangoFontDescription;
pango_layout_get_height(layout: *mut PangoLayout) -> c_int2271     pub fn pango_layout_get_height(layout: *mut PangoLayout) -> c_int;
pango_layout_get_indent(layout: *mut PangoLayout) -> c_int2272     pub fn pango_layout_get_indent(layout: *mut PangoLayout) -> c_int;
pango_layout_get_iter(layout: *mut PangoLayout) -> *mut PangoLayoutIter2273     pub fn pango_layout_get_iter(layout: *mut PangoLayout) -> *mut PangoLayoutIter;
pango_layout_get_justify(layout: *mut PangoLayout) -> gboolean2274     pub fn pango_layout_get_justify(layout: *mut PangoLayout) -> gboolean;
pango_layout_get_line(layout: *mut PangoLayout, line: c_int) -> *mut PangoLayoutLine2275     pub fn pango_layout_get_line(layout: *mut PangoLayout, line: c_int) -> *mut PangoLayoutLine;
pango_layout_get_line_count(layout: *mut PangoLayout) -> c_int2276     pub fn pango_layout_get_line_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_line_readonly( layout: *mut PangoLayout, line: c_int, ) -> *mut PangoLayoutLine2277     pub fn pango_layout_get_line_readonly(
2278         layout: *mut PangoLayout,
2279         line: c_int,
2280     ) -> *mut PangoLayoutLine;
pango_layout_get_lines(layout: *mut PangoLayout) -> *mut glib::GSList2281     pub fn pango_layout_get_lines(layout: *mut PangoLayout) -> *mut glib::GSList;
pango_layout_get_lines_readonly(layout: *mut PangoLayout) -> *mut glib::GSList2282     pub fn pango_layout_get_lines_readonly(layout: *mut PangoLayout) -> *mut glib::GSList;
pango_layout_get_log_attrs( layout: *mut PangoLayout, attrs: *mut *mut PangoLogAttr, n_attrs: *mut c_int, )2283     pub fn pango_layout_get_log_attrs(
2284         layout: *mut PangoLayout,
2285         attrs: *mut *mut PangoLogAttr,
2286         n_attrs: *mut c_int,
2287     );
pango_layout_get_log_attrs_readonly( layout: *mut PangoLayout, n_attrs: *mut c_int, ) -> *const PangoLogAttr2288     pub fn pango_layout_get_log_attrs_readonly(
2289         layout: *mut PangoLayout,
2290         n_attrs: *mut c_int,
2291     ) -> *const PangoLogAttr;
pango_layout_get_pixel_extents( layout: *mut PangoLayout, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2292     pub fn pango_layout_get_pixel_extents(
2293         layout: *mut PangoLayout,
2294         ink_rect: *mut PangoRectangle,
2295         logical_rect: *mut PangoRectangle,
2296     );
pango_layout_get_pixel_size( layout: *mut PangoLayout, width: *mut c_int, height: *mut c_int, )2297     pub fn pango_layout_get_pixel_size(
2298         layout: *mut PangoLayout,
2299         width: *mut c_int,
2300         height: *mut c_int,
2301     );
pango_layout_get_serial(layout: *mut PangoLayout) -> c_uint2302     pub fn pango_layout_get_serial(layout: *mut PangoLayout) -> c_uint;
pango_layout_get_single_paragraph_mode(layout: *mut PangoLayout) -> gboolean2303     pub fn pango_layout_get_single_paragraph_mode(layout: *mut PangoLayout) -> gboolean;
pango_layout_get_size(layout: *mut PangoLayout, width: *mut c_int, height: *mut c_int)2304     pub fn pango_layout_get_size(layout: *mut PangoLayout, width: *mut c_int, height: *mut c_int);
pango_layout_get_spacing(layout: *mut PangoLayout) -> c_int2305     pub fn pango_layout_get_spacing(layout: *mut PangoLayout) -> c_int;
pango_layout_get_tabs(layout: *mut PangoLayout) -> *mut PangoTabArray2306     pub fn pango_layout_get_tabs(layout: *mut PangoLayout) -> *mut PangoTabArray;
pango_layout_get_text(layout: *mut PangoLayout) -> *const c_char2307     pub fn pango_layout_get_text(layout: *mut PangoLayout) -> *const c_char;
pango_layout_get_unknown_glyphs_count(layout: *mut PangoLayout) -> c_int2308     pub fn pango_layout_get_unknown_glyphs_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_width(layout: *mut PangoLayout) -> c_int2309     pub fn pango_layout_get_width(layout: *mut PangoLayout) -> c_int;
pango_layout_get_wrap(layout: *mut PangoLayout) -> PangoWrapMode2310     pub fn pango_layout_get_wrap(layout: *mut PangoLayout) -> PangoWrapMode;
pango_layout_index_to_line_x( layout: *mut PangoLayout, index_: c_int, trailing: gboolean, line: *mut c_int, x_pos: *mut c_int, )2311     pub fn pango_layout_index_to_line_x(
2312         layout: *mut PangoLayout,
2313         index_: c_int,
2314         trailing: gboolean,
2315         line: *mut c_int,
2316         x_pos: *mut c_int,
2317     );
pango_layout_index_to_pos( layout: *mut PangoLayout, index_: c_int, pos: *mut PangoRectangle, )2318     pub fn pango_layout_index_to_pos(
2319         layout: *mut PangoLayout,
2320         index_: c_int,
2321         pos: *mut PangoRectangle,
2322     );
pango_layout_is_ellipsized(layout: *mut PangoLayout) -> gboolean2323     pub fn pango_layout_is_ellipsized(layout: *mut PangoLayout) -> gboolean;
pango_layout_is_wrapped(layout: *mut PangoLayout) -> gboolean2324     pub fn pango_layout_is_wrapped(layout: *mut PangoLayout) -> gboolean;
pango_layout_move_cursor_visually( layout: *mut PangoLayout, strong: gboolean, old_index: c_int, old_trailing: c_int, direction: c_int, new_index: *mut c_int, new_trailing: *mut c_int, )2325     pub fn pango_layout_move_cursor_visually(
2326         layout: *mut PangoLayout,
2327         strong: gboolean,
2328         old_index: c_int,
2329         old_trailing: c_int,
2330         direction: c_int,
2331         new_index: *mut c_int,
2332         new_trailing: *mut c_int,
2333     );
pango_layout_set_alignment(layout: *mut PangoLayout, alignment: PangoAlignment)2334     pub fn pango_layout_set_alignment(layout: *mut PangoLayout, alignment: PangoAlignment);
pango_layout_set_attributes(layout: *mut PangoLayout, attrs: *mut PangoAttrList)2335     pub fn pango_layout_set_attributes(layout: *mut PangoLayout, attrs: *mut PangoAttrList);
pango_layout_set_auto_dir(layout: *mut PangoLayout, auto_dir: gboolean)2336     pub fn pango_layout_set_auto_dir(layout: *mut PangoLayout, auto_dir: gboolean);
pango_layout_set_ellipsize(layout: *mut PangoLayout, ellipsize: PangoEllipsizeMode)2337     pub fn pango_layout_set_ellipsize(layout: *mut PangoLayout, ellipsize: PangoEllipsizeMode);
pango_layout_set_font_description( layout: *mut PangoLayout, desc: *const PangoFontDescription, )2338     pub fn pango_layout_set_font_description(
2339         layout: *mut PangoLayout,
2340         desc: *const PangoFontDescription,
2341     );
pango_layout_set_height(layout: *mut PangoLayout, height: c_int)2342     pub fn pango_layout_set_height(layout: *mut PangoLayout, height: c_int);
pango_layout_set_indent(layout: *mut PangoLayout, indent: c_int)2343     pub fn pango_layout_set_indent(layout: *mut PangoLayout, indent: c_int);
pango_layout_set_justify(layout: *mut PangoLayout, justify: gboolean)2344     pub fn pango_layout_set_justify(layout: *mut PangoLayout, justify: gboolean);
pango_layout_set_markup(layout: *mut PangoLayout, markup: *const c_char, length: c_int)2345     pub fn pango_layout_set_markup(layout: *mut PangoLayout, markup: *const c_char, length: c_int);
pango_layout_set_markup_with_accel( layout: *mut PangoLayout, markup: *const c_char, length: c_int, accel_marker: u32, accel_char: *mut u32, )2346     pub fn pango_layout_set_markup_with_accel(
2347         layout: *mut PangoLayout,
2348         markup: *const c_char,
2349         length: c_int,
2350         accel_marker: u32,
2351         accel_char: *mut u32,
2352     );
pango_layout_set_single_paragraph_mode(layout: *mut PangoLayout, setting: gboolean)2353     pub fn pango_layout_set_single_paragraph_mode(layout: *mut PangoLayout, setting: gboolean);
pango_layout_set_spacing(layout: *mut PangoLayout, spacing: c_int)2354     pub fn pango_layout_set_spacing(layout: *mut PangoLayout, spacing: c_int);
pango_layout_set_tabs(layout: *mut PangoLayout, tabs: *mut PangoTabArray)2355     pub fn pango_layout_set_tabs(layout: *mut PangoLayout, tabs: *mut PangoTabArray);
pango_layout_set_text(layout: *mut PangoLayout, text: *const c_char, length: c_int)2356     pub fn pango_layout_set_text(layout: *mut PangoLayout, text: *const c_char, length: c_int);
pango_layout_set_width(layout: *mut PangoLayout, width: c_int)2357     pub fn pango_layout_set_width(layout: *mut PangoLayout, width: c_int);
pango_layout_set_wrap(layout: *mut PangoLayout, wrap: PangoWrapMode)2358     pub fn pango_layout_set_wrap(layout: *mut PangoLayout, wrap: PangoWrapMode);
pango_layout_xy_to_index( layout: *mut PangoLayout, x: c_int, y: c_int, index_: *mut c_int, trailing: *mut c_int, ) -> gboolean2359     pub fn pango_layout_xy_to_index(
2360         layout: *mut PangoLayout,
2361         x: c_int,
2362         y: c_int,
2363         index_: *mut c_int,
2364         trailing: *mut c_int,
2365     ) -> gboolean;
2366 
2367     //=========================================================================
2368     // PangoRenderer
2369     //=========================================================================
pango_renderer_get_type() -> GType2370     pub fn pango_renderer_get_type() -> GType;
pango_renderer_activate(renderer: *mut PangoRenderer)2371     pub fn pango_renderer_activate(renderer: *mut PangoRenderer);
pango_renderer_deactivate(renderer: *mut PangoRenderer)2372     pub fn pango_renderer_deactivate(renderer: *mut PangoRenderer);
pango_renderer_draw_error_underline( renderer: *mut PangoRenderer, x: c_int, y: c_int, width: c_int, height: c_int, )2373     pub fn pango_renderer_draw_error_underline(
2374         renderer: *mut PangoRenderer,
2375         x: c_int,
2376         y: c_int,
2377         width: c_int,
2378         height: c_int,
2379     );
pango_renderer_draw_glyph( renderer: *mut PangoRenderer, font: *mut PangoFont, glyph: PangoGlyph, x: c_double, y: c_double, )2380     pub fn pango_renderer_draw_glyph(
2381         renderer: *mut PangoRenderer,
2382         font: *mut PangoFont,
2383         glyph: PangoGlyph,
2384         x: c_double,
2385         y: c_double,
2386     );
pango_renderer_draw_glyph_item( renderer: *mut PangoRenderer, text: *const c_char, glyph_item: *mut PangoGlyphItem, x: c_int, y: c_int, )2387     pub fn pango_renderer_draw_glyph_item(
2388         renderer: *mut PangoRenderer,
2389         text: *const c_char,
2390         glyph_item: *mut PangoGlyphItem,
2391         x: c_int,
2392         y: c_int,
2393     );
pango_renderer_draw_glyphs( renderer: *mut PangoRenderer, font: *mut PangoFont, glyphs: *mut PangoGlyphString, x: c_int, y: c_int, )2394     pub fn pango_renderer_draw_glyphs(
2395         renderer: *mut PangoRenderer,
2396         font: *mut PangoFont,
2397         glyphs: *mut PangoGlyphString,
2398         x: c_int,
2399         y: c_int,
2400     );
pango_renderer_draw_layout( renderer: *mut PangoRenderer, layout: *mut PangoLayout, x: c_int, y: c_int, )2401     pub fn pango_renderer_draw_layout(
2402         renderer: *mut PangoRenderer,
2403         layout: *mut PangoLayout,
2404         x: c_int,
2405         y: c_int,
2406     );
pango_renderer_draw_layout_line( renderer: *mut PangoRenderer, line: *mut PangoLayoutLine, x: c_int, y: c_int, )2407     pub fn pango_renderer_draw_layout_line(
2408         renderer: *mut PangoRenderer,
2409         line: *mut PangoLayoutLine,
2410         x: c_int,
2411         y: c_int,
2412     );
pango_renderer_draw_rectangle( renderer: *mut PangoRenderer, part: PangoRenderPart, x: c_int, y: c_int, width: c_int, height: c_int, )2413     pub fn pango_renderer_draw_rectangle(
2414         renderer: *mut PangoRenderer,
2415         part: PangoRenderPart,
2416         x: c_int,
2417         y: c_int,
2418         width: c_int,
2419         height: c_int,
2420     );
pango_renderer_draw_trapezoid( renderer: *mut PangoRenderer, part: PangoRenderPart, y1_: c_double, x11: c_double, x21: c_double, y2: c_double, x12: c_double, x22: c_double, )2421     pub fn pango_renderer_draw_trapezoid(
2422         renderer: *mut PangoRenderer,
2423         part: PangoRenderPart,
2424         y1_: c_double,
2425         x11: c_double,
2426         x21: c_double,
2427         y2: c_double,
2428         x12: c_double,
2429         x22: c_double,
2430     );
2431     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_renderer_get_alpha(renderer: *mut PangoRenderer, part: PangoRenderPart) -> u162432     pub fn pango_renderer_get_alpha(renderer: *mut PangoRenderer, part: PangoRenderPart) -> u16;
pango_renderer_get_color( renderer: *mut PangoRenderer, part: PangoRenderPart, ) -> *mut PangoColor2433     pub fn pango_renderer_get_color(
2434         renderer: *mut PangoRenderer,
2435         part: PangoRenderPart,
2436     ) -> *mut PangoColor;
pango_renderer_get_layout(renderer: *mut PangoRenderer) -> *mut PangoLayout2437     pub fn pango_renderer_get_layout(renderer: *mut PangoRenderer) -> *mut PangoLayout;
pango_renderer_get_layout_line(renderer: *mut PangoRenderer) -> *mut PangoLayoutLine2438     pub fn pango_renderer_get_layout_line(renderer: *mut PangoRenderer) -> *mut PangoLayoutLine;
pango_renderer_get_matrix(renderer: *mut PangoRenderer) -> *const PangoMatrix2439     pub fn pango_renderer_get_matrix(renderer: *mut PangoRenderer) -> *const PangoMatrix;
pango_renderer_part_changed(renderer: *mut PangoRenderer, part: PangoRenderPart)2440     pub fn pango_renderer_part_changed(renderer: *mut PangoRenderer, part: PangoRenderPart);
2441     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_renderer_set_alpha( renderer: *mut PangoRenderer, part: PangoRenderPart, alpha: u16, )2442     pub fn pango_renderer_set_alpha(
2443         renderer: *mut PangoRenderer,
2444         part: PangoRenderPart,
2445         alpha: u16,
2446     );
pango_renderer_set_color( renderer: *mut PangoRenderer, part: PangoRenderPart, color: *const PangoColor, )2447     pub fn pango_renderer_set_color(
2448         renderer: *mut PangoRenderer,
2449         part: PangoRenderPart,
2450         color: *const PangoColor,
2451     );
pango_renderer_set_matrix(renderer: *mut PangoRenderer, matrix: *const PangoMatrix)2452     pub fn pango_renderer_set_matrix(renderer: *mut PangoRenderer, matrix: *const PangoMatrix);
2453 
2454     //=========================================================================
2455     // Other functions
2456     //=========================================================================
2457     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_attr_background_alpha_new(alpha: u16) -> *mut PangoAttribute2458     pub fn pango_attr_background_alpha_new(alpha: u16) -> *mut PangoAttribute;
pango_attr_background_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2459     pub fn pango_attr_background_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_fallback_new(enable_fallback: gboolean) -> *mut PangoAttribute2460     pub fn pango_attr_fallback_new(enable_fallback: gboolean) -> *mut PangoAttribute;
pango_attr_family_new(family: *const c_char) -> *mut PangoAttribute2461     pub fn pango_attr_family_new(family: *const c_char) -> *mut PangoAttribute;
2462     #[cfg(any(feature = "v1_38", feature = "dox"))]
pango_attr_foreground_alpha_new(alpha: u16) -> *mut PangoAttribute2463     pub fn pango_attr_foreground_alpha_new(alpha: u16) -> *mut PangoAttribute;
pango_attr_foreground_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2464     pub fn pango_attr_foreground_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_gravity_hint_new(hint: PangoGravityHint) -> *mut PangoAttribute2465     pub fn pango_attr_gravity_hint_new(hint: PangoGravityHint) -> *mut PangoAttribute;
pango_attr_gravity_new(gravity: PangoGravity) -> *mut PangoAttribute2466     pub fn pango_attr_gravity_new(gravity: PangoGravity) -> *mut PangoAttribute;
pango_attr_letter_spacing_new(letter_spacing: c_int) -> *mut PangoAttribute2467     pub fn pango_attr_letter_spacing_new(letter_spacing: c_int) -> *mut PangoAttribute;
pango_attr_rise_new(rise: c_int) -> *mut PangoAttribute2468     pub fn pango_attr_rise_new(rise: c_int) -> *mut PangoAttribute;
pango_attr_scale_new(scale_factor: c_double) -> *mut PangoAttribute2469     pub fn pango_attr_scale_new(scale_factor: c_double) -> *mut PangoAttribute;
pango_attr_stretch_new(stretch: PangoStretch) -> *mut PangoAttribute2470     pub fn pango_attr_stretch_new(stretch: PangoStretch) -> *mut PangoAttribute;
pango_attr_strikethrough_color_new( red: u16, green: u16, blue: u16, ) -> *mut PangoAttribute2471     pub fn pango_attr_strikethrough_color_new(
2472         red: u16,
2473         green: u16,
2474         blue: u16,
2475     ) -> *mut PangoAttribute;
pango_attr_strikethrough_new(strikethrough: gboolean) -> *mut PangoAttribute2476     pub fn pango_attr_strikethrough_new(strikethrough: gboolean) -> *mut PangoAttribute;
pango_attr_style_new(style: PangoStyle) -> *mut PangoAttribute2477     pub fn pango_attr_style_new(style: PangoStyle) -> *mut PangoAttribute;
pango_attr_underline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2478     pub fn pango_attr_underline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_underline_new(underline: PangoUnderline) -> *mut PangoAttribute2479     pub fn pango_attr_underline_new(underline: PangoUnderline) -> *mut PangoAttribute;
pango_attr_variant_new(variant: PangoVariant) -> *mut PangoAttribute2480     pub fn pango_attr_variant_new(variant: PangoVariant) -> *mut PangoAttribute;
pango_attr_weight_new(weight: PangoWeight) -> *mut PangoAttribute2481     pub fn pango_attr_weight_new(weight: PangoWeight) -> *mut PangoAttribute;
pango_break( text: *const c_char, length: c_int, analysis: *mut PangoAnalysis, attrs: *mut PangoLogAttr, attrs_len: c_int, )2482     pub fn pango_break(
2483         text: *const c_char,
2484         length: c_int,
2485         analysis: *mut PangoAnalysis,
2486         attrs: *mut PangoLogAttr,
2487         attrs_len: c_int,
2488     );
pango_config_key_get(key: *const c_char) -> *mut c_char2489     pub fn pango_config_key_get(key: *const c_char) -> *mut c_char;
pango_config_key_get_system(key: *const c_char) -> *mut c_char2490     pub fn pango_config_key_get_system(key: *const c_char) -> *mut c_char;
pango_default_break( text: *const c_char, length: c_int, analysis: *mut PangoAnalysis, attrs: *mut PangoLogAttr, attrs_len: c_int, )2491     pub fn pango_default_break(
2492         text: *const c_char,
2493         length: c_int,
2494         analysis: *mut PangoAnalysis,
2495         attrs: *mut PangoLogAttr,
2496         attrs_len: c_int,
2497     );
pango_extents_to_pixels(inclusive: *mut PangoRectangle, nearest: *mut PangoRectangle)2498     pub fn pango_extents_to_pixels(inclusive: *mut PangoRectangle, nearest: *mut PangoRectangle);
pango_find_base_dir(text: *const c_char, length: c_int) -> PangoDirection2499     pub fn pango_find_base_dir(text: *const c_char, length: c_int) -> PangoDirection;
pango_find_map( language: *mut PangoLanguage, engine_type_id: c_uint, render_type_id: c_uint, ) -> *mut PangoMap2500     pub fn pango_find_map(
2501         language: *mut PangoLanguage,
2502         engine_type_id: c_uint,
2503         render_type_id: c_uint,
2504     ) -> *mut PangoMap;
pango_find_paragraph_boundary( text: *const c_char, length: c_int, paragraph_delimiter_index: *mut c_int, next_paragraph_start: *mut c_int, )2505     pub fn pango_find_paragraph_boundary(
2506         text: *const c_char,
2507         length: c_int,
2508         paragraph_delimiter_index: *mut c_int,
2509         next_paragraph_start: *mut c_int,
2510     );
pango_get_lib_subdirectory() -> *const c_char2511     pub fn pango_get_lib_subdirectory() -> *const c_char;
pango_get_log_attrs( text: *const c_char, length: c_int, level: c_int, language: *mut PangoLanguage, log_attrs: *mut PangoLogAttr, attrs_len: c_int, )2512     pub fn pango_get_log_attrs(
2513         text: *const c_char,
2514         length: c_int,
2515         level: c_int,
2516         language: *mut PangoLanguage,
2517         log_attrs: *mut PangoLogAttr,
2518         attrs_len: c_int,
2519     );
pango_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean2520     pub fn pango_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean;
pango_get_sysconf_subdirectory() -> *const c_char2521     pub fn pango_get_sysconf_subdirectory() -> *const c_char;
pango_is_zero_width(ch: u32) -> gboolean2522     pub fn pango_is_zero_width(ch: u32) -> gboolean;
pango_itemize( context: *mut PangoContext, text: *const c_char, start_index: c_int, length: c_int, attrs: *mut PangoAttrList, cached_iter: *mut PangoAttrIterator, ) -> *mut glib::GList2523     pub fn pango_itemize(
2524         context: *mut PangoContext,
2525         text: *const c_char,
2526         start_index: c_int,
2527         length: c_int,
2528         attrs: *mut PangoAttrList,
2529         cached_iter: *mut PangoAttrIterator,
2530     ) -> *mut glib::GList;
pango_itemize_with_base_dir( context: *mut PangoContext, base_dir: PangoDirection, text: *const c_char, start_index: c_int, length: c_int, attrs: *mut PangoAttrList, cached_iter: *mut PangoAttrIterator, ) -> *mut glib::GList2531     pub fn pango_itemize_with_base_dir(
2532         context: *mut PangoContext,
2533         base_dir: PangoDirection,
2534         text: *const c_char,
2535         start_index: c_int,
2536         length: c_int,
2537         attrs: *mut PangoAttrList,
2538         cached_iter: *mut PangoAttrIterator,
2539     ) -> *mut glib::GList;
pango_log2vis_get_embedding_levels( text: *const c_char, length: c_int, pbase_dir: *mut PangoDirection, ) -> *mut u82540     pub fn pango_log2vis_get_embedding_levels(
2541         text: *const c_char,
2542         length: c_int,
2543         pbase_dir: *mut PangoDirection,
2544     ) -> *mut u8;
pango_lookup_aliases( fontname: *const c_char, families: *mut *mut *mut c_char, n_families: *mut c_int, )2545     pub fn pango_lookup_aliases(
2546         fontname: *const c_char,
2547         families: *mut *mut *mut c_char,
2548         n_families: *mut c_int,
2549     );
pango_markup_parser_finish( context: *mut glib::GMarkupParseContext, attr_list: *mut *mut PangoAttrList, text: *mut *mut c_char, accel_char: *mut u32, error: *mut *mut glib::GError, ) -> gboolean2550     pub fn pango_markup_parser_finish(
2551         context: *mut glib::GMarkupParseContext,
2552         attr_list: *mut *mut PangoAttrList,
2553         text: *mut *mut c_char,
2554         accel_char: *mut u32,
2555         error: *mut *mut glib::GError,
2556     ) -> gboolean;
pango_markup_parser_new(accel_marker: u32) -> *mut glib::GMarkupParseContext2557     pub fn pango_markup_parser_new(accel_marker: u32) -> *mut glib::GMarkupParseContext;
pango_module_register(module: *mut PangoIncludedModule)2558     pub fn pango_module_register(module: *mut PangoIncludedModule);
pango_parse_enum( type_: GType, str: *const c_char, value: *mut c_int, warn: gboolean, possible_values: *mut *mut c_char, ) -> gboolean2559     pub fn pango_parse_enum(
2560         type_: GType,
2561         str: *const c_char,
2562         value: *mut c_int,
2563         warn: gboolean,
2564         possible_values: *mut *mut c_char,
2565     ) -> gboolean;
pango_parse_markup( markup_text: *const c_char, length: c_int, accel_marker: u32, attr_list: *mut *mut PangoAttrList, text: *mut *mut c_char, accel_char: *mut u32, error: *mut *mut glib::GError, ) -> gboolean2566     pub fn pango_parse_markup(
2567         markup_text: *const c_char,
2568         length: c_int,
2569         accel_marker: u32,
2570         attr_list: *mut *mut PangoAttrList,
2571         text: *mut *mut c_char,
2572         accel_char: *mut u32,
2573         error: *mut *mut glib::GError,
2574     ) -> gboolean;
pango_parse_stretch( str: *const c_char, stretch: *mut PangoStretch, warn: gboolean, ) -> gboolean2575     pub fn pango_parse_stretch(
2576         str: *const c_char,
2577         stretch: *mut PangoStretch,
2578         warn: gboolean,
2579     ) -> gboolean;
pango_parse_style( str: *const c_char, style: *mut PangoStyle, warn: gboolean, ) -> gboolean2580     pub fn pango_parse_style(
2581         str: *const c_char,
2582         style: *mut PangoStyle,
2583         warn: gboolean,
2584     ) -> gboolean;
pango_parse_variant( str: *const c_char, variant: *mut PangoVariant, warn: gboolean, ) -> gboolean2585     pub fn pango_parse_variant(
2586         str: *const c_char,
2587         variant: *mut PangoVariant,
2588         warn: gboolean,
2589     ) -> gboolean;
pango_parse_weight( str: *const c_char, weight: *mut PangoWeight, warn: gboolean, ) -> gboolean2590     pub fn pango_parse_weight(
2591         str: *const c_char,
2592         weight: *mut PangoWeight,
2593         warn: gboolean,
2594     ) -> gboolean;
pango_quantize_line_geometry(thickness: *mut c_int, position: *mut c_int)2595     pub fn pango_quantize_line_geometry(thickness: *mut c_int, position: *mut c_int);
pango_read_line(stream: *mut FILE, str: *mut glib::GString) -> c_int2596     pub fn pango_read_line(stream: *mut FILE, str: *mut glib::GString) -> c_int;
pango_reorder_items(logical_items: *mut glib::GList) -> *mut glib::GList2597     pub fn pango_reorder_items(logical_items: *mut glib::GList) -> *mut glib::GList;
pango_scan_int(pos: *mut *const c_char, out: *mut c_int) -> gboolean2598     pub fn pango_scan_int(pos: *mut *const c_char, out: *mut c_int) -> gboolean;
pango_scan_string(pos: *mut *const c_char, out: *mut glib::GString) -> gboolean2599     pub fn pango_scan_string(pos: *mut *const c_char, out: *mut glib::GString) -> gboolean;
pango_scan_word(pos: *mut *const c_char, out: *mut glib::GString) -> gboolean2600     pub fn pango_scan_word(pos: *mut *const c_char, out: *mut glib::GString) -> gboolean;
pango_shape( text: *const c_char, length: c_int, analysis: *const PangoAnalysis, glyphs: *mut PangoGlyphString, )2601     pub fn pango_shape(
2602         text: *const c_char,
2603         length: c_int,
2604         analysis: *const PangoAnalysis,
2605         glyphs: *mut PangoGlyphString,
2606     );
pango_shape_full( item_text: *const c_char, item_length: c_int, paragraph_text: *const c_char, paragraph_length: c_int, analysis: *const PangoAnalysis, glyphs: *mut PangoGlyphString, )2607     pub fn pango_shape_full(
2608         item_text: *const c_char,
2609         item_length: c_int,
2610         paragraph_text: *const c_char,
2611         paragraph_length: c_int,
2612         analysis: *const PangoAnalysis,
2613         glyphs: *mut PangoGlyphString,
2614     );
pango_skip_space(pos: *mut *const c_char) -> gboolean2615     pub fn pango_skip_space(pos: *mut *const c_char) -> gboolean;
pango_split_file_list(str: *const c_char) -> *mut *mut c_char2616     pub fn pango_split_file_list(str: *const c_char) -> *mut *mut c_char;
pango_trim_string(str: *const c_char) -> *mut c_char2617     pub fn pango_trim_string(str: *const c_char) -> *mut c_char;
pango_unichar_direction(ch: u32) -> PangoDirection2618     pub fn pango_unichar_direction(ch: u32) -> PangoDirection;
pango_units_from_double(d: c_double) -> c_int2619     pub fn pango_units_from_double(d: c_double) -> c_int;
pango_units_to_double(i: c_int) -> c_double2620     pub fn pango_units_to_double(i: c_int) -> c_double;
pango_version() -> c_int2621     pub fn pango_version() -> c_int;
pango_version_check( required_major: c_int, required_minor: c_int, required_micro: c_int, ) -> *const c_char2622     pub fn pango_version_check(
2623         required_major: c_int,
2624         required_minor: c_int,
2625         required_micro: c_int,
2626     ) -> *const c_char;
pango_version_string() -> *const c_char2627     pub fn pango_version_string() -> *const c_char;
2628 
2629 }
2630