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     clippy::upper_case_acronyms
11 )]
12 #![cfg_attr(feature = "dox", feature(doc_cfg))]
13 
14 use glib_sys as glib;
15 use gobject_sys as gobject;
16 
17 #[allow(unused_imports)]
18 use libc::{
19     c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
20     intptr_t, size_t, ssize_t, time_t, uintptr_t, FILE,
21 };
22 
23 #[allow(unused_imports)]
24 use glib::{gboolean, gconstpointer, gpointer, GType};
25 
26 // Aliases
27 pub type PangoGlyph = u32;
28 pub type PangoGlyphUnit = i32;
29 pub type PangoLayoutRun = PangoGlyphItem;
30 
31 // Enums
32 pub type PangoAlignment = c_int;
33 pub const PANGO_ALIGN_LEFT: PangoAlignment = 0;
34 pub const PANGO_ALIGN_CENTER: PangoAlignment = 1;
35 pub const PANGO_ALIGN_RIGHT: PangoAlignment = 2;
36 
37 pub type PangoAttrType = c_int;
38 pub const PANGO_ATTR_INVALID: PangoAttrType = 0;
39 pub const PANGO_ATTR_LANGUAGE: PangoAttrType = 1;
40 pub const PANGO_ATTR_FAMILY: PangoAttrType = 2;
41 pub const PANGO_ATTR_STYLE: PangoAttrType = 3;
42 pub const PANGO_ATTR_WEIGHT: PangoAttrType = 4;
43 pub const PANGO_ATTR_VARIANT: PangoAttrType = 5;
44 pub const PANGO_ATTR_STRETCH: PangoAttrType = 6;
45 pub const PANGO_ATTR_SIZE: PangoAttrType = 7;
46 pub const PANGO_ATTR_FONT_DESC: PangoAttrType = 8;
47 pub const PANGO_ATTR_FOREGROUND: PangoAttrType = 9;
48 pub const PANGO_ATTR_BACKGROUND: PangoAttrType = 10;
49 pub const PANGO_ATTR_UNDERLINE: PangoAttrType = 11;
50 pub const PANGO_ATTR_STRIKETHROUGH: PangoAttrType = 12;
51 pub const PANGO_ATTR_RISE: PangoAttrType = 13;
52 pub const PANGO_ATTR_SHAPE: PangoAttrType = 14;
53 pub const PANGO_ATTR_SCALE: PangoAttrType = 15;
54 pub const PANGO_ATTR_FALLBACK: PangoAttrType = 16;
55 pub const PANGO_ATTR_LETTER_SPACING: PangoAttrType = 17;
56 pub const PANGO_ATTR_UNDERLINE_COLOR: PangoAttrType = 18;
57 pub const PANGO_ATTR_STRIKETHROUGH_COLOR: PangoAttrType = 19;
58 pub const PANGO_ATTR_ABSOLUTE_SIZE: PangoAttrType = 20;
59 pub const PANGO_ATTR_GRAVITY: PangoAttrType = 21;
60 pub const PANGO_ATTR_GRAVITY_HINT: PangoAttrType = 22;
61 pub const PANGO_ATTR_FONT_FEATURES: PangoAttrType = 23;
62 pub const PANGO_ATTR_FOREGROUND_ALPHA: PangoAttrType = 24;
63 pub const PANGO_ATTR_BACKGROUND_ALPHA: PangoAttrType = 25;
64 pub const PANGO_ATTR_ALLOW_BREAKS: PangoAttrType = 26;
65 pub const PANGO_ATTR_SHOW: PangoAttrType = 27;
66 pub const PANGO_ATTR_INSERT_HYPHENS: PangoAttrType = 28;
67 pub const PANGO_ATTR_OVERLINE: PangoAttrType = 29;
68 pub const PANGO_ATTR_OVERLINE_COLOR: PangoAttrType = 30;
69 
70 pub type PangoBidiType = c_int;
71 pub const PANGO_BIDI_TYPE_L: PangoBidiType = 0;
72 pub const PANGO_BIDI_TYPE_LRE: PangoBidiType = 1;
73 pub const PANGO_BIDI_TYPE_LRO: PangoBidiType = 2;
74 pub const PANGO_BIDI_TYPE_R: PangoBidiType = 3;
75 pub const PANGO_BIDI_TYPE_AL: PangoBidiType = 4;
76 pub const PANGO_BIDI_TYPE_RLE: PangoBidiType = 5;
77 pub const PANGO_BIDI_TYPE_RLO: PangoBidiType = 6;
78 pub const PANGO_BIDI_TYPE_PDF: PangoBidiType = 7;
79 pub const PANGO_BIDI_TYPE_EN: PangoBidiType = 8;
80 pub const PANGO_BIDI_TYPE_ES: PangoBidiType = 9;
81 pub const PANGO_BIDI_TYPE_ET: PangoBidiType = 10;
82 pub const PANGO_BIDI_TYPE_AN: PangoBidiType = 11;
83 pub const PANGO_BIDI_TYPE_CS: PangoBidiType = 12;
84 pub const PANGO_BIDI_TYPE_NSM: PangoBidiType = 13;
85 pub const PANGO_BIDI_TYPE_BN: PangoBidiType = 14;
86 pub const PANGO_BIDI_TYPE_B: PangoBidiType = 15;
87 pub const PANGO_BIDI_TYPE_S: PangoBidiType = 16;
88 pub const PANGO_BIDI_TYPE_WS: PangoBidiType = 17;
89 pub const PANGO_BIDI_TYPE_ON: PangoBidiType = 18;
90 
91 pub type PangoCoverageLevel = c_int;
92 pub const PANGO_COVERAGE_NONE: PangoCoverageLevel = 0;
93 pub const PANGO_COVERAGE_FALLBACK: PangoCoverageLevel = 1;
94 pub const PANGO_COVERAGE_APPROXIMATE: PangoCoverageLevel = 2;
95 pub const PANGO_COVERAGE_EXACT: PangoCoverageLevel = 3;
96 
97 pub type PangoDirection = c_int;
98 pub const PANGO_DIRECTION_LTR: PangoDirection = 0;
99 pub const PANGO_DIRECTION_RTL: PangoDirection = 1;
100 pub const PANGO_DIRECTION_TTB_LTR: PangoDirection = 2;
101 pub const PANGO_DIRECTION_TTB_RTL: PangoDirection = 3;
102 pub const PANGO_DIRECTION_WEAK_LTR: PangoDirection = 4;
103 pub const PANGO_DIRECTION_WEAK_RTL: PangoDirection = 5;
104 pub const PANGO_DIRECTION_NEUTRAL: PangoDirection = 6;
105 
106 pub type PangoEllipsizeMode = c_int;
107 pub const PANGO_ELLIPSIZE_NONE: PangoEllipsizeMode = 0;
108 pub const PANGO_ELLIPSIZE_START: PangoEllipsizeMode = 1;
109 pub const PANGO_ELLIPSIZE_MIDDLE: PangoEllipsizeMode = 2;
110 pub const PANGO_ELLIPSIZE_END: PangoEllipsizeMode = 3;
111 
112 pub type PangoGravity = c_int;
113 pub const PANGO_GRAVITY_SOUTH: PangoGravity = 0;
114 pub const PANGO_GRAVITY_EAST: PangoGravity = 1;
115 pub const PANGO_GRAVITY_NORTH: PangoGravity = 2;
116 pub const PANGO_GRAVITY_WEST: PangoGravity = 3;
117 pub const PANGO_GRAVITY_AUTO: PangoGravity = 4;
118 
119 pub type PangoGravityHint = c_int;
120 pub const PANGO_GRAVITY_HINT_NATURAL: PangoGravityHint = 0;
121 pub const PANGO_GRAVITY_HINT_STRONG: PangoGravityHint = 1;
122 pub const PANGO_GRAVITY_HINT_LINE: PangoGravityHint = 2;
123 
124 pub type PangoOverline = c_int;
125 pub const PANGO_OVERLINE_NONE: PangoOverline = 0;
126 pub const PANGO_OVERLINE_SINGLE: PangoOverline = 1;
127 
128 pub type PangoRenderPart = c_int;
129 pub const PANGO_RENDER_PART_FOREGROUND: PangoRenderPart = 0;
130 pub const PANGO_RENDER_PART_BACKGROUND: PangoRenderPart = 1;
131 pub const PANGO_RENDER_PART_UNDERLINE: PangoRenderPart = 2;
132 pub const PANGO_RENDER_PART_STRIKETHROUGH: PangoRenderPart = 3;
133 pub const PANGO_RENDER_PART_OVERLINE: PangoRenderPart = 4;
134 
135 pub type PangoScript = c_int;
136 pub const PANGO_SCRIPT_INVALID_CODE: PangoScript = -1;
137 pub const PANGO_SCRIPT_COMMON: PangoScript = 0;
138 pub const PANGO_SCRIPT_INHERITED: PangoScript = 1;
139 pub const PANGO_SCRIPT_ARABIC: PangoScript = 2;
140 pub const PANGO_SCRIPT_ARMENIAN: PangoScript = 3;
141 pub const PANGO_SCRIPT_BENGALI: PangoScript = 4;
142 pub const PANGO_SCRIPT_BOPOMOFO: PangoScript = 5;
143 pub const PANGO_SCRIPT_CHEROKEE: PangoScript = 6;
144 pub const PANGO_SCRIPT_COPTIC: PangoScript = 7;
145 pub const PANGO_SCRIPT_CYRILLIC: PangoScript = 8;
146 pub const PANGO_SCRIPT_DESERET: PangoScript = 9;
147 pub const PANGO_SCRIPT_DEVANAGARI: PangoScript = 10;
148 pub const PANGO_SCRIPT_ETHIOPIC: PangoScript = 11;
149 pub const PANGO_SCRIPT_GEORGIAN: PangoScript = 12;
150 pub const PANGO_SCRIPT_GOTHIC: PangoScript = 13;
151 pub const PANGO_SCRIPT_GREEK: PangoScript = 14;
152 pub const PANGO_SCRIPT_GUJARATI: PangoScript = 15;
153 pub const PANGO_SCRIPT_GURMUKHI: PangoScript = 16;
154 pub const PANGO_SCRIPT_HAN: PangoScript = 17;
155 pub const PANGO_SCRIPT_HANGUL: PangoScript = 18;
156 pub const PANGO_SCRIPT_HEBREW: PangoScript = 19;
157 pub const PANGO_SCRIPT_HIRAGANA: PangoScript = 20;
158 pub const PANGO_SCRIPT_KANNADA: PangoScript = 21;
159 pub const PANGO_SCRIPT_KATAKANA: PangoScript = 22;
160 pub const PANGO_SCRIPT_KHMER: PangoScript = 23;
161 pub const PANGO_SCRIPT_LAO: PangoScript = 24;
162 pub const PANGO_SCRIPT_LATIN: PangoScript = 25;
163 pub const PANGO_SCRIPT_MALAYALAM: PangoScript = 26;
164 pub const PANGO_SCRIPT_MONGOLIAN: PangoScript = 27;
165 pub const PANGO_SCRIPT_MYANMAR: PangoScript = 28;
166 pub const PANGO_SCRIPT_OGHAM: PangoScript = 29;
167 pub const PANGO_SCRIPT_OLD_ITALIC: PangoScript = 30;
168 pub const PANGO_SCRIPT_ORIYA: PangoScript = 31;
169 pub const PANGO_SCRIPT_RUNIC: PangoScript = 32;
170 pub const PANGO_SCRIPT_SINHALA: PangoScript = 33;
171 pub const PANGO_SCRIPT_SYRIAC: PangoScript = 34;
172 pub const PANGO_SCRIPT_TAMIL: PangoScript = 35;
173 pub const PANGO_SCRIPT_TELUGU: PangoScript = 36;
174 pub const PANGO_SCRIPT_THAANA: PangoScript = 37;
175 pub const PANGO_SCRIPT_THAI: PangoScript = 38;
176 pub const PANGO_SCRIPT_TIBETAN: PangoScript = 39;
177 pub const PANGO_SCRIPT_CANADIAN_ABORIGINAL: PangoScript = 40;
178 pub const PANGO_SCRIPT_YI: PangoScript = 41;
179 pub const PANGO_SCRIPT_TAGALOG: PangoScript = 42;
180 pub const PANGO_SCRIPT_HANUNOO: PangoScript = 43;
181 pub const PANGO_SCRIPT_BUHID: PangoScript = 44;
182 pub const PANGO_SCRIPT_TAGBANWA: PangoScript = 45;
183 pub const PANGO_SCRIPT_BRAILLE: PangoScript = 46;
184 pub const PANGO_SCRIPT_CYPRIOT: PangoScript = 47;
185 pub const PANGO_SCRIPT_LIMBU: PangoScript = 48;
186 pub const PANGO_SCRIPT_OSMANYA: PangoScript = 49;
187 pub const PANGO_SCRIPT_SHAVIAN: PangoScript = 50;
188 pub const PANGO_SCRIPT_LINEAR_B: PangoScript = 51;
189 pub const PANGO_SCRIPT_TAI_LE: PangoScript = 52;
190 pub const PANGO_SCRIPT_UGARITIC: PangoScript = 53;
191 pub const PANGO_SCRIPT_NEW_TAI_LUE: PangoScript = 54;
192 pub const PANGO_SCRIPT_BUGINESE: PangoScript = 55;
193 pub const PANGO_SCRIPT_GLAGOLITIC: PangoScript = 56;
194 pub const PANGO_SCRIPT_TIFINAGH: PangoScript = 57;
195 pub const PANGO_SCRIPT_SYLOTI_NAGRI: PangoScript = 58;
196 pub const PANGO_SCRIPT_OLD_PERSIAN: PangoScript = 59;
197 pub const PANGO_SCRIPT_KHAROSHTHI: PangoScript = 60;
198 pub const PANGO_SCRIPT_UNKNOWN: PangoScript = 61;
199 pub const PANGO_SCRIPT_BALINESE: PangoScript = 62;
200 pub const PANGO_SCRIPT_CUNEIFORM: PangoScript = 63;
201 pub const PANGO_SCRIPT_PHOENICIAN: PangoScript = 64;
202 pub const PANGO_SCRIPT_PHAGS_PA: PangoScript = 65;
203 pub const PANGO_SCRIPT_NKO: PangoScript = 66;
204 pub const PANGO_SCRIPT_KAYAH_LI: PangoScript = 67;
205 pub const PANGO_SCRIPT_LEPCHA: PangoScript = 68;
206 pub const PANGO_SCRIPT_REJANG: PangoScript = 69;
207 pub const PANGO_SCRIPT_SUNDANESE: PangoScript = 70;
208 pub const PANGO_SCRIPT_SAURASHTRA: PangoScript = 71;
209 pub const PANGO_SCRIPT_CHAM: PangoScript = 72;
210 pub const PANGO_SCRIPT_OL_CHIKI: PangoScript = 73;
211 pub const PANGO_SCRIPT_VAI: PangoScript = 74;
212 pub const PANGO_SCRIPT_CARIAN: PangoScript = 75;
213 pub const PANGO_SCRIPT_LYCIAN: PangoScript = 76;
214 pub const PANGO_SCRIPT_LYDIAN: PangoScript = 77;
215 pub const PANGO_SCRIPT_BATAK: PangoScript = 78;
216 pub const PANGO_SCRIPT_BRAHMI: PangoScript = 79;
217 pub const PANGO_SCRIPT_MANDAIC: PangoScript = 80;
218 pub const PANGO_SCRIPT_CHAKMA: PangoScript = 81;
219 pub const PANGO_SCRIPT_MEROITIC_CURSIVE: PangoScript = 82;
220 pub const PANGO_SCRIPT_MEROITIC_HIEROGLYPHS: PangoScript = 83;
221 pub const PANGO_SCRIPT_MIAO: PangoScript = 84;
222 pub const PANGO_SCRIPT_SHARADA: PangoScript = 85;
223 pub const PANGO_SCRIPT_SORA_SOMPENG: PangoScript = 86;
224 pub const PANGO_SCRIPT_TAKRI: PangoScript = 87;
225 pub const PANGO_SCRIPT_BASSA_VAH: PangoScript = 88;
226 pub const PANGO_SCRIPT_CAUCASIAN_ALBANIAN: PangoScript = 89;
227 pub const PANGO_SCRIPT_DUPLOYAN: PangoScript = 90;
228 pub const PANGO_SCRIPT_ELBASAN: PangoScript = 91;
229 pub const PANGO_SCRIPT_GRANTHA: PangoScript = 92;
230 pub const PANGO_SCRIPT_KHOJKI: PangoScript = 93;
231 pub const PANGO_SCRIPT_KHUDAWADI: PangoScript = 94;
232 pub const PANGO_SCRIPT_LINEAR_A: PangoScript = 95;
233 pub const PANGO_SCRIPT_MAHAJANI: PangoScript = 96;
234 pub const PANGO_SCRIPT_MANICHAEAN: PangoScript = 97;
235 pub const PANGO_SCRIPT_MENDE_KIKAKUI: PangoScript = 98;
236 pub const PANGO_SCRIPT_MODI: PangoScript = 99;
237 pub const PANGO_SCRIPT_MRO: PangoScript = 100;
238 pub const PANGO_SCRIPT_NABATAEAN: PangoScript = 101;
239 pub const PANGO_SCRIPT_OLD_NORTH_ARABIAN: PangoScript = 102;
240 pub const PANGO_SCRIPT_OLD_PERMIC: PangoScript = 103;
241 pub const PANGO_SCRIPT_PAHAWH_HMONG: PangoScript = 104;
242 pub const PANGO_SCRIPT_PALMYRENE: PangoScript = 105;
243 pub const PANGO_SCRIPT_PAU_CIN_HAU: PangoScript = 106;
244 pub const PANGO_SCRIPT_PSALTER_PAHLAVI: PangoScript = 107;
245 pub const PANGO_SCRIPT_SIDDHAM: PangoScript = 108;
246 pub const PANGO_SCRIPT_TIRHUTA: PangoScript = 109;
247 pub const PANGO_SCRIPT_WARANG_CITI: PangoScript = 110;
248 pub const PANGO_SCRIPT_AHOM: PangoScript = 111;
249 pub const PANGO_SCRIPT_ANATOLIAN_HIEROGLYPHS: PangoScript = 112;
250 pub const PANGO_SCRIPT_HATRAN: PangoScript = 113;
251 pub const PANGO_SCRIPT_MULTANI: PangoScript = 114;
252 pub const PANGO_SCRIPT_OLD_HUNGARIAN: PangoScript = 115;
253 pub const PANGO_SCRIPT_SIGNWRITING: PangoScript = 116;
254 
255 pub type PangoStretch = c_int;
256 pub const PANGO_STRETCH_ULTRA_CONDENSED: PangoStretch = 0;
257 pub const PANGO_STRETCH_EXTRA_CONDENSED: PangoStretch = 1;
258 pub const PANGO_STRETCH_CONDENSED: PangoStretch = 2;
259 pub const PANGO_STRETCH_SEMI_CONDENSED: PangoStretch = 3;
260 pub const PANGO_STRETCH_NORMAL: PangoStretch = 4;
261 pub const PANGO_STRETCH_SEMI_EXPANDED: PangoStretch = 5;
262 pub const PANGO_STRETCH_EXPANDED: PangoStretch = 6;
263 pub const PANGO_STRETCH_EXTRA_EXPANDED: PangoStretch = 7;
264 pub const PANGO_STRETCH_ULTRA_EXPANDED: PangoStretch = 8;
265 
266 pub type PangoStyle = c_int;
267 pub const PANGO_STYLE_NORMAL: PangoStyle = 0;
268 pub const PANGO_STYLE_OBLIQUE: PangoStyle = 1;
269 pub const PANGO_STYLE_ITALIC: PangoStyle = 2;
270 
271 pub type PangoTabAlign = c_int;
272 pub const PANGO_TAB_LEFT: PangoTabAlign = 0;
273 
274 pub type PangoUnderline = c_int;
275 pub const PANGO_UNDERLINE_NONE: PangoUnderline = 0;
276 pub const PANGO_UNDERLINE_SINGLE: PangoUnderline = 1;
277 pub const PANGO_UNDERLINE_DOUBLE: PangoUnderline = 2;
278 pub const PANGO_UNDERLINE_LOW: PangoUnderline = 3;
279 pub const PANGO_UNDERLINE_ERROR: PangoUnderline = 4;
280 pub const PANGO_UNDERLINE_SINGLE_LINE: PangoUnderline = 5;
281 pub const PANGO_UNDERLINE_DOUBLE_LINE: PangoUnderline = 6;
282 pub const PANGO_UNDERLINE_ERROR_LINE: PangoUnderline = 7;
283 
284 pub type PangoVariant = c_int;
285 pub const PANGO_VARIANT_NORMAL: PangoVariant = 0;
286 pub const PANGO_VARIANT_SMALL_CAPS: PangoVariant = 1;
287 
288 pub type PangoWeight = c_int;
289 pub const PANGO_WEIGHT_THIN: PangoWeight = 100;
290 pub const PANGO_WEIGHT_ULTRALIGHT: PangoWeight = 200;
291 pub const PANGO_WEIGHT_LIGHT: PangoWeight = 300;
292 pub const PANGO_WEIGHT_SEMILIGHT: PangoWeight = 350;
293 pub const PANGO_WEIGHT_BOOK: PangoWeight = 380;
294 pub const PANGO_WEIGHT_NORMAL: PangoWeight = 400;
295 pub const PANGO_WEIGHT_MEDIUM: PangoWeight = 500;
296 pub const PANGO_WEIGHT_SEMIBOLD: PangoWeight = 600;
297 pub const PANGO_WEIGHT_BOLD: PangoWeight = 700;
298 pub const PANGO_WEIGHT_ULTRABOLD: PangoWeight = 800;
299 pub const PANGO_WEIGHT_HEAVY: PangoWeight = 900;
300 pub const PANGO_WEIGHT_ULTRAHEAVY: PangoWeight = 1000;
301 
302 pub type PangoWrapMode = c_int;
303 pub const PANGO_WRAP_WORD: PangoWrapMode = 0;
304 pub const PANGO_WRAP_CHAR: PangoWrapMode = 1;
305 pub const PANGO_WRAP_WORD_CHAR: PangoWrapMode = 2;
306 
307 // Constants
308 pub const PANGO_ANALYSIS_FLAG_CENTERED_BASELINE: c_int = 1;
309 pub const PANGO_ANALYSIS_FLAG_IS_ELLIPSIS: c_int = 2;
310 pub const PANGO_ANALYSIS_FLAG_NEED_HYPHEN: c_int = 4;
311 pub const PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING: c_int = 0;
312 pub const PANGO_ENGINE_TYPE_LANG: *const c_char =
313     b"PangoEngineLang\0" as *const u8 as *const c_char;
314 pub const PANGO_ENGINE_TYPE_SHAPE: *const c_char =
315     b"PangoEngineShape\0" as *const u8 as *const c_char;
316 pub const PANGO_GLYPH_EMPTY: PangoGlyph = 268435455;
317 pub const PANGO_GLYPH_INVALID_INPUT: PangoGlyph = 4294967295;
318 pub const PANGO_GLYPH_UNKNOWN_FLAG: PangoGlyph = 268435456;
319 pub const PANGO_RENDER_TYPE_NONE: *const c_char =
320     b"PangoRenderNone\0" as *const u8 as *const c_char;
321 pub const PANGO_SCALE: c_int = 1024;
322 pub const PANGO_UNKNOWN_GLYPH_HEIGHT: c_int = 14;
323 pub const PANGO_UNKNOWN_GLYPH_WIDTH: c_int = 10;
324 pub const PANGO_VERSION_MIN_REQUIRED: c_int = 2;
325 
326 // Flags
327 pub type PangoFontMask = c_uint;
328 pub const PANGO_FONT_MASK_FAMILY: PangoFontMask = 1;
329 pub const PANGO_FONT_MASK_STYLE: PangoFontMask = 2;
330 pub const PANGO_FONT_MASK_VARIANT: PangoFontMask = 4;
331 pub const PANGO_FONT_MASK_WEIGHT: PangoFontMask = 8;
332 pub const PANGO_FONT_MASK_STRETCH: PangoFontMask = 16;
333 pub const PANGO_FONT_MASK_SIZE: PangoFontMask = 32;
334 pub const PANGO_FONT_MASK_GRAVITY: PangoFontMask = 64;
335 pub const PANGO_FONT_MASK_VARIATIONS: PangoFontMask = 128;
336 
337 pub type PangoShapeFlags = c_uint;
338 pub const PANGO_SHAPE_NONE: PangoShapeFlags = 0;
339 pub const PANGO_SHAPE_ROUND_POSITIONS: PangoShapeFlags = 1;
340 
341 pub type PangoShowFlags = c_uint;
342 pub const PANGO_SHOW_NONE: PangoShowFlags = 0;
343 pub const PANGO_SHOW_SPACES: PangoShowFlags = 1;
344 pub const PANGO_SHOW_LINE_BREAKS: PangoShowFlags = 2;
345 pub const PANGO_SHOW_IGNORABLES: PangoShowFlags = 4;
346 
347 // Callbacks
348 pub type PangoAttrDataCopyFunc = Option<unsafe extern "C" fn(gconstpointer) -> gpointer>;
349 pub type PangoAttrFilterFunc =
350     Option<unsafe extern "C" fn(*mut PangoAttribute, gpointer) -> gboolean>;
351 pub type PangoFontsetForeachFunc =
352     Option<unsafe extern "C" fn(*mut PangoFontset, *mut PangoFont, gpointer) -> gboolean>;
353 
354 // Records
355 #[repr(C)]
356 #[derive(Copy, Clone)]
357 pub struct PangoAnalysis {
358     pub shape_engine: *mut PangoEngineShape,
359     pub lang_engine: *mut PangoEngineLang,
360     pub font: *mut PangoFont,
361     pub level: u8,
362     pub gravity: u8,
363     pub flags: u8,
364     pub script: u8,
365     pub language: *mut PangoLanguage,
366     pub extra_attrs: *mut glib::GSList,
367 }
368 
369 impl ::std::fmt::Debug for PangoAnalysis {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result370     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
371         f.debug_struct(&format!("PangoAnalysis @ {:p}", self))
372             .field("shape_engine", &self.shape_engine)
373             .field("lang_engine", &self.lang_engine)
374             .field("font", &self.font)
375             .field("level", &self.level)
376             .field("gravity", &self.gravity)
377             .field("flags", &self.flags)
378             .field("script", &self.script)
379             .field("language", &self.language)
380             .field("extra_attrs", &self.extra_attrs)
381             .finish()
382     }
383 }
384 
385 #[repr(C)]
386 #[derive(Copy, Clone)]
387 pub struct PangoAttrClass {
388     pub type_: PangoAttrType,
389     pub copy: Option<unsafe extern "C" fn(*const PangoAttribute) -> *mut PangoAttribute>,
390     pub destroy: Option<unsafe extern "C" fn(*mut PangoAttribute)>,
391     pub equal:
392         Option<unsafe extern "C" fn(*const PangoAttribute, *const PangoAttribute) -> gboolean>,
393 }
394 
395 impl ::std::fmt::Debug for PangoAttrClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result396     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
397         f.debug_struct(&format!("PangoAttrClass @ {:p}", self))
398             .field("type_", &self.type_)
399             .field("copy", &self.copy)
400             .field("destroy", &self.destroy)
401             .field("equal", &self.equal)
402             .finish()
403     }
404 }
405 
406 #[repr(C)]
407 #[derive(Copy, Clone)]
408 pub struct PangoAttrColor {
409     pub attr: PangoAttribute,
410     pub color: PangoColor,
411 }
412 
413 impl ::std::fmt::Debug for PangoAttrColor {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result414     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
415         f.debug_struct(&format!("PangoAttrColor @ {:p}", self))
416             .field("attr", &self.attr)
417             .field("color", &self.color)
418             .finish()
419     }
420 }
421 
422 #[repr(C)]
423 #[derive(Copy, Clone)]
424 pub struct PangoAttrFloat {
425     pub attr: PangoAttribute,
426     pub value: c_double,
427 }
428 
429 impl ::std::fmt::Debug for PangoAttrFloat {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result430     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
431         f.debug_struct(&format!("PangoAttrFloat @ {:p}", self))
432             .field("attr", &self.attr)
433             .field("value", &self.value)
434             .finish()
435     }
436 }
437 
438 #[repr(C)]
439 #[derive(Copy, Clone)]
440 pub struct PangoAttrFontDesc {
441     pub attr: PangoAttribute,
442     pub desc: *mut PangoFontDescription,
443 }
444 
445 impl ::std::fmt::Debug for PangoAttrFontDesc {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result446     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
447         f.debug_struct(&format!("PangoAttrFontDesc @ {:p}", self))
448             .field("attr", &self.attr)
449             .field("desc", &self.desc)
450             .finish()
451     }
452 }
453 
454 #[repr(C)]
455 #[derive(Copy, Clone)]
456 pub struct PangoAttrFontFeatures {
457     pub attr: PangoAttribute,
458     pub features: *mut c_char,
459 }
460 
461 impl ::std::fmt::Debug for PangoAttrFontFeatures {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result462     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
463         f.debug_struct(&format!("PangoAttrFontFeatures @ {:p}", self))
464             .field("attr", &self.attr)
465             .field("features", &self.features)
466             .finish()
467     }
468 }
469 
470 #[repr(C)]
471 #[derive(Copy, Clone)]
472 pub struct PangoAttrInt {
473     pub attr: PangoAttribute,
474     pub value: c_int,
475 }
476 
477 impl ::std::fmt::Debug for PangoAttrInt {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result478     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
479         f.debug_struct(&format!("PangoAttrInt @ {:p}", self))
480             .field("attr", &self.attr)
481             .field("value", &self.value)
482             .finish()
483     }
484 }
485 
486 #[repr(C)]
487 pub struct PangoAttrIterator(c_void);
488 
489 impl ::std::fmt::Debug for PangoAttrIterator {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result490     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
491         f.debug_struct(&format!("PangoAttrIterator @ {:p}", self))
492             .finish()
493     }
494 }
495 
496 #[repr(C)]
497 #[derive(Copy, Clone)]
498 pub struct PangoAttrLanguage {
499     pub attr: PangoAttribute,
500     pub value: *mut PangoLanguage,
501 }
502 
503 impl ::std::fmt::Debug for PangoAttrLanguage {
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!("PangoAttrLanguage @ {:p}", self))
506             .field("attr", &self.attr)
507             .field("value", &self.value)
508             .finish()
509     }
510 }
511 
512 #[repr(C)]
513 pub struct PangoAttrList(c_void);
514 
515 impl ::std::fmt::Debug for PangoAttrList {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result516     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
517         f.debug_struct(&format!("PangoAttrList @ {:p}", self))
518             .finish()
519     }
520 }
521 
522 #[repr(C)]
523 #[derive(Copy, Clone)]
524 pub struct PangoAttrShape {
525     pub attr: PangoAttribute,
526     pub ink_rect: PangoRectangle,
527     pub logical_rect: PangoRectangle,
528     pub data: gpointer,
529     pub copy_func: PangoAttrDataCopyFunc,
530     pub destroy_func: glib::GDestroyNotify,
531 }
532 
533 impl ::std::fmt::Debug for PangoAttrShape {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result534     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
535         f.debug_struct(&format!("PangoAttrShape @ {:p}", self))
536             .field("attr", &self.attr)
537             .field("ink_rect", &self.ink_rect)
538             .field("logical_rect", &self.logical_rect)
539             .field("data", &self.data)
540             .field("copy_func", &self.copy_func)
541             .field("destroy_func", &self.destroy_func)
542             .finish()
543     }
544 }
545 
546 #[repr(C)]
547 #[derive(Copy, Clone)]
548 pub struct PangoAttrSize {
549     pub attr: PangoAttribute,
550     pub size: c_int,
551     pub absolute: c_uint,
552 }
553 
554 impl ::std::fmt::Debug for PangoAttrSize {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result555     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
556         f.debug_struct(&format!("PangoAttrSize @ {:p}", self))
557             .field("attr", &self.attr)
558             .field("size", &self.size)
559             .field("absolute", &self.absolute)
560             .finish()
561     }
562 }
563 
564 #[repr(C)]
565 #[derive(Copy, Clone)]
566 pub struct PangoAttrString {
567     pub attr: PangoAttribute,
568     pub value: *mut c_char,
569 }
570 
571 impl ::std::fmt::Debug for PangoAttrString {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result572     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
573         f.debug_struct(&format!("PangoAttrString @ {:p}", self))
574             .field("attr", &self.attr)
575             .field("value", &self.value)
576             .finish()
577     }
578 }
579 
580 #[repr(C)]
581 #[derive(Copy, Clone)]
582 pub struct PangoAttribute {
583     pub klass: *const PangoAttrClass,
584     pub start_index: c_uint,
585     pub end_index: c_uint,
586 }
587 
588 impl ::std::fmt::Debug for PangoAttribute {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result589     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
590         f.debug_struct(&format!("PangoAttribute @ {:p}", self))
591             .field("klass", &self.klass)
592             .field("start_index", &self.start_index)
593             .field("end_index", &self.end_index)
594             .finish()
595     }
596 }
597 
598 #[repr(C)]
599 #[derive(Copy, Clone)]
600 pub struct PangoColor {
601     pub red: u16,
602     pub green: u16,
603     pub blue: u16,
604 }
605 
606 impl ::std::fmt::Debug for PangoColor {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result607     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
608         f.debug_struct(&format!("PangoColor @ {:p}", self))
609             .field("red", &self.red)
610             .field("green", &self.green)
611             .field("blue", &self.blue)
612             .finish()
613     }
614 }
615 
616 #[repr(C)]
617 pub struct _PangoContextClass(c_void);
618 
619 pub type PangoContextClass = *mut _PangoContextClass;
620 
621 #[repr(C)]
622 #[derive(Copy, Clone)]
623 pub struct PangoEngineClass {
624     pub parent_class: gobject::GObjectClass,
625 }
626 
627 impl ::std::fmt::Debug for PangoEngineClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result628     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
629         f.debug_struct(&format!("PangoEngineClass @ {:p}", self))
630             .finish()
631     }
632 }
633 
634 #[repr(C)]
635 #[derive(Copy, Clone)]
636 pub struct PangoEngineInfo {
637     pub id: *const c_char,
638     pub engine_type: *const c_char,
639     pub render_type: *const c_char,
640     pub scripts: *mut PangoEngineScriptInfo,
641     pub n_scripts: c_int,
642 }
643 
644 impl ::std::fmt::Debug for PangoEngineInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result645     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
646         f.debug_struct(&format!("PangoEngineInfo @ {:p}", self))
647             .field("id", &self.id)
648             .field("engine_type", &self.engine_type)
649             .field("render_type", &self.render_type)
650             .field("scripts", &self.scripts)
651             .field("n_scripts", &self.n_scripts)
652             .finish()
653     }
654 }
655 
656 #[repr(C)]
657 #[derive(Copy, Clone)]
658 pub struct PangoEngineLangClass {
659     pub parent_class: PangoEngineClass,
660     pub script_break: Option<
661         unsafe extern "C" fn(
662             *mut PangoEngineLang,
663             *const c_char,
664             c_int,
665             *mut PangoAnalysis,
666             *mut PangoLogAttr,
667             c_int,
668         ),
669     >,
670 }
671 
672 impl ::std::fmt::Debug for PangoEngineLangClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result673     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
674         f.debug_struct(&format!("PangoEngineLangClass @ {:p}", self))
675             .field("script_break", &self.script_break)
676             .finish()
677     }
678 }
679 
680 #[repr(C)]
681 #[derive(Copy, Clone)]
682 pub struct PangoEngineScriptInfo {
683     pub script: PangoScript,
684     pub langs: *const c_char,
685 }
686 
687 impl ::std::fmt::Debug for PangoEngineScriptInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result688     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
689         f.debug_struct(&format!("PangoEngineScriptInfo @ {:p}", self))
690             .field("script", &self.script)
691             .field("langs", &self.langs)
692             .finish()
693     }
694 }
695 
696 #[repr(C)]
697 #[derive(Copy, Clone)]
698 pub struct PangoEngineShapeClass {
699     pub parent_class: PangoEngineClass,
700     pub script_shape: Option<
701         unsafe extern "C" fn(
702             *mut PangoEngineShape,
703             *mut PangoFont,
704             *const c_char,
705             c_uint,
706             *const PangoAnalysis,
707             *mut PangoGlyphString,
708             *const c_char,
709             c_uint,
710         ),
711     >,
712     pub covers: Option<
713         unsafe extern "C" fn(
714             *mut PangoEngineShape,
715             *mut PangoFont,
716             *mut PangoLanguage,
717             u32,
718         ) -> PangoCoverageLevel,
719     >,
720 }
721 
722 impl ::std::fmt::Debug for PangoEngineShapeClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result723     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
724         f.debug_struct(&format!("PangoEngineShapeClass @ {:p}", self))
725             .field("script_shape", &self.script_shape)
726             .field("covers", &self.covers)
727             .finish()
728     }
729 }
730 
731 #[repr(C)]
732 #[derive(Copy, Clone)]
733 pub struct PangoFontClass {
734     pub parent_class: gobject::GObjectClass,
735     pub describe: Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontDescription>,
736     pub get_coverage:
737         Option<unsafe extern "C" fn(*mut PangoFont, *mut PangoLanguage) -> *mut PangoCoverage>,
738     pub get_glyph_extents: Option<
739         unsafe extern "C" fn(*mut PangoFont, PangoGlyph, *mut PangoRectangle, *mut PangoRectangle),
740     >,
741     pub get_metrics:
742         Option<unsafe extern "C" fn(*mut PangoFont, *mut PangoLanguage) -> *mut PangoFontMetrics>,
743     pub get_font_map: Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontMap>,
744     pub describe_absolute:
745         Option<unsafe extern "C" fn(*mut PangoFont) -> *mut PangoFontDescription>,
746     pub get_features:
747         Option<unsafe extern "C" fn(*mut PangoFont, gconstpointer, c_uint, *mut c_uint)>,
748     pub create_hb_font: Option<unsafe extern "C" fn(*mut PangoFont) -> gconstpointer>,
749 }
750 
751 impl ::std::fmt::Debug for PangoFontClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result752     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
753         f.debug_struct(&format!("PangoFontClass @ {:p}", self))
754             .field("parent_class", &self.parent_class)
755             .field("describe", &self.describe)
756             .field("get_coverage", &self.get_coverage)
757             .field("get_glyph_extents", &self.get_glyph_extents)
758             .field("get_metrics", &self.get_metrics)
759             .field("get_font_map", &self.get_font_map)
760             .field("describe_absolute", &self.describe_absolute)
761             .field("get_features", &self.get_features)
762             .field("create_hb_font", &self.create_hb_font)
763             .finish()
764     }
765 }
766 
767 #[repr(C)]
768 pub struct PangoFontDescription(c_void);
769 
770 impl ::std::fmt::Debug for PangoFontDescription {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result771     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
772         f.debug_struct(&format!("PangoFontDescription @ {:p}", self))
773             .finish()
774     }
775 }
776 
777 #[repr(C)]
778 #[derive(Copy, Clone)]
779 pub struct PangoFontFaceClass {
780     pub parent_class: gobject::GObjectClass,
781     pub get_face_name: Option<unsafe extern "C" fn(*mut PangoFontFace) -> *const c_char>,
782     pub describe: Option<unsafe extern "C" fn(*mut PangoFontFace) -> *mut PangoFontDescription>,
783     pub list_sizes: Option<unsafe extern "C" fn(*mut PangoFontFace, *mut *mut c_int, *mut c_int)>,
784     pub is_synthesized: Option<unsafe extern "C" fn(*mut PangoFontFace) -> gboolean>,
785     pub get_family: Option<unsafe extern "C" fn(*mut PangoFontFace) -> *mut PangoFontFamily>,
786     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
787     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
788 }
789 
790 impl ::std::fmt::Debug for PangoFontFaceClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result791     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
792         f.debug_struct(&format!("PangoFontFaceClass @ {:p}", self))
793             .field("parent_class", &self.parent_class)
794             .field("get_face_name", &self.get_face_name)
795             .field("describe", &self.describe)
796             .field("list_sizes", &self.list_sizes)
797             .field("is_synthesized", &self.is_synthesized)
798             .field("get_family", &self.get_family)
799             .field("_pango_reserved3", &self._pango_reserved3)
800             .field("_pango_reserved4", &self._pango_reserved4)
801             .finish()
802     }
803 }
804 
805 #[repr(C)]
806 #[derive(Copy, Clone)]
807 pub struct PangoFontFamilyClass {
808     pub parent_class: gobject::GObjectClass,
809     pub list_faces: Option<
810         unsafe extern "C" fn(*mut PangoFontFamily, *mut *mut *mut PangoFontFace, *mut c_int),
811     >,
812     pub get_name: Option<unsafe extern "C" fn(*mut PangoFontFamily) -> *const c_char>,
813     pub is_monospace: Option<unsafe extern "C" fn(*mut PangoFontFamily) -> gboolean>,
814     pub is_variable: Option<unsafe extern "C" fn(*mut PangoFontFamily) -> gboolean>,
815     pub get_face:
816         Option<unsafe extern "C" fn(*mut PangoFontFamily, *const c_char) -> *mut PangoFontFace>,
817     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
818 }
819 
820 impl ::std::fmt::Debug for PangoFontFamilyClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result821     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
822         f.debug_struct(&format!("PangoFontFamilyClass @ {:p}", self))
823             .field("parent_class", &self.parent_class)
824             .field("list_faces", &self.list_faces)
825             .field("get_name", &self.get_name)
826             .field("is_monospace", &self.is_monospace)
827             .field("is_variable", &self.is_variable)
828             .field("get_face", &self.get_face)
829             .field("_pango_reserved2", &self._pango_reserved2)
830             .finish()
831     }
832 }
833 
834 #[repr(C)]
835 #[derive(Copy, Clone)]
836 pub struct PangoFontMapClass {
837     pub parent_class: gobject::GObjectClass,
838     pub load_font: Option<
839         unsafe extern "C" fn(
840             *mut PangoFontMap,
841             *mut PangoContext,
842             *const PangoFontDescription,
843         ) -> *mut PangoFont,
844     >,
845     pub list_families:
846         Option<unsafe extern "C" fn(*mut PangoFontMap, *mut *mut *mut PangoFontFamily, *mut c_int)>,
847     pub load_fontset: Option<
848         unsafe extern "C" fn(
849             *mut PangoFontMap,
850             *mut PangoContext,
851             *const PangoFontDescription,
852             *mut PangoLanguage,
853         ) -> *mut PangoFontset,
854     >,
855     pub shape_engine_type: *const c_char,
856     pub get_serial: Option<unsafe extern "C" fn(*mut PangoFontMap) -> c_uint>,
857     pub changed: Option<unsafe extern "C" fn(*mut PangoFontMap)>,
858     pub get_family:
859         Option<unsafe extern "C" fn(*mut PangoFontMap, *const c_char) -> *mut PangoFontFamily>,
860     pub get_face:
861         Option<unsafe extern "C" fn(*mut PangoFontMap, *mut PangoFont) -> *mut PangoFontFace>,
862 }
863 
864 impl ::std::fmt::Debug for PangoFontMapClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result865     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
866         f.debug_struct(&format!("PangoFontMapClass @ {:p}", self))
867             .field("parent_class", &self.parent_class)
868             .field("load_font", &self.load_font)
869             .field("list_families", &self.list_families)
870             .field("load_fontset", &self.load_fontset)
871             .field("shape_engine_type", &self.shape_engine_type)
872             .field("get_serial", &self.get_serial)
873             .field("changed", &self.changed)
874             .field("get_family", &self.get_family)
875             .field("get_face", &self.get_face)
876             .finish()
877     }
878 }
879 
880 #[repr(C)]
881 #[derive(Copy, Clone)]
882 pub struct PangoFontMetrics {
883     pub ref_count: c_uint,
884     pub ascent: c_int,
885     pub descent: c_int,
886     pub height: c_int,
887     pub approximate_char_width: c_int,
888     pub approximate_digit_width: c_int,
889     pub underline_position: c_int,
890     pub underline_thickness: c_int,
891     pub strikethrough_position: c_int,
892     pub strikethrough_thickness: c_int,
893 }
894 
895 impl ::std::fmt::Debug for PangoFontMetrics {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result896     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
897         f.debug_struct(&format!("PangoFontMetrics @ {:p}", self))
898             .finish()
899     }
900 }
901 
902 #[repr(C)]
903 #[derive(Copy, Clone)]
904 pub struct PangoFontsetClass {
905     pub parent_class: gobject::GObjectClass,
906     pub get_font: Option<unsafe extern "C" fn(*mut PangoFontset, c_uint) -> *mut PangoFont>,
907     pub get_metrics: Option<unsafe extern "C" fn(*mut PangoFontset) -> *mut PangoFontMetrics>,
908     pub get_language: Option<unsafe extern "C" fn(*mut PangoFontset) -> *mut PangoLanguage>,
909     pub foreach: Option<unsafe extern "C" fn(*mut PangoFontset, PangoFontsetForeachFunc, gpointer)>,
910     pub _pango_reserved1: Option<unsafe extern "C" fn()>,
911     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
912     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
913     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
914 }
915 
916 impl ::std::fmt::Debug for PangoFontsetClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result917     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
918         f.debug_struct(&format!("PangoFontsetClass @ {:p}", self))
919             .field("parent_class", &self.parent_class)
920             .field("get_font", &self.get_font)
921             .field("get_metrics", &self.get_metrics)
922             .field("get_language", &self.get_language)
923             .field("foreach", &self.foreach)
924             .field("_pango_reserved1", &self._pango_reserved1)
925             .field("_pango_reserved2", &self._pango_reserved2)
926             .field("_pango_reserved3", &self._pango_reserved3)
927             .field("_pango_reserved4", &self._pango_reserved4)
928             .finish()
929     }
930 }
931 
932 #[repr(C)]
933 pub struct _PangoFontsetSimpleClass(c_void);
934 
935 pub type PangoFontsetSimpleClass = *mut _PangoFontsetSimpleClass;
936 
937 #[repr(C)]
938 #[derive(Copy, Clone)]
939 pub struct PangoGlyphGeometry {
940     pub width: PangoGlyphUnit,
941     pub x_offset: PangoGlyphUnit,
942     pub y_offset: PangoGlyphUnit,
943 }
944 
945 impl ::std::fmt::Debug for PangoGlyphGeometry {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result946     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
947         f.debug_struct(&format!("PangoGlyphGeometry @ {:p}", self))
948             .field("width", &self.width)
949             .field("x_offset", &self.x_offset)
950             .field("y_offset", &self.y_offset)
951             .finish()
952     }
953 }
954 
955 #[repr(C)]
956 #[derive(Copy, Clone)]
957 pub struct PangoGlyphInfo {
958     pub glyph: PangoGlyph,
959     pub geometry: PangoGlyphGeometry,
960     pub attr: PangoGlyphVisAttr,
961 }
962 
963 impl ::std::fmt::Debug for PangoGlyphInfo {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result964     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
965         f.debug_struct(&format!("PangoGlyphInfo @ {:p}", self))
966             .field("glyph", &self.glyph)
967             .field("geometry", &self.geometry)
968             .field("attr", &self.attr)
969             .finish()
970     }
971 }
972 
973 #[repr(C)]
974 #[derive(Copy, Clone)]
975 pub struct PangoGlyphItem {
976     pub item: *mut PangoItem,
977     pub glyphs: *mut PangoGlyphString,
978 }
979 
980 impl ::std::fmt::Debug for PangoGlyphItem {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result981     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
982         f.debug_struct(&format!("PangoGlyphItem @ {:p}", self))
983             .field("item", &self.item)
984             .field("glyphs", &self.glyphs)
985             .finish()
986     }
987 }
988 
989 #[repr(C)]
990 #[derive(Copy, Clone)]
991 pub struct PangoGlyphItemIter {
992     pub glyph_item: *mut PangoGlyphItem,
993     pub text: *const c_char,
994     pub start_glyph: c_int,
995     pub start_index: c_int,
996     pub start_char: c_int,
997     pub end_glyph: c_int,
998     pub end_index: c_int,
999     pub end_char: c_int,
1000 }
1001 
1002 impl ::std::fmt::Debug for PangoGlyphItemIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1003     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1004         f.debug_struct(&format!("PangoGlyphItemIter @ {:p}", self))
1005             .field("glyph_item", &self.glyph_item)
1006             .field("text", &self.text)
1007             .field("start_glyph", &self.start_glyph)
1008             .field("start_index", &self.start_index)
1009             .field("start_char", &self.start_char)
1010             .field("end_glyph", &self.end_glyph)
1011             .field("end_index", &self.end_index)
1012             .field("end_char", &self.end_char)
1013             .finish()
1014     }
1015 }
1016 
1017 #[repr(C)]
1018 #[derive(Copy, Clone)]
1019 pub struct PangoGlyphString {
1020     pub num_glyphs: c_int,
1021     pub glyphs: *mut PangoGlyphInfo,
1022     pub log_clusters: *mut c_int,
1023     pub space: c_int,
1024 }
1025 
1026 impl ::std::fmt::Debug for PangoGlyphString {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1027     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1028         f.debug_struct(&format!("PangoGlyphString @ {:p}", self))
1029             .field("num_glyphs", &self.num_glyphs)
1030             .field("glyphs", &self.glyphs)
1031             .field("log_clusters", &self.log_clusters)
1032             .finish()
1033     }
1034 }
1035 
1036 #[repr(C)]
1037 #[derive(Copy, Clone)]
1038 pub struct PangoGlyphVisAttr {
1039     pub is_cluster_start: c_uint,
1040 }
1041 
1042 impl ::std::fmt::Debug for PangoGlyphVisAttr {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1043     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1044         f.debug_struct(&format!("PangoGlyphVisAttr @ {:p}", self))
1045             .field("is_cluster_start", &self.is_cluster_start)
1046             .finish()
1047     }
1048 }
1049 
1050 #[repr(C)]
1051 #[derive(Copy, Clone)]
1052 pub struct PangoIncludedModule {
1053     pub list: Option<unsafe extern "C" fn(*mut *mut PangoEngineInfo, *mut c_int)>,
1054     pub init: Option<unsafe extern "C" fn(*mut gobject::GTypeModule)>,
1055     pub exit: Option<unsafe extern "C" fn()>,
1056     pub create: Option<unsafe extern "C" fn(*const c_char) -> *mut PangoEngine>,
1057 }
1058 
1059 impl ::std::fmt::Debug for PangoIncludedModule {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1060     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1061         f.debug_struct(&format!("PangoIncludedModule @ {:p}", self))
1062             .field("list", &self.list)
1063             .field("init", &self.init)
1064             .field("exit", &self.exit)
1065             .field("create", &self.create)
1066             .finish()
1067     }
1068 }
1069 
1070 #[repr(C)]
1071 #[derive(Copy, Clone)]
1072 pub struct PangoItem {
1073     pub offset: c_int,
1074     pub length: c_int,
1075     pub num_chars: c_int,
1076     pub analysis: PangoAnalysis,
1077 }
1078 
1079 impl ::std::fmt::Debug for PangoItem {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1080     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1081         f.debug_struct(&format!("PangoItem @ {:p}", self))
1082             .field("offset", &self.offset)
1083             .field("length", &self.length)
1084             .field("num_chars", &self.num_chars)
1085             .field("analysis", &self.analysis)
1086             .finish()
1087     }
1088 }
1089 
1090 #[repr(C)]
1091 pub struct PangoLanguage(c_void);
1092 
1093 impl ::std::fmt::Debug for PangoLanguage {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1094     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1095         f.debug_struct(&format!("PangoLanguage @ {:p}", self))
1096             .finish()
1097     }
1098 }
1099 
1100 #[repr(C)]
1101 pub struct _PangoLayoutClass(c_void);
1102 
1103 pub type PangoLayoutClass = *mut _PangoLayoutClass;
1104 
1105 #[repr(C)]
1106 pub struct PangoLayoutIter(c_void);
1107 
1108 impl ::std::fmt::Debug for PangoLayoutIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1109     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1110         f.debug_struct(&format!("PangoLayoutIter @ {:p}", self))
1111             .finish()
1112     }
1113 }
1114 
1115 #[repr(C)]
1116 pub struct PangoLayoutLine {
1117     pub layout: *mut PangoLayout,
1118     pub start_index: c_int,
1119     pub length: c_int,
1120     pub runs: *mut glib::GSList,
1121     pub is_paragraph_start: c_uint,
1122     _truncated_record_marker: c_void,
1123     // field resolved_dir has incomplete type
1124 }
1125 
1126 impl ::std::fmt::Debug for PangoLayoutLine {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1127     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1128         f.debug_struct(&format!("PangoLayoutLine @ {:p}", self))
1129             .field("layout", &self.layout)
1130             .field("start_index", &self.start_index)
1131             .field("length", &self.length)
1132             .field("runs", &self.runs)
1133             .field("is_paragraph_start", &self.is_paragraph_start)
1134             .finish()
1135     }
1136 }
1137 
1138 #[repr(C)]
1139 pub struct PangoLogAttr {
1140     pub is_line_break: c_uint,
1141     _truncated_record_marker: c_void,
1142     // field is_mandatory_break has incomplete type
1143 }
1144 
1145 impl ::std::fmt::Debug for PangoLogAttr {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1146     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1147         f.debug_struct(&format!("PangoLogAttr @ {:p}", self))
1148             .field("is_line_break", &self.is_line_break)
1149             .finish()
1150     }
1151 }
1152 
1153 #[repr(C)]
1154 pub struct _PangoMap(c_void);
1155 
1156 pub type PangoMap = *mut _PangoMap;
1157 
1158 #[repr(C)]
1159 pub struct _PangoMapEntry(c_void);
1160 
1161 pub type PangoMapEntry = *mut _PangoMapEntry;
1162 
1163 #[repr(C)]
1164 #[derive(Copy, Clone)]
1165 pub struct PangoMatrix {
1166     pub xx: c_double,
1167     pub xy: c_double,
1168     pub yx: c_double,
1169     pub yy: c_double,
1170     pub x0: c_double,
1171     pub y0: c_double,
1172 }
1173 
1174 impl ::std::fmt::Debug for PangoMatrix {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1175     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1176         f.debug_struct(&format!("PangoMatrix @ {:p}", self))
1177             .field("xx", &self.xx)
1178             .field("xy", &self.xy)
1179             .field("yx", &self.yx)
1180             .field("yy", &self.yy)
1181             .field("x0", &self.x0)
1182             .field("y0", &self.y0)
1183             .finish()
1184     }
1185 }
1186 
1187 #[repr(C)]
1188 #[derive(Copy, Clone)]
1189 pub struct PangoRectangle {
1190     pub x: c_int,
1191     pub y: c_int,
1192     pub width: c_int,
1193     pub height: c_int,
1194 }
1195 
1196 impl ::std::fmt::Debug for PangoRectangle {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1197     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1198         f.debug_struct(&format!("PangoRectangle @ {:p}", self))
1199             .field("x", &self.x)
1200             .field("y", &self.y)
1201             .field("width", &self.width)
1202             .field("height", &self.height)
1203             .finish()
1204     }
1205 }
1206 
1207 #[repr(C)]
1208 #[derive(Copy, Clone)]
1209 pub struct PangoRendererClass {
1210     pub parent_class: gobject::GObjectClass,
1211     pub draw_glyphs: Option<
1212         unsafe extern "C" fn(
1213             *mut PangoRenderer,
1214             *mut PangoFont,
1215             *mut PangoGlyphString,
1216             c_int,
1217             c_int,
1218         ),
1219     >,
1220     pub draw_rectangle: Option<
1221         unsafe extern "C" fn(*mut PangoRenderer, PangoRenderPart, c_int, c_int, c_int, c_int),
1222     >,
1223     pub draw_error_underline:
1224         Option<unsafe extern "C" fn(*mut PangoRenderer, c_int, c_int, c_int, c_int)>,
1225     pub draw_shape:
1226         Option<unsafe extern "C" fn(*mut PangoRenderer, *mut PangoAttrShape, c_int, c_int)>,
1227     pub draw_trapezoid: Option<
1228         unsafe extern "C" fn(
1229             *mut PangoRenderer,
1230             PangoRenderPart,
1231             c_double,
1232             c_double,
1233             c_double,
1234             c_double,
1235             c_double,
1236             c_double,
1237         ),
1238     >,
1239     pub draw_glyph: Option<
1240         unsafe extern "C" fn(*mut PangoRenderer, *mut PangoFont, PangoGlyph, c_double, c_double),
1241     >,
1242     pub part_changed: Option<unsafe extern "C" fn(*mut PangoRenderer, PangoRenderPart)>,
1243     pub begin: Option<unsafe extern "C" fn(*mut PangoRenderer)>,
1244     pub end: Option<unsafe extern "C" fn(*mut PangoRenderer)>,
1245     pub prepare_run: Option<unsafe extern "C" fn(*mut PangoRenderer, *mut PangoLayoutRun)>,
1246     pub draw_glyph_item: Option<
1247         unsafe extern "C" fn(*mut PangoRenderer, *const c_char, *mut PangoGlyphItem, c_int, c_int),
1248     >,
1249     pub _pango_reserved2: Option<unsafe extern "C" fn()>,
1250     pub _pango_reserved3: Option<unsafe extern "C" fn()>,
1251     pub _pango_reserved4: Option<unsafe extern "C" fn()>,
1252 }
1253 
1254 impl ::std::fmt::Debug for PangoRendererClass {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1255     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1256         f.debug_struct(&format!("PangoRendererClass @ {:p}", self))
1257             .field("draw_glyphs", &self.draw_glyphs)
1258             .field("draw_rectangle", &self.draw_rectangle)
1259             .field("draw_error_underline", &self.draw_error_underline)
1260             .field("draw_shape", &self.draw_shape)
1261             .field("draw_trapezoid", &self.draw_trapezoid)
1262             .field("draw_glyph", &self.draw_glyph)
1263             .field("part_changed", &self.part_changed)
1264             .field("begin", &self.begin)
1265             .field("end", &self.end)
1266             .field("prepare_run", &self.prepare_run)
1267             .field("draw_glyph_item", &self.draw_glyph_item)
1268             .field("_pango_reserved2", &self._pango_reserved2)
1269             .field("_pango_reserved3", &self._pango_reserved3)
1270             .field("_pango_reserved4", &self._pango_reserved4)
1271             .finish()
1272     }
1273 }
1274 
1275 #[repr(C)]
1276 pub struct _PangoRendererPrivate(c_void);
1277 
1278 pub type PangoRendererPrivate = *mut _PangoRendererPrivate;
1279 
1280 #[repr(C)]
1281 pub struct PangoScriptIter(c_void);
1282 
1283 impl ::std::fmt::Debug for PangoScriptIter {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1284     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1285         f.debug_struct(&format!("PangoScriptIter @ {:p}", self))
1286             .finish()
1287     }
1288 }
1289 
1290 #[repr(C)]
1291 pub struct PangoTabArray(c_void);
1292 
1293 impl ::std::fmt::Debug for PangoTabArray {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1294     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1295         f.debug_struct(&format!("PangoTabArray @ {:p}", self))
1296             .finish()
1297     }
1298 }
1299 
1300 // Classes
1301 #[repr(C)]
1302 pub struct PangoContext(c_void);
1303 
1304 impl ::std::fmt::Debug for PangoContext {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1305     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1306         f.debug_struct(&format!("PangoContext @ {:p}", self))
1307             .finish()
1308     }
1309 }
1310 
1311 #[repr(C)]
1312 pub struct PangoCoverage(c_void);
1313 
1314 impl ::std::fmt::Debug for PangoCoverage {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1315     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1316         f.debug_struct(&format!("PangoCoverage @ {:p}", self))
1317             .finish()
1318     }
1319 }
1320 
1321 #[repr(C)]
1322 #[derive(Copy, Clone)]
1323 pub struct PangoEngine {
1324     pub parent_instance: gobject::GObject,
1325 }
1326 
1327 impl ::std::fmt::Debug for PangoEngine {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1328     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1329         f.debug_struct(&format!("PangoEngine @ {:p}", self))
1330             .finish()
1331     }
1332 }
1333 
1334 #[repr(C)]
1335 #[derive(Copy, Clone)]
1336 pub struct PangoEngineLang {
1337     pub parent_instance: PangoEngine,
1338 }
1339 
1340 impl ::std::fmt::Debug for PangoEngineLang {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1341     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1342         f.debug_struct(&format!("PangoEngineLang @ {:p}", self))
1343             .finish()
1344     }
1345 }
1346 
1347 #[repr(C)]
1348 #[derive(Copy, Clone)]
1349 pub struct PangoEngineShape {
1350     pub parent_instance: PangoEngine,
1351 }
1352 
1353 impl ::std::fmt::Debug for PangoEngineShape {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1354     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1355         f.debug_struct(&format!("PangoEngineShape @ {:p}", self))
1356             .field("parent_instance", &self.parent_instance)
1357             .finish()
1358     }
1359 }
1360 
1361 #[repr(C)]
1362 #[derive(Copy, Clone)]
1363 pub struct PangoFont {
1364     pub parent_instance: gobject::GObject,
1365 }
1366 
1367 impl ::std::fmt::Debug for PangoFont {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1368     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1369         f.debug_struct(&format!("PangoFont @ {:p}", self))
1370             .field("parent_instance", &self.parent_instance)
1371             .finish()
1372     }
1373 }
1374 
1375 #[repr(C)]
1376 #[derive(Copy, Clone)]
1377 pub struct PangoFontFace {
1378     pub parent_instance: gobject::GObject,
1379 }
1380 
1381 impl ::std::fmt::Debug for PangoFontFace {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1382     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1383         f.debug_struct(&format!("PangoFontFace @ {:p}", self))
1384             .field("parent_instance", &self.parent_instance)
1385             .finish()
1386     }
1387 }
1388 
1389 #[repr(C)]
1390 #[derive(Copy, Clone)]
1391 pub struct PangoFontFamily {
1392     pub parent_instance: gobject::GObject,
1393 }
1394 
1395 impl ::std::fmt::Debug for PangoFontFamily {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1396     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1397         f.debug_struct(&format!("PangoFontFamily @ {:p}", self))
1398             .field("parent_instance", &self.parent_instance)
1399             .finish()
1400     }
1401 }
1402 
1403 #[repr(C)]
1404 #[derive(Copy, Clone)]
1405 pub struct PangoFontMap {
1406     pub parent_instance: gobject::GObject,
1407 }
1408 
1409 impl ::std::fmt::Debug for PangoFontMap {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1410     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1411         f.debug_struct(&format!("PangoFontMap @ {:p}", self))
1412             .field("parent_instance", &self.parent_instance)
1413             .finish()
1414     }
1415 }
1416 
1417 #[repr(C)]
1418 #[derive(Copy, Clone)]
1419 pub struct PangoFontset {
1420     pub parent_instance: gobject::GObject,
1421 }
1422 
1423 impl ::std::fmt::Debug for PangoFontset {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1424     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1425         f.debug_struct(&format!("PangoFontset @ {:p}", self))
1426             .field("parent_instance", &self.parent_instance)
1427             .finish()
1428     }
1429 }
1430 
1431 #[repr(C)]
1432 pub struct PangoFontsetSimple(c_void);
1433 
1434 impl ::std::fmt::Debug for PangoFontsetSimple {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1435     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1436         f.debug_struct(&format!("PangoFontsetSimple @ {:p}", self))
1437             .finish()
1438     }
1439 }
1440 
1441 #[repr(C)]
1442 pub struct PangoLayout(c_void);
1443 
1444 impl ::std::fmt::Debug for PangoLayout {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1445     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1446         f.debug_struct(&format!("PangoLayout @ {:p}", self))
1447             .finish()
1448     }
1449 }
1450 
1451 #[repr(C)]
1452 #[derive(Copy, Clone)]
1453 pub struct PangoRenderer {
1454     pub parent_instance: gobject::GObject,
1455     pub underline: PangoUnderline,
1456     pub strikethrough: gboolean,
1457     pub active_count: c_int,
1458     pub matrix: *mut PangoMatrix,
1459     pub priv_: *mut PangoRendererPrivate,
1460 }
1461 
1462 impl ::std::fmt::Debug for PangoRenderer {
fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result1463     fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1464         f.debug_struct(&format!("PangoRenderer @ {:p}", self))
1465             .field("matrix", &self.matrix)
1466             .finish()
1467     }
1468 }
1469 
1470 #[link(name = "pango-1.0")]
1471 extern "C" {
1472 
1473     //=========================================================================
1474     // PangoAlignment
1475     //=========================================================================
pango_alignment_get_type() -> GType1476     pub fn pango_alignment_get_type() -> GType;
1477 
1478     //=========================================================================
1479     // PangoAttrType
1480     //=========================================================================
pango_attr_type_get_type() -> GType1481     pub fn pango_attr_type_get_type() -> GType;
pango_attr_type_get_name(type_: PangoAttrType) -> *const c_char1482     pub fn pango_attr_type_get_name(type_: PangoAttrType) -> *const c_char;
pango_attr_type_register(name: *const c_char) -> PangoAttrType1483     pub fn pango_attr_type_register(name: *const c_char) -> PangoAttrType;
1484 
1485     //=========================================================================
1486     // PangoBidiType
1487     //=========================================================================
pango_bidi_type_get_type() -> GType1488     pub fn pango_bidi_type_get_type() -> GType;
pango_bidi_type_for_unichar(ch: u32) -> PangoBidiType1489     pub fn pango_bidi_type_for_unichar(ch: u32) -> PangoBidiType;
1490 
1491     //=========================================================================
1492     // PangoCoverageLevel
1493     //=========================================================================
pango_coverage_level_get_type() -> GType1494     pub fn pango_coverage_level_get_type() -> GType;
1495 
1496     //=========================================================================
1497     // PangoDirection
1498     //=========================================================================
pango_direction_get_type() -> GType1499     pub fn pango_direction_get_type() -> GType;
1500 
1501     //=========================================================================
1502     // PangoEllipsizeMode
1503     //=========================================================================
pango_ellipsize_mode_get_type() -> GType1504     pub fn pango_ellipsize_mode_get_type() -> GType;
1505 
1506     //=========================================================================
1507     // PangoGravity
1508     //=========================================================================
pango_gravity_get_type() -> GType1509     pub fn pango_gravity_get_type() -> GType;
pango_gravity_get_for_matrix(matrix: *const PangoMatrix) -> PangoGravity1510     pub fn pango_gravity_get_for_matrix(matrix: *const PangoMatrix) -> PangoGravity;
pango_gravity_get_for_script( script: PangoScript, base_gravity: PangoGravity, hint: PangoGravityHint, ) -> PangoGravity1511     pub fn pango_gravity_get_for_script(
1512         script: PangoScript,
1513         base_gravity: PangoGravity,
1514         hint: PangoGravityHint,
1515     ) -> PangoGravity;
pango_gravity_get_for_script_and_width( script: PangoScript, wide: gboolean, base_gravity: PangoGravity, hint: PangoGravityHint, ) -> PangoGravity1516     pub fn pango_gravity_get_for_script_and_width(
1517         script: PangoScript,
1518         wide: gboolean,
1519         base_gravity: PangoGravity,
1520         hint: PangoGravityHint,
1521     ) -> PangoGravity;
pango_gravity_to_rotation(gravity: PangoGravity) -> c_double1522     pub fn pango_gravity_to_rotation(gravity: PangoGravity) -> c_double;
1523 
1524     //=========================================================================
1525     // PangoGravityHint
1526     //=========================================================================
pango_gravity_hint_get_type() -> GType1527     pub fn pango_gravity_hint_get_type() -> GType;
1528 
1529     //=========================================================================
1530     // PangoOverline
1531     //=========================================================================
1532     #[cfg(any(feature = "v1_46", feature = "dox"))]
1533     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_overline_get_type() -> GType1534     pub fn pango_overline_get_type() -> GType;
1535 
1536     //=========================================================================
1537     // PangoRenderPart
1538     //=========================================================================
pango_render_part_get_type() -> GType1539     pub fn pango_render_part_get_type() -> GType;
1540 
1541     //=========================================================================
1542     // PangoScript
1543     //=========================================================================
pango_script_get_type() -> GType1544     pub fn pango_script_get_type() -> GType;
pango_script_for_unichar(ch: u32) -> PangoScript1545     pub fn pango_script_for_unichar(ch: u32) -> PangoScript;
pango_script_get_sample_language(script: PangoScript) -> *mut PangoLanguage1546     pub fn pango_script_get_sample_language(script: PangoScript) -> *mut PangoLanguage;
1547 
1548     //=========================================================================
1549     // PangoStretch
1550     //=========================================================================
pango_stretch_get_type() -> GType1551     pub fn pango_stretch_get_type() -> GType;
1552 
1553     //=========================================================================
1554     // PangoStyle
1555     //=========================================================================
pango_style_get_type() -> GType1556     pub fn pango_style_get_type() -> GType;
1557 
1558     //=========================================================================
1559     // PangoTabAlign
1560     //=========================================================================
pango_tab_align_get_type() -> GType1561     pub fn pango_tab_align_get_type() -> GType;
1562 
1563     //=========================================================================
1564     // PangoUnderline
1565     //=========================================================================
pango_underline_get_type() -> GType1566     pub fn pango_underline_get_type() -> GType;
1567 
1568     //=========================================================================
1569     // PangoVariant
1570     //=========================================================================
pango_variant_get_type() -> GType1571     pub fn pango_variant_get_type() -> GType;
1572 
1573     //=========================================================================
1574     // PangoWeight
1575     //=========================================================================
pango_weight_get_type() -> GType1576     pub fn pango_weight_get_type() -> GType;
1577 
1578     //=========================================================================
1579     // PangoWrapMode
1580     //=========================================================================
pango_wrap_mode_get_type() -> GType1581     pub fn pango_wrap_mode_get_type() -> GType;
1582 
1583     //=========================================================================
1584     // PangoFontMask
1585     //=========================================================================
pango_font_mask_get_type() -> GType1586     pub fn pango_font_mask_get_type() -> GType;
1587 
1588     //=========================================================================
1589     // PangoShapeFlags
1590     //=========================================================================
1591     #[cfg(any(feature = "v1_44", feature = "dox"))]
1592     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_shape_flags_get_type() -> GType1593     pub fn pango_shape_flags_get_type() -> GType;
1594 
1595     //=========================================================================
1596     // PangoShowFlags
1597     //=========================================================================
1598     #[cfg(any(feature = "v1_44", feature = "dox"))]
1599     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_show_flags_get_type() -> GType1600     pub fn pango_show_flags_get_type() -> GType;
1601 
1602     //=========================================================================
1603     // PangoAttrFontDesc
1604     //=========================================================================
pango_attr_font_desc_new(desc: *const PangoFontDescription) -> *mut PangoAttribute1605     pub fn pango_attr_font_desc_new(desc: *const PangoFontDescription) -> *mut PangoAttribute;
1606 
1607     //=========================================================================
1608     // PangoAttrFontFeatures
1609     //=========================================================================
pango_attr_font_features_new(features: *const c_char) -> *mut PangoAttribute1610     pub fn pango_attr_font_features_new(features: *const c_char) -> *mut PangoAttribute;
1611 
1612     //=========================================================================
1613     // PangoAttrIterator
1614     //=========================================================================
1615     #[cfg(any(feature = "v1_44", feature = "dox"))]
1616     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_iterator_get_type() -> GType1617     pub fn pango_attr_iterator_get_type() -> GType;
pango_attr_iterator_copy(iterator: *mut PangoAttrIterator) -> *mut PangoAttrIterator1618     pub fn pango_attr_iterator_copy(iterator: *mut PangoAttrIterator) -> *mut PangoAttrIterator;
pango_attr_iterator_destroy(iterator: *mut PangoAttrIterator)1619     pub fn pango_attr_iterator_destroy(iterator: *mut PangoAttrIterator);
pango_attr_iterator_get( iterator: *mut PangoAttrIterator, type_: PangoAttrType, ) -> *mut PangoAttribute1620     pub fn pango_attr_iterator_get(
1621         iterator: *mut PangoAttrIterator,
1622         type_: PangoAttrType,
1623     ) -> *mut PangoAttribute;
pango_attr_iterator_get_attrs(iterator: *mut PangoAttrIterator) -> *mut glib::GSList1624     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, )1625     pub fn pango_attr_iterator_get_font(
1626         iterator: *mut PangoAttrIterator,
1627         desc: *mut PangoFontDescription,
1628         language: *mut *mut PangoLanguage,
1629         extra_attrs: *mut *mut glib::GSList,
1630     );
pango_attr_iterator_next(iterator: *mut PangoAttrIterator) -> gboolean1631     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, )1632     pub fn pango_attr_iterator_range(
1633         iterator: *mut PangoAttrIterator,
1634         start: *mut c_int,
1635         end: *mut c_int,
1636     );
1637 
1638     //=========================================================================
1639     // PangoAttrLanguage
1640     //=========================================================================
pango_attr_language_new(language: *mut PangoLanguage) -> *mut PangoAttribute1641     pub fn pango_attr_language_new(language: *mut PangoLanguage) -> *mut PangoAttribute;
1642 
1643     //=========================================================================
1644     // PangoAttrList
1645     //=========================================================================
pango_attr_list_get_type() -> GType1646     pub fn pango_attr_list_get_type() -> GType;
pango_attr_list_new() -> *mut PangoAttrList1647     pub fn pango_attr_list_new() -> *mut PangoAttrList;
pango_attr_list_change(list: *mut PangoAttrList, attr: *mut PangoAttribute)1648     pub fn pango_attr_list_change(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_copy(list: *mut PangoAttrList) -> *mut PangoAttrList1649     pub fn pango_attr_list_copy(list: *mut PangoAttrList) -> *mut PangoAttrList;
1650     #[cfg(any(feature = "v1_46", feature = "dox"))]
1651     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_attr_list_equal( list: *mut PangoAttrList, other_list: *mut PangoAttrList, ) -> gboolean1652     pub fn pango_attr_list_equal(
1653         list: *mut PangoAttrList,
1654         other_list: *mut PangoAttrList,
1655     ) -> gboolean;
pango_attr_list_filter( list: *mut PangoAttrList, func: PangoAttrFilterFunc, data: gpointer, ) -> *mut PangoAttrList1656     pub fn pango_attr_list_filter(
1657         list: *mut PangoAttrList,
1658         func: PangoAttrFilterFunc,
1659         data: gpointer,
1660     ) -> *mut PangoAttrList;
1661     #[cfg(any(feature = "v1_44", feature = "dox"))]
1662     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_list_get_attributes(list: *mut PangoAttrList) -> *mut glib::GSList1663     pub fn pango_attr_list_get_attributes(list: *mut PangoAttrList) -> *mut glib::GSList;
pango_attr_list_get_iterator(list: *mut PangoAttrList) -> *mut PangoAttrIterator1664     pub fn pango_attr_list_get_iterator(list: *mut PangoAttrList) -> *mut PangoAttrIterator;
pango_attr_list_insert(list: *mut PangoAttrList, attr: *mut PangoAttribute)1665     pub fn pango_attr_list_insert(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_insert_before(list: *mut PangoAttrList, attr: *mut PangoAttribute)1666     pub fn pango_attr_list_insert_before(list: *mut PangoAttrList, attr: *mut PangoAttribute);
pango_attr_list_ref(list: *mut PangoAttrList) -> *mut PangoAttrList1667     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, )1668     pub fn pango_attr_list_splice(
1669         list: *mut PangoAttrList,
1670         other: *mut PangoAttrList,
1671         pos: c_int,
1672         len: c_int,
1673     );
pango_attr_list_unref(list: *mut PangoAttrList)1674     pub fn pango_attr_list_unref(list: *mut PangoAttrList);
1675     #[cfg(any(feature = "v1_44", feature = "dox"))]
1676     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_list_update(list: *mut PangoAttrList, pos: c_int, remove: c_int, add: c_int)1677     pub fn pango_attr_list_update(list: *mut PangoAttrList, pos: c_int, remove: c_int, add: c_int);
1678 
1679     //=========================================================================
1680     // PangoAttrShape
1681     //=========================================================================
pango_attr_shape_new( ink_rect: *const PangoRectangle, logical_rect: *const PangoRectangle, ) -> *mut PangoAttribute1682     pub fn pango_attr_shape_new(
1683         ink_rect: *const PangoRectangle,
1684         logical_rect: *const PangoRectangle,
1685     ) -> *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 PangoAttribute1686     pub fn pango_attr_shape_new_with_data(
1687         ink_rect: *const PangoRectangle,
1688         logical_rect: *const PangoRectangle,
1689         data: gpointer,
1690         copy_func: PangoAttrDataCopyFunc,
1691         destroy_func: glib::GDestroyNotify,
1692     ) -> *mut PangoAttribute;
1693 
1694     //=========================================================================
1695     // PangoAttrSize
1696     //=========================================================================
pango_attr_size_new(size: c_int) -> *mut PangoAttribute1697     pub fn pango_attr_size_new(size: c_int) -> *mut PangoAttribute;
pango_attr_size_new_absolute(size: c_int) -> *mut PangoAttribute1698     pub fn pango_attr_size_new_absolute(size: c_int) -> *mut PangoAttribute;
1699 
1700     //=========================================================================
1701     // PangoAttribute
1702     //=========================================================================
1703     #[cfg(any(feature = "v1_44", feature = "dox"))]
1704     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attribute_get_type() -> GType1705     pub fn pango_attribute_get_type() -> GType;
pango_attribute_copy(attr: *const PangoAttribute) -> *mut PangoAttribute1706     pub fn pango_attribute_copy(attr: *const PangoAttribute) -> *mut PangoAttribute;
pango_attribute_destroy(attr: *mut PangoAttribute)1707     pub fn pango_attribute_destroy(attr: *mut PangoAttribute);
pango_attribute_equal( attr1: *const PangoAttribute, attr2: *const PangoAttribute, ) -> gboolean1708     pub fn pango_attribute_equal(
1709         attr1: *const PangoAttribute,
1710         attr2: *const PangoAttribute,
1711     ) -> gboolean;
pango_attribute_init(attr: *mut PangoAttribute, klass: *const PangoAttrClass)1712     pub fn pango_attribute_init(attr: *mut PangoAttribute, klass: *const PangoAttrClass);
1713 
1714     //=========================================================================
1715     // PangoColor
1716     //=========================================================================
pango_color_get_type() -> GType1717     pub fn pango_color_get_type() -> GType;
pango_color_copy(src: *const PangoColor) -> *mut PangoColor1718     pub fn pango_color_copy(src: *const PangoColor) -> *mut PangoColor;
pango_color_free(color: *mut PangoColor)1719     pub fn pango_color_free(color: *mut PangoColor);
pango_color_parse(color: *mut PangoColor, spec: *const c_char) -> gboolean1720     pub fn pango_color_parse(color: *mut PangoColor, spec: *const c_char) -> gboolean;
1721     #[cfg(any(feature = "v1_46", feature = "dox"))]
1722     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_color_parse_with_alpha( color: *mut PangoColor, alpha: *mut u16, spec: *const c_char, ) -> gboolean1723     pub fn pango_color_parse_with_alpha(
1724         color: *mut PangoColor,
1725         alpha: *mut u16,
1726         spec: *const c_char,
1727     ) -> gboolean;
pango_color_to_string(color: *const PangoColor) -> *mut c_char1728     pub fn pango_color_to_string(color: *const PangoColor) -> *mut c_char;
1729 
1730     //=========================================================================
1731     // PangoFontDescription
1732     //=========================================================================
pango_font_description_get_type() -> GType1733     pub fn pango_font_description_get_type() -> GType;
pango_font_description_new() -> *mut PangoFontDescription1734     pub fn pango_font_description_new() -> *mut PangoFontDescription;
pango_font_description_better_match( desc: *const PangoFontDescription, old_match: *const PangoFontDescription, new_match: *const PangoFontDescription, ) -> gboolean1735     pub fn pango_font_description_better_match(
1736         desc: *const PangoFontDescription,
1737         old_match: *const PangoFontDescription,
1738         new_match: *const PangoFontDescription,
1739     ) -> gboolean;
pango_font_description_copy( desc: *const PangoFontDescription, ) -> *mut PangoFontDescription1740     pub fn pango_font_description_copy(
1741         desc: *const PangoFontDescription,
1742     ) -> *mut PangoFontDescription;
pango_font_description_copy_static( desc: *const PangoFontDescription, ) -> *mut PangoFontDescription1743     pub fn pango_font_description_copy_static(
1744         desc: *const PangoFontDescription,
1745     ) -> *mut PangoFontDescription;
pango_font_description_equal( desc1: *const PangoFontDescription, desc2: *const PangoFontDescription, ) -> gboolean1746     pub fn pango_font_description_equal(
1747         desc1: *const PangoFontDescription,
1748         desc2: *const PangoFontDescription,
1749     ) -> gboolean;
pango_font_description_free(desc: *mut PangoFontDescription)1750     pub fn pango_font_description_free(desc: *mut PangoFontDescription);
pango_font_description_get_family(desc: *const PangoFontDescription) -> *const c_char1751     pub fn pango_font_description_get_family(desc: *const PangoFontDescription) -> *const c_char;
pango_font_description_get_gravity(desc: *const PangoFontDescription) -> PangoGravity1752     pub fn pango_font_description_get_gravity(desc: *const PangoFontDescription) -> PangoGravity;
pango_font_description_get_set_fields( desc: *const PangoFontDescription, ) -> PangoFontMask1753     pub fn pango_font_description_get_set_fields(
1754         desc: *const PangoFontDescription,
1755     ) -> PangoFontMask;
pango_font_description_get_size(desc: *const PangoFontDescription) -> c_int1756     pub fn pango_font_description_get_size(desc: *const PangoFontDescription) -> c_int;
pango_font_description_get_size_is_absolute( desc: *const PangoFontDescription, ) -> gboolean1757     pub fn pango_font_description_get_size_is_absolute(
1758         desc: *const PangoFontDescription,
1759     ) -> gboolean;
pango_font_description_get_stretch(desc: *const PangoFontDescription) -> PangoStretch1760     pub fn pango_font_description_get_stretch(desc: *const PangoFontDescription) -> PangoStretch;
pango_font_description_get_style(desc: *const PangoFontDescription) -> PangoStyle1761     pub fn pango_font_description_get_style(desc: *const PangoFontDescription) -> PangoStyle;
pango_font_description_get_variant(desc: *const PangoFontDescription) -> PangoVariant1762     pub fn pango_font_description_get_variant(desc: *const PangoFontDescription) -> PangoVariant;
1763     #[cfg(any(feature = "v1_42", feature = "dox"))]
1764     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_42")))]
pango_font_description_get_variations( desc: *const PangoFontDescription, ) -> *const c_char1765     pub fn pango_font_description_get_variations(
1766         desc: *const PangoFontDescription,
1767     ) -> *const c_char;
pango_font_description_get_weight(desc: *const PangoFontDescription) -> PangoWeight1768     pub fn pango_font_description_get_weight(desc: *const PangoFontDescription) -> PangoWeight;
pango_font_description_hash(desc: *const PangoFontDescription) -> c_uint1769     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, )1770     pub fn pango_font_description_merge(
1771         desc: *mut PangoFontDescription,
1772         desc_to_merge: *const PangoFontDescription,
1773         replace_existing: gboolean,
1774     );
pango_font_description_merge_static( desc: *mut PangoFontDescription, desc_to_merge: *const PangoFontDescription, replace_existing: gboolean, )1775     pub fn pango_font_description_merge_static(
1776         desc: *mut PangoFontDescription,
1777         desc_to_merge: *const PangoFontDescription,
1778         replace_existing: gboolean,
1779     );
pango_font_description_set_absolute_size( desc: *mut PangoFontDescription, size: c_double, )1780     pub fn pango_font_description_set_absolute_size(
1781         desc: *mut PangoFontDescription,
1782         size: c_double,
1783     );
pango_font_description_set_family( desc: *mut PangoFontDescription, family: *const c_char, )1784     pub fn pango_font_description_set_family(
1785         desc: *mut PangoFontDescription,
1786         family: *const c_char,
1787     );
pango_font_description_set_family_static( desc: *mut PangoFontDescription, family: *const c_char, )1788     pub fn pango_font_description_set_family_static(
1789         desc: *mut PangoFontDescription,
1790         family: *const c_char,
1791     );
pango_font_description_set_gravity( desc: *mut PangoFontDescription, gravity: PangoGravity, )1792     pub fn pango_font_description_set_gravity(
1793         desc: *mut PangoFontDescription,
1794         gravity: PangoGravity,
1795     );
pango_font_description_set_size(desc: *mut PangoFontDescription, size: c_int)1796     pub fn pango_font_description_set_size(desc: *mut PangoFontDescription, size: c_int);
pango_font_description_set_stretch( desc: *mut PangoFontDescription, stretch: PangoStretch, )1797     pub fn pango_font_description_set_stretch(
1798         desc: *mut PangoFontDescription,
1799         stretch: PangoStretch,
1800     );
pango_font_description_set_style(desc: *mut PangoFontDescription, style: PangoStyle)1801     pub fn pango_font_description_set_style(desc: *mut PangoFontDescription, style: PangoStyle);
pango_font_description_set_variant( desc: *mut PangoFontDescription, variant: PangoVariant, )1802     pub fn pango_font_description_set_variant(
1803         desc: *mut PangoFontDescription,
1804         variant: PangoVariant,
1805     );
1806     #[cfg(any(feature = "v1_42", feature = "dox"))]
1807     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_42")))]
pango_font_description_set_variations( desc: *mut PangoFontDescription, variations: *const c_char, )1808     pub fn pango_font_description_set_variations(
1809         desc: *mut PangoFontDescription,
1810         variations: *const c_char,
1811     );
1812     #[cfg(any(feature = "v1_42", feature = "dox"))]
1813     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_42")))]
pango_font_description_set_variations_static( desc: *mut PangoFontDescription, variations: *const c_char, )1814     pub fn pango_font_description_set_variations_static(
1815         desc: *mut PangoFontDescription,
1816         variations: *const c_char,
1817     );
pango_font_description_set_weight(desc: *mut PangoFontDescription, weight: PangoWeight)1818     pub fn pango_font_description_set_weight(desc: *mut PangoFontDescription, weight: PangoWeight);
pango_font_description_to_filename(desc: *const PangoFontDescription) -> *mut c_char1819     pub fn pango_font_description_to_filename(desc: *const PangoFontDescription) -> *mut c_char;
pango_font_description_to_string(desc: *const PangoFontDescription) -> *mut c_char1820     pub fn pango_font_description_to_string(desc: *const PangoFontDescription) -> *mut c_char;
pango_font_description_unset_fields( desc: *mut PangoFontDescription, to_unset: PangoFontMask, )1821     pub fn pango_font_description_unset_fields(
1822         desc: *mut PangoFontDescription,
1823         to_unset: PangoFontMask,
1824     );
pango_font_description_from_string(str: *const c_char) -> *mut PangoFontDescription1825     pub fn pango_font_description_from_string(str: *const c_char) -> *mut PangoFontDescription;
1826 
1827     //=========================================================================
1828     // PangoFontMetrics
1829     //=========================================================================
pango_font_metrics_get_type() -> GType1830     pub fn pango_font_metrics_get_type() -> GType;
pango_font_metrics_get_approximate_char_width(metrics: *mut PangoFontMetrics) -> c_int1831     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_int1832     pub fn pango_font_metrics_get_approximate_digit_width(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_ascent(metrics: *mut PangoFontMetrics) -> c_int1833     pub fn pango_font_metrics_get_ascent(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_descent(metrics: *mut PangoFontMetrics) -> c_int1834     pub fn pango_font_metrics_get_descent(metrics: *mut PangoFontMetrics) -> c_int;
1835     #[cfg(any(feature = "v1_44", feature = "dox"))]
1836     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_font_metrics_get_height(metrics: *mut PangoFontMetrics) -> c_int1837     pub fn pango_font_metrics_get_height(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_strikethrough_position(metrics: *mut PangoFontMetrics) -> c_int1838     pub fn pango_font_metrics_get_strikethrough_position(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_strikethrough_thickness(metrics: *mut PangoFontMetrics) -> c_int1839     pub fn pango_font_metrics_get_strikethrough_thickness(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_underline_position(metrics: *mut PangoFontMetrics) -> c_int1840     pub fn pango_font_metrics_get_underline_position(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_get_underline_thickness(metrics: *mut PangoFontMetrics) -> c_int1841     pub fn pango_font_metrics_get_underline_thickness(metrics: *mut PangoFontMetrics) -> c_int;
pango_font_metrics_ref(metrics: *mut PangoFontMetrics) -> *mut PangoFontMetrics1842     pub fn pango_font_metrics_ref(metrics: *mut PangoFontMetrics) -> *mut PangoFontMetrics;
pango_font_metrics_unref(metrics: *mut PangoFontMetrics)1843     pub fn pango_font_metrics_unref(metrics: *mut PangoFontMetrics);
1844 
1845     //=========================================================================
1846     // PangoGlyphItem
1847     //=========================================================================
pango_glyph_item_get_type() -> GType1848     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::GSList1849     pub fn pango_glyph_item_apply_attrs(
1850         glyph_item: *mut PangoGlyphItem,
1851         text: *const c_char,
1852         list: *mut PangoAttrList,
1853     ) -> *mut glib::GSList;
pango_glyph_item_copy(orig: *mut PangoGlyphItem) -> *mut PangoGlyphItem1854     pub fn pango_glyph_item_copy(orig: *mut PangoGlyphItem) -> *mut PangoGlyphItem;
pango_glyph_item_free(glyph_item: *mut PangoGlyphItem)1855     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, )1856     pub fn pango_glyph_item_get_logical_widths(
1857         glyph_item: *mut PangoGlyphItem,
1858         text: *const c_char,
1859         logical_widths: *mut c_int,
1860     );
pango_glyph_item_letter_space( glyph_item: *mut PangoGlyphItem, text: *const c_char, log_attrs: *mut PangoLogAttr, letter_spacing: c_int, )1861     pub fn pango_glyph_item_letter_space(
1862         glyph_item: *mut PangoGlyphItem,
1863         text: *const c_char,
1864         log_attrs: *mut PangoLogAttr,
1865         letter_spacing: c_int,
1866     );
pango_glyph_item_split( orig: *mut PangoGlyphItem, text: *const c_char, split_index: c_int, ) -> *mut PangoGlyphItem1867     pub fn pango_glyph_item_split(
1868         orig: *mut PangoGlyphItem,
1869         text: *const c_char,
1870         split_index: c_int,
1871     ) -> *mut PangoGlyphItem;
1872 
1873     //=========================================================================
1874     // PangoGlyphItemIter
1875     //=========================================================================
pango_glyph_item_iter_get_type() -> GType1876     pub fn pango_glyph_item_iter_get_type() -> GType;
pango_glyph_item_iter_copy(orig: *mut PangoGlyphItemIter) -> *mut PangoGlyphItemIter1877     pub fn pango_glyph_item_iter_copy(orig: *mut PangoGlyphItemIter) -> *mut PangoGlyphItemIter;
pango_glyph_item_iter_free(iter: *mut PangoGlyphItemIter)1878     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, ) -> gboolean1879     pub fn pango_glyph_item_iter_init_end(
1880         iter: *mut PangoGlyphItemIter,
1881         glyph_item: *mut PangoGlyphItem,
1882         text: *const c_char,
1883     ) -> gboolean;
pango_glyph_item_iter_init_start( iter: *mut PangoGlyphItemIter, glyph_item: *mut PangoGlyphItem, text: *const c_char, ) -> gboolean1884     pub fn pango_glyph_item_iter_init_start(
1885         iter: *mut PangoGlyphItemIter,
1886         glyph_item: *mut PangoGlyphItem,
1887         text: *const c_char,
1888     ) -> gboolean;
pango_glyph_item_iter_next_cluster(iter: *mut PangoGlyphItemIter) -> gboolean1889     pub fn pango_glyph_item_iter_next_cluster(iter: *mut PangoGlyphItemIter) -> gboolean;
pango_glyph_item_iter_prev_cluster(iter: *mut PangoGlyphItemIter) -> gboolean1890     pub fn pango_glyph_item_iter_prev_cluster(iter: *mut PangoGlyphItemIter) -> gboolean;
1891 
1892     //=========================================================================
1893     // PangoGlyphString
1894     //=========================================================================
pango_glyph_string_get_type() -> GType1895     pub fn pango_glyph_string_get_type() -> GType;
pango_glyph_string_new() -> *mut PangoGlyphString1896     pub fn pango_glyph_string_new() -> *mut PangoGlyphString;
pango_glyph_string_copy(string: *mut PangoGlyphString) -> *mut PangoGlyphString1897     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, )1898     pub fn pango_glyph_string_extents(
1899         glyphs: *mut PangoGlyphString,
1900         font: *mut PangoFont,
1901         ink_rect: *mut PangoRectangle,
1902         logical_rect: *mut PangoRectangle,
1903     );
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, )1904     pub fn pango_glyph_string_extents_range(
1905         glyphs: *mut PangoGlyphString,
1906         start: c_int,
1907         end: c_int,
1908         font: *mut PangoFont,
1909         ink_rect: *mut PangoRectangle,
1910         logical_rect: *mut PangoRectangle,
1911     );
pango_glyph_string_free(string: *mut PangoGlyphString)1912     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, )1913     pub fn pango_glyph_string_get_logical_widths(
1914         glyphs: *mut PangoGlyphString,
1915         text: *const c_char,
1916         length: c_int,
1917         embedding_level: c_int,
1918         logical_widths: *mut c_int,
1919     );
pango_glyph_string_get_width(glyphs: *mut PangoGlyphString) -> c_int1920     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, )1921     pub fn pango_glyph_string_index_to_x(
1922         glyphs: *mut PangoGlyphString,
1923         text: *mut c_char,
1924         length: c_int,
1925         analysis: *mut PangoAnalysis,
1926         index_: c_int,
1927         trailing: gboolean,
1928         x_pos: *mut c_int,
1929     );
pango_glyph_string_set_size(string: *mut PangoGlyphString, new_len: c_int)1930     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, )1931     pub fn pango_glyph_string_x_to_index(
1932         glyphs: *mut PangoGlyphString,
1933         text: *mut c_char,
1934         length: c_int,
1935         analysis: *mut PangoAnalysis,
1936         x_pos: c_int,
1937         index_: *mut c_int,
1938         trailing: *mut c_int,
1939     );
1940 
1941     //=========================================================================
1942     // PangoItem
1943     //=========================================================================
pango_item_get_type() -> GType1944     pub fn pango_item_get_type() -> GType;
pango_item_new() -> *mut PangoItem1945     pub fn pango_item_new() -> *mut PangoItem;
1946     #[cfg(any(feature = "v1_44", feature = "dox"))]
1947     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_item_apply_attrs(item: *mut PangoItem, iter: *mut PangoAttrIterator)1948     pub fn pango_item_apply_attrs(item: *mut PangoItem, iter: *mut PangoAttrIterator);
pango_item_copy(item: *mut PangoItem) -> *mut PangoItem1949     pub fn pango_item_copy(item: *mut PangoItem) -> *mut PangoItem;
pango_item_free(item: *mut PangoItem)1950     pub fn pango_item_free(item: *mut PangoItem);
pango_item_split( orig: *mut PangoItem, split_index: c_int, split_offset: c_int, ) -> *mut PangoItem1951     pub fn pango_item_split(
1952         orig: *mut PangoItem,
1953         split_index: c_int,
1954         split_offset: c_int,
1955     ) -> *mut PangoItem;
1956 
1957     //=========================================================================
1958     // PangoLanguage
1959     //=========================================================================
pango_language_get_type() -> GType1960     pub fn pango_language_get_type() -> GType;
pango_language_get_sample_string(language: *mut PangoLanguage) -> *const c_char1961     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 PangoScript1962     pub fn pango_language_get_scripts(
1963         language: *mut PangoLanguage,
1964         num_scripts: *mut c_int,
1965     ) -> *const PangoScript;
pango_language_includes_script( language: *mut PangoLanguage, script: PangoScript, ) -> gboolean1966     pub fn pango_language_includes_script(
1967         language: *mut PangoLanguage,
1968         script: PangoScript,
1969     ) -> gboolean;
pango_language_matches( language: *mut PangoLanguage, range_list: *const c_char, ) -> gboolean1970     pub fn pango_language_matches(
1971         language: *mut PangoLanguage,
1972         range_list: *const c_char,
1973     ) -> gboolean;
pango_language_to_string(language: *mut PangoLanguage) -> *const c_char1974     pub fn pango_language_to_string(language: *mut PangoLanguage) -> *const c_char;
pango_language_from_string(language: *const c_char) -> *mut PangoLanguage1975     pub fn pango_language_from_string(language: *const c_char) -> *mut PangoLanguage;
pango_language_get_default() -> *mut PangoLanguage1976     pub fn pango_language_get_default() -> *mut PangoLanguage;
1977 
1978     //=========================================================================
1979     // PangoLayoutIter
1980     //=========================================================================
pango_layout_iter_get_type() -> GType1981     pub fn pango_layout_iter_get_type() -> GType;
pango_layout_iter_at_last_line(iter: *mut PangoLayoutIter) -> gboolean1982     pub fn pango_layout_iter_at_last_line(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_copy(iter: *mut PangoLayoutIter) -> *mut PangoLayoutIter1983     pub fn pango_layout_iter_copy(iter: *mut PangoLayoutIter) -> *mut PangoLayoutIter;
pango_layout_iter_free(iter: *mut PangoLayoutIter)1984     pub fn pango_layout_iter_free(iter: *mut PangoLayoutIter);
pango_layout_iter_get_baseline(iter: *mut PangoLayoutIter) -> c_int1985     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, )1986     pub fn pango_layout_iter_get_char_extents(
1987         iter: *mut PangoLayoutIter,
1988         logical_rect: *mut PangoRectangle,
1989     );
pango_layout_iter_get_cluster_extents( iter: *mut PangoLayoutIter, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )1990     pub fn pango_layout_iter_get_cluster_extents(
1991         iter: *mut PangoLayoutIter,
1992         ink_rect: *mut PangoRectangle,
1993         logical_rect: *mut PangoRectangle,
1994     );
pango_layout_iter_get_index(iter: *mut PangoLayoutIter) -> c_int1995     pub fn pango_layout_iter_get_index(iter: *mut PangoLayoutIter) -> c_int;
pango_layout_iter_get_layout(iter: *mut PangoLayoutIter) -> *mut PangoLayout1996     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, )1997     pub fn pango_layout_iter_get_layout_extents(
1998         iter: *mut PangoLayoutIter,
1999         ink_rect: *mut PangoRectangle,
2000         logical_rect: *mut PangoRectangle,
2001     );
pango_layout_iter_get_line(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine2002     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, )2003     pub fn pango_layout_iter_get_line_extents(
2004         iter: *mut PangoLayoutIter,
2005         ink_rect: *mut PangoRectangle,
2006         logical_rect: *mut PangoRectangle,
2007     );
pango_layout_iter_get_line_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutLine2008     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, )2009     pub fn pango_layout_iter_get_line_yrange(
2010         iter: *mut PangoLayoutIter,
2011         y0_: *mut c_int,
2012         y1_: *mut c_int,
2013     );
pango_layout_iter_get_run(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun2014     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, )2015     pub fn pango_layout_iter_get_run_extents(
2016         iter: *mut PangoLayoutIter,
2017         ink_rect: *mut PangoRectangle,
2018         logical_rect: *mut PangoRectangle,
2019     );
pango_layout_iter_get_run_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun2020     pub fn pango_layout_iter_get_run_readonly(iter: *mut PangoLayoutIter) -> *mut PangoLayoutRun;
pango_layout_iter_next_char(iter: *mut PangoLayoutIter) -> gboolean2021     pub fn pango_layout_iter_next_char(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_cluster(iter: *mut PangoLayoutIter) -> gboolean2022     pub fn pango_layout_iter_next_cluster(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_line(iter: *mut PangoLayoutIter) -> gboolean2023     pub fn pango_layout_iter_next_line(iter: *mut PangoLayoutIter) -> gboolean;
pango_layout_iter_next_run(iter: *mut PangoLayoutIter) -> gboolean2024     pub fn pango_layout_iter_next_run(iter: *mut PangoLayoutIter) -> gboolean;
2025 
2026     //=========================================================================
2027     // PangoLayoutLine
2028     //=========================================================================
pango_layout_line_get_type() -> GType2029     pub fn pango_layout_line_get_type() -> GType;
pango_layout_line_get_extents( line: *mut PangoLayoutLine, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2030     pub fn pango_layout_line_get_extents(
2031         line: *mut PangoLayoutLine,
2032         ink_rect: *mut PangoRectangle,
2033         logical_rect: *mut PangoRectangle,
2034     );
2035     #[cfg(any(feature = "v1_44", feature = "dox"))]
2036     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_layout_line_get_height(line: *mut PangoLayoutLine, height: *mut c_int)2037     pub fn pango_layout_line_get_height(line: *mut PangoLayoutLine, height: *mut c_int);
pango_layout_line_get_pixel_extents( layout_line: *mut PangoLayoutLine, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2038     pub fn pango_layout_line_get_pixel_extents(
2039         layout_line: *mut PangoLayoutLine,
2040         ink_rect: *mut PangoRectangle,
2041         logical_rect: *mut PangoRectangle,
2042     );
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, )2043     pub fn pango_layout_line_get_x_ranges(
2044         line: *mut PangoLayoutLine,
2045         start_index: c_int,
2046         end_index: c_int,
2047         ranges: *mut *mut c_int,
2048         n_ranges: *mut c_int,
2049     );
pango_layout_line_index_to_x( line: *mut PangoLayoutLine, index_: c_int, trailing: gboolean, x_pos: *mut c_int, )2050     pub fn pango_layout_line_index_to_x(
2051         line: *mut PangoLayoutLine,
2052         index_: c_int,
2053         trailing: gboolean,
2054         x_pos: *mut c_int,
2055     );
pango_layout_line_ref(line: *mut PangoLayoutLine) -> *mut PangoLayoutLine2056     pub fn pango_layout_line_ref(line: *mut PangoLayoutLine) -> *mut PangoLayoutLine;
pango_layout_line_unref(line: *mut PangoLayoutLine)2057     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, ) -> gboolean2058     pub fn pango_layout_line_x_to_index(
2059         line: *mut PangoLayoutLine,
2060         x_pos: c_int,
2061         index_: *mut c_int,
2062         trailing: *mut c_int,
2063     ) -> gboolean;
2064 
2065     //=========================================================================
2066     // PangoMap
2067     //=========================================================================
pango_map_get_engine(map: *mut PangoMap, script: PangoScript) -> *mut PangoEngine2068     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, )2069     pub fn pango_map_get_engines(
2070         map: *mut PangoMap,
2071         script: PangoScript,
2072         exact_engines: *mut *mut glib::GSList,
2073         fallback_engines: *mut *mut glib::GSList,
2074     );
2075 
2076     //=========================================================================
2077     // PangoMatrix
2078     //=========================================================================
pango_matrix_get_type() -> GType2079     pub fn pango_matrix_get_type() -> GType;
pango_matrix_concat(matrix: *mut PangoMatrix, new_matrix: *const PangoMatrix)2080     pub fn pango_matrix_concat(matrix: *mut PangoMatrix, new_matrix: *const PangoMatrix);
pango_matrix_copy(matrix: *const PangoMatrix) -> *mut PangoMatrix2081     pub fn pango_matrix_copy(matrix: *const PangoMatrix) -> *mut PangoMatrix;
pango_matrix_free(matrix: *mut PangoMatrix)2082     pub fn pango_matrix_free(matrix: *mut PangoMatrix);
pango_matrix_get_font_scale_factor(matrix: *const PangoMatrix) -> c_double2083     pub fn pango_matrix_get_font_scale_factor(matrix: *const PangoMatrix) -> c_double;
pango_matrix_get_font_scale_factors( matrix: *const PangoMatrix, xscale: *mut c_double, yscale: *mut c_double, )2084     pub fn pango_matrix_get_font_scale_factors(
2085         matrix: *const PangoMatrix,
2086         xscale: *mut c_double,
2087         yscale: *mut c_double,
2088     );
pango_matrix_rotate(matrix: *mut PangoMatrix, degrees: c_double)2089     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)2090     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, )2091     pub fn pango_matrix_transform_distance(
2092         matrix: *const PangoMatrix,
2093         dx: *mut c_double,
2094         dy: *mut c_double,
2095     );
pango_matrix_transform_pixel_rectangle( matrix: *const PangoMatrix, rect: *mut PangoRectangle, )2096     pub fn pango_matrix_transform_pixel_rectangle(
2097         matrix: *const PangoMatrix,
2098         rect: *mut PangoRectangle,
2099     );
pango_matrix_transform_point( matrix: *const PangoMatrix, x: *mut c_double, y: *mut c_double, )2100     pub fn pango_matrix_transform_point(
2101         matrix: *const PangoMatrix,
2102         x: *mut c_double,
2103         y: *mut c_double,
2104     );
pango_matrix_transform_rectangle(matrix: *const PangoMatrix, rect: *mut PangoRectangle)2105     pub fn pango_matrix_transform_rectangle(matrix: *const PangoMatrix, rect: *mut PangoRectangle);
pango_matrix_translate(matrix: *mut PangoMatrix, tx: c_double, ty: c_double)2106     pub fn pango_matrix_translate(matrix: *mut PangoMatrix, tx: c_double, ty: c_double);
2107 
2108     //=========================================================================
2109     // PangoScriptIter
2110     //=========================================================================
2111     #[cfg(any(feature = "v1_44", feature = "dox"))]
2112     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_script_iter_get_type() -> GType2113     pub fn pango_script_iter_get_type() -> GType;
pango_script_iter_new(text: *const c_char, length: c_int) -> *mut PangoScriptIter2114     pub fn pango_script_iter_new(text: *const c_char, length: c_int) -> *mut PangoScriptIter;
pango_script_iter_free(iter: *mut PangoScriptIter)2115     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, )2116     pub fn pango_script_iter_get_range(
2117         iter: *mut PangoScriptIter,
2118         start: *mut *const c_char,
2119         end: *mut *const c_char,
2120         script: *mut PangoScript,
2121     );
pango_script_iter_next(iter: *mut PangoScriptIter) -> gboolean2122     pub fn pango_script_iter_next(iter: *mut PangoScriptIter) -> gboolean;
2123 
2124     //=========================================================================
2125     // PangoTabArray
2126     //=========================================================================
pango_tab_array_get_type() -> GType2127     pub fn pango_tab_array_get_type() -> GType;
pango_tab_array_new( initial_size: c_int, positions_in_pixels: gboolean, ) -> *mut PangoTabArray2128     pub fn pango_tab_array_new(
2129         initial_size: c_int,
2130         positions_in_pixels: gboolean,
2131     ) -> *mut PangoTabArray;
pango_tab_array_new_with_positions( size: c_int, positions_in_pixels: gboolean, first_alignment: PangoTabAlign, first_position: c_int, ... ) -> *mut PangoTabArray2132     pub fn pango_tab_array_new_with_positions(
2133         size: c_int,
2134         positions_in_pixels: gboolean,
2135         first_alignment: PangoTabAlign,
2136         first_position: c_int,
2137         ...
2138     ) -> *mut PangoTabArray;
pango_tab_array_copy(src: *mut PangoTabArray) -> *mut PangoTabArray2139     pub fn pango_tab_array_copy(src: *mut PangoTabArray) -> *mut PangoTabArray;
pango_tab_array_free(tab_array: *mut PangoTabArray)2140     pub fn pango_tab_array_free(tab_array: *mut PangoTabArray);
pango_tab_array_get_positions_in_pixels(tab_array: *mut PangoTabArray) -> gboolean2141     pub fn pango_tab_array_get_positions_in_pixels(tab_array: *mut PangoTabArray) -> gboolean;
pango_tab_array_get_size(tab_array: *mut PangoTabArray) -> c_int2142     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, )2143     pub fn pango_tab_array_get_tab(
2144         tab_array: *mut PangoTabArray,
2145         tab_index: c_int,
2146         alignment: *mut PangoTabAlign,
2147         location: *mut c_int,
2148     );
pango_tab_array_get_tabs( tab_array: *mut PangoTabArray, alignments: *mut *mut PangoTabAlign, locations: *mut *mut c_int, )2149     pub fn pango_tab_array_get_tabs(
2150         tab_array: *mut PangoTabArray,
2151         alignments: *mut *mut PangoTabAlign,
2152         locations: *mut *mut c_int,
2153     );
pango_tab_array_resize(tab_array: *mut PangoTabArray, new_size: c_int)2154     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, )2155     pub fn pango_tab_array_set_tab(
2156         tab_array: *mut PangoTabArray,
2157         tab_index: c_int,
2158         alignment: PangoTabAlign,
2159         location: c_int,
2160     );
2161 
2162     //=========================================================================
2163     // PangoContext
2164     //=========================================================================
pango_context_get_type() -> GType2165     pub fn pango_context_get_type() -> GType;
pango_context_new() -> *mut PangoContext2166     pub fn pango_context_new() -> *mut PangoContext;
pango_context_changed(context: *mut PangoContext)2167     pub fn pango_context_changed(context: *mut PangoContext);
pango_context_get_base_dir(context: *mut PangoContext) -> PangoDirection2168     pub fn pango_context_get_base_dir(context: *mut PangoContext) -> PangoDirection;
pango_context_get_base_gravity(context: *mut PangoContext) -> PangoGravity2169     pub fn pango_context_get_base_gravity(context: *mut PangoContext) -> PangoGravity;
pango_context_get_font_description( context: *mut PangoContext, ) -> *mut PangoFontDescription2170     pub fn pango_context_get_font_description(
2171         context: *mut PangoContext,
2172     ) -> *mut PangoFontDescription;
pango_context_get_font_map(context: *mut PangoContext) -> *mut PangoFontMap2173     pub fn pango_context_get_font_map(context: *mut PangoContext) -> *mut PangoFontMap;
pango_context_get_gravity(context: *mut PangoContext) -> PangoGravity2174     pub fn pango_context_get_gravity(context: *mut PangoContext) -> PangoGravity;
pango_context_get_gravity_hint(context: *mut PangoContext) -> PangoGravityHint2175     pub fn pango_context_get_gravity_hint(context: *mut PangoContext) -> PangoGravityHint;
pango_context_get_language(context: *mut PangoContext) -> *mut PangoLanguage2176     pub fn pango_context_get_language(context: *mut PangoContext) -> *mut PangoLanguage;
pango_context_get_matrix(context: *mut PangoContext) -> *const PangoMatrix2177     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 PangoFontMetrics2178     pub fn pango_context_get_metrics(
2179         context: *mut PangoContext,
2180         desc: *const PangoFontDescription,
2181         language: *mut PangoLanguage,
2182     ) -> *mut PangoFontMetrics;
2183     #[cfg(any(feature = "v1_44", feature = "dox"))]
2184     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_context_get_round_glyph_positions(context: *mut PangoContext) -> gboolean2185     pub fn pango_context_get_round_glyph_positions(context: *mut PangoContext) -> gboolean;
pango_context_get_serial(context: *mut PangoContext) -> c_uint2186     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, )2187     pub fn pango_context_list_families(
2188         context: *mut PangoContext,
2189         families: *mut *mut *mut PangoFontFamily,
2190         n_families: *mut c_int,
2191     );
pango_context_load_font( context: *mut PangoContext, desc: *const PangoFontDescription, ) -> *mut PangoFont2192     pub fn pango_context_load_font(
2193         context: *mut PangoContext,
2194         desc: *const PangoFontDescription,
2195     ) -> *mut PangoFont;
pango_context_load_fontset( context: *mut PangoContext, desc: *const PangoFontDescription, language: *mut PangoLanguage, ) -> *mut PangoFontset2196     pub fn pango_context_load_fontset(
2197         context: *mut PangoContext,
2198         desc: *const PangoFontDescription,
2199         language: *mut PangoLanguage,
2200     ) -> *mut PangoFontset;
pango_context_set_base_dir(context: *mut PangoContext, direction: PangoDirection)2201     pub fn pango_context_set_base_dir(context: *mut PangoContext, direction: PangoDirection);
pango_context_set_base_gravity(context: *mut PangoContext, gravity: PangoGravity)2202     pub fn pango_context_set_base_gravity(context: *mut PangoContext, gravity: PangoGravity);
pango_context_set_font_description( context: *mut PangoContext, desc: *const PangoFontDescription, )2203     pub fn pango_context_set_font_description(
2204         context: *mut PangoContext,
2205         desc: *const PangoFontDescription,
2206     );
pango_context_set_font_map(context: *mut PangoContext, font_map: *mut PangoFontMap)2207     pub fn pango_context_set_font_map(context: *mut PangoContext, font_map: *mut PangoFontMap);
pango_context_set_gravity_hint(context: *mut PangoContext, hint: PangoGravityHint)2208     pub fn pango_context_set_gravity_hint(context: *mut PangoContext, hint: PangoGravityHint);
pango_context_set_language(context: *mut PangoContext, language: *mut PangoLanguage)2209     pub fn pango_context_set_language(context: *mut PangoContext, language: *mut PangoLanguage);
pango_context_set_matrix(context: *mut PangoContext, matrix: *const PangoMatrix)2210     pub fn pango_context_set_matrix(context: *mut PangoContext, matrix: *const PangoMatrix);
2211     #[cfg(any(feature = "v1_44", feature = "dox"))]
2212     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_context_set_round_glyph_positions( context: *mut PangoContext, round_positions: gboolean, )2213     pub fn pango_context_set_round_glyph_positions(
2214         context: *mut PangoContext,
2215         round_positions: gboolean,
2216     );
2217 
2218     //=========================================================================
2219     // PangoCoverage
2220     //=========================================================================
2221     #[cfg(any(feature = "v1_44", feature = "dox"))]
2222     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_coverage_get_type() -> GType2223     pub fn pango_coverage_get_type() -> GType;
pango_coverage_new() -> *mut PangoCoverage2224     pub fn pango_coverage_new() -> *mut PangoCoverage;
pango_coverage_from_bytes(bytes: *mut u8, n_bytes: c_int) -> *mut PangoCoverage2225     pub fn pango_coverage_from_bytes(bytes: *mut u8, n_bytes: c_int) -> *mut PangoCoverage;
pango_coverage_copy(coverage: *mut PangoCoverage) -> *mut PangoCoverage2226     pub fn pango_coverage_copy(coverage: *mut PangoCoverage) -> *mut PangoCoverage;
pango_coverage_get(coverage: *mut PangoCoverage, index_: c_int) -> PangoCoverageLevel2227     pub fn pango_coverage_get(coverage: *mut PangoCoverage, index_: c_int) -> PangoCoverageLevel;
pango_coverage_max(coverage: *mut PangoCoverage, other: *mut PangoCoverage)2228     pub fn pango_coverage_max(coverage: *mut PangoCoverage, other: *mut PangoCoverage);
pango_coverage_ref(coverage: *mut PangoCoverage) -> *mut PangoCoverage2229     pub fn pango_coverage_ref(coverage: *mut PangoCoverage) -> *mut PangoCoverage;
pango_coverage_set( coverage: *mut PangoCoverage, index_: c_int, level: PangoCoverageLevel, )2230     pub fn pango_coverage_set(
2231         coverage: *mut PangoCoverage,
2232         index_: c_int,
2233         level: PangoCoverageLevel,
2234     );
pango_coverage_to_bytes( coverage: *mut PangoCoverage, bytes: *mut *mut u8, n_bytes: *mut c_int, )2235     pub fn pango_coverage_to_bytes(
2236         coverage: *mut PangoCoverage,
2237         bytes: *mut *mut u8,
2238         n_bytes: *mut c_int,
2239     );
pango_coverage_unref(coverage: *mut PangoCoverage)2240     pub fn pango_coverage_unref(coverage: *mut PangoCoverage);
2241 
2242     //=========================================================================
2243     // PangoEngine
2244     //=========================================================================
pango_engine_get_type() -> GType2245     pub fn pango_engine_get_type() -> GType;
2246 
2247     //=========================================================================
2248     // PangoEngineLang
2249     //=========================================================================
pango_engine_lang_get_type() -> GType2250     pub fn pango_engine_lang_get_type() -> GType;
2251 
2252     //=========================================================================
2253     // PangoEngineShape
2254     //=========================================================================
pango_engine_shape_get_type() -> GType2255     pub fn pango_engine_shape_get_type() -> GType;
2256 
2257     //=========================================================================
2258     // PangoFont
2259     //=========================================================================
pango_font_get_type() -> GType2260     pub fn pango_font_get_type() -> GType;
pango_font_descriptions_free(descs: *mut *mut PangoFontDescription, n_descs: c_int)2261     pub fn pango_font_descriptions_free(descs: *mut *mut PangoFontDescription, n_descs: c_int);
pango_font_describe(font: *mut PangoFont) -> *mut PangoFontDescription2262     pub fn pango_font_describe(font: *mut PangoFont) -> *mut PangoFontDescription;
pango_font_describe_with_absolute_size( font: *mut PangoFont, ) -> *mut PangoFontDescription2263     pub fn pango_font_describe_with_absolute_size(
2264         font: *mut PangoFont,
2265     ) -> *mut PangoFontDescription;
pango_font_find_shaper( font: *mut PangoFont, language: *mut PangoLanguage, ch: u32, ) -> *mut PangoEngineShape2266     pub fn pango_font_find_shaper(
2267         font: *mut PangoFont,
2268         language: *mut PangoLanguage,
2269         ch: u32,
2270     ) -> *mut PangoEngineShape;
pango_font_get_coverage( font: *mut PangoFont, language: *mut PangoLanguage, ) -> *mut PangoCoverage2271     pub fn pango_font_get_coverage(
2272         font: *mut PangoFont,
2273         language: *mut PangoLanguage,
2274     ) -> *mut PangoCoverage;
2275     #[cfg(any(feature = "v1_46", feature = "dox"))]
2276     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_font_get_face(font: *mut PangoFont) -> *mut PangoFontFace2277     pub fn pango_font_get_face(font: *mut PangoFont) -> *mut PangoFontFace;
2278     #[cfg(any(feature = "v1_44", feature = "dox"))]
2279     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_font_get_features( font: *mut PangoFont, features: gconstpointer, len: c_uint, num_features: *mut c_uint, )2280     pub fn pango_font_get_features(
2281         font: *mut PangoFont,
2282         features: gconstpointer,
2283         len: c_uint,
2284         num_features: *mut c_uint,
2285     );
pango_font_get_font_map(font: *mut PangoFont) -> *mut PangoFontMap2286     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, )2287     pub fn pango_font_get_glyph_extents(
2288         font: *mut PangoFont,
2289         glyph: PangoGlyph,
2290         ink_rect: *mut PangoRectangle,
2291         logical_rect: *mut PangoRectangle,
2292     );
2293     #[cfg(any(feature = "v1_44", feature = "dox"))]
2294     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_font_get_hb_font(font: *mut PangoFont) -> gconstpointer2295     pub fn pango_font_get_hb_font(font: *mut PangoFont) -> gconstpointer;
pango_font_get_metrics( font: *mut PangoFont, language: *mut PangoLanguage, ) -> *mut PangoFontMetrics2296     pub fn pango_font_get_metrics(
2297         font: *mut PangoFont,
2298         language: *mut PangoLanguage,
2299     ) -> *mut PangoFontMetrics;
2300     #[cfg(any(feature = "v1_44", feature = "dox"))]
2301     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_font_has_char(font: *mut PangoFont, wc: u32) -> gboolean2302     pub fn pango_font_has_char(font: *mut PangoFont, wc: u32) -> gboolean;
2303 
2304     //=========================================================================
2305     // PangoFontFace
2306     //=========================================================================
pango_font_face_get_type() -> GType2307     pub fn pango_font_face_get_type() -> GType;
pango_font_face_describe(face: *mut PangoFontFace) -> *mut PangoFontDescription2308     pub fn pango_font_face_describe(face: *mut PangoFontFace) -> *mut PangoFontDescription;
pango_font_face_get_face_name(face: *mut PangoFontFace) -> *const c_char2309     pub fn pango_font_face_get_face_name(face: *mut PangoFontFace) -> *const c_char;
2310     #[cfg(any(feature = "v1_46", feature = "dox"))]
2311     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_font_face_get_family(face: *mut PangoFontFace) -> *mut PangoFontFamily2312     pub fn pango_font_face_get_family(face: *mut PangoFontFace) -> *mut PangoFontFamily;
pango_font_face_is_synthesized(face: *mut PangoFontFace) -> gboolean2313     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, )2314     pub fn pango_font_face_list_sizes(
2315         face: *mut PangoFontFace,
2316         sizes: *mut *mut c_int,
2317         n_sizes: *mut c_int,
2318     );
2319 
2320     //=========================================================================
2321     // PangoFontFamily
2322     //=========================================================================
pango_font_family_get_type() -> GType2323     pub fn pango_font_family_get_type() -> GType;
2324     #[cfg(any(feature = "v1_46", feature = "dox"))]
2325     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_font_family_get_face( family: *mut PangoFontFamily, name: *const c_char, ) -> *mut PangoFontFace2326     pub fn pango_font_family_get_face(
2327         family: *mut PangoFontFamily,
2328         name: *const c_char,
2329     ) -> *mut PangoFontFace;
pango_font_family_get_name(family: *mut PangoFontFamily) -> *const c_char2330     pub fn pango_font_family_get_name(family: *mut PangoFontFamily) -> *const c_char;
pango_font_family_is_monospace(family: *mut PangoFontFamily) -> gboolean2331     pub fn pango_font_family_is_monospace(family: *mut PangoFontFamily) -> gboolean;
2332     #[cfg(any(feature = "v1_44", feature = "dox"))]
2333     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_font_family_is_variable(family: *mut PangoFontFamily) -> gboolean2334     pub fn pango_font_family_is_variable(family: *mut PangoFontFamily) -> gboolean;
pango_font_family_list_faces( family: *mut PangoFontFamily, faces: *mut *mut *mut PangoFontFace, n_faces: *mut c_int, )2335     pub fn pango_font_family_list_faces(
2336         family: *mut PangoFontFamily,
2337         faces: *mut *mut *mut PangoFontFace,
2338         n_faces: *mut c_int,
2339     );
2340 
2341     //=========================================================================
2342     // PangoFontMap
2343     //=========================================================================
pango_font_map_get_type() -> GType2344     pub fn pango_font_map_get_type() -> GType;
pango_font_map_changed(fontmap: *mut PangoFontMap)2345     pub fn pango_font_map_changed(fontmap: *mut PangoFontMap);
pango_font_map_create_context(fontmap: *mut PangoFontMap) -> *mut PangoContext2346     pub fn pango_font_map_create_context(fontmap: *mut PangoFontMap) -> *mut PangoContext;
2347     #[cfg(any(feature = "v1_46", feature = "dox"))]
2348     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_font_map_get_family( fontmap: *mut PangoFontMap, name: *const c_char, ) -> *mut PangoFontFamily2349     pub fn pango_font_map_get_family(
2350         fontmap: *mut PangoFontMap,
2351         name: *const c_char,
2352     ) -> *mut PangoFontFamily;
pango_font_map_get_serial(fontmap: *mut PangoFontMap) -> c_uint2353     pub fn pango_font_map_get_serial(fontmap: *mut PangoFontMap) -> c_uint;
pango_font_map_list_families( fontmap: *mut PangoFontMap, families: *mut *mut *mut PangoFontFamily, n_families: *mut c_int, )2354     pub fn pango_font_map_list_families(
2355         fontmap: *mut PangoFontMap,
2356         families: *mut *mut *mut PangoFontFamily,
2357         n_families: *mut c_int,
2358     );
pango_font_map_load_font( fontmap: *mut PangoFontMap, context: *mut PangoContext, desc: *const PangoFontDescription, ) -> *mut PangoFont2359     pub fn pango_font_map_load_font(
2360         fontmap: *mut PangoFontMap,
2361         context: *mut PangoContext,
2362         desc: *const PangoFontDescription,
2363     ) -> *mut PangoFont;
pango_font_map_load_fontset( fontmap: *mut PangoFontMap, context: *mut PangoContext, desc: *const PangoFontDescription, language: *mut PangoLanguage, ) -> *mut PangoFontset2364     pub fn pango_font_map_load_fontset(
2365         fontmap: *mut PangoFontMap,
2366         context: *mut PangoContext,
2367         desc: *const PangoFontDescription,
2368         language: *mut PangoLanguage,
2369     ) -> *mut PangoFontset;
2370 
2371     //=========================================================================
2372     // PangoFontset
2373     //=========================================================================
pango_fontset_get_type() -> GType2374     pub fn pango_fontset_get_type() -> GType;
pango_fontset_foreach( fontset: *mut PangoFontset, func: PangoFontsetForeachFunc, data: gpointer, )2375     pub fn pango_fontset_foreach(
2376         fontset: *mut PangoFontset,
2377         func: PangoFontsetForeachFunc,
2378         data: gpointer,
2379     );
pango_fontset_get_font(fontset: *mut PangoFontset, wc: c_uint) -> *mut PangoFont2380     pub fn pango_fontset_get_font(fontset: *mut PangoFontset, wc: c_uint) -> *mut PangoFont;
pango_fontset_get_metrics(fontset: *mut PangoFontset) -> *mut PangoFontMetrics2381     pub fn pango_fontset_get_metrics(fontset: *mut PangoFontset) -> *mut PangoFontMetrics;
2382 
2383     //=========================================================================
2384     // PangoFontsetSimple
2385     //=========================================================================
pango_fontset_simple_get_type() -> GType2386     pub fn pango_fontset_simple_get_type() -> GType;
pango_fontset_simple_new(language: *mut PangoLanguage) -> *mut PangoFontsetSimple2387     pub fn pango_fontset_simple_new(language: *mut PangoLanguage) -> *mut PangoFontsetSimple;
pango_fontset_simple_append(fontset: *mut PangoFontsetSimple, font: *mut PangoFont)2388     pub fn pango_fontset_simple_append(fontset: *mut PangoFontsetSimple, font: *mut PangoFont);
pango_fontset_simple_size(fontset: *mut PangoFontsetSimple) -> c_int2389     pub fn pango_fontset_simple_size(fontset: *mut PangoFontsetSimple) -> c_int;
2390 
2391     //=========================================================================
2392     // PangoLayout
2393     //=========================================================================
pango_layout_get_type() -> GType2394     pub fn pango_layout_get_type() -> GType;
pango_layout_new(context: *mut PangoContext) -> *mut PangoLayout2395     pub fn pango_layout_new(context: *mut PangoContext) -> *mut PangoLayout;
pango_layout_context_changed(layout: *mut PangoLayout)2396     pub fn pango_layout_context_changed(layout: *mut PangoLayout);
pango_layout_copy(src: *mut PangoLayout) -> *mut PangoLayout2397     pub fn pango_layout_copy(src: *mut PangoLayout) -> *mut PangoLayout;
pango_layout_get_alignment(layout: *mut PangoLayout) -> PangoAlignment2398     pub fn pango_layout_get_alignment(layout: *mut PangoLayout) -> PangoAlignment;
pango_layout_get_attributes(layout: *mut PangoLayout) -> *mut PangoAttrList2399     pub fn pango_layout_get_attributes(layout: *mut PangoLayout) -> *mut PangoAttrList;
pango_layout_get_auto_dir(layout: *mut PangoLayout) -> gboolean2400     pub fn pango_layout_get_auto_dir(layout: *mut PangoLayout) -> gboolean;
pango_layout_get_baseline(layout: *mut PangoLayout) -> c_int2401     pub fn pango_layout_get_baseline(layout: *mut PangoLayout) -> c_int;
pango_layout_get_character_count(layout: *mut PangoLayout) -> c_int2402     pub fn pango_layout_get_character_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_context(layout: *mut PangoLayout) -> *mut PangoContext2403     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, )2404     pub fn pango_layout_get_cursor_pos(
2405         layout: *mut PangoLayout,
2406         index_: c_int,
2407         strong_pos: *mut PangoRectangle,
2408         weak_pos: *mut PangoRectangle,
2409     );
2410     #[cfg(any(feature = "v1_46", feature = "dox"))]
2411     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_layout_get_direction(layout: *mut PangoLayout, index: c_int) -> PangoDirection2412     pub fn pango_layout_get_direction(layout: *mut PangoLayout, index: c_int) -> PangoDirection;
pango_layout_get_ellipsize(layout: *mut PangoLayout) -> PangoEllipsizeMode2413     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, )2414     pub fn pango_layout_get_extents(
2415         layout: *mut PangoLayout,
2416         ink_rect: *mut PangoRectangle,
2417         logical_rect: *mut PangoRectangle,
2418     );
pango_layout_get_font_description( layout: *mut PangoLayout, ) -> *const PangoFontDescription2419     pub fn pango_layout_get_font_description(
2420         layout: *mut PangoLayout,
2421     ) -> *const PangoFontDescription;
pango_layout_get_height(layout: *mut PangoLayout) -> c_int2422     pub fn pango_layout_get_height(layout: *mut PangoLayout) -> c_int;
pango_layout_get_indent(layout: *mut PangoLayout) -> c_int2423     pub fn pango_layout_get_indent(layout: *mut PangoLayout) -> c_int;
pango_layout_get_iter(layout: *mut PangoLayout) -> *mut PangoLayoutIter2424     pub fn pango_layout_get_iter(layout: *mut PangoLayout) -> *mut PangoLayoutIter;
pango_layout_get_justify(layout: *mut PangoLayout) -> gboolean2425     pub fn pango_layout_get_justify(layout: *mut PangoLayout) -> gboolean;
pango_layout_get_line(layout: *mut PangoLayout, line: c_int) -> *mut PangoLayoutLine2426     pub fn pango_layout_get_line(layout: *mut PangoLayout, line: c_int) -> *mut PangoLayoutLine;
pango_layout_get_line_count(layout: *mut PangoLayout) -> c_int2427     pub fn pango_layout_get_line_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_line_readonly( layout: *mut PangoLayout, line: c_int, ) -> *mut PangoLayoutLine2428     pub fn pango_layout_get_line_readonly(
2429         layout: *mut PangoLayout,
2430         line: c_int,
2431     ) -> *mut PangoLayoutLine;
2432     #[cfg(any(feature = "v1_44", feature = "dox"))]
2433     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_layout_get_line_spacing(layout: *mut PangoLayout) -> c_float2434     pub fn pango_layout_get_line_spacing(layout: *mut PangoLayout) -> c_float;
pango_layout_get_lines(layout: *mut PangoLayout) -> *mut glib::GSList2435     pub fn pango_layout_get_lines(layout: *mut PangoLayout) -> *mut glib::GSList;
pango_layout_get_lines_readonly(layout: *mut PangoLayout) -> *mut glib::GSList2436     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, )2437     pub fn pango_layout_get_log_attrs(
2438         layout: *mut PangoLayout,
2439         attrs: *mut *mut PangoLogAttr,
2440         n_attrs: *mut c_int,
2441     );
pango_layout_get_log_attrs_readonly( layout: *mut PangoLayout, n_attrs: *mut c_int, ) -> *const PangoLogAttr2442     pub fn pango_layout_get_log_attrs_readonly(
2443         layout: *mut PangoLayout,
2444         n_attrs: *mut c_int,
2445     ) -> *const PangoLogAttr;
pango_layout_get_pixel_extents( layout: *mut PangoLayout, ink_rect: *mut PangoRectangle, logical_rect: *mut PangoRectangle, )2446     pub fn pango_layout_get_pixel_extents(
2447         layout: *mut PangoLayout,
2448         ink_rect: *mut PangoRectangle,
2449         logical_rect: *mut PangoRectangle,
2450     );
pango_layout_get_pixel_size( layout: *mut PangoLayout, width: *mut c_int, height: *mut c_int, )2451     pub fn pango_layout_get_pixel_size(
2452         layout: *mut PangoLayout,
2453         width: *mut c_int,
2454         height: *mut c_int,
2455     );
pango_layout_get_serial(layout: *mut PangoLayout) -> c_uint2456     pub fn pango_layout_get_serial(layout: *mut PangoLayout) -> c_uint;
pango_layout_get_single_paragraph_mode(layout: *mut PangoLayout) -> gboolean2457     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)2458     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_int2459     pub fn pango_layout_get_spacing(layout: *mut PangoLayout) -> c_int;
pango_layout_get_tabs(layout: *mut PangoLayout) -> *mut PangoTabArray2460     pub fn pango_layout_get_tabs(layout: *mut PangoLayout) -> *mut PangoTabArray;
pango_layout_get_text(layout: *mut PangoLayout) -> *const c_char2461     pub fn pango_layout_get_text(layout: *mut PangoLayout) -> *const c_char;
pango_layout_get_unknown_glyphs_count(layout: *mut PangoLayout) -> c_int2462     pub fn pango_layout_get_unknown_glyphs_count(layout: *mut PangoLayout) -> c_int;
pango_layout_get_width(layout: *mut PangoLayout) -> c_int2463     pub fn pango_layout_get_width(layout: *mut PangoLayout) -> c_int;
pango_layout_get_wrap(layout: *mut PangoLayout) -> PangoWrapMode2464     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, )2465     pub fn pango_layout_index_to_line_x(
2466         layout: *mut PangoLayout,
2467         index_: c_int,
2468         trailing: gboolean,
2469         line: *mut c_int,
2470         x_pos: *mut c_int,
2471     );
pango_layout_index_to_pos( layout: *mut PangoLayout, index_: c_int, pos: *mut PangoRectangle, )2472     pub fn pango_layout_index_to_pos(
2473         layout: *mut PangoLayout,
2474         index_: c_int,
2475         pos: *mut PangoRectangle,
2476     );
pango_layout_is_ellipsized(layout: *mut PangoLayout) -> gboolean2477     pub fn pango_layout_is_ellipsized(layout: *mut PangoLayout) -> gboolean;
pango_layout_is_wrapped(layout: *mut PangoLayout) -> gboolean2478     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, )2479     pub fn pango_layout_move_cursor_visually(
2480         layout: *mut PangoLayout,
2481         strong: gboolean,
2482         old_index: c_int,
2483         old_trailing: c_int,
2484         direction: c_int,
2485         new_index: *mut c_int,
2486         new_trailing: *mut c_int,
2487     );
pango_layout_set_alignment(layout: *mut PangoLayout, alignment: PangoAlignment)2488     pub fn pango_layout_set_alignment(layout: *mut PangoLayout, alignment: PangoAlignment);
pango_layout_set_attributes(layout: *mut PangoLayout, attrs: *mut PangoAttrList)2489     pub fn pango_layout_set_attributes(layout: *mut PangoLayout, attrs: *mut PangoAttrList);
pango_layout_set_auto_dir(layout: *mut PangoLayout, auto_dir: gboolean)2490     pub fn pango_layout_set_auto_dir(layout: *mut PangoLayout, auto_dir: gboolean);
pango_layout_set_ellipsize(layout: *mut PangoLayout, ellipsize: PangoEllipsizeMode)2491     pub fn pango_layout_set_ellipsize(layout: *mut PangoLayout, ellipsize: PangoEllipsizeMode);
pango_layout_set_font_description( layout: *mut PangoLayout, desc: *const PangoFontDescription, )2492     pub fn pango_layout_set_font_description(
2493         layout: *mut PangoLayout,
2494         desc: *const PangoFontDescription,
2495     );
pango_layout_set_height(layout: *mut PangoLayout, height: c_int)2496     pub fn pango_layout_set_height(layout: *mut PangoLayout, height: c_int);
pango_layout_set_indent(layout: *mut PangoLayout, indent: c_int)2497     pub fn pango_layout_set_indent(layout: *mut PangoLayout, indent: c_int);
pango_layout_set_justify(layout: *mut PangoLayout, justify: gboolean)2498     pub fn pango_layout_set_justify(layout: *mut PangoLayout, justify: gboolean);
2499     #[cfg(any(feature = "v1_44", feature = "dox"))]
2500     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_layout_set_line_spacing(layout: *mut PangoLayout, factor: c_float)2501     pub fn pango_layout_set_line_spacing(layout: *mut PangoLayout, factor: c_float);
pango_layout_set_markup(layout: *mut PangoLayout, markup: *const c_char, length: c_int)2502     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, )2503     pub fn pango_layout_set_markup_with_accel(
2504         layout: *mut PangoLayout,
2505         markup: *const c_char,
2506         length: c_int,
2507         accel_marker: u32,
2508         accel_char: *mut u32,
2509     );
pango_layout_set_single_paragraph_mode(layout: *mut PangoLayout, setting: gboolean)2510     pub fn pango_layout_set_single_paragraph_mode(layout: *mut PangoLayout, setting: gboolean);
pango_layout_set_spacing(layout: *mut PangoLayout, spacing: c_int)2511     pub fn pango_layout_set_spacing(layout: *mut PangoLayout, spacing: c_int);
pango_layout_set_tabs(layout: *mut PangoLayout, tabs: *mut PangoTabArray)2512     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)2513     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)2514     pub fn pango_layout_set_width(layout: *mut PangoLayout, width: c_int);
pango_layout_set_wrap(layout: *mut PangoLayout, wrap: PangoWrapMode)2515     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, ) -> gboolean2516     pub fn pango_layout_xy_to_index(
2517         layout: *mut PangoLayout,
2518         x: c_int,
2519         y: c_int,
2520         index_: *mut c_int,
2521         trailing: *mut c_int,
2522     ) -> gboolean;
2523 
2524     //=========================================================================
2525     // PangoRenderer
2526     //=========================================================================
pango_renderer_get_type() -> GType2527     pub fn pango_renderer_get_type() -> GType;
pango_renderer_activate(renderer: *mut PangoRenderer)2528     pub fn pango_renderer_activate(renderer: *mut PangoRenderer);
pango_renderer_deactivate(renderer: *mut PangoRenderer)2529     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, )2530     pub fn pango_renderer_draw_error_underline(
2531         renderer: *mut PangoRenderer,
2532         x: c_int,
2533         y: c_int,
2534         width: c_int,
2535         height: c_int,
2536     );
pango_renderer_draw_glyph( renderer: *mut PangoRenderer, font: *mut PangoFont, glyph: PangoGlyph, x: c_double, y: c_double, )2537     pub fn pango_renderer_draw_glyph(
2538         renderer: *mut PangoRenderer,
2539         font: *mut PangoFont,
2540         glyph: PangoGlyph,
2541         x: c_double,
2542         y: c_double,
2543     );
pango_renderer_draw_glyph_item( renderer: *mut PangoRenderer, text: *const c_char, glyph_item: *mut PangoGlyphItem, x: c_int, y: c_int, )2544     pub fn pango_renderer_draw_glyph_item(
2545         renderer: *mut PangoRenderer,
2546         text: *const c_char,
2547         glyph_item: *mut PangoGlyphItem,
2548         x: c_int,
2549         y: c_int,
2550     );
pango_renderer_draw_glyphs( renderer: *mut PangoRenderer, font: *mut PangoFont, glyphs: *mut PangoGlyphString, x: c_int, y: c_int, )2551     pub fn pango_renderer_draw_glyphs(
2552         renderer: *mut PangoRenderer,
2553         font: *mut PangoFont,
2554         glyphs: *mut PangoGlyphString,
2555         x: c_int,
2556         y: c_int,
2557     );
pango_renderer_draw_layout( renderer: *mut PangoRenderer, layout: *mut PangoLayout, x: c_int, y: c_int, )2558     pub fn pango_renderer_draw_layout(
2559         renderer: *mut PangoRenderer,
2560         layout: *mut PangoLayout,
2561         x: c_int,
2562         y: c_int,
2563     );
pango_renderer_draw_layout_line( renderer: *mut PangoRenderer, line: *mut PangoLayoutLine, x: c_int, y: c_int, )2564     pub fn pango_renderer_draw_layout_line(
2565         renderer: *mut PangoRenderer,
2566         line: *mut PangoLayoutLine,
2567         x: c_int,
2568         y: c_int,
2569     );
pango_renderer_draw_rectangle( renderer: *mut PangoRenderer, part: PangoRenderPart, x: c_int, y: c_int, width: c_int, height: c_int, )2570     pub fn pango_renderer_draw_rectangle(
2571         renderer: *mut PangoRenderer,
2572         part: PangoRenderPart,
2573         x: c_int,
2574         y: c_int,
2575         width: c_int,
2576         height: c_int,
2577     );
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, )2578     pub fn pango_renderer_draw_trapezoid(
2579         renderer: *mut PangoRenderer,
2580         part: PangoRenderPart,
2581         y1_: c_double,
2582         x11: c_double,
2583         x21: c_double,
2584         y2: c_double,
2585         x12: c_double,
2586         x22: c_double,
2587     );
pango_renderer_get_alpha(renderer: *mut PangoRenderer, part: PangoRenderPart) -> u162588     pub fn pango_renderer_get_alpha(renderer: *mut PangoRenderer, part: PangoRenderPart) -> u16;
pango_renderer_get_color( renderer: *mut PangoRenderer, part: PangoRenderPart, ) -> *mut PangoColor2589     pub fn pango_renderer_get_color(
2590         renderer: *mut PangoRenderer,
2591         part: PangoRenderPart,
2592     ) -> *mut PangoColor;
pango_renderer_get_layout(renderer: *mut PangoRenderer) -> *mut PangoLayout2593     pub fn pango_renderer_get_layout(renderer: *mut PangoRenderer) -> *mut PangoLayout;
pango_renderer_get_layout_line(renderer: *mut PangoRenderer) -> *mut PangoLayoutLine2594     pub fn pango_renderer_get_layout_line(renderer: *mut PangoRenderer) -> *mut PangoLayoutLine;
pango_renderer_get_matrix(renderer: *mut PangoRenderer) -> *const PangoMatrix2595     pub fn pango_renderer_get_matrix(renderer: *mut PangoRenderer) -> *const PangoMatrix;
pango_renderer_part_changed(renderer: *mut PangoRenderer, part: PangoRenderPart)2596     pub fn pango_renderer_part_changed(renderer: *mut PangoRenderer, part: PangoRenderPart);
pango_renderer_set_alpha( renderer: *mut PangoRenderer, part: PangoRenderPart, alpha: u16, )2597     pub fn pango_renderer_set_alpha(
2598         renderer: *mut PangoRenderer,
2599         part: PangoRenderPart,
2600         alpha: u16,
2601     );
pango_renderer_set_color( renderer: *mut PangoRenderer, part: PangoRenderPart, color: *const PangoColor, )2602     pub fn pango_renderer_set_color(
2603         renderer: *mut PangoRenderer,
2604         part: PangoRenderPart,
2605         color: *const PangoColor,
2606     );
pango_renderer_set_matrix(renderer: *mut PangoRenderer, matrix: *const PangoMatrix)2607     pub fn pango_renderer_set_matrix(renderer: *mut PangoRenderer, matrix: *const PangoMatrix);
2608 
2609     //=========================================================================
2610     // Other functions
2611     //=========================================================================
2612     #[cfg(any(feature = "v1_44", feature = "dox"))]
2613     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_allow_breaks_new(allow_breaks: gboolean) -> *mut PangoAttribute2614     pub fn pango_attr_allow_breaks_new(allow_breaks: gboolean) -> *mut PangoAttribute;
pango_attr_background_alpha_new(alpha: u16) -> *mut PangoAttribute2615     pub fn pango_attr_background_alpha_new(alpha: u16) -> *mut PangoAttribute;
pango_attr_background_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2616     pub fn pango_attr_background_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_fallback_new(enable_fallback: gboolean) -> *mut PangoAttribute2617     pub fn pango_attr_fallback_new(enable_fallback: gboolean) -> *mut PangoAttribute;
pango_attr_family_new(family: *const c_char) -> *mut PangoAttribute2618     pub fn pango_attr_family_new(family: *const c_char) -> *mut PangoAttribute;
pango_attr_foreground_alpha_new(alpha: u16) -> *mut PangoAttribute2619     pub fn pango_attr_foreground_alpha_new(alpha: u16) -> *mut PangoAttribute;
pango_attr_foreground_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2620     pub fn pango_attr_foreground_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_gravity_hint_new(hint: PangoGravityHint) -> *mut PangoAttribute2621     pub fn pango_attr_gravity_hint_new(hint: PangoGravityHint) -> *mut PangoAttribute;
pango_attr_gravity_new(gravity: PangoGravity) -> *mut PangoAttribute2622     pub fn pango_attr_gravity_new(gravity: PangoGravity) -> *mut PangoAttribute;
2623     #[cfg(any(feature = "v1_44", feature = "dox"))]
2624     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_insert_hyphens_new(insert_hyphens: gboolean) -> *mut PangoAttribute2625     pub fn pango_attr_insert_hyphens_new(insert_hyphens: gboolean) -> *mut PangoAttribute;
pango_attr_letter_spacing_new(letter_spacing: c_int) -> *mut PangoAttribute2626     pub fn pango_attr_letter_spacing_new(letter_spacing: c_int) -> *mut PangoAttribute;
2627     #[cfg(any(feature = "v1_46", feature = "dox"))]
2628     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_attr_overline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2629     pub fn pango_attr_overline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
2630     #[cfg(any(feature = "v1_46", feature = "dox"))]
2631     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_46")))]
pango_attr_overline_new(overline: PangoOverline) -> *mut PangoAttribute2632     pub fn pango_attr_overline_new(overline: PangoOverline) -> *mut PangoAttribute;
pango_attr_rise_new(rise: c_int) -> *mut PangoAttribute2633     pub fn pango_attr_rise_new(rise: c_int) -> *mut PangoAttribute;
pango_attr_scale_new(scale_factor: c_double) -> *mut PangoAttribute2634     pub fn pango_attr_scale_new(scale_factor: c_double) -> *mut PangoAttribute;
2635     #[cfg(any(feature = "v1_44", feature = "dox"))]
2636     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_attr_show_new(flags: PangoShowFlags) -> *mut PangoAttribute2637     pub fn pango_attr_show_new(flags: PangoShowFlags) -> *mut PangoAttribute;
pango_attr_stretch_new(stretch: PangoStretch) -> *mut PangoAttribute2638     pub fn pango_attr_stretch_new(stretch: PangoStretch) -> *mut PangoAttribute;
pango_attr_strikethrough_color_new( red: u16, green: u16, blue: u16, ) -> *mut PangoAttribute2639     pub fn pango_attr_strikethrough_color_new(
2640         red: u16,
2641         green: u16,
2642         blue: u16,
2643     ) -> *mut PangoAttribute;
pango_attr_strikethrough_new(strikethrough: gboolean) -> *mut PangoAttribute2644     pub fn pango_attr_strikethrough_new(strikethrough: gboolean) -> *mut PangoAttribute;
pango_attr_style_new(style: PangoStyle) -> *mut PangoAttribute2645     pub fn pango_attr_style_new(style: PangoStyle) -> *mut PangoAttribute;
pango_attr_underline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute2646     pub fn pango_attr_underline_color_new(red: u16, green: u16, blue: u16) -> *mut PangoAttribute;
pango_attr_underline_new(underline: PangoUnderline) -> *mut PangoAttribute2647     pub fn pango_attr_underline_new(underline: PangoUnderline) -> *mut PangoAttribute;
pango_attr_variant_new(variant: PangoVariant) -> *mut PangoAttribute2648     pub fn pango_attr_variant_new(variant: PangoVariant) -> *mut PangoAttribute;
pango_attr_weight_new(weight: PangoWeight) -> *mut PangoAttribute2649     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, )2650     pub fn pango_break(
2651         text: *const c_char,
2652         length: c_int,
2653         analysis: *mut PangoAnalysis,
2654         attrs: *mut PangoLogAttr,
2655         attrs_len: c_int,
2656     );
pango_default_break( text: *const c_char, length: c_int, analysis: *mut PangoAnalysis, attrs: *mut PangoLogAttr, attrs_len: c_int, )2657     pub fn pango_default_break(
2658         text: *const c_char,
2659         length: c_int,
2660         analysis: *mut PangoAnalysis,
2661         attrs: *mut PangoLogAttr,
2662         attrs_len: c_int,
2663     );
pango_extents_to_pixels(inclusive: *mut PangoRectangle, nearest: *mut PangoRectangle)2664     pub fn pango_extents_to_pixels(inclusive: *mut PangoRectangle, nearest: *mut PangoRectangle);
pango_find_base_dir(text: *const c_char, length: c_int) -> PangoDirection2665     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 PangoMap2666     pub fn pango_find_map(
2667         language: *mut PangoLanguage,
2668         engine_type_id: c_uint,
2669         render_type_id: c_uint,
2670     ) -> *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, )2671     pub fn pango_find_paragraph_boundary(
2672         text: *const c_char,
2673         length: c_int,
2674         paragraph_delimiter_index: *mut c_int,
2675         next_paragraph_start: *mut c_int,
2676     );
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, )2677     pub fn pango_get_log_attrs(
2678         text: *const c_char,
2679         length: c_int,
2680         level: c_int,
2681         language: *mut PangoLanguage,
2682         log_attrs: *mut PangoLogAttr,
2683         attrs_len: c_int,
2684     );
pango_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean2685     pub fn pango_get_mirror_char(ch: u32, mirrored_ch: *mut u32) -> gboolean;
pango_is_zero_width(ch: u32) -> gboolean2686     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::GList2687     pub fn pango_itemize(
2688         context: *mut PangoContext,
2689         text: *const c_char,
2690         start_index: c_int,
2691         length: c_int,
2692         attrs: *mut PangoAttrList,
2693         cached_iter: *mut PangoAttrIterator,
2694     ) -> *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::GList2695     pub fn pango_itemize_with_base_dir(
2696         context: *mut PangoContext,
2697         base_dir: PangoDirection,
2698         text: *const c_char,
2699         start_index: c_int,
2700         length: c_int,
2701         attrs: *mut PangoAttrList,
2702         cached_iter: *mut PangoAttrIterator,
2703     ) -> *mut glib::GList;
pango_log2vis_get_embedding_levels( text: *const c_char, length: c_int, pbase_dir: *mut PangoDirection, ) -> *mut u82704     pub fn pango_log2vis_get_embedding_levels(
2705         text: *const c_char,
2706         length: c_int,
2707         pbase_dir: *mut PangoDirection,
2708     ) -> *mut u8;
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, ) -> gboolean2709     pub fn pango_markup_parser_finish(
2710         context: *mut glib::GMarkupParseContext,
2711         attr_list: *mut *mut PangoAttrList,
2712         text: *mut *mut c_char,
2713         accel_char: *mut u32,
2714         error: *mut *mut glib::GError,
2715     ) -> gboolean;
pango_markup_parser_new(accel_marker: u32) -> *mut glib::GMarkupParseContext2716     pub fn pango_markup_parser_new(accel_marker: u32) -> *mut glib::GMarkupParseContext;
pango_module_register(module: *mut PangoIncludedModule)2717     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, ) -> gboolean2718     pub fn pango_parse_enum(
2719         type_: GType,
2720         str: *const c_char,
2721         value: *mut c_int,
2722         warn: gboolean,
2723         possible_values: *mut *mut c_char,
2724     ) -> 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, ) -> gboolean2725     pub fn pango_parse_markup(
2726         markup_text: *const c_char,
2727         length: c_int,
2728         accel_marker: u32,
2729         attr_list: *mut *mut PangoAttrList,
2730         text: *mut *mut c_char,
2731         accel_char: *mut u32,
2732         error: *mut *mut glib::GError,
2733     ) -> gboolean;
pango_parse_stretch( str: *const c_char, stretch: *mut PangoStretch, warn: gboolean, ) -> gboolean2734     pub fn pango_parse_stretch(
2735         str: *const c_char,
2736         stretch: *mut PangoStretch,
2737         warn: gboolean,
2738     ) -> gboolean;
pango_parse_style( str: *const c_char, style: *mut PangoStyle, warn: gboolean, ) -> gboolean2739     pub fn pango_parse_style(
2740         str: *const c_char,
2741         style: *mut PangoStyle,
2742         warn: gboolean,
2743     ) -> gboolean;
pango_parse_variant( str: *const c_char, variant: *mut PangoVariant, warn: gboolean, ) -> gboolean2744     pub fn pango_parse_variant(
2745         str: *const c_char,
2746         variant: *mut PangoVariant,
2747         warn: gboolean,
2748     ) -> gboolean;
pango_parse_weight( str: *const c_char, weight: *mut PangoWeight, warn: gboolean, ) -> gboolean2749     pub fn pango_parse_weight(
2750         str: *const c_char,
2751         weight: *mut PangoWeight,
2752         warn: gboolean,
2753     ) -> gboolean;
pango_quantize_line_geometry(thickness: *mut c_int, position: *mut c_int)2754     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_int2755     pub fn pango_read_line(stream: *mut FILE, str: *mut glib::GString) -> c_int;
pango_reorder_items(logical_items: *mut glib::GList) -> *mut glib::GList2756     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) -> gboolean2757     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) -> gboolean2758     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) -> gboolean2759     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, )2760     pub fn pango_shape(
2761         text: *const c_char,
2762         length: c_int,
2763         analysis: *const PangoAnalysis,
2764         glyphs: *mut PangoGlyphString,
2765     );
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, )2766     pub fn pango_shape_full(
2767         item_text: *const c_char,
2768         item_length: c_int,
2769         paragraph_text: *const c_char,
2770         paragraph_length: c_int,
2771         analysis: *const PangoAnalysis,
2772         glyphs: *mut PangoGlyphString,
2773     );
2774     #[cfg(any(feature = "v1_44", feature = "dox"))]
2775     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_shape_with_flags( item_text: *const c_char, item_length: c_int, paragraph_text: *const c_char, paragraph_length: c_int, analysis: *const PangoAnalysis, glyphs: *mut PangoGlyphString, flags: PangoShapeFlags, )2776     pub fn pango_shape_with_flags(
2777         item_text: *const c_char,
2778         item_length: c_int,
2779         paragraph_text: *const c_char,
2780         paragraph_length: c_int,
2781         analysis: *const PangoAnalysis,
2782         glyphs: *mut PangoGlyphString,
2783         flags: PangoShapeFlags,
2784     );
pango_skip_space(pos: *mut *const c_char) -> gboolean2785     pub fn pango_skip_space(pos: *mut *const c_char) -> gboolean;
pango_split_file_list(str: *const c_char) -> *mut *mut c_char2786     pub fn pango_split_file_list(str: *const c_char) -> *mut *mut c_char;
2787     #[cfg(any(feature = "v1_44", feature = "dox"))]
2788     #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_44")))]
pango_tailor_break( text: *const c_char, length: c_int, analysis: *mut PangoAnalysis, offset: c_int, log_attrs: *mut PangoLogAttr, log_attrs_len: c_int, )2789     pub fn pango_tailor_break(
2790         text: *const c_char,
2791         length: c_int,
2792         analysis: *mut PangoAnalysis,
2793         offset: c_int,
2794         log_attrs: *mut PangoLogAttr,
2795         log_attrs_len: c_int,
2796     );
pango_trim_string(str: *const c_char) -> *mut c_char2797     pub fn pango_trim_string(str: *const c_char) -> *mut c_char;
pango_unichar_direction(ch: u32) -> PangoDirection2798     pub fn pango_unichar_direction(ch: u32) -> PangoDirection;
pango_units_from_double(d: c_double) -> c_int2799     pub fn pango_units_from_double(d: c_double) -> c_int;
pango_units_to_double(i: c_int) -> c_double2800     pub fn pango_units_to_double(i: c_int) -> c_double;
pango_version() -> c_int2801     pub fn pango_version() -> c_int;
pango_version_check( required_major: c_int, required_minor: c_int, required_micro: c_int, ) -> *const c_char2802     pub fn pango_version_check(
2803         required_major: c_int,
2804         required_minor: c_int,
2805         required_micro: c_int,
2806     ) -> *const c_char;
pango_version_string() -> *const c_char2807     pub fn pango_version_string() -> *const c_char;
2808 
2809 }
2810