gtk4_sys/
lib.rs

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(docsrs, feature(doc_cfg))]
13
14use cairo_sys as cairo;
15use gdk4_sys as gdk;
16use gdk_pixbuf_sys as gdk_pixbuf;
17use gio_sys as gio;
18use glib_sys as glib;
19use gobject_sys as gobject;
20use graphene_sys as graphene;
21use gsk4_sys as gsk;
22use pango_sys as pango;
23
24#[cfg(unix)]
25#[allow(unused_imports)]
26use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
27#[allow(unused_imports)]
28use libc::{intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE};
29#[allow(unused_imports)]
30use std::ffi::{
31    c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
32};
33
34#[allow(unused_imports)]
35use glib::{gboolean, gconstpointer, gpointer, GType};
36
37pub const GTK_ENTRY_BUFFER_MAX_SIZE: u16 = u16::MAX;
38
39// Aliases
40pub type GtkAllocation = gdk::GdkRectangle;
41
42// Enums
43pub type GtkAccessibleAnnouncementPriority = c_int;
44pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_LOW: GtkAccessibleAnnouncementPriority = 0;
45pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_MEDIUM: GtkAccessibleAnnouncementPriority = 1;
46pub const GTK_ACCESSIBLE_ANNOUNCEMENT_PRIORITY_HIGH: GtkAccessibleAnnouncementPriority = 2;
47
48pub type GtkAccessibleAutocomplete = c_int;
49pub const GTK_ACCESSIBLE_AUTOCOMPLETE_NONE: GtkAccessibleAutocomplete = 0;
50pub const GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE: GtkAccessibleAutocomplete = 1;
51pub const GTK_ACCESSIBLE_AUTOCOMPLETE_LIST: GtkAccessibleAutocomplete = 2;
52pub const GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH: GtkAccessibleAutocomplete = 3;
53
54pub type GtkAccessibleInvalidState = c_int;
55pub const GTK_ACCESSIBLE_INVALID_FALSE: GtkAccessibleInvalidState = 0;
56pub const GTK_ACCESSIBLE_INVALID_TRUE: GtkAccessibleInvalidState = 1;
57pub const GTK_ACCESSIBLE_INVALID_GRAMMAR: GtkAccessibleInvalidState = 2;
58pub const GTK_ACCESSIBLE_INVALID_SPELLING: GtkAccessibleInvalidState = 3;
59
60pub type GtkAccessiblePlatformState = c_int;
61pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSABLE: GtkAccessiblePlatformState = 0;
62pub const GTK_ACCESSIBLE_PLATFORM_STATE_FOCUSED: GtkAccessiblePlatformState = 1;
63pub const GTK_ACCESSIBLE_PLATFORM_STATE_ACTIVE: GtkAccessiblePlatformState = 2;
64
65pub type GtkAccessibleProperty = c_int;
66pub const GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE: GtkAccessibleProperty = 0;
67pub const GTK_ACCESSIBLE_PROPERTY_DESCRIPTION: GtkAccessibleProperty = 1;
68pub const GTK_ACCESSIBLE_PROPERTY_HAS_POPUP: GtkAccessibleProperty = 2;
69pub const GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS: GtkAccessibleProperty = 3;
70pub const GTK_ACCESSIBLE_PROPERTY_LABEL: GtkAccessibleProperty = 4;
71pub const GTK_ACCESSIBLE_PROPERTY_LEVEL: GtkAccessibleProperty = 5;
72pub const GTK_ACCESSIBLE_PROPERTY_MODAL: GtkAccessibleProperty = 6;
73pub const GTK_ACCESSIBLE_PROPERTY_MULTI_LINE: GtkAccessibleProperty = 7;
74pub const GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE: GtkAccessibleProperty = 8;
75pub const GTK_ACCESSIBLE_PROPERTY_ORIENTATION: GtkAccessibleProperty = 9;
76pub const GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER: GtkAccessibleProperty = 10;
77pub const GTK_ACCESSIBLE_PROPERTY_READ_ONLY: GtkAccessibleProperty = 11;
78pub const GTK_ACCESSIBLE_PROPERTY_REQUIRED: GtkAccessibleProperty = 12;
79pub const GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION: GtkAccessibleProperty = 13;
80pub const GTK_ACCESSIBLE_PROPERTY_SORT: GtkAccessibleProperty = 14;
81pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MAX: GtkAccessibleProperty = 15;
82pub const GTK_ACCESSIBLE_PROPERTY_VALUE_MIN: GtkAccessibleProperty = 16;
83pub const GTK_ACCESSIBLE_PROPERTY_VALUE_NOW: GtkAccessibleProperty = 17;
84pub const GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT: GtkAccessibleProperty = 18;
85#[cfg(feature = "v4_16")]
86#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
87pub const GTK_ACCESSIBLE_PROPERTY_HELP_TEXT: GtkAccessibleProperty = 19;
88
89pub type GtkAccessibleRelation = c_int;
90pub const GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT: GtkAccessibleRelation = 0;
91pub const GTK_ACCESSIBLE_RELATION_COL_COUNT: GtkAccessibleRelation = 1;
92pub const GTK_ACCESSIBLE_RELATION_COL_INDEX: GtkAccessibleRelation = 2;
93pub const GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT: GtkAccessibleRelation = 3;
94pub const GTK_ACCESSIBLE_RELATION_COL_SPAN: GtkAccessibleRelation = 4;
95pub const GTK_ACCESSIBLE_RELATION_CONTROLS: GtkAccessibleRelation = 5;
96pub const GTK_ACCESSIBLE_RELATION_DESCRIBED_BY: GtkAccessibleRelation = 6;
97pub const GTK_ACCESSIBLE_RELATION_DETAILS: GtkAccessibleRelation = 7;
98pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE: GtkAccessibleRelation = 8;
99pub const GTK_ACCESSIBLE_RELATION_FLOW_TO: GtkAccessibleRelation = 9;
100pub const GTK_ACCESSIBLE_RELATION_LABELLED_BY: GtkAccessibleRelation = 10;
101pub const GTK_ACCESSIBLE_RELATION_OWNS: GtkAccessibleRelation = 11;
102pub const GTK_ACCESSIBLE_RELATION_POS_IN_SET: GtkAccessibleRelation = 12;
103pub const GTK_ACCESSIBLE_RELATION_ROW_COUNT: GtkAccessibleRelation = 13;
104pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX: GtkAccessibleRelation = 14;
105pub const GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT: GtkAccessibleRelation = 15;
106pub const GTK_ACCESSIBLE_RELATION_ROW_SPAN: GtkAccessibleRelation = 16;
107pub const GTK_ACCESSIBLE_RELATION_SET_SIZE: GtkAccessibleRelation = 17;
108#[cfg(feature = "v4_18")]
109#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
110pub const GTK_ACCESSIBLE_RELATION_LABEL_FOR: GtkAccessibleRelation = 18;
111#[cfg(feature = "v4_18")]
112#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
113pub const GTK_ACCESSIBLE_RELATION_DESCRIPTION_FOR: GtkAccessibleRelation = 19;
114#[cfg(feature = "v4_18")]
115#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
116pub const GTK_ACCESSIBLE_RELATION_CONTROLLED_BY: GtkAccessibleRelation = 20;
117#[cfg(feature = "v4_18")]
118#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
119pub const GTK_ACCESSIBLE_RELATION_DETAILS_FOR: GtkAccessibleRelation = 21;
120#[cfg(feature = "v4_18")]
121#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
122pub const GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE_FOR: GtkAccessibleRelation = 22;
123#[cfg(feature = "v4_18")]
124#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
125pub const GTK_ACCESSIBLE_RELATION_FLOW_FROM: GtkAccessibleRelation = 23;
126
127pub type GtkAccessibleRole = c_int;
128pub const GTK_ACCESSIBLE_ROLE_ALERT: GtkAccessibleRole = 0;
129pub const GTK_ACCESSIBLE_ROLE_ALERT_DIALOG: GtkAccessibleRole = 1;
130pub const GTK_ACCESSIBLE_ROLE_BANNER: GtkAccessibleRole = 2;
131pub const GTK_ACCESSIBLE_ROLE_BUTTON: GtkAccessibleRole = 3;
132pub const GTK_ACCESSIBLE_ROLE_CAPTION: GtkAccessibleRole = 4;
133pub const GTK_ACCESSIBLE_ROLE_CELL: GtkAccessibleRole = 5;
134pub const GTK_ACCESSIBLE_ROLE_CHECKBOX: GtkAccessibleRole = 6;
135pub const GTK_ACCESSIBLE_ROLE_COLUMN_HEADER: GtkAccessibleRole = 7;
136pub const GTK_ACCESSIBLE_ROLE_COMBO_BOX: GtkAccessibleRole = 8;
137pub const GTK_ACCESSIBLE_ROLE_COMMAND: GtkAccessibleRole = 9;
138pub const GTK_ACCESSIBLE_ROLE_COMPOSITE: GtkAccessibleRole = 10;
139pub const GTK_ACCESSIBLE_ROLE_DIALOG: GtkAccessibleRole = 11;
140pub const GTK_ACCESSIBLE_ROLE_DOCUMENT: GtkAccessibleRole = 12;
141pub const GTK_ACCESSIBLE_ROLE_FEED: GtkAccessibleRole = 13;
142pub const GTK_ACCESSIBLE_ROLE_FORM: GtkAccessibleRole = 14;
143pub const GTK_ACCESSIBLE_ROLE_GENERIC: GtkAccessibleRole = 15;
144pub const GTK_ACCESSIBLE_ROLE_GRID: GtkAccessibleRole = 16;
145pub const GTK_ACCESSIBLE_ROLE_GRID_CELL: GtkAccessibleRole = 17;
146pub const GTK_ACCESSIBLE_ROLE_GROUP: GtkAccessibleRole = 18;
147pub const GTK_ACCESSIBLE_ROLE_HEADING: GtkAccessibleRole = 19;
148pub const GTK_ACCESSIBLE_ROLE_IMG: GtkAccessibleRole = 20;
149pub const GTK_ACCESSIBLE_ROLE_INPUT: GtkAccessibleRole = 21;
150pub const GTK_ACCESSIBLE_ROLE_LABEL: GtkAccessibleRole = 22;
151pub const GTK_ACCESSIBLE_ROLE_LANDMARK: GtkAccessibleRole = 23;
152pub const GTK_ACCESSIBLE_ROLE_LEGEND: GtkAccessibleRole = 24;
153pub const GTK_ACCESSIBLE_ROLE_LINK: GtkAccessibleRole = 25;
154pub const GTK_ACCESSIBLE_ROLE_LIST: GtkAccessibleRole = 26;
155pub const GTK_ACCESSIBLE_ROLE_LIST_BOX: GtkAccessibleRole = 27;
156pub const GTK_ACCESSIBLE_ROLE_LIST_ITEM: GtkAccessibleRole = 28;
157pub const GTK_ACCESSIBLE_ROLE_LOG: GtkAccessibleRole = 29;
158pub const GTK_ACCESSIBLE_ROLE_MAIN: GtkAccessibleRole = 30;
159pub const GTK_ACCESSIBLE_ROLE_MARQUEE: GtkAccessibleRole = 31;
160pub const GTK_ACCESSIBLE_ROLE_MATH: GtkAccessibleRole = 32;
161pub const GTK_ACCESSIBLE_ROLE_METER: GtkAccessibleRole = 33;
162pub const GTK_ACCESSIBLE_ROLE_MENU: GtkAccessibleRole = 34;
163pub const GTK_ACCESSIBLE_ROLE_MENU_BAR: GtkAccessibleRole = 35;
164pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM: GtkAccessibleRole = 36;
165pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX: GtkAccessibleRole = 37;
166pub const GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO: GtkAccessibleRole = 38;
167pub const GTK_ACCESSIBLE_ROLE_NAVIGATION: GtkAccessibleRole = 39;
168pub const GTK_ACCESSIBLE_ROLE_NONE: GtkAccessibleRole = 40;
169pub const GTK_ACCESSIBLE_ROLE_NOTE: GtkAccessibleRole = 41;
170pub const GTK_ACCESSIBLE_ROLE_OPTION: GtkAccessibleRole = 42;
171pub const GTK_ACCESSIBLE_ROLE_PRESENTATION: GtkAccessibleRole = 43;
172pub const GTK_ACCESSIBLE_ROLE_PROGRESS_BAR: GtkAccessibleRole = 44;
173pub const GTK_ACCESSIBLE_ROLE_RADIO: GtkAccessibleRole = 45;
174pub const GTK_ACCESSIBLE_ROLE_RADIO_GROUP: GtkAccessibleRole = 46;
175pub const GTK_ACCESSIBLE_ROLE_RANGE: GtkAccessibleRole = 47;
176pub const GTK_ACCESSIBLE_ROLE_REGION: GtkAccessibleRole = 48;
177pub const GTK_ACCESSIBLE_ROLE_ROW: GtkAccessibleRole = 49;
178pub const GTK_ACCESSIBLE_ROLE_ROW_GROUP: GtkAccessibleRole = 50;
179pub const GTK_ACCESSIBLE_ROLE_ROW_HEADER: GtkAccessibleRole = 51;
180pub const GTK_ACCESSIBLE_ROLE_SCROLLBAR: GtkAccessibleRole = 52;
181pub const GTK_ACCESSIBLE_ROLE_SEARCH: GtkAccessibleRole = 53;
182pub const GTK_ACCESSIBLE_ROLE_SEARCH_BOX: GtkAccessibleRole = 54;
183pub const GTK_ACCESSIBLE_ROLE_SECTION: GtkAccessibleRole = 55;
184pub const GTK_ACCESSIBLE_ROLE_SECTION_HEAD: GtkAccessibleRole = 56;
185pub const GTK_ACCESSIBLE_ROLE_SELECT: GtkAccessibleRole = 57;
186pub const GTK_ACCESSIBLE_ROLE_SEPARATOR: GtkAccessibleRole = 58;
187pub const GTK_ACCESSIBLE_ROLE_SLIDER: GtkAccessibleRole = 59;
188pub const GTK_ACCESSIBLE_ROLE_SPIN_BUTTON: GtkAccessibleRole = 60;
189pub const GTK_ACCESSIBLE_ROLE_STATUS: GtkAccessibleRole = 61;
190pub const GTK_ACCESSIBLE_ROLE_STRUCTURE: GtkAccessibleRole = 62;
191pub const GTK_ACCESSIBLE_ROLE_SWITCH: GtkAccessibleRole = 63;
192pub const GTK_ACCESSIBLE_ROLE_TAB: GtkAccessibleRole = 64;
193pub const GTK_ACCESSIBLE_ROLE_TABLE: GtkAccessibleRole = 65;
194pub const GTK_ACCESSIBLE_ROLE_TAB_LIST: GtkAccessibleRole = 66;
195pub const GTK_ACCESSIBLE_ROLE_TAB_PANEL: GtkAccessibleRole = 67;
196pub const GTK_ACCESSIBLE_ROLE_TEXT_BOX: GtkAccessibleRole = 68;
197pub const GTK_ACCESSIBLE_ROLE_TIME: GtkAccessibleRole = 69;
198pub const GTK_ACCESSIBLE_ROLE_TIMER: GtkAccessibleRole = 70;
199pub const GTK_ACCESSIBLE_ROLE_TOOLBAR: GtkAccessibleRole = 71;
200pub const GTK_ACCESSIBLE_ROLE_TOOLTIP: GtkAccessibleRole = 72;
201pub const GTK_ACCESSIBLE_ROLE_TREE: GtkAccessibleRole = 73;
202pub const GTK_ACCESSIBLE_ROLE_TREE_GRID: GtkAccessibleRole = 74;
203pub const GTK_ACCESSIBLE_ROLE_TREE_ITEM: GtkAccessibleRole = 75;
204pub const GTK_ACCESSIBLE_ROLE_WIDGET: GtkAccessibleRole = 76;
205pub const GTK_ACCESSIBLE_ROLE_WINDOW: GtkAccessibleRole = 77;
206#[cfg(feature = "v4_10")]
207#[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
208pub const GTK_ACCESSIBLE_ROLE_TOGGLE_BUTTON: GtkAccessibleRole = 78;
209#[cfg(feature = "v4_12")]
210#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
211pub const GTK_ACCESSIBLE_ROLE_APPLICATION: GtkAccessibleRole = 79;
212#[cfg(feature = "v4_14")]
213#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
214pub const GTK_ACCESSIBLE_ROLE_PARAGRAPH: GtkAccessibleRole = 80;
215#[cfg(feature = "v4_14")]
216#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
217pub const GTK_ACCESSIBLE_ROLE_BLOCK_QUOTE: GtkAccessibleRole = 81;
218#[cfg(feature = "v4_14")]
219#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
220pub const GTK_ACCESSIBLE_ROLE_ARTICLE: GtkAccessibleRole = 82;
221#[cfg(feature = "v4_14")]
222#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
223pub const GTK_ACCESSIBLE_ROLE_COMMENT: GtkAccessibleRole = 83;
224#[cfg(feature = "v4_14")]
225#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
226pub const GTK_ACCESSIBLE_ROLE_TERMINAL: GtkAccessibleRole = 84;
227
228pub type GtkAccessibleSort = c_int;
229pub const GTK_ACCESSIBLE_SORT_NONE: GtkAccessibleSort = 0;
230pub const GTK_ACCESSIBLE_SORT_ASCENDING: GtkAccessibleSort = 1;
231pub const GTK_ACCESSIBLE_SORT_DESCENDING: GtkAccessibleSort = 2;
232pub const GTK_ACCESSIBLE_SORT_OTHER: GtkAccessibleSort = 3;
233
234pub type GtkAccessibleState = c_int;
235pub const GTK_ACCESSIBLE_STATE_BUSY: GtkAccessibleState = 0;
236pub const GTK_ACCESSIBLE_STATE_CHECKED: GtkAccessibleState = 1;
237pub const GTK_ACCESSIBLE_STATE_DISABLED: GtkAccessibleState = 2;
238pub const GTK_ACCESSIBLE_STATE_EXPANDED: GtkAccessibleState = 3;
239pub const GTK_ACCESSIBLE_STATE_HIDDEN: GtkAccessibleState = 4;
240pub const GTK_ACCESSIBLE_STATE_INVALID: GtkAccessibleState = 5;
241pub const GTK_ACCESSIBLE_STATE_PRESSED: GtkAccessibleState = 6;
242pub const GTK_ACCESSIBLE_STATE_SELECTED: GtkAccessibleState = 7;
243#[cfg(feature = "v4_12")]
244#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
245pub const GTK_ACCESSIBLE_STATE_VISITED: GtkAccessibleState = 8;
246
247pub type GtkAccessibleTextContentChange = c_int;
248pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_INSERT: GtkAccessibleTextContentChange = 0;
249pub const GTK_ACCESSIBLE_TEXT_CONTENT_CHANGE_REMOVE: GtkAccessibleTextContentChange = 1;
250
251pub type GtkAccessibleTextGranularity = c_int;
252pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_CHARACTER: GtkAccessibleTextGranularity = 0;
253pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_WORD: GtkAccessibleTextGranularity = 1;
254pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_SENTENCE: GtkAccessibleTextGranularity = 2;
255pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_LINE: GtkAccessibleTextGranularity = 3;
256pub const GTK_ACCESSIBLE_TEXT_GRANULARITY_PARAGRAPH: GtkAccessibleTextGranularity = 4;
257
258pub type GtkAccessibleTristate = c_int;
259pub const GTK_ACCESSIBLE_TRISTATE_FALSE: GtkAccessibleTristate = 0;
260pub const GTK_ACCESSIBLE_TRISTATE_TRUE: GtkAccessibleTristate = 1;
261pub const GTK_ACCESSIBLE_TRISTATE_MIXED: GtkAccessibleTristate = 2;
262
263pub type GtkAlign = c_int;
264pub const GTK_ALIGN_FILL: GtkAlign = 0;
265pub const GTK_ALIGN_START: GtkAlign = 1;
266pub const GTK_ALIGN_END: GtkAlign = 2;
267pub const GTK_ALIGN_CENTER: GtkAlign = 3;
268#[cfg(feature = "v4_12")]
269#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
270pub const GTK_ALIGN_BASELINE_FILL: GtkAlign = 4;
271pub const GTK_ALIGN_BASELINE: GtkAlign = 4;
272#[cfg(feature = "v4_12")]
273#[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
274pub const GTK_ALIGN_BASELINE_CENTER: GtkAlign = 5;
275
276pub type GtkArrowType = c_int;
277pub const GTK_ARROW_UP: GtkArrowType = 0;
278pub const GTK_ARROW_DOWN: GtkArrowType = 1;
279pub const GTK_ARROW_LEFT: GtkArrowType = 2;
280pub const GTK_ARROW_RIGHT: GtkArrowType = 3;
281pub const GTK_ARROW_NONE: GtkArrowType = 4;
282
283pub type GtkAssistantPageType = c_int;
284pub const GTK_ASSISTANT_PAGE_CONTENT: GtkAssistantPageType = 0;
285pub const GTK_ASSISTANT_PAGE_INTRO: GtkAssistantPageType = 1;
286pub const GTK_ASSISTANT_PAGE_CONFIRM: GtkAssistantPageType = 2;
287pub const GTK_ASSISTANT_PAGE_SUMMARY: GtkAssistantPageType = 3;
288pub const GTK_ASSISTANT_PAGE_PROGRESS: GtkAssistantPageType = 4;
289pub const GTK_ASSISTANT_PAGE_CUSTOM: GtkAssistantPageType = 5;
290
291pub type GtkBaselinePosition = c_int;
292pub const GTK_BASELINE_POSITION_TOP: GtkBaselinePosition = 0;
293pub const GTK_BASELINE_POSITION_CENTER: GtkBaselinePosition = 1;
294pub const GTK_BASELINE_POSITION_BOTTOM: GtkBaselinePosition = 2;
295
296pub type GtkBorderStyle = c_int;
297pub const GTK_BORDER_STYLE_NONE: GtkBorderStyle = 0;
298pub const GTK_BORDER_STYLE_HIDDEN: GtkBorderStyle = 1;
299pub const GTK_BORDER_STYLE_SOLID: GtkBorderStyle = 2;
300pub const GTK_BORDER_STYLE_INSET: GtkBorderStyle = 3;
301pub const GTK_BORDER_STYLE_OUTSET: GtkBorderStyle = 4;
302pub const GTK_BORDER_STYLE_DOTTED: GtkBorderStyle = 5;
303pub const GTK_BORDER_STYLE_DASHED: GtkBorderStyle = 6;
304pub const GTK_BORDER_STYLE_DOUBLE: GtkBorderStyle = 7;
305pub const GTK_BORDER_STYLE_GROOVE: GtkBorderStyle = 8;
306pub const GTK_BORDER_STYLE_RIDGE: GtkBorderStyle = 9;
307
308pub type GtkBuilderError = c_int;
309pub const GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION: GtkBuilderError = 0;
310pub const GTK_BUILDER_ERROR_UNHANDLED_TAG: GtkBuilderError = 1;
311pub const GTK_BUILDER_ERROR_MISSING_ATTRIBUTE: GtkBuilderError = 2;
312pub const GTK_BUILDER_ERROR_INVALID_ATTRIBUTE: GtkBuilderError = 3;
313pub const GTK_BUILDER_ERROR_INVALID_TAG: GtkBuilderError = 4;
314pub const GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE: GtkBuilderError = 5;
315pub const GTK_BUILDER_ERROR_INVALID_VALUE: GtkBuilderError = 6;
316pub const GTK_BUILDER_ERROR_VERSION_MISMATCH: GtkBuilderError = 7;
317pub const GTK_BUILDER_ERROR_DUPLICATE_ID: GtkBuilderError = 8;
318pub const GTK_BUILDER_ERROR_OBJECT_TYPE_REFUSED: GtkBuilderError = 9;
319pub const GTK_BUILDER_ERROR_TEMPLATE_MISMATCH: GtkBuilderError = 10;
320pub const GTK_BUILDER_ERROR_INVALID_PROPERTY: GtkBuilderError = 11;
321pub const GTK_BUILDER_ERROR_INVALID_SIGNAL: GtkBuilderError = 12;
322pub const GTK_BUILDER_ERROR_INVALID_ID: GtkBuilderError = 13;
323pub const GTK_BUILDER_ERROR_INVALID_FUNCTION: GtkBuilderError = 14;
324
325pub type GtkButtonsType = c_int;
326pub const GTK_BUTTONS_NONE: GtkButtonsType = 0;
327pub const GTK_BUTTONS_OK: GtkButtonsType = 1;
328pub const GTK_BUTTONS_CLOSE: GtkButtonsType = 2;
329pub const GTK_BUTTONS_CANCEL: GtkButtonsType = 3;
330pub const GTK_BUTTONS_YES_NO: GtkButtonsType = 4;
331pub const GTK_BUTTONS_OK_CANCEL: GtkButtonsType = 5;
332
333pub type GtkCellRendererAccelMode = c_int;
334pub const GTK_CELL_RENDERER_ACCEL_MODE_GTK: GtkCellRendererAccelMode = 0;
335pub const GTK_CELL_RENDERER_ACCEL_MODE_OTHER: GtkCellRendererAccelMode = 1;
336
337pub type GtkCellRendererMode = c_int;
338pub const GTK_CELL_RENDERER_MODE_INERT: GtkCellRendererMode = 0;
339pub const GTK_CELL_RENDERER_MODE_ACTIVATABLE: GtkCellRendererMode = 1;
340pub const GTK_CELL_RENDERER_MODE_EDITABLE: GtkCellRendererMode = 2;
341
342pub type GtkCollation = c_int;
343pub const GTK_COLLATION_NONE: GtkCollation = 0;
344pub const GTK_COLLATION_UNICODE: GtkCollation = 1;
345pub const GTK_COLLATION_FILENAME: GtkCollation = 2;
346
347pub type GtkConstraintAttribute = c_int;
348pub const GTK_CONSTRAINT_ATTRIBUTE_NONE: GtkConstraintAttribute = 0;
349pub const GTK_CONSTRAINT_ATTRIBUTE_LEFT: GtkConstraintAttribute = 1;
350pub const GTK_CONSTRAINT_ATTRIBUTE_RIGHT: GtkConstraintAttribute = 2;
351pub const GTK_CONSTRAINT_ATTRIBUTE_TOP: GtkConstraintAttribute = 3;
352pub const GTK_CONSTRAINT_ATTRIBUTE_BOTTOM: GtkConstraintAttribute = 4;
353pub const GTK_CONSTRAINT_ATTRIBUTE_START: GtkConstraintAttribute = 5;
354pub const GTK_CONSTRAINT_ATTRIBUTE_END: GtkConstraintAttribute = 6;
355pub const GTK_CONSTRAINT_ATTRIBUTE_WIDTH: GtkConstraintAttribute = 7;
356pub const GTK_CONSTRAINT_ATTRIBUTE_HEIGHT: GtkConstraintAttribute = 8;
357pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_X: GtkConstraintAttribute = 9;
358pub const GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y: GtkConstraintAttribute = 10;
359pub const GTK_CONSTRAINT_ATTRIBUTE_BASELINE: GtkConstraintAttribute = 11;
360
361pub type GtkConstraintRelation = c_int;
362pub const GTK_CONSTRAINT_RELATION_LE: GtkConstraintRelation = -1;
363pub const GTK_CONSTRAINT_RELATION_EQ: GtkConstraintRelation = 0;
364pub const GTK_CONSTRAINT_RELATION_GE: GtkConstraintRelation = 1;
365
366pub type GtkConstraintStrength = c_int;
367pub const GTK_CONSTRAINT_STRENGTH_REQUIRED: GtkConstraintStrength = 1001001000;
368pub const GTK_CONSTRAINT_STRENGTH_STRONG: GtkConstraintStrength = 1000000000;
369pub const GTK_CONSTRAINT_STRENGTH_MEDIUM: GtkConstraintStrength = 1000;
370pub const GTK_CONSTRAINT_STRENGTH_WEAK: GtkConstraintStrength = 1;
371
372pub type GtkConstraintVflParserError = c_int;
373pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_SYMBOL: GtkConstraintVflParserError = 0;
374pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_ATTRIBUTE: GtkConstraintVflParserError = 1;
375pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_VIEW: GtkConstraintVflParserError = 2;
376pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_METRIC: GtkConstraintVflParserError = 3;
377pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_PRIORITY: GtkConstraintVflParserError = 4;
378pub const GTK_CONSTRAINT_VFL_PARSER_ERROR_INVALID_RELATION: GtkConstraintVflParserError = 5;
379
380pub type GtkContentFit = c_int;
381pub const GTK_CONTENT_FIT_FILL: GtkContentFit = 0;
382pub const GTK_CONTENT_FIT_CONTAIN: GtkContentFit = 1;
383pub const GTK_CONTENT_FIT_COVER: GtkContentFit = 2;
384pub const GTK_CONTENT_FIT_SCALE_DOWN: GtkContentFit = 3;
385
386pub type GtkCornerType = c_int;
387pub const GTK_CORNER_TOP_LEFT: GtkCornerType = 0;
388pub const GTK_CORNER_BOTTOM_LEFT: GtkCornerType = 1;
389pub const GTK_CORNER_TOP_RIGHT: GtkCornerType = 2;
390pub const GTK_CORNER_BOTTOM_RIGHT: GtkCornerType = 3;
391
392pub type GtkCssParserError = c_int;
393pub const GTK_CSS_PARSER_ERROR_FAILED: GtkCssParserError = 0;
394pub const GTK_CSS_PARSER_ERROR_SYNTAX: GtkCssParserError = 1;
395pub const GTK_CSS_PARSER_ERROR_IMPORT: GtkCssParserError = 2;
396pub const GTK_CSS_PARSER_ERROR_NAME: GtkCssParserError = 3;
397pub const GTK_CSS_PARSER_ERROR_UNKNOWN_VALUE: GtkCssParserError = 4;
398
399pub type GtkCssParserWarning = c_int;
400pub const GTK_CSS_PARSER_WARNING_DEPRECATED: GtkCssParserWarning = 0;
401pub const GTK_CSS_PARSER_WARNING_SYNTAX: GtkCssParserWarning = 1;
402pub const GTK_CSS_PARSER_WARNING_UNIMPLEMENTED: GtkCssParserWarning = 2;
403
404pub type GtkDeleteType = c_int;
405pub const GTK_DELETE_CHARS: GtkDeleteType = 0;
406pub const GTK_DELETE_WORD_ENDS: GtkDeleteType = 1;
407pub const GTK_DELETE_WORDS: GtkDeleteType = 2;
408pub const GTK_DELETE_DISPLAY_LINES: GtkDeleteType = 3;
409pub const GTK_DELETE_DISPLAY_LINE_ENDS: GtkDeleteType = 4;
410pub const GTK_DELETE_PARAGRAPH_ENDS: GtkDeleteType = 5;
411pub const GTK_DELETE_PARAGRAPHS: GtkDeleteType = 6;
412pub const GTK_DELETE_WHITESPACE: GtkDeleteType = 7;
413
414pub type GtkDialogError = c_int;
415pub const GTK_DIALOG_ERROR_FAILED: GtkDialogError = 0;
416pub const GTK_DIALOG_ERROR_CANCELLED: GtkDialogError = 1;
417pub const GTK_DIALOG_ERROR_DISMISSED: GtkDialogError = 2;
418
419pub type GtkDirectionType = c_int;
420pub const GTK_DIR_TAB_FORWARD: GtkDirectionType = 0;
421pub const GTK_DIR_TAB_BACKWARD: GtkDirectionType = 1;
422pub const GTK_DIR_UP: GtkDirectionType = 2;
423pub const GTK_DIR_DOWN: GtkDirectionType = 3;
424pub const GTK_DIR_LEFT: GtkDirectionType = 4;
425pub const GTK_DIR_RIGHT: GtkDirectionType = 5;
426
427pub type GtkEditableProperties = c_int;
428pub const GTK_EDITABLE_PROP_TEXT: GtkEditableProperties = 0;
429pub const GTK_EDITABLE_PROP_CURSOR_POSITION: GtkEditableProperties = 1;
430pub const GTK_EDITABLE_PROP_SELECTION_BOUND: GtkEditableProperties = 2;
431pub const GTK_EDITABLE_PROP_EDITABLE: GtkEditableProperties = 3;
432pub const GTK_EDITABLE_PROP_WIDTH_CHARS: GtkEditableProperties = 4;
433pub const GTK_EDITABLE_PROP_MAX_WIDTH_CHARS: GtkEditableProperties = 5;
434pub const GTK_EDITABLE_PROP_XALIGN: GtkEditableProperties = 6;
435pub const GTK_EDITABLE_PROP_ENABLE_UNDO: GtkEditableProperties = 7;
436pub const GTK_EDITABLE_NUM_PROPERTIES: GtkEditableProperties = 8;
437
438pub type GtkEntryIconPosition = c_int;
439pub const GTK_ENTRY_ICON_PRIMARY: GtkEntryIconPosition = 0;
440pub const GTK_ENTRY_ICON_SECONDARY: GtkEntryIconPosition = 1;
441
442pub type GtkEventSequenceState = c_int;
443pub const GTK_EVENT_SEQUENCE_NONE: GtkEventSequenceState = 0;
444pub const GTK_EVENT_SEQUENCE_CLAIMED: GtkEventSequenceState = 1;
445pub const GTK_EVENT_SEQUENCE_DENIED: GtkEventSequenceState = 2;
446
447pub type GtkFileChooserAction = c_int;
448pub const GTK_FILE_CHOOSER_ACTION_OPEN: GtkFileChooserAction = 0;
449pub const GTK_FILE_CHOOSER_ACTION_SAVE: GtkFileChooserAction = 1;
450pub const GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER: GtkFileChooserAction = 2;
451
452pub type GtkFileChooserError = c_int;
453pub const GTK_FILE_CHOOSER_ERROR_NONEXISTENT: GtkFileChooserError = 0;
454pub const GTK_FILE_CHOOSER_ERROR_BAD_FILENAME: GtkFileChooserError = 1;
455pub const GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS: GtkFileChooserError = 2;
456pub const GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME: GtkFileChooserError = 3;
457
458pub type GtkFilterChange = c_int;
459pub const GTK_FILTER_CHANGE_DIFFERENT: GtkFilterChange = 0;
460pub const GTK_FILTER_CHANGE_LESS_STRICT: GtkFilterChange = 1;
461pub const GTK_FILTER_CHANGE_MORE_STRICT: GtkFilterChange = 2;
462
463pub type GtkFilterMatch = c_int;
464pub const GTK_FILTER_MATCH_SOME: GtkFilterMatch = 0;
465pub const GTK_FILTER_MATCH_NONE: GtkFilterMatch = 1;
466pub const GTK_FILTER_MATCH_ALL: GtkFilterMatch = 2;
467
468pub type GtkFontLevel = c_int;
469pub const GTK_FONT_LEVEL_FAMILY: GtkFontLevel = 0;
470pub const GTK_FONT_LEVEL_FACE: GtkFontLevel = 1;
471pub const GTK_FONT_LEVEL_FONT: GtkFontLevel = 2;
472pub const GTK_FONT_LEVEL_FEATURES: GtkFontLevel = 3;
473
474pub type GtkFontRendering = c_int;
475pub const GTK_FONT_RENDERING_AUTOMATIC: GtkFontRendering = 0;
476pub const GTK_FONT_RENDERING_MANUAL: GtkFontRendering = 1;
477
478pub type GtkGraphicsOffloadEnabled = c_int;
479pub const GTK_GRAPHICS_OFFLOAD_ENABLED: GtkGraphicsOffloadEnabled = 0;
480pub const GTK_GRAPHICS_OFFLOAD_DISABLED: GtkGraphicsOffloadEnabled = 1;
481
482pub type GtkIconSize = c_int;
483pub const GTK_ICON_SIZE_INHERIT: GtkIconSize = 0;
484pub const GTK_ICON_SIZE_NORMAL: GtkIconSize = 1;
485pub const GTK_ICON_SIZE_LARGE: GtkIconSize = 2;
486
487pub type GtkIconThemeError = c_int;
488pub const GTK_ICON_THEME_NOT_FOUND: GtkIconThemeError = 0;
489pub const GTK_ICON_THEME_FAILED: GtkIconThemeError = 1;
490
491pub type GtkIconViewDropPosition = c_int;
492pub const GTK_ICON_VIEW_NO_DROP: GtkIconViewDropPosition = 0;
493pub const GTK_ICON_VIEW_DROP_INTO: GtkIconViewDropPosition = 1;
494pub const GTK_ICON_VIEW_DROP_LEFT: GtkIconViewDropPosition = 2;
495pub const GTK_ICON_VIEW_DROP_RIGHT: GtkIconViewDropPosition = 3;
496pub const GTK_ICON_VIEW_DROP_ABOVE: GtkIconViewDropPosition = 4;
497pub const GTK_ICON_VIEW_DROP_BELOW: GtkIconViewDropPosition = 5;
498
499pub type GtkImageType = c_int;
500pub const GTK_IMAGE_EMPTY: GtkImageType = 0;
501pub const GTK_IMAGE_ICON_NAME: GtkImageType = 1;
502pub const GTK_IMAGE_GICON: GtkImageType = 2;
503pub const GTK_IMAGE_PAINTABLE: GtkImageType = 3;
504
505pub type GtkInputPurpose = c_int;
506pub const GTK_INPUT_PURPOSE_FREE_FORM: GtkInputPurpose = 0;
507pub const GTK_INPUT_PURPOSE_ALPHA: GtkInputPurpose = 1;
508pub const GTK_INPUT_PURPOSE_DIGITS: GtkInputPurpose = 2;
509pub const GTK_INPUT_PURPOSE_NUMBER: GtkInputPurpose = 3;
510pub const GTK_INPUT_PURPOSE_PHONE: GtkInputPurpose = 4;
511pub const GTK_INPUT_PURPOSE_URL: GtkInputPurpose = 5;
512pub const GTK_INPUT_PURPOSE_EMAIL: GtkInputPurpose = 6;
513pub const GTK_INPUT_PURPOSE_NAME: GtkInputPurpose = 7;
514pub const GTK_INPUT_PURPOSE_PASSWORD: GtkInputPurpose = 8;
515pub const GTK_INPUT_PURPOSE_PIN: GtkInputPurpose = 9;
516pub const GTK_INPUT_PURPOSE_TERMINAL: GtkInputPurpose = 10;
517
518pub type GtkInscriptionOverflow = c_int;
519pub const GTK_INSCRIPTION_OVERFLOW_CLIP: GtkInscriptionOverflow = 0;
520pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START: GtkInscriptionOverflow = 1;
521pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE: GtkInscriptionOverflow = 2;
522pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END: GtkInscriptionOverflow = 3;
523
524pub type GtkJustification = c_int;
525pub const GTK_JUSTIFY_LEFT: GtkJustification = 0;
526pub const GTK_JUSTIFY_RIGHT: GtkJustification = 1;
527pub const GTK_JUSTIFY_CENTER: GtkJustification = 2;
528pub const GTK_JUSTIFY_FILL: GtkJustification = 3;
529
530pub type GtkLevelBarMode = c_int;
531pub const GTK_LEVEL_BAR_MODE_CONTINUOUS: GtkLevelBarMode = 0;
532pub const GTK_LEVEL_BAR_MODE_DISCRETE: GtkLevelBarMode = 1;
533
534pub type GtkLicense = c_int;
535pub const GTK_LICENSE_UNKNOWN: GtkLicense = 0;
536pub const GTK_LICENSE_CUSTOM: GtkLicense = 1;
537pub const GTK_LICENSE_GPL_2_0: GtkLicense = 2;
538pub const GTK_LICENSE_GPL_3_0: GtkLicense = 3;
539pub const GTK_LICENSE_LGPL_2_1: GtkLicense = 4;
540pub const GTK_LICENSE_LGPL_3_0: GtkLicense = 5;
541pub const GTK_LICENSE_BSD: GtkLicense = 6;
542pub const GTK_LICENSE_MIT_X11: GtkLicense = 7;
543pub const GTK_LICENSE_ARTISTIC: GtkLicense = 8;
544pub const GTK_LICENSE_GPL_2_0_ONLY: GtkLicense = 9;
545pub const GTK_LICENSE_GPL_3_0_ONLY: GtkLicense = 10;
546pub const GTK_LICENSE_LGPL_2_1_ONLY: GtkLicense = 11;
547pub const GTK_LICENSE_LGPL_3_0_ONLY: GtkLicense = 12;
548pub const GTK_LICENSE_AGPL_3_0: GtkLicense = 13;
549pub const GTK_LICENSE_AGPL_3_0_ONLY: GtkLicense = 14;
550pub const GTK_LICENSE_BSD_3: GtkLicense = 15;
551pub const GTK_LICENSE_APACHE_2_0: GtkLicense = 16;
552pub const GTK_LICENSE_MPL_2_0: GtkLicense = 17;
553pub const GTK_LICENSE_0BSD: GtkLicense = 18;
554
555pub type GtkListTabBehavior = c_int;
556pub const GTK_LIST_TAB_ALL: GtkListTabBehavior = 0;
557pub const GTK_LIST_TAB_ITEM: GtkListTabBehavior = 1;
558pub const GTK_LIST_TAB_CELL: GtkListTabBehavior = 2;
559
560pub type GtkMessageType = c_int;
561pub const GTK_MESSAGE_INFO: GtkMessageType = 0;
562pub const GTK_MESSAGE_WARNING: GtkMessageType = 1;
563pub const GTK_MESSAGE_QUESTION: GtkMessageType = 2;
564pub const GTK_MESSAGE_ERROR: GtkMessageType = 3;
565pub const GTK_MESSAGE_OTHER: GtkMessageType = 4;
566
567pub type GtkMovementStep = c_int;
568pub const GTK_MOVEMENT_LOGICAL_POSITIONS: GtkMovementStep = 0;
569pub const GTK_MOVEMENT_VISUAL_POSITIONS: GtkMovementStep = 1;
570pub const GTK_MOVEMENT_WORDS: GtkMovementStep = 2;
571pub const GTK_MOVEMENT_DISPLAY_LINES: GtkMovementStep = 3;
572pub const GTK_MOVEMENT_DISPLAY_LINE_ENDS: GtkMovementStep = 4;
573pub const GTK_MOVEMENT_PARAGRAPHS: GtkMovementStep = 5;
574pub const GTK_MOVEMENT_PARAGRAPH_ENDS: GtkMovementStep = 6;
575pub const GTK_MOVEMENT_PAGES: GtkMovementStep = 7;
576pub const GTK_MOVEMENT_BUFFER_ENDS: GtkMovementStep = 8;
577pub const GTK_MOVEMENT_HORIZONTAL_PAGES: GtkMovementStep = 9;
578
579pub type GtkNaturalWrapMode = c_int;
580pub const GTK_NATURAL_WRAP_INHERIT: GtkNaturalWrapMode = 0;
581pub const GTK_NATURAL_WRAP_NONE: GtkNaturalWrapMode = 1;
582pub const GTK_NATURAL_WRAP_WORD: GtkNaturalWrapMode = 2;
583
584pub type GtkNotebookTab = c_int;
585pub const GTK_NOTEBOOK_TAB_FIRST: GtkNotebookTab = 0;
586pub const GTK_NOTEBOOK_TAB_LAST: GtkNotebookTab = 1;
587
588pub type GtkNumberUpLayout = c_int;
589pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM: GtkNumberUpLayout = 0;
590pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP: GtkNumberUpLayout = 1;
591pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM: GtkNumberUpLayout = 2;
592pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP: GtkNumberUpLayout = 3;
593pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT: GtkNumberUpLayout = 4;
594pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT: GtkNumberUpLayout = 5;
595pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT: GtkNumberUpLayout = 6;
596pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT: GtkNumberUpLayout = 7;
597
598pub type GtkOrdering = c_int;
599pub const GTK_ORDERING_SMALLER: GtkOrdering = -1;
600pub const GTK_ORDERING_EQUAL: GtkOrdering = 0;
601pub const GTK_ORDERING_LARGER: GtkOrdering = 1;
602
603pub type GtkOrientation = c_int;
604pub const GTK_ORIENTATION_HORIZONTAL: GtkOrientation = 0;
605pub const GTK_ORIENTATION_VERTICAL: GtkOrientation = 1;
606
607pub type GtkOverflow = c_int;
608pub const GTK_OVERFLOW_VISIBLE: GtkOverflow = 0;
609pub const GTK_OVERFLOW_HIDDEN: GtkOverflow = 1;
610
611pub type GtkPackType = c_int;
612pub const GTK_PACK_START: GtkPackType = 0;
613pub const GTK_PACK_END: GtkPackType = 1;
614
615pub type GtkPadActionType = c_int;
616pub const GTK_PAD_ACTION_BUTTON: GtkPadActionType = 0;
617pub const GTK_PAD_ACTION_RING: GtkPadActionType = 1;
618pub const GTK_PAD_ACTION_STRIP: GtkPadActionType = 2;
619pub const GTK_PAD_ACTION_DIAL: GtkPadActionType = 3;
620
621pub type GtkPageOrientation = c_int;
622pub const GTK_PAGE_ORIENTATION_PORTRAIT: GtkPageOrientation = 0;
623pub const GTK_PAGE_ORIENTATION_LANDSCAPE: GtkPageOrientation = 1;
624pub const GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT: GtkPageOrientation = 2;
625pub const GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE: GtkPageOrientation = 3;
626
627pub type GtkPageSet = c_int;
628pub const GTK_PAGE_SET_ALL: GtkPageSet = 0;
629pub const GTK_PAGE_SET_EVEN: GtkPageSet = 1;
630pub const GTK_PAGE_SET_ODD: GtkPageSet = 2;
631
632pub type GtkPanDirection = c_int;
633pub const GTK_PAN_DIRECTION_LEFT: GtkPanDirection = 0;
634pub const GTK_PAN_DIRECTION_RIGHT: GtkPanDirection = 1;
635pub const GTK_PAN_DIRECTION_UP: GtkPanDirection = 2;
636pub const GTK_PAN_DIRECTION_DOWN: GtkPanDirection = 3;
637
638pub type GtkPolicyType = c_int;
639pub const GTK_POLICY_ALWAYS: GtkPolicyType = 0;
640pub const GTK_POLICY_AUTOMATIC: GtkPolicyType = 1;
641pub const GTK_POLICY_NEVER: GtkPolicyType = 2;
642pub const GTK_POLICY_EXTERNAL: GtkPolicyType = 3;
643
644pub type GtkPositionType = c_int;
645pub const GTK_POS_LEFT: GtkPositionType = 0;
646pub const GTK_POS_RIGHT: GtkPositionType = 1;
647pub const GTK_POS_TOP: GtkPositionType = 2;
648pub const GTK_POS_BOTTOM: GtkPositionType = 3;
649
650pub type GtkPrintDuplex = c_int;
651pub const GTK_PRINT_DUPLEX_SIMPLEX: GtkPrintDuplex = 0;
652pub const GTK_PRINT_DUPLEX_HORIZONTAL: GtkPrintDuplex = 1;
653pub const GTK_PRINT_DUPLEX_VERTICAL: GtkPrintDuplex = 2;
654
655pub type GtkPrintError = c_int;
656pub const GTK_PRINT_ERROR_GENERAL: GtkPrintError = 0;
657pub const GTK_PRINT_ERROR_INTERNAL_ERROR: GtkPrintError = 1;
658pub const GTK_PRINT_ERROR_NOMEM: GtkPrintError = 2;
659pub const GTK_PRINT_ERROR_INVALID_FILE: GtkPrintError = 3;
660
661pub type GtkPrintOperationAction = c_int;
662pub const GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG: GtkPrintOperationAction = 0;
663pub const GTK_PRINT_OPERATION_ACTION_PRINT: GtkPrintOperationAction = 1;
664pub const GTK_PRINT_OPERATION_ACTION_PREVIEW: GtkPrintOperationAction = 2;
665pub const GTK_PRINT_OPERATION_ACTION_EXPORT: GtkPrintOperationAction = 3;
666
667pub type GtkPrintOperationResult = c_int;
668pub const GTK_PRINT_OPERATION_RESULT_ERROR: GtkPrintOperationResult = 0;
669pub const GTK_PRINT_OPERATION_RESULT_APPLY: GtkPrintOperationResult = 1;
670pub const GTK_PRINT_OPERATION_RESULT_CANCEL: GtkPrintOperationResult = 2;
671pub const GTK_PRINT_OPERATION_RESULT_IN_PROGRESS: GtkPrintOperationResult = 3;
672
673pub type GtkPrintPages = c_int;
674pub const GTK_PRINT_PAGES_ALL: GtkPrintPages = 0;
675pub const GTK_PRINT_PAGES_CURRENT: GtkPrintPages = 1;
676pub const GTK_PRINT_PAGES_RANGES: GtkPrintPages = 2;
677pub const GTK_PRINT_PAGES_SELECTION: GtkPrintPages = 3;
678
679pub type GtkPrintQuality = c_int;
680pub const GTK_PRINT_QUALITY_LOW: GtkPrintQuality = 0;
681pub const GTK_PRINT_QUALITY_NORMAL: GtkPrintQuality = 1;
682pub const GTK_PRINT_QUALITY_HIGH: GtkPrintQuality = 2;
683pub const GTK_PRINT_QUALITY_DRAFT: GtkPrintQuality = 3;
684
685pub type GtkPrintStatus = c_int;
686pub const GTK_PRINT_STATUS_INITIAL: GtkPrintStatus = 0;
687pub const GTK_PRINT_STATUS_PREPARING: GtkPrintStatus = 1;
688pub const GTK_PRINT_STATUS_GENERATING_DATA: GtkPrintStatus = 2;
689pub const GTK_PRINT_STATUS_SENDING_DATA: GtkPrintStatus = 3;
690pub const GTK_PRINT_STATUS_PENDING: GtkPrintStatus = 4;
691pub const GTK_PRINT_STATUS_PENDING_ISSUE: GtkPrintStatus = 5;
692pub const GTK_PRINT_STATUS_PRINTING: GtkPrintStatus = 6;
693pub const GTK_PRINT_STATUS_FINISHED: GtkPrintStatus = 7;
694pub const GTK_PRINT_STATUS_FINISHED_ABORTED: GtkPrintStatus = 8;
695
696pub type GtkPropagationLimit = c_int;
697pub const GTK_LIMIT_NONE: GtkPropagationLimit = 0;
698pub const GTK_LIMIT_SAME_NATIVE: GtkPropagationLimit = 1;
699
700pub type GtkPropagationPhase = c_int;
701pub const GTK_PHASE_NONE: GtkPropagationPhase = 0;
702pub const GTK_PHASE_CAPTURE: GtkPropagationPhase = 1;
703pub const GTK_PHASE_BUBBLE: GtkPropagationPhase = 2;
704pub const GTK_PHASE_TARGET: GtkPropagationPhase = 3;
705
706pub type GtkRecentManagerError = c_int;
707pub const GTK_RECENT_MANAGER_ERROR_NOT_FOUND: GtkRecentManagerError = 0;
708pub const GTK_RECENT_MANAGER_ERROR_INVALID_URI: GtkRecentManagerError = 1;
709pub const GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING: GtkRecentManagerError = 2;
710pub const GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED: GtkRecentManagerError = 3;
711pub const GTK_RECENT_MANAGER_ERROR_READ: GtkRecentManagerError = 4;
712pub const GTK_RECENT_MANAGER_ERROR_WRITE: GtkRecentManagerError = 5;
713pub const GTK_RECENT_MANAGER_ERROR_UNKNOWN: GtkRecentManagerError = 6;
714
715pub type GtkResponseType = c_int;
716pub const GTK_RESPONSE_NONE: GtkResponseType = -1;
717pub const GTK_RESPONSE_REJECT: GtkResponseType = -2;
718pub const GTK_RESPONSE_ACCEPT: GtkResponseType = -3;
719pub const GTK_RESPONSE_DELETE_EVENT: GtkResponseType = -4;
720pub const GTK_RESPONSE_OK: GtkResponseType = -5;
721pub const GTK_RESPONSE_CANCEL: GtkResponseType = -6;
722pub const GTK_RESPONSE_CLOSE: GtkResponseType = -7;
723pub const GTK_RESPONSE_YES: GtkResponseType = -8;
724pub const GTK_RESPONSE_NO: GtkResponseType = -9;
725pub const GTK_RESPONSE_APPLY: GtkResponseType = -10;
726pub const GTK_RESPONSE_HELP: GtkResponseType = -11;
727
728pub type GtkRevealerTransitionType = c_int;
729pub const GTK_REVEALER_TRANSITION_TYPE_NONE: GtkRevealerTransitionType = 0;
730pub const GTK_REVEALER_TRANSITION_TYPE_CROSSFADE: GtkRevealerTransitionType = 1;
731pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT: GtkRevealerTransitionType = 2;
732pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT: GtkRevealerTransitionType = 3;
733pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP: GtkRevealerTransitionType = 4;
734pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN: GtkRevealerTransitionType = 5;
735pub const GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT: GtkRevealerTransitionType = 6;
736pub const GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT: GtkRevealerTransitionType = 7;
737pub const GTK_REVEALER_TRANSITION_TYPE_SWING_UP: GtkRevealerTransitionType = 8;
738pub const GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN: GtkRevealerTransitionType = 9;
739
740pub type GtkScrollStep = c_int;
741pub const GTK_SCROLL_STEPS: GtkScrollStep = 0;
742pub const GTK_SCROLL_PAGES: GtkScrollStep = 1;
743pub const GTK_SCROLL_ENDS: GtkScrollStep = 2;
744pub const GTK_SCROLL_HORIZONTAL_STEPS: GtkScrollStep = 3;
745pub const GTK_SCROLL_HORIZONTAL_PAGES: GtkScrollStep = 4;
746pub const GTK_SCROLL_HORIZONTAL_ENDS: GtkScrollStep = 5;
747
748pub type GtkScrollType = c_int;
749pub const GTK_SCROLL_NONE: GtkScrollType = 0;
750pub const GTK_SCROLL_JUMP: GtkScrollType = 1;
751pub const GTK_SCROLL_STEP_BACKWARD: GtkScrollType = 2;
752pub const GTK_SCROLL_STEP_FORWARD: GtkScrollType = 3;
753pub const GTK_SCROLL_PAGE_BACKWARD: GtkScrollType = 4;
754pub const GTK_SCROLL_PAGE_FORWARD: GtkScrollType = 5;
755pub const GTK_SCROLL_STEP_UP: GtkScrollType = 6;
756pub const GTK_SCROLL_STEP_DOWN: GtkScrollType = 7;
757pub const GTK_SCROLL_PAGE_UP: GtkScrollType = 8;
758pub const GTK_SCROLL_PAGE_DOWN: GtkScrollType = 9;
759pub const GTK_SCROLL_STEP_LEFT: GtkScrollType = 10;
760pub const GTK_SCROLL_STEP_RIGHT: GtkScrollType = 11;
761pub const GTK_SCROLL_PAGE_LEFT: GtkScrollType = 12;
762pub const GTK_SCROLL_PAGE_RIGHT: GtkScrollType = 13;
763pub const GTK_SCROLL_START: GtkScrollType = 14;
764pub const GTK_SCROLL_END: GtkScrollType = 15;
765
766pub type GtkScrollablePolicy = c_int;
767pub const GTK_SCROLL_MINIMUM: GtkScrollablePolicy = 0;
768pub const GTK_SCROLL_NATURAL: GtkScrollablePolicy = 1;
769
770pub type GtkSelectionMode = c_int;
771pub const GTK_SELECTION_NONE: GtkSelectionMode = 0;
772pub const GTK_SELECTION_SINGLE: GtkSelectionMode = 1;
773pub const GTK_SELECTION_BROWSE: GtkSelectionMode = 2;
774pub const GTK_SELECTION_MULTIPLE: GtkSelectionMode = 3;
775
776pub type GtkSensitivityType = c_int;
777pub const GTK_SENSITIVITY_AUTO: GtkSensitivityType = 0;
778pub const GTK_SENSITIVITY_ON: GtkSensitivityType = 1;
779pub const GTK_SENSITIVITY_OFF: GtkSensitivityType = 2;
780
781pub type GtkShortcutScope = c_int;
782pub const GTK_SHORTCUT_SCOPE_LOCAL: GtkShortcutScope = 0;
783pub const GTK_SHORTCUT_SCOPE_MANAGED: GtkShortcutScope = 1;
784pub const GTK_SHORTCUT_SCOPE_GLOBAL: GtkShortcutScope = 2;
785
786pub type GtkShortcutType = c_int;
787pub const GTK_SHORTCUT_ACCELERATOR: GtkShortcutType = 0;
788pub const GTK_SHORTCUT_GESTURE_PINCH: GtkShortcutType = 1;
789pub const GTK_SHORTCUT_GESTURE_STRETCH: GtkShortcutType = 2;
790pub const GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE: GtkShortcutType = 3;
791pub const GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE: GtkShortcutType = 4;
792pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT: GtkShortcutType = 5;
793pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT: GtkShortcutType = 6;
794pub const GTK_SHORTCUT_GESTURE: GtkShortcutType = 7;
795pub const GTK_SHORTCUT_GESTURE_SWIPE_LEFT: GtkShortcutType = 8;
796pub const GTK_SHORTCUT_GESTURE_SWIPE_RIGHT: GtkShortcutType = 9;
797
798pub type GtkSizeGroupMode = c_int;
799pub const GTK_SIZE_GROUP_NONE: GtkSizeGroupMode = 0;
800pub const GTK_SIZE_GROUP_HORIZONTAL: GtkSizeGroupMode = 1;
801pub const GTK_SIZE_GROUP_VERTICAL: GtkSizeGroupMode = 2;
802pub const GTK_SIZE_GROUP_BOTH: GtkSizeGroupMode = 3;
803
804pub type GtkSizeRequestMode = c_int;
805pub const GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH: GtkSizeRequestMode = 0;
806pub const GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT: GtkSizeRequestMode = 1;
807pub const GTK_SIZE_REQUEST_CONSTANT_SIZE: GtkSizeRequestMode = 2;
808
809pub type GtkSortType = c_int;
810pub const GTK_SORT_ASCENDING: GtkSortType = 0;
811pub const GTK_SORT_DESCENDING: GtkSortType = 1;
812
813pub type GtkSorterChange = c_int;
814pub const GTK_SORTER_CHANGE_DIFFERENT: GtkSorterChange = 0;
815pub const GTK_SORTER_CHANGE_INVERTED: GtkSorterChange = 1;
816pub const GTK_SORTER_CHANGE_LESS_STRICT: GtkSorterChange = 2;
817pub const GTK_SORTER_CHANGE_MORE_STRICT: GtkSorterChange = 3;
818
819pub type GtkSorterOrder = c_int;
820pub const GTK_SORTER_ORDER_PARTIAL: GtkSorterOrder = 0;
821pub const GTK_SORTER_ORDER_NONE: GtkSorterOrder = 1;
822pub const GTK_SORTER_ORDER_TOTAL: GtkSorterOrder = 2;
823
824pub type GtkSpinButtonUpdatePolicy = c_int;
825pub const GTK_UPDATE_ALWAYS: GtkSpinButtonUpdatePolicy = 0;
826pub const GTK_UPDATE_IF_VALID: GtkSpinButtonUpdatePolicy = 1;
827
828pub type GtkSpinType = c_int;
829pub const GTK_SPIN_STEP_FORWARD: GtkSpinType = 0;
830pub const GTK_SPIN_STEP_BACKWARD: GtkSpinType = 1;
831pub const GTK_SPIN_PAGE_FORWARD: GtkSpinType = 2;
832pub const GTK_SPIN_PAGE_BACKWARD: GtkSpinType = 3;
833pub const GTK_SPIN_HOME: GtkSpinType = 4;
834pub const GTK_SPIN_END: GtkSpinType = 5;
835pub const GTK_SPIN_USER_DEFINED: GtkSpinType = 6;
836
837pub type GtkStackTransitionType = c_int;
838pub const GTK_STACK_TRANSITION_TYPE_NONE: GtkStackTransitionType = 0;
839pub const GTK_STACK_TRANSITION_TYPE_CROSSFADE: GtkStackTransitionType = 1;
840pub const GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT: GtkStackTransitionType = 2;
841pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT: GtkStackTransitionType = 3;
842pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP: GtkStackTransitionType = 4;
843pub const GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN: GtkStackTransitionType = 5;
844pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT: GtkStackTransitionType = 6;
845pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN: GtkStackTransitionType = 7;
846pub const GTK_STACK_TRANSITION_TYPE_OVER_UP: GtkStackTransitionType = 8;
847pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN: GtkStackTransitionType = 9;
848pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT: GtkStackTransitionType = 10;
849pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT: GtkStackTransitionType = 11;
850pub const GTK_STACK_TRANSITION_TYPE_UNDER_UP: GtkStackTransitionType = 12;
851pub const GTK_STACK_TRANSITION_TYPE_UNDER_DOWN: GtkStackTransitionType = 13;
852pub const GTK_STACK_TRANSITION_TYPE_UNDER_LEFT: GtkStackTransitionType = 14;
853pub const GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT: GtkStackTransitionType = 15;
854pub const GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN: GtkStackTransitionType = 16;
855pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP: GtkStackTransitionType = 17;
856pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT: GtkStackTransitionType = 18;
857pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT: GtkStackTransitionType = 19;
858pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT: GtkStackTransitionType = 20;
859pub const GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT: GtkStackTransitionType = 21;
860pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT: GtkStackTransitionType = 22;
861
862pub type GtkStringFilterMatchMode = c_int;
863pub const GTK_STRING_FILTER_MATCH_MODE_EXACT: GtkStringFilterMatchMode = 0;
864pub const GTK_STRING_FILTER_MATCH_MODE_SUBSTRING: GtkStringFilterMatchMode = 1;
865pub const GTK_STRING_FILTER_MATCH_MODE_PREFIX: GtkStringFilterMatchMode = 2;
866
867pub type GtkSymbolicColor = c_int;
868pub const GTK_SYMBOLIC_COLOR_FOREGROUND: GtkSymbolicColor = 0;
869pub const GTK_SYMBOLIC_COLOR_ERROR: GtkSymbolicColor = 1;
870pub const GTK_SYMBOLIC_COLOR_WARNING: GtkSymbolicColor = 2;
871pub const GTK_SYMBOLIC_COLOR_SUCCESS: GtkSymbolicColor = 3;
872
873pub type GtkSystemSetting = c_int;
874pub const GTK_SYSTEM_SETTING_DPI: GtkSystemSetting = 0;
875pub const GTK_SYSTEM_SETTING_FONT_NAME: GtkSystemSetting = 1;
876pub const GTK_SYSTEM_SETTING_FONT_CONFIG: GtkSystemSetting = 2;
877pub const GTK_SYSTEM_SETTING_DISPLAY: GtkSystemSetting = 3;
878pub const GTK_SYSTEM_SETTING_ICON_THEME: GtkSystemSetting = 4;
879
880pub type GtkTextDirection = c_int;
881pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
882pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
883pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
884
885pub type GtkTextExtendSelection = c_int;
886pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
887pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
888
889pub type GtkTextViewLayer = c_int;
890pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 0;
891pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 1;
892
893pub type GtkTextWindowType = c_int;
894pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
895pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
896pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
897pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
898pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
899pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
900
901pub type GtkTreeViewColumnSizing = c_int;
902pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
903pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
904pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
905
906pub type GtkTreeViewDropPosition = c_int;
907pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
908pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
909pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
910pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
911
912pub type GtkTreeViewGridLines = c_int;
913pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
914pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
915pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
916pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
917
918pub type GtkUnit = c_int;
919pub const GTK_UNIT_NONE: GtkUnit = 0;
920pub const GTK_UNIT_POINTS: GtkUnit = 1;
921pub const GTK_UNIT_INCH: GtkUnit = 2;
922pub const GTK_UNIT_MM: GtkUnit = 3;
923
924pub type GtkWindowGravity = c_int;
925pub const GTK_WINDOW_GRAVITY_TOP_LEFT: GtkWindowGravity = 0;
926pub const GTK_WINDOW_GRAVITY_TOP: GtkWindowGravity = 1;
927pub const GTK_WINDOW_GRAVITY_TOP_RIGHT: GtkWindowGravity = 2;
928pub const GTK_WINDOW_GRAVITY_LEFT: GtkWindowGravity = 3;
929pub const GTK_WINDOW_GRAVITY_CENTER: GtkWindowGravity = 4;
930pub const GTK_WINDOW_GRAVITY_RIGHT: GtkWindowGravity = 5;
931pub const GTK_WINDOW_GRAVITY_BOTTOM_LEFT: GtkWindowGravity = 6;
932pub const GTK_WINDOW_GRAVITY_BOTTOM: GtkWindowGravity = 7;
933pub const GTK_WINDOW_GRAVITY_BOTTOM_RIGHT: GtkWindowGravity = 8;
934pub const GTK_WINDOW_GRAVITY_TOP_START: GtkWindowGravity = 9;
935pub const GTK_WINDOW_GRAVITY_TOP_END: GtkWindowGravity = 10;
936pub const GTK_WINDOW_GRAVITY_START: GtkWindowGravity = 11;
937pub const GTK_WINDOW_GRAVITY_END: GtkWindowGravity = 12;
938pub const GTK_WINDOW_GRAVITY_BOTTOM_START: GtkWindowGravity = 13;
939pub const GTK_WINDOW_GRAVITY_BOTTOM_END: GtkWindowGravity = 14;
940
941pub type GtkWrapMode = c_int;
942pub const GTK_WRAP_NONE: GtkWrapMode = 0;
943pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
944pub const GTK_WRAP_WORD: GtkWrapMode = 2;
945pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
946
947// Constants
948pub const GTK_ACCESSIBLE_ATTRIBUTE_BACKGROUND: &[u8] = b"bg-color\0";
949pub const GTK_ACCESSIBLE_ATTRIBUTE_FAMILY: &[u8] = b"family-name\0";
950pub const GTK_ACCESSIBLE_ATTRIBUTE_FOREGROUND: &[u8] = b"fg-color\0";
951pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE: &[u8] = b"overline\0";
952pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_NONE: &[u8] = b"none\0";
953pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_SINGLE: &[u8] = b"single\0";
954pub const GTK_ACCESSIBLE_ATTRIBUTE_SIZE: &[u8] = b"size\0";
955pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH: &[u8] = b"stretch\0";
956pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_CONDENSED: &[u8] = b"condensed\0";
957pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXPANDED: &[u8] = b"expanded\0";
958pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_CONDENSED: &[u8] = b"extra_condensed\0";
959pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_EXPANDED: &[u8] = b"extra_expanded\0";
960pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_NORMAL: &[u8] = b"normal\0";
961pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_CONDENSED: &[u8] = b"semi_condensed\0";
962pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_EXPANDED: &[u8] = b"semi_expanded\0";
963pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_CONDENSED: &[u8] = b"ultra_condensed\0";
964pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_EXPANDED: &[u8] = b"ultra_expanded\0";
965pub const GTK_ACCESSIBLE_ATTRIBUTE_STRIKETHROUGH: &[u8] = b"strikethrough\0";
966pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE: &[u8] = b"style\0";
967pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_ITALIC: &[u8] = b"italic\0";
968pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_NORMAL: &[u8] = b"normal\0";
969pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_OBLIQUE: &[u8] = b"oblique\0";
970pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE: &[u8] = b"underline\0";
971pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_DOUBLE: &[u8] = b"double\0";
972pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_ERROR: &[u8] = b"error\0";
973pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_NONE: &[u8] = b"none\0";
974pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_SINGLE: &[u8] = b"single\0";
975pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT: &[u8] = b"variant\0";
976pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_PETITE_CAPS: &[u8] = b"all-petite-caps\0";
977pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_SMALL_CAPS: &[u8] = b"all-small-caps\0";
978pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_PETITE_CAPS: &[u8] = b"petite-caps\0";
979pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_SMALL_CAPS: &[u8] = b"small-caps\0";
980pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_TITLE_CAPS: &[u8] = b"title-caps\0";
981pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_UNICASE: &[u8] = b"unicase\0";
982pub const GTK_ACCESSIBLE_ATTRIBUTE_WEIGHT: &[u8] = b"weight\0";
983pub const GTK_ACCESSIBLE_VALUE_UNDEFINED: c_int = -1;
984pub const GTK_IM_MODULE_EXTENSION_POINT_NAME: &[u8] = b"gtk-im-module\0";
985pub const GTK_INPUT_ERROR: c_int = -1;
986pub const GTK_INVALID_LIST_POSITION: c_uint = 4294967295;
987pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
988pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
989pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
990pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
991pub const GTK_MEDIA_FILE_EXTENSION_POINT_NAME: &[u8] = b"gtk-media-file\0";
992pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
993pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
994pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
995pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
996pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
997pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
998pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
999pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
1000pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
1001pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
1002pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
1003pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
1004pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
1005pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
1006pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
1007pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
1008pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
1009pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
1010pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
1011pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
1012pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
1013pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
1014pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
1015pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
1016pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
1017pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
1018pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
1019pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
1020pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
1021pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
1022pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
1023pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
1024pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
1025pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
1026pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
1027pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
1028pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
1029pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
1030pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
1031pub const GTK_PRIORITY_RESIZE: c_int = 110;
1032pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
1033pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1034pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1035pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1036pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1037pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1038pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1039pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1040
1041// Flags
1042pub type GtkApplicationInhibitFlags = c_uint;
1043pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1044pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1045pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1046pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1047
1048pub type GtkBuilderClosureFlags = c_uint;
1049pub const GTK_BUILDER_CLOSURE_SWAPPED: GtkBuilderClosureFlags = 1;
1050
1051pub type GtkCellRendererState = c_uint;
1052pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1053pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1054pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1055pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1056pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1057pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1058pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1059
1060pub type GtkDebugFlags = c_uint;
1061pub const GTK_DEBUG_TEXT: GtkDebugFlags = 1;
1062pub const GTK_DEBUG_TREE: GtkDebugFlags = 2;
1063pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlags = 4;
1064pub const GTK_DEBUG_MODULES: GtkDebugFlags = 8;
1065pub const GTK_DEBUG_GEOMETRY: GtkDebugFlags = 16;
1066pub const GTK_DEBUG_ICONTHEME: GtkDebugFlags = 32;
1067pub const GTK_DEBUG_PRINTING: GtkDebugFlags = 64;
1068pub const GTK_DEBUG_BUILDER_TRACE: GtkDebugFlags = 128;
1069pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlags = 256;
1070pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlags = 512;
1071pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlags = 1024;
1072#[cfg(feature = "v4_20")]
1073#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1074pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlags = 2048;
1075pub const GTK_DEBUG_ACTIONS: GtkDebugFlags = 4096;
1076pub const GTK_DEBUG_LAYOUT: GtkDebugFlags = 8192;
1077pub const GTK_DEBUG_SNAPSHOT: GtkDebugFlags = 16384;
1078pub const GTK_DEBUG_CONSTRAINTS: GtkDebugFlags = 32768;
1079pub const GTK_DEBUG_BUILDER_OBJECTS: GtkDebugFlags = 65536;
1080pub const GTK_DEBUG_A11Y: GtkDebugFlags = 131072;
1081#[cfg(feature = "v4_2")]
1082#[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
1083pub const GTK_DEBUG_ICONFALLBACK: GtkDebugFlags = 262144;
1084#[cfg(feature = "v4_8")]
1085#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
1086pub const GTK_DEBUG_INVERT_TEXT_DIR: GtkDebugFlags = 524288;
1087#[cfg(feature = "v4_16")]
1088#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
1089pub const GTK_DEBUG_CSS: GtkDebugFlags = 1048576;
1090#[cfg(feature = "v4_18")]
1091#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1092pub const GTK_DEBUG_BUILDER: GtkDebugFlags = 2097152;
1093
1094pub type GtkDialogFlags = c_uint;
1095pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1096pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1097pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1098
1099pub type GtkEventControllerScrollFlags = c_uint;
1100pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1101pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1102pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1103pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1104pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1105pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1106
1107pub type GtkFontChooserLevel = c_uint;
1108pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1109pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1110pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1111pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1112pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1113
1114pub type GtkIconLookupFlags = c_uint;
1115#[cfg(feature = "v4_18")]
1116#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1117pub const GTK_ICON_LOOKUP_NONE: GtkIconLookupFlags = 0;
1118pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 1;
1119pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 2;
1120pub const GTK_ICON_LOOKUP_PRELOAD: GtkIconLookupFlags = 4;
1121
1122pub type GtkInputHints = c_uint;
1123pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1124pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1125pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1126pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1127pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1128pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1129pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1130pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1131pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1132pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1133pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1134pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1135pub const GTK_INPUT_HINT_PRIVATE: GtkInputHints = 2048;
1136
1137pub type GtkListScrollFlags = c_uint;
1138pub const GTK_LIST_SCROLL_NONE: GtkListScrollFlags = 0;
1139pub const GTK_LIST_SCROLL_FOCUS: GtkListScrollFlags = 1;
1140pub const GTK_LIST_SCROLL_SELECT: GtkListScrollFlags = 2;
1141
1142pub type GtkPickFlags = c_uint;
1143pub const GTK_PICK_DEFAULT: GtkPickFlags = 0;
1144pub const GTK_PICK_INSENSITIVE: GtkPickFlags = 1;
1145pub const GTK_PICK_NON_TARGETABLE: GtkPickFlags = 2;
1146
1147pub type GtkPopoverMenuFlags = c_uint;
1148#[cfg(feature = "v4_14")]
1149#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1150pub const GTK_POPOVER_MENU_SLIDING: GtkPopoverMenuFlags = 0;
1151pub const GTK_POPOVER_MENU_NESTED: GtkPopoverMenuFlags = 1;
1152
1153pub type GtkPrintCapabilities = c_uint;
1154pub const GTK_PRINT_CAPABILITY_PAGE_SET: GtkPrintCapabilities = 1;
1155pub const GTK_PRINT_CAPABILITY_COPIES: GtkPrintCapabilities = 2;
1156pub const GTK_PRINT_CAPABILITY_COLLATE: GtkPrintCapabilities = 4;
1157pub const GTK_PRINT_CAPABILITY_REVERSE: GtkPrintCapabilities = 8;
1158pub const GTK_PRINT_CAPABILITY_SCALE: GtkPrintCapabilities = 16;
1159pub const GTK_PRINT_CAPABILITY_GENERATE_PDF: GtkPrintCapabilities = 32;
1160pub const GTK_PRINT_CAPABILITY_GENERATE_PS: GtkPrintCapabilities = 64;
1161pub const GTK_PRINT_CAPABILITY_PREVIEW: GtkPrintCapabilities = 128;
1162pub const GTK_PRINT_CAPABILITY_NUMBER_UP: GtkPrintCapabilities = 256;
1163pub const GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: GtkPrintCapabilities = 512;
1164
1165pub type GtkShortcutActionFlags = c_uint;
1166pub const GTK_SHORTCUT_ACTION_EXCLUSIVE: GtkShortcutActionFlags = 1;
1167
1168pub type GtkStateFlags = c_uint;
1169pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1170pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1171pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1172pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1173pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1174pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1175pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1176pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1177pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1178pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1179pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1180pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1181pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1182pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1183pub const GTK_STATE_FLAG_FOCUS_VISIBLE: GtkStateFlags = 8192;
1184pub const GTK_STATE_FLAG_FOCUS_WITHIN: GtkStateFlags = 16384;
1185
1186pub type GtkStyleContextPrintFlags = c_uint;
1187pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1188pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1189pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1190pub const GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE: GtkStyleContextPrintFlags = 4;
1191
1192pub type GtkTextBufferNotifyFlags = c_uint;
1193pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT: GtkTextBufferNotifyFlags = 1;
1194pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT: GtkTextBufferNotifyFlags = 2;
1195pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE: GtkTextBufferNotifyFlags = 4;
1196pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE: GtkTextBufferNotifyFlags = 8;
1197
1198pub type GtkTextSearchFlags = c_uint;
1199pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1200pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1201pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1202
1203pub type GtkTreeModelFlags = c_uint;
1204pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1205pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1206
1207// Callbacks
1208pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1209pub type GtkCellAllocCallback = Option<
1210    unsafe extern "C" fn(
1211        *mut GtkCellRenderer,
1212        *const gdk::GdkRectangle,
1213        *const gdk::GdkRectangle,
1214        gpointer,
1215    ) -> gboolean,
1216>;
1217pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1218pub type GtkCellLayoutDataFunc = Option<
1219    unsafe extern "C" fn(
1220        *mut GtkCellLayout,
1221        *mut GtkCellRenderer,
1222        *mut GtkTreeModel,
1223        *mut GtkTreeIter,
1224        gpointer,
1225    ),
1226>;
1227pub type GtkCustomAllocateFunc = Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>;
1228pub type GtkCustomFilterFunc =
1229    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> gboolean>;
1230pub type GtkCustomMeasureFunc = Option<
1231    unsafe extern "C" fn(
1232        *mut GtkWidget,
1233        GtkOrientation,
1234        c_int,
1235        *mut c_int,
1236        *mut c_int,
1237        *mut c_int,
1238        *mut c_int,
1239    ),
1240>;
1241pub type GtkCustomRequestModeFunc =
1242    Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>;
1243pub type GtkDrawingAreaDrawFunc =
1244    Option<unsafe extern "C" fn(*mut GtkDrawingArea, *mut cairo::cairo_t, c_int, c_int, gpointer)>;
1245pub type GtkEntryCompletionMatchFunc = Option<
1246    unsafe extern "C" fn(
1247        *mut GtkEntryCompletion,
1248        *const c_char,
1249        *mut GtkTreeIter,
1250        gpointer,
1251    ) -> gboolean,
1252>;
1253pub type GtkExpressionNotify = Option<unsafe extern "C" fn(gpointer)>;
1254pub type GtkFlowBoxCreateWidgetFunc =
1255    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1256pub type GtkFlowBoxFilterFunc =
1257    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1258pub type GtkFlowBoxForeachFunc =
1259    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1260pub type GtkFlowBoxSortFunc =
1261    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1262pub type GtkFontFilterFunc = Option<
1263    unsafe extern "C" fn(
1264        *const pango::PangoFontFamily,
1265        *const pango::PangoFontFace,
1266        gpointer,
1267    ) -> gboolean,
1268>;
1269pub type GtkIconViewForeachFunc =
1270    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1271pub type GtkListBoxCreateWidgetFunc =
1272    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1273pub type GtkListBoxFilterFunc =
1274    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1275pub type GtkListBoxForeachFunc =
1276    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1277pub type GtkListBoxSortFunc =
1278    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1279pub type GtkListBoxUpdateHeaderFunc =
1280    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1281pub type GtkMapListModelMapFunc =
1282    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gobject::GObject>;
1283pub type GtkMenuButtonCreatePopupFunc = Option<unsafe extern "C" fn(*mut GtkMenuButton, gpointer)>;
1284pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1285pub type GtkPrintJobCompleteFunc =
1286    Option<unsafe extern "C" fn(*mut GtkPrintJob, gpointer, *const glib::GError)>;
1287pub type GtkPrintSettingsFunc =
1288    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1289pub type GtkPrinterFunc = Option<unsafe extern "C" fn(*mut GtkPrinter, gpointer) -> gboolean>;
1290pub type GtkScaleFormatValueFunc =
1291    Option<unsafe extern "C" fn(*mut GtkScale, c_double, gpointer) -> *mut c_char>;
1292pub type GtkShortcutFunc =
1293    Option<unsafe extern "C" fn(*mut GtkWidget, *mut glib::GVariant, gpointer) -> gboolean>;
1294pub type GtkTextBufferCommitNotify = Option<
1295    unsafe extern "C" fn(*mut GtkTextBuffer, GtkTextBufferNotifyFlags, c_uint, c_uint, gpointer),
1296>;
1297pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1298pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1299pub type GtkTickCallback =
1300    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1301pub type GtkTreeCellDataFunc = Option<
1302    unsafe extern "C" fn(
1303        *mut GtkTreeViewColumn,
1304        *mut GtkCellRenderer,
1305        *mut GtkTreeModel,
1306        *mut GtkTreeIter,
1307        gpointer,
1308    ),
1309>;
1310pub type GtkTreeIterCompareFunc = Option<
1311    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1312>;
1313pub type GtkTreeListModelCreateModelFunc =
1314    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gio::GListModel>;
1315pub type GtkTreeModelFilterModifyFunc = Option<
1316    unsafe extern "C" fn(
1317        *mut GtkTreeModel,
1318        *mut GtkTreeIter,
1319        *mut gobject::GValue,
1320        c_int,
1321        gpointer,
1322    ),
1323>;
1324pub type GtkTreeModelFilterVisibleFunc =
1325    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1326pub type GtkTreeModelForeachFunc = Option<
1327    unsafe extern "C" fn(
1328        *mut GtkTreeModel,
1329        *mut GtkTreePath,
1330        *mut GtkTreeIter,
1331        gpointer,
1332    ) -> gboolean,
1333>;
1334pub type GtkTreeSelectionForeachFunc =
1335    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1336pub type GtkTreeSelectionFunc = Option<
1337    unsafe extern "C" fn(
1338        *mut GtkTreeSelection,
1339        *mut GtkTreeModel,
1340        *mut GtkTreePath,
1341        gboolean,
1342        gpointer,
1343    ) -> gboolean,
1344>;
1345pub type GtkTreeViewColumnDropFunc = Option<
1346    unsafe extern "C" fn(
1347        *mut GtkTreeView,
1348        *mut GtkTreeViewColumn,
1349        *mut GtkTreeViewColumn,
1350        *mut GtkTreeViewColumn,
1351        gpointer,
1352    ) -> gboolean,
1353>;
1354pub type GtkTreeViewMappingFunc =
1355    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1356pub type GtkTreeViewRowSeparatorFunc =
1357    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1358pub type GtkTreeViewSearchEqualFunc = Option<
1359    unsafe extern "C" fn(
1360        *mut GtkTreeModel,
1361        c_int,
1362        *const c_char,
1363        *mut GtkTreeIter,
1364        gpointer,
1365    ) -> gboolean,
1366>;
1367pub type GtkWidgetActionActivateFunc =
1368    Option<unsafe extern "C" fn(*mut GtkWidget, *const c_char, *mut glib::GVariant)>;
1369
1370// Records
1371#[repr(C)]
1372#[allow(dead_code)]
1373pub struct _GtkATContextClass {
1374    _data: [u8; 0],
1375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1376}
1377
1378pub type GtkATContextClass = _GtkATContextClass;
1379
1380#[derive(Copy, Clone)]
1381#[repr(C)]
1382pub struct GtkAccessibleInterface {
1383    pub g_iface: gobject::GTypeInterface,
1384    pub get_at_context: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkATContext>,
1385    pub get_platform_state:
1386        Option<unsafe extern "C" fn(*mut GtkAccessible, GtkAccessiblePlatformState) -> gboolean>,
1387    pub get_accessible_parent:
1388        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1389    pub get_first_accessible_child:
1390        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1391    pub get_next_accessible_sibling:
1392        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1393    pub get_bounds: Option<
1394        unsafe extern "C" fn(
1395            *mut GtkAccessible,
1396            *mut c_int,
1397            *mut c_int,
1398            *mut c_int,
1399            *mut c_int,
1400        ) -> gboolean,
1401    >,
1402}
1403
1404impl ::std::fmt::Debug for GtkAccessibleInterface {
1405    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1406        f.debug_struct(&format!("GtkAccessibleInterface @ {self:p}"))
1407            .field("g_iface", &self.g_iface)
1408            .field("get_at_context", &self.get_at_context)
1409            .field("get_platform_state", &self.get_platform_state)
1410            .field("get_accessible_parent", &self.get_accessible_parent)
1411            .field(
1412                "get_first_accessible_child",
1413                &self.get_first_accessible_child,
1414            )
1415            .field(
1416                "get_next_accessible_sibling",
1417                &self.get_next_accessible_sibling,
1418            )
1419            .field("get_bounds", &self.get_bounds)
1420            .finish()
1421    }
1422}
1423
1424#[repr(C)]
1425#[allow(dead_code)]
1426pub struct GtkAccessibleList {
1427    _data: [u8; 0],
1428    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1429}
1430
1431impl ::std::fmt::Debug for GtkAccessibleList {
1432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1433        f.debug_struct(&format!("GtkAccessibleList @ {self:p}"))
1434            .finish()
1435    }
1436}
1437
1438#[derive(Copy, Clone)]
1439#[repr(C)]
1440pub struct GtkAccessibleRangeInterface {
1441    pub g_iface: gobject::GTypeInterface,
1442    pub set_current_value:
1443        Option<unsafe extern "C" fn(*mut GtkAccessibleRange, c_double) -> gboolean>,
1444}
1445
1446impl ::std::fmt::Debug for GtkAccessibleRangeInterface {
1447    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1448        f.debug_struct(&format!("GtkAccessibleRangeInterface @ {self:p}"))
1449            .field("g_iface", &self.g_iface)
1450            .field("set_current_value", &self.set_current_value)
1451            .finish()
1452    }
1453}
1454
1455#[derive(Copy, Clone)]
1456#[repr(C)]
1457pub struct GtkAccessibleTextInterface {
1458    pub g_iface: gobject::GTypeInterface,
1459    pub get_contents:
1460        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint, c_uint) -> *mut glib::GBytes>,
1461    pub get_contents_at: Option<
1462        unsafe extern "C" fn(
1463            *mut GtkAccessibleText,
1464            c_uint,
1465            GtkAccessibleTextGranularity,
1466            *mut c_uint,
1467            *mut c_uint,
1468        ) -> *mut glib::GBytes,
1469    >,
1470    pub get_caret_position: Option<unsafe extern "C" fn(*mut GtkAccessibleText) -> c_uint>,
1471    pub get_selection: Option<
1472        unsafe extern "C" fn(
1473            *mut GtkAccessibleText,
1474            *mut size_t,
1475            *mut *mut GtkAccessibleTextRange,
1476        ) -> gboolean,
1477    >,
1478    pub get_attributes: Option<
1479        unsafe extern "C" fn(
1480            *mut GtkAccessibleText,
1481            c_uint,
1482            *mut size_t,
1483            *mut *mut GtkAccessibleTextRange,
1484            *mut *mut *mut c_char,
1485            *mut *mut *mut c_char,
1486        ) -> gboolean,
1487    >,
1488    pub get_default_attributes: Option<
1489        unsafe extern "C" fn(*mut GtkAccessibleText, *mut *mut *mut c_char, *mut *mut *mut c_char),
1490    >,
1491    pub get_extents: Option<
1492        unsafe extern "C" fn(
1493            *mut GtkAccessibleText,
1494            c_uint,
1495            c_uint,
1496            *mut graphene::graphene_rect_t,
1497        ) -> gboolean,
1498    >,
1499    pub get_offset: Option<
1500        unsafe extern "C" fn(
1501            *mut GtkAccessibleText,
1502            *const graphene::graphene_point_t,
1503            *mut c_uint,
1504        ) -> gboolean,
1505    >,
1506}
1507
1508impl ::std::fmt::Debug for GtkAccessibleTextInterface {
1509    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1510        f.debug_struct(&format!("GtkAccessibleTextInterface @ {self:p}"))
1511            .field("get_contents", &self.get_contents)
1512            .field("get_contents_at", &self.get_contents_at)
1513            .field("get_caret_position", &self.get_caret_position)
1514            .field("get_selection", &self.get_selection)
1515            .field("get_attributes", &self.get_attributes)
1516            .field("get_default_attributes", &self.get_default_attributes)
1517            .field("get_extents", &self.get_extents)
1518            .field("get_offset", &self.get_offset)
1519            .finish()
1520    }
1521}
1522
1523#[derive(Copy, Clone)]
1524#[repr(C)]
1525pub struct GtkAccessibleTextRange {
1526    pub start: size_t,
1527    pub length: size_t,
1528}
1529
1530impl ::std::fmt::Debug for GtkAccessibleTextRange {
1531    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1532        f.debug_struct(&format!("GtkAccessibleTextRange @ {self:p}"))
1533            .field("start", &self.start)
1534            .field("length", &self.length)
1535            .finish()
1536    }
1537}
1538
1539#[derive(Copy, Clone)]
1540#[repr(C)]
1541pub struct GtkActionableInterface {
1542    pub g_iface: gobject::GTypeInterface,
1543    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1544    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1545    pub get_action_target_value:
1546        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1547    pub set_action_target_value:
1548        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1549}
1550
1551impl ::std::fmt::Debug for GtkActionableInterface {
1552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1553        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1554            .field("get_action_name", &self.get_action_name)
1555            .field("set_action_name", &self.set_action_name)
1556            .field("get_action_target_value", &self.get_action_target_value)
1557            .field("set_action_target_value", &self.set_action_target_value)
1558            .finish()
1559    }
1560}
1561
1562#[repr(C)]
1563#[allow(dead_code)]
1564pub struct _GtkActivateActionClass {
1565    _data: [u8; 0],
1566    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1567}
1568
1569pub type GtkActivateActionClass = _GtkActivateActionClass;
1570
1571#[derive(Copy, Clone)]
1572#[repr(C)]
1573pub struct GtkAdjustmentClass {
1574    pub parent_class: gobject::GInitiallyUnownedClass,
1575    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1576    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1577    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1578    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1579    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1580    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1581}
1582
1583impl ::std::fmt::Debug for GtkAdjustmentClass {
1584    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1585        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1586            .field("parent_class", &self.parent_class)
1587            .field("changed", &self.changed)
1588            .field("value_changed", &self.value_changed)
1589            .field("_gtk_reserved1", &self._gtk_reserved1)
1590            .field("_gtk_reserved2", &self._gtk_reserved2)
1591            .field("_gtk_reserved3", &self._gtk_reserved3)
1592            .field("_gtk_reserved4", &self._gtk_reserved4)
1593            .finish()
1594    }
1595}
1596
1597#[derive(Copy, Clone)]
1598#[repr(C)]
1599pub struct GtkAlertDialogClass {
1600    pub parent_class: gobject::GObjectClass,
1601}
1602
1603impl ::std::fmt::Debug for GtkAlertDialogClass {
1604    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1605        f.debug_struct(&format!("GtkAlertDialogClass @ {self:p}"))
1606            .field("parent_class", &self.parent_class)
1607            .finish()
1608    }
1609}
1610
1611#[repr(C)]
1612#[allow(dead_code)]
1613pub struct _GtkAlternativeTriggerClass {
1614    _data: [u8; 0],
1615    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1616}
1617
1618pub type GtkAlternativeTriggerClass = _GtkAlternativeTriggerClass;
1619
1620#[repr(C)]
1621#[allow(dead_code)]
1622pub struct _GtkAnyFilterClass {
1623    _data: [u8; 0],
1624    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1625}
1626
1627pub type GtkAnyFilterClass = _GtkAnyFilterClass;
1628
1629#[derive(Copy, Clone)]
1630#[repr(C)]
1631pub struct GtkApplicationClass {
1632    pub parent_class: gio::GApplicationClass,
1633    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1634    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1635    pub padding: [gpointer; 8],
1636}
1637
1638impl ::std::fmt::Debug for GtkApplicationClass {
1639    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1640        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
1641            .field("parent_class", &self.parent_class)
1642            .field("window_added", &self.window_added)
1643            .field("window_removed", &self.window_removed)
1644            .finish()
1645    }
1646}
1647
1648#[derive(Copy, Clone)]
1649#[repr(C)]
1650pub struct GtkApplicationWindowClass {
1651    pub parent_class: GtkWindowClass,
1652    pub padding: [gpointer; 8],
1653}
1654
1655impl ::std::fmt::Debug for GtkApplicationWindowClass {
1656    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1657        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
1658            .field("parent_class", &self.parent_class)
1659            .finish()
1660    }
1661}
1662
1663#[derive(Copy, Clone)]
1664#[repr(C)]
1665pub struct GtkBinLayoutClass {
1666    pub parent_class: GtkLayoutManagerClass,
1667}
1668
1669impl ::std::fmt::Debug for GtkBinLayoutClass {
1670    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1671        f.debug_struct(&format!("GtkBinLayoutClass @ {self:p}"))
1672            .field("parent_class", &self.parent_class)
1673            .finish()
1674    }
1675}
1676
1677#[repr(C)]
1678#[allow(dead_code)]
1679pub struct GtkBitset {
1680    _data: [u8; 0],
1681    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1682}
1683
1684impl ::std::fmt::Debug for GtkBitset {
1685    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1686        f.debug_struct(&format!("GtkBitset @ {self:p}")).finish()
1687    }
1688}
1689
1690#[derive(Copy, Clone)]
1691#[repr(C)]
1692pub struct GtkBitsetIter {
1693    pub private_data: [gpointer; 10],
1694}
1695
1696impl ::std::fmt::Debug for GtkBitsetIter {
1697    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1698        f.debug_struct(&format!("GtkBitsetIter @ {self:p}"))
1699            .finish()
1700    }
1701}
1702
1703#[derive(Copy, Clone)]
1704#[repr(C)]
1705pub struct GtkBookmarkListClass {
1706    pub parent_class: gobject::GObjectClass,
1707}
1708
1709impl ::std::fmt::Debug for GtkBookmarkListClass {
1710    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1711        f.debug_struct(&format!("GtkBookmarkListClass @ {self:p}"))
1712            .field("parent_class", &self.parent_class)
1713            .finish()
1714    }
1715}
1716
1717#[derive(Copy, Clone)]
1718#[repr(C)]
1719pub struct GtkBoolFilterClass {
1720    pub parent_class: GtkFilterClass,
1721}
1722
1723impl ::std::fmt::Debug for GtkBoolFilterClass {
1724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1725        f.debug_struct(&format!("GtkBoolFilterClass @ {self:p}"))
1726            .field("parent_class", &self.parent_class)
1727            .finish()
1728    }
1729}
1730
1731#[derive(Copy, Clone)]
1732#[repr(C)]
1733pub struct GtkBorder {
1734    pub left: i16,
1735    pub right: i16,
1736    pub top: i16,
1737    pub bottom: i16,
1738}
1739
1740impl ::std::fmt::Debug for GtkBorder {
1741    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1742        f.debug_struct(&format!("GtkBorder @ {self:p}"))
1743            .field("left", &self.left)
1744            .field("right", &self.right)
1745            .field("top", &self.top)
1746            .field("bottom", &self.bottom)
1747            .finish()
1748    }
1749}
1750
1751#[derive(Copy, Clone)]
1752#[repr(C)]
1753pub struct GtkBoxClass {
1754    pub parent_class: GtkWidgetClass,
1755    pub padding: [gpointer; 8],
1756}
1757
1758impl ::std::fmt::Debug for GtkBoxClass {
1759    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1760        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
1761            .field("parent_class", &self.parent_class)
1762            .finish()
1763    }
1764}
1765
1766#[derive(Copy, Clone)]
1767#[repr(C)]
1768pub struct GtkBoxLayoutClass {
1769    pub parent_class: GtkLayoutManagerClass,
1770}
1771
1772impl ::std::fmt::Debug for GtkBoxLayoutClass {
1773    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1774        f.debug_struct(&format!("GtkBoxLayoutClass @ {self:p}"))
1775            .field("parent_class", &self.parent_class)
1776            .finish()
1777    }
1778}
1779
1780#[derive(Copy, Clone)]
1781#[repr(C)]
1782pub struct GtkBuildableIface {
1783    pub g_iface: gobject::GTypeInterface,
1784    pub set_id: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
1785    pub get_id: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
1786    pub add_child: Option<
1787        unsafe extern "C" fn(
1788            *mut GtkBuildable,
1789            *mut GtkBuilder,
1790            *mut gobject::GObject,
1791            *const c_char,
1792        ),
1793    >,
1794    pub set_buildable_property: Option<
1795        unsafe extern "C" fn(
1796            *mut GtkBuildable,
1797            *mut GtkBuilder,
1798            *const c_char,
1799            *const gobject::GValue,
1800        ),
1801    >,
1802    pub construct_child: Option<
1803        unsafe extern "C" fn(
1804            *mut GtkBuildable,
1805            *mut GtkBuilder,
1806            *const c_char,
1807        ) -> *mut gobject::GObject,
1808    >,
1809    pub custom_tag_start: Option<
1810        unsafe extern "C" fn(
1811            *mut GtkBuildable,
1812            *mut GtkBuilder,
1813            *mut gobject::GObject,
1814            *const c_char,
1815            *mut GtkBuildableParser,
1816            *mut gpointer,
1817        ) -> gboolean,
1818    >,
1819    pub custom_tag_end: Option<
1820        unsafe extern "C" fn(
1821            *mut GtkBuildable,
1822            *mut GtkBuilder,
1823            *mut gobject::GObject,
1824            *const c_char,
1825            gpointer,
1826        ),
1827    >,
1828    pub custom_finished: Option<
1829        unsafe extern "C" fn(
1830            *mut GtkBuildable,
1831            *mut GtkBuilder,
1832            *mut gobject::GObject,
1833            *const c_char,
1834            gpointer,
1835        ),
1836    >,
1837    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
1838    pub get_internal_child: Option<
1839        unsafe extern "C" fn(
1840            *mut GtkBuildable,
1841            *mut GtkBuilder,
1842            *const c_char,
1843        ) -> *mut gobject::GObject,
1844    >,
1845}
1846
1847impl ::std::fmt::Debug for GtkBuildableIface {
1848    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1849        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
1850            .field("g_iface", &self.g_iface)
1851            .field("set_id", &self.set_id)
1852            .field("get_id", &self.get_id)
1853            .field("add_child", &self.add_child)
1854            .field("set_buildable_property", &self.set_buildable_property)
1855            .field("construct_child", &self.construct_child)
1856            .field("custom_tag_start", &self.custom_tag_start)
1857            .field("custom_tag_end", &self.custom_tag_end)
1858            .field("custom_finished", &self.custom_finished)
1859            .field("parser_finished", &self.parser_finished)
1860            .field("get_internal_child", &self.get_internal_child)
1861            .finish()
1862    }
1863}
1864
1865#[repr(C)]
1866#[allow(dead_code)]
1867pub struct _GtkBuildableParseContext {
1868    _data: [u8; 0],
1869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1870}
1871
1872pub type GtkBuildableParseContext = _GtkBuildableParseContext;
1873
1874#[derive(Copy, Clone)]
1875#[repr(C)]
1876pub struct GtkBuildableParser {
1877    pub start_element: Option<
1878        unsafe extern "C" fn(
1879            *mut GtkBuildableParseContext,
1880            *const c_char,
1881            *mut *const c_char,
1882            *mut *const c_char,
1883            gpointer,
1884            *mut *mut glib::GError,
1885        ),
1886    >,
1887    pub end_element: Option<
1888        unsafe extern "C" fn(
1889            *mut GtkBuildableParseContext,
1890            *const c_char,
1891            gpointer,
1892            *mut *mut glib::GError,
1893        ),
1894    >,
1895    pub text: Option<
1896        unsafe extern "C" fn(
1897            *mut GtkBuildableParseContext,
1898            *const c_char,
1899            size_t,
1900            gpointer,
1901            *mut *mut glib::GError,
1902        ),
1903    >,
1904    pub error:
1905        Option<unsafe extern "C" fn(*mut GtkBuildableParseContext, *mut glib::GError, gpointer)>,
1906    pub padding: [gpointer; 4],
1907}
1908
1909impl ::std::fmt::Debug for GtkBuildableParser {
1910    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1911        f.debug_struct(&format!("GtkBuildableParser @ {self:p}"))
1912            .field("start_element", &self.start_element)
1913            .field("end_element", &self.end_element)
1914            .field("text", &self.text)
1915            .field("error", &self.error)
1916            .finish()
1917    }
1918}
1919
1920#[derive(Copy, Clone)]
1921#[repr(C)]
1922pub struct GtkBuilderCScopeClass {
1923    pub parent_class: gobject::GObjectClass,
1924}
1925
1926impl ::std::fmt::Debug for GtkBuilderCScopeClass {
1927    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1928        f.debug_struct(&format!("GtkBuilderCScopeClass @ {self:p}"))
1929            .field("parent_class", &self.parent_class)
1930            .finish()
1931    }
1932}
1933
1934#[repr(C)]
1935#[allow(dead_code)]
1936pub struct _GtkBuilderClass {
1937    _data: [u8; 0],
1938    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1939}
1940
1941pub type GtkBuilderClass = _GtkBuilderClass;
1942
1943#[repr(C)]
1944#[allow(dead_code)]
1945pub struct _GtkBuilderListItemFactoryClass {
1946    _data: [u8; 0],
1947    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1948}
1949
1950pub type GtkBuilderListItemFactoryClass = _GtkBuilderListItemFactoryClass;
1951
1952#[derive(Copy, Clone)]
1953#[repr(C)]
1954pub struct GtkBuilderScopeInterface {
1955    pub g_iface: gobject::GTypeInterface,
1956    pub get_type_from_name:
1957        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
1958    pub get_type_from_function:
1959        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
1960    pub create_closure: Option<
1961        unsafe extern "C" fn(
1962            *mut GtkBuilderScope,
1963            *mut GtkBuilder,
1964            *const c_char,
1965            GtkBuilderClosureFlags,
1966            *mut gobject::GObject,
1967            *mut *mut glib::GError,
1968        ) -> *mut gobject::GClosure,
1969    >,
1970}
1971
1972impl ::std::fmt::Debug for GtkBuilderScopeInterface {
1973    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1974        f.debug_struct(&format!("GtkBuilderScopeInterface @ {self:p}"))
1975            .field("get_type_from_name", &self.get_type_from_name)
1976            .field("get_type_from_function", &self.get_type_from_function)
1977            .field("create_closure", &self.create_closure)
1978            .finish()
1979    }
1980}
1981
1982#[derive(Copy, Clone)]
1983#[repr(C)]
1984pub struct GtkButtonClass {
1985    pub parent_class: GtkWidgetClass,
1986    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
1987    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
1988    pub padding: [gpointer; 8],
1989}
1990
1991impl ::std::fmt::Debug for GtkButtonClass {
1992    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1993        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
1994            .field("parent_class", &self.parent_class)
1995            .field("clicked", &self.clicked)
1996            .field("activate", &self.activate)
1997            .finish()
1998    }
1999}
2000
2001#[repr(C)]
2002#[allow(dead_code)]
2003pub struct _GtkButtonPrivate {
2004    _data: [u8; 0],
2005    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2006}
2007
2008pub type GtkButtonPrivate = _GtkButtonPrivate;
2009
2010#[repr(C)]
2011#[allow(dead_code)]
2012pub struct _GtkCallbackActionClass {
2013    _data: [u8; 0],
2014    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2015}
2016
2017pub type GtkCallbackActionClass = _GtkCallbackActionClass;
2018
2019#[derive(Copy, Clone)]
2020#[repr(C)]
2021pub struct GtkCellAreaClass {
2022    pub parent_class: gobject::GInitiallyUnownedClass,
2023    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2024    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2025    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2026    pub foreach_alloc: Option<
2027        unsafe extern "C" fn(
2028            *mut GtkCellArea,
2029            *mut GtkCellAreaContext,
2030            *mut GtkWidget,
2031            *const gdk::GdkRectangle,
2032            *const gdk::GdkRectangle,
2033            GtkCellAllocCallback,
2034            gpointer,
2035        ),
2036    >,
2037    pub event: Option<
2038        unsafe extern "C" fn(
2039            *mut GtkCellArea,
2040            *mut GtkCellAreaContext,
2041            *mut GtkWidget,
2042            *mut gdk::GdkEvent,
2043            *const gdk::GdkRectangle,
2044            GtkCellRendererState,
2045        ) -> c_int,
2046    >,
2047    pub snapshot: Option<
2048        unsafe extern "C" fn(
2049            *mut GtkCellArea,
2050            *mut GtkCellAreaContext,
2051            *mut GtkWidget,
2052            *mut GtkSnapshot,
2053            *const gdk::GdkRectangle,
2054            *const gdk::GdkRectangle,
2055            GtkCellRendererState,
2056            gboolean,
2057        ),
2058    >,
2059    pub apply_attributes: Option<
2060        unsafe extern "C" fn(
2061            *mut GtkCellArea,
2062            *mut GtkTreeModel,
2063            *mut GtkTreeIter,
2064            gboolean,
2065            gboolean,
2066        ),
2067    >,
2068    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2069    pub copy_context: Option<
2070        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2071    >,
2072    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2073    pub get_preferred_width: Option<
2074        unsafe extern "C" fn(
2075            *mut GtkCellArea,
2076            *mut GtkCellAreaContext,
2077            *mut GtkWidget,
2078            *mut c_int,
2079            *mut c_int,
2080        ),
2081    >,
2082    pub get_preferred_height_for_width: Option<
2083        unsafe extern "C" fn(
2084            *mut GtkCellArea,
2085            *mut GtkCellAreaContext,
2086            *mut GtkWidget,
2087            c_int,
2088            *mut c_int,
2089            *mut c_int,
2090        ),
2091    >,
2092    pub get_preferred_height: Option<
2093        unsafe extern "C" fn(
2094            *mut GtkCellArea,
2095            *mut GtkCellAreaContext,
2096            *mut GtkWidget,
2097            *mut c_int,
2098            *mut c_int,
2099        ),
2100    >,
2101    pub get_preferred_width_for_height: Option<
2102        unsafe extern "C" fn(
2103            *mut GtkCellArea,
2104            *mut GtkCellAreaContext,
2105            *mut GtkWidget,
2106            c_int,
2107            *mut c_int,
2108            *mut c_int,
2109        ),
2110    >,
2111    pub set_cell_property: Option<
2112        unsafe extern "C" fn(
2113            *mut GtkCellArea,
2114            *mut GtkCellRenderer,
2115            c_uint,
2116            *mut gobject::GValue,
2117            *mut gobject::GParamSpec,
2118        ),
2119    >,
2120    pub get_cell_property: Option<
2121        unsafe extern "C" fn(
2122            *mut GtkCellArea,
2123            *mut GtkCellRenderer,
2124            c_uint,
2125            *mut gobject::GValue,
2126            *mut gobject::GParamSpec,
2127        ),
2128    >,
2129    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2130    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2131    pub activate: Option<
2132        unsafe extern "C" fn(
2133            *mut GtkCellArea,
2134            *mut GtkCellAreaContext,
2135            *mut GtkWidget,
2136            *const gdk::GdkRectangle,
2137            GtkCellRendererState,
2138            gboolean,
2139        ) -> gboolean,
2140    >,
2141    pub padding: [gpointer; 8],
2142}
2143
2144impl ::std::fmt::Debug for GtkCellAreaClass {
2145    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2146        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2147            .field("add", &self.add)
2148            .field("remove", &self.remove)
2149            .field("foreach", &self.foreach)
2150            .field("foreach_alloc", &self.foreach_alloc)
2151            .field("event", &self.event)
2152            .field("snapshot", &self.snapshot)
2153            .field("apply_attributes", &self.apply_attributes)
2154            .field("create_context", &self.create_context)
2155            .field("copy_context", &self.copy_context)
2156            .field("get_request_mode", &self.get_request_mode)
2157            .field("get_preferred_width", &self.get_preferred_width)
2158            .field(
2159                "get_preferred_height_for_width",
2160                &self.get_preferred_height_for_width,
2161            )
2162            .field("get_preferred_height", &self.get_preferred_height)
2163            .field(
2164                "get_preferred_width_for_height",
2165                &self.get_preferred_width_for_height,
2166            )
2167            .field("set_cell_property", &self.set_cell_property)
2168            .field("get_cell_property", &self.get_cell_property)
2169            .field("focus", &self.focus)
2170            .field("is_activatable", &self.is_activatable)
2171            .field("activate", &self.activate)
2172            .finish()
2173    }
2174}
2175
2176#[derive(Copy, Clone)]
2177#[repr(C)]
2178pub struct GtkCellAreaContextClass {
2179    pub parent_class: gobject::GObjectClass,
2180    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2181    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2182    pub get_preferred_height_for_width:
2183        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2184    pub get_preferred_width_for_height:
2185        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2186    pub padding: [gpointer; 8],
2187}
2188
2189impl ::std::fmt::Debug for GtkCellAreaContextClass {
2190    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2191        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2192            .field("allocate", &self.allocate)
2193            .field("reset", &self.reset)
2194            .field(
2195                "get_preferred_height_for_width",
2196                &self.get_preferred_height_for_width,
2197            )
2198            .field(
2199                "get_preferred_width_for_height",
2200                &self.get_preferred_width_for_height,
2201            )
2202            .finish()
2203    }
2204}
2205
2206#[repr(C)]
2207#[allow(dead_code)]
2208pub struct _GtkCellAreaContextPrivate {
2209    _data: [u8; 0],
2210    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2211}
2212
2213pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
2214
2215#[derive(Copy, Clone)]
2216#[repr(C)]
2217pub struct GtkCellEditableIface {
2218    pub g_iface: gobject::GTypeInterface,
2219    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2220    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2221    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
2222}
2223
2224impl ::std::fmt::Debug for GtkCellEditableIface {
2225    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2226        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
2227            .field("editing_done", &self.editing_done)
2228            .field("remove_widget", &self.remove_widget)
2229            .field("start_editing", &self.start_editing)
2230            .finish()
2231    }
2232}
2233
2234#[derive(Copy, Clone)]
2235#[repr(C)]
2236pub struct GtkCellLayoutIface {
2237    pub g_iface: gobject::GTypeInterface,
2238    pub pack_start:
2239        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2240    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2241    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
2242    pub add_attribute: Option<
2243        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
2244    >,
2245    pub set_cell_data_func: Option<
2246        unsafe extern "C" fn(
2247            *mut GtkCellLayout,
2248            *mut GtkCellRenderer,
2249            GtkCellLayoutDataFunc,
2250            gpointer,
2251            glib::GDestroyNotify,
2252        ),
2253    >,
2254    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
2255    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
2256    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
2257    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
2258}
2259
2260impl ::std::fmt::Debug for GtkCellLayoutIface {
2261    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2262        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
2263            .field("pack_start", &self.pack_start)
2264            .field("pack_end", &self.pack_end)
2265            .field("clear", &self.clear)
2266            .field("add_attribute", &self.add_attribute)
2267            .field("set_cell_data_func", &self.set_cell_data_func)
2268            .field("clear_attributes", &self.clear_attributes)
2269            .field("reorder", &self.reorder)
2270            .field("get_cells", &self.get_cells)
2271            .field("get_area", &self.get_area)
2272            .finish()
2273    }
2274}
2275
2276#[derive(Copy, Clone)]
2277#[repr(C)]
2278pub struct GtkCellRendererClass {
2279    pub parent_class: gobject::GInitiallyUnownedClass,
2280    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
2281    pub get_preferred_width:
2282        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2283    pub get_preferred_height_for_width: Option<
2284        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2285    >,
2286    pub get_preferred_height:
2287        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2288    pub get_preferred_width_for_height: Option<
2289        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2290    >,
2291    pub get_aligned_area: Option<
2292        unsafe extern "C" fn(
2293            *mut GtkCellRenderer,
2294            *mut GtkWidget,
2295            GtkCellRendererState,
2296            *const gdk::GdkRectangle,
2297            *mut gdk::GdkRectangle,
2298        ),
2299    >,
2300    pub snapshot: Option<
2301        unsafe extern "C" fn(
2302            *mut GtkCellRenderer,
2303            *mut GtkSnapshot,
2304            *mut GtkWidget,
2305            *const gdk::GdkRectangle,
2306            *const gdk::GdkRectangle,
2307            GtkCellRendererState,
2308        ),
2309    >,
2310    pub activate: Option<
2311        unsafe extern "C" fn(
2312            *mut GtkCellRenderer,
2313            *mut gdk::GdkEvent,
2314            *mut GtkWidget,
2315            *const c_char,
2316            *const gdk::GdkRectangle,
2317            *const gdk::GdkRectangle,
2318            GtkCellRendererState,
2319        ) -> gboolean,
2320    >,
2321    pub start_editing: Option<
2322        unsafe extern "C" fn(
2323            *mut GtkCellRenderer,
2324            *mut gdk::GdkEvent,
2325            *mut GtkWidget,
2326            *const c_char,
2327            *const gdk::GdkRectangle,
2328            *const gdk::GdkRectangle,
2329            GtkCellRendererState,
2330        ) -> *mut GtkCellEditable,
2331    >,
2332    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
2333    pub editing_started:
2334        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
2335    pub padding: [gpointer; 8],
2336}
2337
2338impl ::std::fmt::Debug for GtkCellRendererClass {
2339    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2340        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
2341            .field("get_request_mode", &self.get_request_mode)
2342            .field("get_preferred_width", &self.get_preferred_width)
2343            .field(
2344                "get_preferred_height_for_width",
2345                &self.get_preferred_height_for_width,
2346            )
2347            .field("get_preferred_height", &self.get_preferred_height)
2348            .field(
2349                "get_preferred_width_for_height",
2350                &self.get_preferred_width_for_height,
2351            )
2352            .field("get_aligned_area", &self.get_aligned_area)
2353            .field("snapshot", &self.snapshot)
2354            .field("activate", &self.activate)
2355            .field("start_editing", &self.start_editing)
2356            .field("editing_canceled", &self.editing_canceled)
2357            .field("editing_started", &self.editing_started)
2358            .finish()
2359    }
2360}
2361
2362#[repr(C)]
2363#[allow(dead_code)]
2364pub struct _GtkCellRendererClassPrivate {
2365    _data: [u8; 0],
2366    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2367}
2368
2369pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
2370
2371#[repr(C)]
2372#[allow(dead_code)]
2373pub struct _GtkCellRendererPrivate {
2374    _data: [u8; 0],
2375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2376}
2377
2378pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
2379
2380#[derive(Copy, Clone)]
2381#[repr(C)]
2382pub struct GtkCellRendererTextClass {
2383    pub parent_class: GtkCellRendererClass,
2384    pub edited:
2385        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
2386    pub padding: [gpointer; 8],
2387}
2388
2389impl ::std::fmt::Debug for GtkCellRendererTextClass {
2390    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2391        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
2392            .field("parent_class", &self.parent_class)
2393            .field("edited", &self.edited)
2394            .finish()
2395    }
2396}
2397
2398#[repr(C)]
2399#[allow(dead_code)]
2400pub struct _GtkCenterBoxClass {
2401    _data: [u8; 0],
2402    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2403}
2404
2405pub type GtkCenterBoxClass = _GtkCenterBoxClass;
2406
2407#[derive(Copy, Clone)]
2408#[repr(C)]
2409pub struct GtkCenterLayoutClass {
2410    pub parent_class: GtkLayoutManagerClass,
2411}
2412
2413impl ::std::fmt::Debug for GtkCenterLayoutClass {
2414    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2415        f.debug_struct(&format!("GtkCenterLayoutClass @ {self:p}"))
2416            .field("parent_class", &self.parent_class)
2417            .finish()
2418    }
2419}
2420
2421#[derive(Copy, Clone)]
2422#[repr(C)]
2423pub struct GtkCheckButtonClass {
2424    pub parent_class: GtkWidgetClass,
2425    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2426    pub activate: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2427    pub padding: [gpointer; 7],
2428}
2429
2430impl ::std::fmt::Debug for GtkCheckButtonClass {
2431    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2432        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
2433            .field("parent_class", &self.parent_class)
2434            .field("toggled", &self.toggled)
2435            .field("activate", &self.activate)
2436            .finish()
2437    }
2438}
2439
2440#[derive(Copy, Clone)]
2441#[repr(C)]
2442pub struct GtkColorChooserInterface {
2443    pub base_interface: gobject::GTypeInterface,
2444    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2445    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2446    pub add_palette: Option<
2447        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
2448    >,
2449    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2450    pub padding: [gpointer; 12],
2451}
2452
2453impl ::std::fmt::Debug for GtkColorChooserInterface {
2454    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2455        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
2456            .field("base_interface", &self.base_interface)
2457            .field("get_rgba", &self.get_rgba)
2458            .field("set_rgba", &self.set_rgba)
2459            .field("add_palette", &self.add_palette)
2460            .field("color_activated", &self.color_activated)
2461            .finish()
2462    }
2463}
2464
2465#[derive(Copy, Clone)]
2466#[repr(C)]
2467pub struct GtkColorDialogButtonClass {
2468    pub parent_class: GtkWidgetClass,
2469}
2470
2471impl ::std::fmt::Debug for GtkColorDialogButtonClass {
2472    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2473        f.debug_struct(&format!("GtkColorDialogButtonClass @ {self:p}"))
2474            .field("parent_class", &self.parent_class)
2475            .finish()
2476    }
2477}
2478
2479#[derive(Copy, Clone)]
2480#[repr(C)]
2481pub struct GtkColorDialogClass {
2482    pub parent_class: gobject::GObjectClass,
2483}
2484
2485impl ::std::fmt::Debug for GtkColorDialogClass {
2486    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2487        f.debug_struct(&format!("GtkColorDialogClass @ {self:p}"))
2488            .field("parent_class", &self.parent_class)
2489            .finish()
2490    }
2491}
2492
2493#[repr(C)]
2494#[allow(dead_code)]
2495pub struct _GtkColumnViewCellClass {
2496    _data: [u8; 0],
2497    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2498}
2499
2500pub type GtkColumnViewCellClass = _GtkColumnViewCellClass;
2501
2502#[repr(C)]
2503#[allow(dead_code)]
2504pub struct _GtkColumnViewClass {
2505    _data: [u8; 0],
2506    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2507}
2508
2509pub type GtkColumnViewClass = _GtkColumnViewClass;
2510
2511#[repr(C)]
2512#[allow(dead_code)]
2513pub struct _GtkColumnViewColumnClass {
2514    _data: [u8; 0],
2515    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2516}
2517
2518pub type GtkColumnViewColumnClass = _GtkColumnViewColumnClass;
2519
2520#[repr(C)]
2521#[allow(dead_code)]
2522pub struct _GtkColumnViewRowClass {
2523    _data: [u8; 0],
2524    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2525}
2526
2527pub type GtkColumnViewRowClass = _GtkColumnViewRowClass;
2528
2529#[derive(Copy, Clone)]
2530#[repr(C)]
2531pub struct GtkColumnViewSorterClass {
2532    pub parent_class: GtkSorterClass,
2533}
2534
2535impl ::std::fmt::Debug for GtkColumnViewSorterClass {
2536    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2537        f.debug_struct(&format!("GtkColumnViewSorterClass @ {self:p}"))
2538            .field("parent_class", &self.parent_class)
2539            .finish()
2540    }
2541}
2542
2543#[derive(Copy, Clone)]
2544#[repr(C)]
2545pub struct GtkComboBoxClass {
2546    pub parent_class: GtkWidgetClass,
2547    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2548    pub format_entry_text:
2549        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
2550    pub activate: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2551    pub padding: [gpointer; 7],
2552}
2553
2554impl ::std::fmt::Debug for GtkComboBoxClass {
2555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2556        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
2557            .field("parent_class", &self.parent_class)
2558            .field("changed", &self.changed)
2559            .field("format_entry_text", &self.format_entry_text)
2560            .field("activate", &self.activate)
2561            .finish()
2562    }
2563}
2564
2565#[derive(Copy, Clone)]
2566#[repr(C)]
2567pub struct GtkConstraintClass {
2568    pub parent_class: gobject::GObjectClass,
2569}
2570
2571impl ::std::fmt::Debug for GtkConstraintClass {
2572    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2573        f.debug_struct(&format!("GtkConstraintClass @ {self:p}"))
2574            .field("parent_class", &self.parent_class)
2575            .finish()
2576    }
2577}
2578
2579#[derive(Copy, Clone)]
2580#[repr(C)]
2581pub struct GtkConstraintGuideClass {
2582    pub parent_class: gobject::GObjectClass,
2583}
2584
2585impl ::std::fmt::Debug for GtkConstraintGuideClass {
2586    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2587        f.debug_struct(&format!("GtkConstraintGuideClass @ {self:p}"))
2588            .field("parent_class", &self.parent_class)
2589            .finish()
2590    }
2591}
2592
2593#[derive(Copy, Clone)]
2594#[repr(C)]
2595pub struct GtkConstraintLayoutChildClass {
2596    pub parent_class: GtkLayoutChildClass,
2597}
2598
2599impl ::std::fmt::Debug for GtkConstraintLayoutChildClass {
2600    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2601        f.debug_struct(&format!("GtkConstraintLayoutChildClass @ {self:p}"))
2602            .field("parent_class", &self.parent_class)
2603            .finish()
2604    }
2605}
2606
2607#[derive(Copy, Clone)]
2608#[repr(C)]
2609pub struct GtkConstraintLayoutClass {
2610    pub parent_class: GtkLayoutManagerClass,
2611}
2612
2613impl ::std::fmt::Debug for GtkConstraintLayoutClass {
2614    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2615        f.debug_struct(&format!("GtkConstraintLayoutClass @ {self:p}"))
2616            .field("parent_class", &self.parent_class)
2617            .finish()
2618    }
2619}
2620
2621#[repr(C)]
2622#[allow(dead_code)]
2623pub struct _GtkConstraintTargetInterface {
2624    _data: [u8; 0],
2625    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2626}
2627
2628pub type GtkConstraintTargetInterface = _GtkConstraintTargetInterface;
2629
2630#[derive(Copy, Clone)]
2631#[repr(C)]
2632pub struct GtkCssLocation {
2633    pub bytes: size_t,
2634    pub chars: size_t,
2635    pub lines: size_t,
2636    pub line_bytes: size_t,
2637    pub line_chars: size_t,
2638}
2639
2640impl ::std::fmt::Debug for GtkCssLocation {
2641    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2642        f.debug_struct(&format!("GtkCssLocation @ {self:p}"))
2643            .field("bytes", &self.bytes)
2644            .field("chars", &self.chars)
2645            .field("lines", &self.lines)
2646            .field("line_bytes", &self.line_bytes)
2647            .field("line_chars", &self.line_chars)
2648            .finish()
2649    }
2650}
2651
2652#[repr(C)]
2653#[allow(dead_code)]
2654pub struct _GtkCssProviderClass {
2655    _data: [u8; 0],
2656    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2657}
2658
2659pub type GtkCssProviderClass = _GtkCssProviderClass;
2660
2661#[repr(C)]
2662#[allow(dead_code)]
2663pub struct _GtkCssProviderPrivate {
2664    _data: [u8; 0],
2665    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2666}
2667
2668pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
2669
2670#[repr(C)]
2671#[allow(dead_code)]
2672pub struct GtkCssSection {
2673    _data: [u8; 0],
2674    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2675}
2676
2677impl ::std::fmt::Debug for GtkCssSection {
2678    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2679        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
2680            .finish()
2681    }
2682}
2683
2684#[repr(C)]
2685#[allow(dead_code)]
2686pub struct _GtkCssStyleChange {
2687    _data: [u8; 0],
2688    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2689}
2690
2691pub type GtkCssStyleChange = _GtkCssStyleChange;
2692
2693#[derive(Copy, Clone)]
2694#[repr(C)]
2695pub struct GtkCustomFilterClass {
2696    pub parent_class: GtkFilterClass,
2697}
2698
2699impl ::std::fmt::Debug for GtkCustomFilterClass {
2700    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2701        f.debug_struct(&format!("GtkCustomFilterClass @ {self:p}"))
2702            .field("parent_class", &self.parent_class)
2703            .finish()
2704    }
2705}
2706
2707#[derive(Copy, Clone)]
2708#[repr(C)]
2709pub struct GtkCustomLayoutClass {
2710    pub parent_class: GtkLayoutManagerClass,
2711}
2712
2713impl ::std::fmt::Debug for GtkCustomLayoutClass {
2714    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2715        f.debug_struct(&format!("GtkCustomLayoutClass @ {self:p}"))
2716            .field("parent_class", &self.parent_class)
2717            .finish()
2718    }
2719}
2720
2721#[derive(Copy, Clone)]
2722#[repr(C)]
2723pub struct GtkCustomSorterClass {
2724    pub parent_class: GtkSorterClass,
2725}
2726
2727impl ::std::fmt::Debug for GtkCustomSorterClass {
2728    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2729        f.debug_struct(&format!("GtkCustomSorterClass @ {self:p}"))
2730            .field("parent_class", &self.parent_class)
2731            .finish()
2732    }
2733}
2734
2735#[derive(Copy, Clone)]
2736#[repr(C)]
2737pub struct GtkDialogClass {
2738    pub parent_class: GtkWindowClass,
2739    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
2740    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
2741    pub padding: [gpointer; 8],
2742}
2743
2744impl ::std::fmt::Debug for GtkDialogClass {
2745    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2746        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
2747            .field("parent_class", &self.parent_class)
2748            .field("response", &self.response)
2749            .field("close", &self.close)
2750            .finish()
2751    }
2752}
2753
2754#[derive(Copy, Clone)]
2755#[repr(C)]
2756pub struct GtkDirectoryListClass {
2757    pub parent_class: gobject::GObjectClass,
2758}
2759
2760impl ::std::fmt::Debug for GtkDirectoryListClass {
2761    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2762        f.debug_struct(&format!("GtkDirectoryListClass @ {self:p}"))
2763            .field("parent_class", &self.parent_class)
2764            .finish()
2765    }
2766}
2767
2768#[derive(Copy, Clone)]
2769#[repr(C)]
2770pub struct GtkDragIconClass {
2771    pub parent_class: GtkWidgetClass,
2772}
2773
2774impl ::std::fmt::Debug for GtkDragIconClass {
2775    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2776        f.debug_struct(&format!("GtkDragIconClass @ {self:p}"))
2777            .field("parent_class", &self.parent_class)
2778            .finish()
2779    }
2780}
2781
2782#[repr(C)]
2783#[allow(dead_code)]
2784pub struct _GtkDragSourceClass {
2785    _data: [u8; 0],
2786    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2787}
2788
2789pub type GtkDragSourceClass = _GtkDragSourceClass;
2790
2791#[derive(Copy, Clone)]
2792#[repr(C)]
2793pub struct GtkDrawingAreaClass {
2794    pub parent_class: GtkWidgetClass,
2795    pub resize: Option<unsafe extern "C" fn(*mut GtkDrawingArea, c_int, c_int)>,
2796    pub padding: [gpointer; 8],
2797}
2798
2799impl ::std::fmt::Debug for GtkDrawingAreaClass {
2800    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2801        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
2802            .field("parent_class", &self.parent_class)
2803            .field("resize", &self.resize)
2804            .finish()
2805    }
2806}
2807
2808#[repr(C)]
2809#[allow(dead_code)]
2810pub struct _GtkDropControllerMotionClass {
2811    _data: [u8; 0],
2812    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2813}
2814
2815pub type GtkDropControllerMotionClass = _GtkDropControllerMotionClass;
2816
2817#[derive(Copy, Clone)]
2818#[repr(C)]
2819pub struct GtkDropDownClass {
2820    pub parent_class: GtkWidgetClass,
2821}
2822
2823impl ::std::fmt::Debug for GtkDropDownClass {
2824    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2825        f.debug_struct(&format!("GtkDropDownClass @ {self:p}"))
2826            .field("parent_class", &self.parent_class)
2827            .finish()
2828    }
2829}
2830
2831#[repr(C)]
2832#[allow(dead_code)]
2833pub struct _GtkDropTargetAsyncClass {
2834    _data: [u8; 0],
2835    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2836}
2837
2838pub type GtkDropTargetAsyncClass = _GtkDropTargetAsyncClass;
2839
2840#[repr(C)]
2841#[allow(dead_code)]
2842pub struct _GtkDropTargetClass {
2843    _data: [u8; 0],
2844    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2845}
2846
2847pub type GtkDropTargetClass = _GtkDropTargetClass;
2848
2849#[derive(Copy, Clone)]
2850#[repr(C)]
2851pub struct GtkEditableInterface {
2852    pub base_iface: gobject::GTypeInterface,
2853    pub insert_text:
2854        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2855    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2856    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
2857    pub get_text: Option<unsafe extern "C" fn(*mut GtkEditable) -> *const c_char>,
2858    pub do_insert_text:
2859        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2860    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2861    pub get_selection_bounds:
2862        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
2863    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2864    pub get_delegate: Option<unsafe extern "C" fn(*mut GtkEditable) -> *mut GtkEditable>,
2865}
2866
2867impl ::std::fmt::Debug for GtkEditableInterface {
2868    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2869        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
2870            .field("base_iface", &self.base_iface)
2871            .field("insert_text", &self.insert_text)
2872            .field("delete_text", &self.delete_text)
2873            .field("changed", &self.changed)
2874            .field("get_text", &self.get_text)
2875            .field("do_insert_text", &self.do_insert_text)
2876            .field("do_delete_text", &self.do_delete_text)
2877            .field("get_selection_bounds", &self.get_selection_bounds)
2878            .field("set_selection_bounds", &self.set_selection_bounds)
2879            .field("get_delegate", &self.get_delegate)
2880            .finish()
2881    }
2882}
2883
2884#[derive(Copy, Clone)]
2885#[repr(C)]
2886pub struct GtkEditableLabelClass {
2887    pub parent_class: GtkWidgetClass,
2888}
2889
2890impl ::std::fmt::Debug for GtkEditableLabelClass {
2891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2892        f.debug_struct(&format!("GtkEditableLabelClass @ {self:p}"))
2893            .field("parent_class", &self.parent_class)
2894            .finish()
2895    }
2896}
2897
2898#[repr(C)]
2899#[allow(dead_code)]
2900pub struct _GtkEmojiChooserClass {
2901    _data: [u8; 0],
2902    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2903}
2904
2905pub type GtkEmojiChooserClass = _GtkEmojiChooserClass;
2906
2907#[derive(Copy, Clone)]
2908#[repr(C)]
2909pub struct GtkEntryBufferClass {
2910    pub parent_class: gobject::GObjectClass,
2911    pub inserted_text:
2912        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
2913    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
2914    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
2915    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
2916    pub insert_text:
2917        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
2918    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
2919    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
2920    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
2921    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
2922    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
2923    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
2924    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
2925    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
2926    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
2927}
2928
2929impl ::std::fmt::Debug for GtkEntryBufferClass {
2930    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2931        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
2932            .field("parent_class", &self.parent_class)
2933            .field("inserted_text", &self.inserted_text)
2934            .field("deleted_text", &self.deleted_text)
2935            .field("get_text", &self.get_text)
2936            .field("get_length", &self.get_length)
2937            .field("insert_text", &self.insert_text)
2938            .field("delete_text", &self.delete_text)
2939            .field("_gtk_reserved1", &self._gtk_reserved1)
2940            .field("_gtk_reserved2", &self._gtk_reserved2)
2941            .field("_gtk_reserved3", &self._gtk_reserved3)
2942            .field("_gtk_reserved4", &self._gtk_reserved4)
2943            .field("_gtk_reserved5", &self._gtk_reserved5)
2944            .field("_gtk_reserved6", &self._gtk_reserved6)
2945            .field("_gtk_reserved7", &self._gtk_reserved7)
2946            .field("_gtk_reserved8", &self._gtk_reserved8)
2947            .finish()
2948    }
2949}
2950
2951#[derive(Copy, Clone)]
2952#[repr(C)]
2953pub struct GtkEntryClass {
2954    pub parent_class: GtkWidgetClass,
2955    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
2956    pub padding: [gpointer; 8],
2957}
2958
2959impl ::std::fmt::Debug for GtkEntryClass {
2960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2961        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
2962            .field("parent_class", &self.parent_class)
2963            .field("activate", &self.activate)
2964            .finish()
2965    }
2966}
2967
2968#[repr(C)]
2969#[allow(dead_code)]
2970pub struct _GtkEventControllerClass {
2971    _data: [u8; 0],
2972    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2973}
2974
2975pub type GtkEventControllerClass = _GtkEventControllerClass;
2976
2977#[repr(C)]
2978#[allow(dead_code)]
2979pub struct _GtkEventControllerFocusClass {
2980    _data: [u8; 0],
2981    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2982}
2983
2984pub type GtkEventControllerFocusClass = _GtkEventControllerFocusClass;
2985
2986#[repr(C)]
2987#[allow(dead_code)]
2988pub struct _GtkEventControllerKeyClass {
2989    _data: [u8; 0],
2990    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2991}
2992
2993pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
2994
2995#[repr(C)]
2996#[allow(dead_code)]
2997pub struct _GtkEventControllerLegacyClass {
2998    _data: [u8; 0],
2999    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3000}
3001
3002pub type GtkEventControllerLegacyClass = _GtkEventControllerLegacyClass;
3003
3004#[repr(C)]
3005#[allow(dead_code)]
3006pub struct _GtkEventControllerMotionClass {
3007    _data: [u8; 0],
3008    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3009}
3010
3011pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
3012
3013#[repr(C)]
3014#[allow(dead_code)]
3015pub struct _GtkEventControllerScrollClass {
3016    _data: [u8; 0],
3017    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3018}
3019
3020pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
3021
3022#[repr(C)]
3023#[allow(dead_code)]
3024pub struct _GtkEveryFilterClass {
3025    _data: [u8; 0],
3026    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3027}
3028
3029pub type GtkEveryFilterClass = _GtkEveryFilterClass;
3030
3031#[repr(C)]
3032#[allow(dead_code)]
3033pub struct GtkExpressionWatch {
3034    _data: [u8; 0],
3035    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3036}
3037
3038impl ::std::fmt::Debug for GtkExpressionWatch {
3039    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3040        f.debug_struct(&format!("GtkExpressionWatch @ {self:p}"))
3041            .finish()
3042    }
3043}
3044
3045#[derive(Copy, Clone)]
3046#[repr(C)]
3047pub struct GtkFileChooserNativeClass {
3048    pub parent_class: GtkNativeDialogClass,
3049}
3050
3051impl ::std::fmt::Debug for GtkFileChooserNativeClass {
3052    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3053        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
3054            .field("parent_class", &self.parent_class)
3055            .finish()
3056    }
3057}
3058
3059#[derive(Copy, Clone)]
3060#[repr(C)]
3061pub struct GtkFileDialogClass {
3062    pub parent_class: gobject::GObjectClass,
3063}
3064
3065impl ::std::fmt::Debug for GtkFileDialogClass {
3066    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3067        f.debug_struct(&format!("GtkFileDialogClass @ {self:p}"))
3068            .field("parent_class", &self.parent_class)
3069            .finish()
3070    }
3071}
3072
3073#[derive(Copy, Clone)]
3074#[repr(C)]
3075pub struct GtkFileLauncherClass {
3076    pub parent_class: gobject::GObjectClass,
3077}
3078
3079impl ::std::fmt::Debug for GtkFileLauncherClass {
3080    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3081        f.debug_struct(&format!("GtkFileLauncherClass @ {self:p}"))
3082            .field("parent_class", &self.parent_class)
3083            .finish()
3084    }
3085}
3086
3087#[derive(Copy, Clone)]
3088#[repr(C)]
3089pub struct GtkFilterClass {
3090    pub parent_class: gobject::GObjectClass,
3091    pub match_: Option<unsafe extern "C" fn(*mut GtkFilter, *mut gobject::GObject) -> gboolean>,
3092    pub get_strictness: Option<unsafe extern "C" fn(*mut GtkFilter) -> GtkFilterMatch>,
3093    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3094    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3095    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3096    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3097    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3098    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3099    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3100    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3101}
3102
3103impl ::std::fmt::Debug for GtkFilterClass {
3104    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3105        f.debug_struct(&format!("GtkFilterClass @ {self:p}"))
3106            .field("parent_class", &self.parent_class)
3107            .field("match_", &self.match_)
3108            .field("get_strictness", &self.get_strictness)
3109            .field("_gtk_reserved1", &self._gtk_reserved1)
3110            .field("_gtk_reserved2", &self._gtk_reserved2)
3111            .field("_gtk_reserved3", &self._gtk_reserved3)
3112            .field("_gtk_reserved4", &self._gtk_reserved4)
3113            .field("_gtk_reserved5", &self._gtk_reserved5)
3114            .field("_gtk_reserved6", &self._gtk_reserved6)
3115            .field("_gtk_reserved7", &self._gtk_reserved7)
3116            .field("_gtk_reserved8", &self._gtk_reserved8)
3117            .finish()
3118    }
3119}
3120
3121#[derive(Copy, Clone)]
3122#[repr(C)]
3123pub struct GtkFilterListModelClass {
3124    pub parent_class: gobject::GObjectClass,
3125}
3126
3127impl ::std::fmt::Debug for GtkFilterListModelClass {
3128    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3129        f.debug_struct(&format!("GtkFilterListModelClass @ {self:p}"))
3130            .field("parent_class", &self.parent_class)
3131            .finish()
3132    }
3133}
3134
3135#[derive(Copy, Clone)]
3136#[repr(C)]
3137pub struct GtkFixedClass {
3138    pub parent_class: GtkWidgetClass,
3139    pub padding: [gpointer; 8],
3140}
3141
3142impl ::std::fmt::Debug for GtkFixedClass {
3143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3144        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
3145            .field("parent_class", &self.parent_class)
3146            .finish()
3147    }
3148}
3149
3150#[derive(Copy, Clone)]
3151#[repr(C)]
3152pub struct GtkFixedLayoutChildClass {
3153    pub parent_class: GtkLayoutChildClass,
3154}
3155
3156impl ::std::fmt::Debug for GtkFixedLayoutChildClass {
3157    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3158        f.debug_struct(&format!("GtkFixedLayoutChildClass @ {self:p}"))
3159            .field("parent_class", &self.parent_class)
3160            .finish()
3161    }
3162}
3163
3164#[derive(Copy, Clone)]
3165#[repr(C)]
3166pub struct GtkFixedLayoutClass {
3167    pub parent_class: GtkLayoutManagerClass,
3168}
3169
3170impl ::std::fmt::Debug for GtkFixedLayoutClass {
3171    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3172        f.debug_struct(&format!("GtkFixedLayoutClass @ {self:p}"))
3173            .field("parent_class", &self.parent_class)
3174            .finish()
3175    }
3176}
3177
3178#[derive(Copy, Clone)]
3179#[repr(C)]
3180pub struct GtkFlattenListModelClass {
3181    pub parent_class: gobject::GObjectClass,
3182}
3183
3184impl ::std::fmt::Debug for GtkFlattenListModelClass {
3185    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3186        f.debug_struct(&format!("GtkFlattenListModelClass @ {self:p}"))
3187            .field("parent_class", &self.parent_class)
3188            .finish()
3189    }
3190}
3191
3192#[derive(Copy, Clone)]
3193#[repr(C)]
3194pub struct GtkFlowBoxChildClass {
3195    pub parent_class: GtkWidgetClass,
3196    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
3197    pub padding: [gpointer; 8],
3198}
3199
3200impl ::std::fmt::Debug for GtkFlowBoxChildClass {
3201    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3202        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
3203            .field("activate", &self.activate)
3204            .finish()
3205    }
3206}
3207
3208#[derive(Copy, Clone)]
3209#[repr(C)]
3210pub struct GtkFontChooserIface {
3211    pub base_iface: gobject::GTypeInterface,
3212    pub get_font_family:
3213        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
3214    pub get_font_face:
3215        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
3216    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
3217    pub set_filter_func: Option<
3218        unsafe extern "C" fn(
3219            *mut GtkFontChooser,
3220            GtkFontFilterFunc,
3221            gpointer,
3222            glib::GDestroyNotify,
3223        ),
3224    >,
3225    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
3226    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
3227    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
3228    pub padding: [gpointer; 10],
3229}
3230
3231impl ::std::fmt::Debug for GtkFontChooserIface {
3232    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3233        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
3234            .field("base_iface", &self.base_iface)
3235            .field("get_font_family", &self.get_font_family)
3236            .field("get_font_face", &self.get_font_face)
3237            .field("get_font_size", &self.get_font_size)
3238            .field("set_filter_func", &self.set_filter_func)
3239            .field("font_activated", &self.font_activated)
3240            .field("set_font_map", &self.set_font_map)
3241            .field("get_font_map", &self.get_font_map)
3242            .finish()
3243    }
3244}
3245
3246#[derive(Copy, Clone)]
3247#[repr(C)]
3248pub struct GtkFontDialogButtonClass {
3249    pub parent_class: GtkWidgetClass,
3250}
3251
3252impl ::std::fmt::Debug for GtkFontDialogButtonClass {
3253    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3254        f.debug_struct(&format!("GtkFontDialogButtonClass @ {self:p}"))
3255            .field("parent_class", &self.parent_class)
3256            .finish()
3257    }
3258}
3259
3260#[derive(Copy, Clone)]
3261#[repr(C)]
3262pub struct GtkFontDialogClass {
3263    pub parent_class: gobject::GObjectClass,
3264}
3265
3266impl ::std::fmt::Debug for GtkFontDialogClass {
3267    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3268        f.debug_struct(&format!("GtkFontDialogClass @ {self:p}"))
3269            .field("parent_class", &self.parent_class)
3270            .finish()
3271    }
3272}
3273
3274#[derive(Copy, Clone)]
3275#[repr(C)]
3276pub struct GtkFrameClass {
3277    pub parent_class: GtkWidgetClass,
3278    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
3279    pub padding: [gpointer; 8],
3280}
3281
3282impl ::std::fmt::Debug for GtkFrameClass {
3283    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3284        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
3285            .field("parent_class", &self.parent_class)
3286            .field("compute_child_allocation", &self.compute_child_allocation)
3287            .finish()
3288    }
3289}
3290
3291#[derive(Copy, Clone)]
3292#[repr(C)]
3293pub struct GtkGLAreaClass {
3294    pub parent_class: GtkWidgetClass,
3295    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
3296    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
3297    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
3298    pub _padding: [gpointer; 8],
3299}
3300
3301impl ::std::fmt::Debug for GtkGLAreaClass {
3302    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3303        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
3304            .field("render", &self.render)
3305            .field("resize", &self.resize)
3306            .field("create_context", &self.create_context)
3307            .finish()
3308    }
3309}
3310
3311#[repr(C)]
3312#[allow(dead_code)]
3313pub struct _GtkGestureClass {
3314    _data: [u8; 0],
3315    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3316}
3317
3318pub type GtkGestureClass = _GtkGestureClass;
3319
3320#[repr(C)]
3321#[allow(dead_code)]
3322pub struct _GtkGestureClickClass {
3323    _data: [u8; 0],
3324    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3325}
3326
3327pub type GtkGestureClickClass = _GtkGestureClickClass;
3328
3329#[repr(C)]
3330#[allow(dead_code)]
3331pub struct _GtkGestureDragClass {
3332    _data: [u8; 0],
3333    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3334}
3335
3336pub type GtkGestureDragClass = _GtkGestureDragClass;
3337
3338#[repr(C)]
3339#[allow(dead_code)]
3340pub struct _GtkGestureLongPressClass {
3341    _data: [u8; 0],
3342    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3343}
3344
3345pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
3346
3347#[repr(C)]
3348#[allow(dead_code)]
3349pub struct _GtkGesturePanClass {
3350    _data: [u8; 0],
3351    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3352}
3353
3354pub type GtkGesturePanClass = _GtkGesturePanClass;
3355
3356#[repr(C)]
3357#[allow(dead_code)]
3358pub struct _GtkGestureRotateClass {
3359    _data: [u8; 0],
3360    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3361}
3362
3363pub type GtkGestureRotateClass = _GtkGestureRotateClass;
3364
3365#[repr(C)]
3366#[allow(dead_code)]
3367pub struct _GtkGestureSingleClass {
3368    _data: [u8; 0],
3369    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3370}
3371
3372pub type GtkGestureSingleClass = _GtkGestureSingleClass;
3373
3374#[repr(C)]
3375#[allow(dead_code)]
3376pub struct _GtkGestureStylusClass {
3377    _data: [u8; 0],
3378    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3379}
3380
3381pub type GtkGestureStylusClass = _GtkGestureStylusClass;
3382
3383#[repr(C)]
3384#[allow(dead_code)]
3385pub struct _GtkGestureSwipeClass {
3386    _data: [u8; 0],
3387    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3388}
3389
3390pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
3391
3392#[repr(C)]
3393#[allow(dead_code)]
3394pub struct _GtkGestureZoomClass {
3395    _data: [u8; 0],
3396    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3397}
3398
3399pub type GtkGestureZoomClass = _GtkGestureZoomClass;
3400
3401#[derive(Copy, Clone)]
3402#[repr(C)]
3403pub struct GtkGraphicsOffloadClass {
3404    pub parent_class: GtkWidgetClass,
3405}
3406
3407impl ::std::fmt::Debug for GtkGraphicsOffloadClass {
3408    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3409        f.debug_struct(&format!("GtkGraphicsOffloadClass @ {self:p}"))
3410            .field("parent_class", &self.parent_class)
3411            .finish()
3412    }
3413}
3414
3415#[derive(Copy, Clone)]
3416#[repr(C)]
3417pub struct GtkGridClass {
3418    pub parent_class: GtkWidgetClass,
3419    pub padding: [gpointer; 8],
3420}
3421
3422impl ::std::fmt::Debug for GtkGridClass {
3423    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3424        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
3425            .field("parent_class", &self.parent_class)
3426            .finish()
3427    }
3428}
3429
3430#[derive(Copy, Clone)]
3431#[repr(C)]
3432pub struct GtkGridLayoutChildClass {
3433    pub parent_class: GtkLayoutChildClass,
3434}
3435
3436impl ::std::fmt::Debug for GtkGridLayoutChildClass {
3437    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3438        f.debug_struct(&format!("GtkGridLayoutChildClass @ {self:p}"))
3439            .field("parent_class", &self.parent_class)
3440            .finish()
3441    }
3442}
3443
3444#[derive(Copy, Clone)]
3445#[repr(C)]
3446pub struct GtkGridLayoutClass {
3447    pub parent_class: GtkLayoutManagerClass,
3448}
3449
3450impl ::std::fmt::Debug for GtkGridLayoutClass {
3451    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3452        f.debug_struct(&format!("GtkGridLayoutClass @ {self:p}"))
3453            .field("parent_class", &self.parent_class)
3454            .finish()
3455    }
3456}
3457
3458#[repr(C)]
3459#[allow(dead_code)]
3460pub struct _GtkGridViewClass {
3461    _data: [u8; 0],
3462    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3463}
3464
3465pub type GtkGridViewClass = _GtkGridViewClass;
3466
3467#[derive(Copy, Clone)]
3468#[repr(C)]
3469pub struct GtkIMContextClass {
3470    pub parent_class: gobject::GObjectClass,
3471    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3472    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3473    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3474    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
3475    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
3476    pub delete_surrounding:
3477        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
3478    pub set_client_widget: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut GtkWidget)>,
3479    pub get_preedit_string: Option<
3480        unsafe extern "C" fn(
3481            *mut GtkIMContext,
3482            *mut *mut c_char,
3483            *mut *mut pango::PangoAttrList,
3484            *mut c_int,
3485        ),
3486    >,
3487    pub filter_keypress:
3488        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3489    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3490    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3491    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3492    pub set_cursor_location:
3493        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
3494    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
3495    pub set_surrounding:
3496        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
3497    pub get_surrounding:
3498        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
3499    pub set_surrounding_with_selection:
3500        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int, c_int)>,
3501    pub get_surrounding_with_selection: Option<
3502        unsafe extern "C" fn(
3503            *mut GtkIMContext,
3504            *mut *mut c_char,
3505            *mut c_int,
3506            *mut c_int,
3507        ) -> gboolean,
3508    >,
3509    pub activate_osk: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3510    pub activate_osk_with_event:
3511        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3512    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3513    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3514    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3515}
3516
3517impl ::std::fmt::Debug for GtkIMContextClass {
3518    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3519        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
3520            .field("preedit_start", &self.preedit_start)
3521            .field("preedit_end", &self.preedit_end)
3522            .field("preedit_changed", &self.preedit_changed)
3523            .field("commit", &self.commit)
3524            .field("retrieve_surrounding", &self.retrieve_surrounding)
3525            .field("delete_surrounding", &self.delete_surrounding)
3526            .field("set_client_widget", &self.set_client_widget)
3527            .field("get_preedit_string", &self.get_preedit_string)
3528            .field("filter_keypress", &self.filter_keypress)
3529            .field("focus_in", &self.focus_in)
3530            .field("focus_out", &self.focus_out)
3531            .field("reset", &self.reset)
3532            .field("set_cursor_location", &self.set_cursor_location)
3533            .field("set_use_preedit", &self.set_use_preedit)
3534            .field("set_surrounding", &self.set_surrounding)
3535            .field("get_surrounding", &self.get_surrounding)
3536            .field(
3537                "set_surrounding_with_selection",
3538                &self.set_surrounding_with_selection,
3539            )
3540            .field(
3541                "get_surrounding_with_selection",
3542                &self.get_surrounding_with_selection,
3543            )
3544            .field("activate_osk", &self.activate_osk)
3545            .field("activate_osk_with_event", &self.activate_osk_with_event)
3546            .field("_gtk_reserved2", &self._gtk_reserved2)
3547            .field("_gtk_reserved3", &self._gtk_reserved3)
3548            .field("_gtk_reserved4", &self._gtk_reserved4)
3549            .finish()
3550    }
3551}
3552
3553#[derive(Copy, Clone)]
3554#[repr(C)]
3555pub struct GtkIMContextSimpleClass {
3556    pub parent_class: GtkIMContextClass,
3557}
3558
3559impl ::std::fmt::Debug for GtkIMContextSimpleClass {
3560    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3561        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
3562            .field("parent_class", &self.parent_class)
3563            .finish()
3564    }
3565}
3566
3567#[repr(C)]
3568#[allow(dead_code)]
3569pub struct _GtkIMContextSimplePrivate {
3570    _data: [u8; 0],
3571    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3572}
3573
3574pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
3575
3576#[derive(Copy, Clone)]
3577#[repr(C)]
3578pub struct GtkIMMulticontextClass {
3579    pub parent_class: GtkIMContextClass,
3580    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3581    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3582    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3583    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3584}
3585
3586impl ::std::fmt::Debug for GtkIMMulticontextClass {
3587    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3588        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
3589            .field("parent_class", &self.parent_class)
3590            .field("_gtk_reserved1", &self._gtk_reserved1)
3591            .field("_gtk_reserved2", &self._gtk_reserved2)
3592            .field("_gtk_reserved3", &self._gtk_reserved3)
3593            .field("_gtk_reserved4", &self._gtk_reserved4)
3594            .finish()
3595    }
3596}
3597
3598#[repr(C)]
3599#[allow(dead_code)]
3600pub struct _GtkIMMulticontextPrivate {
3601    _data: [u8; 0],
3602    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3603}
3604
3605pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
3606
3607#[derive(Copy, Clone)]
3608#[repr(C)]
3609pub struct GtkIconPaintableClass {
3610    pub parent_class: gobject::GObjectClass,
3611}
3612
3613impl ::std::fmt::Debug for GtkIconPaintableClass {
3614    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3615        f.debug_struct(&format!("GtkIconPaintableClass @ {self:p}"))
3616            .field("parent_class", &self.parent_class)
3617            .finish()
3618    }
3619}
3620
3621#[derive(Copy, Clone)]
3622#[repr(C)]
3623pub struct GtkInscriptionClass {
3624    pub parent_class: GtkWidgetClass,
3625}
3626
3627impl ::std::fmt::Debug for GtkInscriptionClass {
3628    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3629        f.debug_struct(&format!("GtkInscriptionClass @ {self:p}"))
3630            .field("parent_class", &self.parent_class)
3631            .finish()
3632    }
3633}
3634
3635#[repr(C)]
3636#[allow(dead_code)]
3637pub struct _GtkKeyvalTriggerClass {
3638    _data: [u8; 0],
3639    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3640}
3641
3642pub type GtkKeyvalTriggerClass = _GtkKeyvalTriggerClass;
3643
3644#[derive(Copy, Clone)]
3645#[repr(C)]
3646pub struct GtkLayoutChildClass {
3647    pub parent_class: gobject::GObjectClass,
3648}
3649
3650impl ::std::fmt::Debug for GtkLayoutChildClass {
3651    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3652        f.debug_struct(&format!("GtkLayoutChildClass @ {self:p}"))
3653            .finish()
3654    }
3655}
3656
3657#[derive(Copy, Clone)]
3658#[repr(C)]
3659pub struct GtkLayoutManagerClass {
3660    pub parent_class: gobject::GObjectClass,
3661    pub get_request_mode:
3662        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget) -> GtkSizeRequestMode>,
3663    pub measure: Option<
3664        unsafe extern "C" fn(
3665            *mut GtkLayoutManager,
3666            *mut GtkWidget,
3667            GtkOrientation,
3668            c_int,
3669            *mut c_int,
3670            *mut c_int,
3671            *mut c_int,
3672            *mut c_int,
3673        ),
3674    >,
3675    pub allocate:
3676        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget, c_int, c_int, c_int)>,
3677    pub layout_child_type: GType,
3678    pub create_layout_child: Option<
3679        unsafe extern "C" fn(
3680            *mut GtkLayoutManager,
3681            *mut GtkWidget,
3682            *mut GtkWidget,
3683        ) -> *mut GtkLayoutChild,
3684    >,
3685    pub root: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3686    pub unroot: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3687    pub _padding: [gpointer; 16],
3688}
3689
3690impl ::std::fmt::Debug for GtkLayoutManagerClass {
3691    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3692        f.debug_struct(&format!("GtkLayoutManagerClass @ {self:p}"))
3693            .field("get_request_mode", &self.get_request_mode)
3694            .field("measure", &self.measure)
3695            .field("allocate", &self.allocate)
3696            .field("layout_child_type", &self.layout_child_type)
3697            .field("create_layout_child", &self.create_layout_child)
3698            .field("root", &self.root)
3699            .field("unroot", &self.unroot)
3700            .finish()
3701    }
3702}
3703
3704#[repr(C)]
3705#[allow(dead_code)]
3706pub struct _GtkListBaseClass {
3707    _data: [u8; 0],
3708    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3709}
3710
3711pub type GtkListBaseClass = _GtkListBaseClass;
3712
3713#[derive(Copy, Clone)]
3714#[repr(C)]
3715pub struct GtkListBoxRowClass {
3716    pub parent_class: GtkWidgetClass,
3717    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
3718    pub padding: [gpointer; 8],
3719}
3720
3721impl ::std::fmt::Debug for GtkListBoxRowClass {
3722    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3723        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
3724            .field("parent_class", &self.parent_class)
3725            .field("activate", &self.activate)
3726            .finish()
3727    }
3728}
3729
3730#[repr(C)]
3731#[allow(dead_code)]
3732pub struct _GtkListHeaderClass {
3733    _data: [u8; 0],
3734    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3735}
3736
3737pub type GtkListHeaderClass = _GtkListHeaderClass;
3738
3739#[repr(C)]
3740#[allow(dead_code)]
3741pub struct _GtkListItemClass {
3742    _data: [u8; 0],
3743    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3744}
3745
3746pub type GtkListItemClass = _GtkListItemClass;
3747
3748#[repr(C)]
3749#[allow(dead_code)]
3750pub struct _GtkListItemFactoryClass {
3751    _data: [u8; 0],
3752    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3753}
3754
3755pub type GtkListItemFactoryClass = _GtkListItemFactoryClass;
3756
3757#[derive(Copy, Clone)]
3758#[repr(C)]
3759pub struct GtkListStoreClass {
3760    pub parent_class: gobject::GObjectClass,
3761    pub padding: [gpointer; 8],
3762}
3763
3764impl ::std::fmt::Debug for GtkListStoreClass {
3765    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3766        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
3767            .field("parent_class", &self.parent_class)
3768            .finish()
3769    }
3770}
3771
3772#[repr(C)]
3773#[allow(dead_code)]
3774pub struct _GtkListStorePrivate {
3775    _data: [u8; 0],
3776    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3777}
3778
3779pub type GtkListStorePrivate = _GtkListStorePrivate;
3780
3781#[repr(C)]
3782#[allow(dead_code)]
3783pub struct _GtkListViewClass {
3784    _data: [u8; 0],
3785    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3786}
3787
3788pub type GtkListViewClass = _GtkListViewClass;
3789
3790#[derive(Copy, Clone)]
3791#[repr(C)]
3792pub struct GtkMapListModelClass {
3793    pub parent_class: gobject::GObjectClass,
3794}
3795
3796impl ::std::fmt::Debug for GtkMapListModelClass {
3797    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3798        f.debug_struct(&format!("GtkMapListModelClass @ {self:p}"))
3799            .field("parent_class", &self.parent_class)
3800            .finish()
3801    }
3802}
3803
3804#[derive(Copy, Clone)]
3805#[repr(C)]
3806pub struct GtkMediaControlsClass {
3807    pub parent_class: GtkWidgetClass,
3808}
3809
3810impl ::std::fmt::Debug for GtkMediaControlsClass {
3811    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3812        f.debug_struct(&format!("GtkMediaControlsClass @ {self:p}"))
3813            .field("parent_class", &self.parent_class)
3814            .finish()
3815    }
3816}
3817
3818#[derive(Copy, Clone)]
3819#[repr(C)]
3820pub struct GtkMediaFileClass {
3821    pub parent_class: GtkMediaStreamClass,
3822    pub open: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3823    pub close: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3824    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3825    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3826    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3827    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3828}
3829
3830impl ::std::fmt::Debug for GtkMediaFileClass {
3831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3832        f.debug_struct(&format!("GtkMediaFileClass @ {self:p}"))
3833            .field("parent_class", &self.parent_class)
3834            .field("open", &self.open)
3835            .field("close", &self.close)
3836            .field("_gtk_reserved1", &self._gtk_reserved1)
3837            .field("_gtk_reserved2", &self._gtk_reserved2)
3838            .field("_gtk_reserved3", &self._gtk_reserved3)
3839            .field("_gtk_reserved4", &self._gtk_reserved4)
3840            .finish()
3841    }
3842}
3843
3844#[derive(Copy, Clone)]
3845#[repr(C)]
3846pub struct GtkMediaStreamClass {
3847    pub parent_class: gobject::GObjectClass,
3848    pub play: Option<unsafe extern "C" fn(*mut GtkMediaStream) -> gboolean>,
3849    pub pause: Option<unsafe extern "C" fn(*mut GtkMediaStream)>,
3850    pub seek: Option<unsafe extern "C" fn(*mut GtkMediaStream, i64)>,
3851    pub update_audio: Option<unsafe extern "C" fn(*mut GtkMediaStream, gboolean, c_double)>,
3852    pub realize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3853    pub unrealize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3854    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3855    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3856    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3857    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3858    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3859    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3860    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3861    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3862}
3863
3864impl ::std::fmt::Debug for GtkMediaStreamClass {
3865    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3866        f.debug_struct(&format!("GtkMediaStreamClass @ {self:p}"))
3867            .field("parent_class", &self.parent_class)
3868            .field("play", &self.play)
3869            .field("pause", &self.pause)
3870            .field("seek", &self.seek)
3871            .field("update_audio", &self.update_audio)
3872            .field("realize", &self.realize)
3873            .field("unrealize", &self.unrealize)
3874            .field("_gtk_reserved1", &self._gtk_reserved1)
3875            .field("_gtk_reserved2", &self._gtk_reserved2)
3876            .field("_gtk_reserved3", &self._gtk_reserved3)
3877            .field("_gtk_reserved4", &self._gtk_reserved4)
3878            .field("_gtk_reserved5", &self._gtk_reserved5)
3879            .field("_gtk_reserved6", &self._gtk_reserved6)
3880            .field("_gtk_reserved7", &self._gtk_reserved7)
3881            .field("_gtk_reserved8", &self._gtk_reserved8)
3882            .finish()
3883    }
3884}
3885
3886#[repr(C)]
3887#[allow(dead_code)]
3888pub struct _GtkMessageDialogClass {
3889    _data: [u8; 0],
3890    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3891}
3892
3893pub type GtkMessageDialogClass = _GtkMessageDialogClass;
3894
3895#[repr(C)]
3896#[allow(dead_code)]
3897pub struct _GtkMnemonicActionClass {
3898    _data: [u8; 0],
3899    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3900}
3901
3902pub type GtkMnemonicActionClass = _GtkMnemonicActionClass;
3903
3904#[repr(C)]
3905#[allow(dead_code)]
3906pub struct _GtkMnemonicTriggerClass {
3907    _data: [u8; 0],
3908    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3909}
3910
3911pub type GtkMnemonicTriggerClass = _GtkMnemonicTriggerClass;
3912
3913#[derive(Copy, Clone)]
3914#[repr(C)]
3915pub struct GtkMountOperationClass {
3916    pub parent_class: gio::GMountOperationClass,
3917    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3918    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3919    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3920    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3921}
3922
3923impl ::std::fmt::Debug for GtkMountOperationClass {
3924    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3925        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
3926            .field("parent_class", &self.parent_class)
3927            .field("_gtk_reserved1", &self._gtk_reserved1)
3928            .field("_gtk_reserved2", &self._gtk_reserved2)
3929            .field("_gtk_reserved3", &self._gtk_reserved3)
3930            .field("_gtk_reserved4", &self._gtk_reserved4)
3931            .finish()
3932    }
3933}
3934
3935#[repr(C)]
3936#[allow(dead_code)]
3937pub struct _GtkMountOperationPrivate {
3938    _data: [u8; 0],
3939    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3940}
3941
3942pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
3943
3944#[repr(C)]
3945#[allow(dead_code)]
3946pub struct _GtkMultiFilterClass {
3947    _data: [u8; 0],
3948    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3949}
3950
3951pub type GtkMultiFilterClass = _GtkMultiFilterClass;
3952
3953#[derive(Copy, Clone)]
3954#[repr(C)]
3955pub struct GtkMultiSelectionClass {
3956    pub parent_class: gobject::GObjectClass,
3957}
3958
3959impl ::std::fmt::Debug for GtkMultiSelectionClass {
3960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3961        f.debug_struct(&format!("GtkMultiSelectionClass @ {self:p}"))
3962            .field("parent_class", &self.parent_class)
3963            .finish()
3964    }
3965}
3966
3967#[derive(Copy, Clone)]
3968#[repr(C)]
3969pub struct GtkMultiSorterClass {
3970    pub parent_class: GtkSorterClass,
3971}
3972
3973impl ::std::fmt::Debug for GtkMultiSorterClass {
3974    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3975        f.debug_struct(&format!("GtkMultiSorterClass @ {self:p}"))
3976            .field("parent_class", &self.parent_class)
3977            .finish()
3978    }
3979}
3980
3981#[repr(C)]
3982#[allow(dead_code)]
3983pub struct _GtkNamedActionClass {
3984    _data: [u8; 0],
3985    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3986}
3987
3988pub type GtkNamedActionClass = _GtkNamedActionClass;
3989
3990#[derive(Copy, Clone)]
3991#[repr(C)]
3992pub struct GtkNativeDialogClass {
3993    pub parent_class: gobject::GObjectClass,
3994    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
3995    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
3996    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
3997    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3998    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3999    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4000    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4001}
4002
4003impl ::std::fmt::Debug for GtkNativeDialogClass {
4004    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4005        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
4006            .field("response", &self.response)
4007            .field("show", &self.show)
4008            .field("hide", &self.hide)
4009            .field("_gtk_reserved1", &self._gtk_reserved1)
4010            .field("_gtk_reserved2", &self._gtk_reserved2)
4011            .field("_gtk_reserved3", &self._gtk_reserved3)
4012            .field("_gtk_reserved4", &self._gtk_reserved4)
4013            .finish()
4014    }
4015}
4016
4017#[repr(C)]
4018#[allow(dead_code)]
4019pub struct _GtkNativeInterface {
4020    _data: [u8; 0],
4021    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4022}
4023
4024pub type GtkNativeInterface = _GtkNativeInterface;
4025
4026#[repr(C)]
4027#[allow(dead_code)]
4028pub struct _GtkNeverTriggerClass {
4029    _data: [u8; 0],
4030    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4031}
4032
4033pub type GtkNeverTriggerClass = _GtkNeverTriggerClass;
4034
4035#[derive(Copy, Clone)]
4036#[repr(C)]
4037pub struct GtkNoSelectionClass {
4038    pub parent_class: gobject::GObjectClass,
4039}
4040
4041impl ::std::fmt::Debug for GtkNoSelectionClass {
4042    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4043        f.debug_struct(&format!("GtkNoSelectionClass @ {self:p}"))
4044            .field("parent_class", &self.parent_class)
4045            .finish()
4046    }
4047}
4048
4049#[repr(C)]
4050#[allow(dead_code)]
4051pub struct _GtkNothingActionClass {
4052    _data: [u8; 0],
4053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4054}
4055
4056pub type GtkNothingActionClass = _GtkNothingActionClass;
4057
4058#[derive(Copy, Clone)]
4059#[repr(C)]
4060pub struct GtkNumericSorterClass {
4061    pub parent_class: GtkSorterClass,
4062}
4063
4064impl ::std::fmt::Debug for GtkNumericSorterClass {
4065    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4066        f.debug_struct(&format!("GtkNumericSorterClass @ {self:p}"))
4067            .field("parent_class", &self.parent_class)
4068            .finish()
4069    }
4070}
4071
4072#[derive(Copy, Clone)]
4073#[repr(C)]
4074pub struct GtkOrientableIface {
4075    pub base_iface: gobject::GTypeInterface,
4076}
4077
4078impl ::std::fmt::Debug for GtkOrientableIface {
4079    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4080        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
4081            .field("base_iface", &self.base_iface)
4082            .finish()
4083    }
4084}
4085
4086#[derive(Copy, Clone)]
4087#[repr(C)]
4088pub struct GtkOverlayLayoutChildClass {
4089    pub parent_class: GtkLayoutChildClass,
4090}
4091
4092impl ::std::fmt::Debug for GtkOverlayLayoutChildClass {
4093    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4094        f.debug_struct(&format!("GtkOverlayLayoutChildClass @ {self:p}"))
4095            .field("parent_class", &self.parent_class)
4096            .finish()
4097    }
4098}
4099
4100#[derive(Copy, Clone)]
4101#[repr(C)]
4102pub struct GtkOverlayLayoutClass {
4103    pub parent_class: GtkLayoutManagerClass,
4104}
4105
4106impl ::std::fmt::Debug for GtkOverlayLayoutClass {
4107    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4108        f.debug_struct(&format!("GtkOverlayLayoutClass @ {self:p}"))
4109            .field("parent_class", &self.parent_class)
4110            .finish()
4111    }
4112}
4113
4114#[derive(Copy, Clone)]
4115#[repr(C)]
4116pub struct GtkPadActionEntry {
4117    pub type_: GtkPadActionType,
4118    pub index: c_int,
4119    pub mode: c_int,
4120    pub label: *const c_char,
4121    pub action_name: *const c_char,
4122}
4123
4124impl ::std::fmt::Debug for GtkPadActionEntry {
4125    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4126        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
4127            .field("type_", &self.type_)
4128            .field("index", &self.index)
4129            .field("mode", &self.mode)
4130            .field("label", &self.label)
4131            .field("action_name", &self.action_name)
4132            .finish()
4133    }
4134}
4135
4136#[repr(C)]
4137#[allow(dead_code)]
4138pub struct _GtkPadControllerClass {
4139    _data: [u8; 0],
4140    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4141}
4142
4143pub type GtkPadControllerClass = _GtkPadControllerClass;
4144
4145#[derive(Copy, Clone)]
4146#[repr(C)]
4147pub struct GtkPageRange {
4148    pub start: c_int,
4149    pub end: c_int,
4150}
4151
4152impl ::std::fmt::Debug for GtkPageRange {
4153    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4154        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
4155            .field("start", &self.start)
4156            .field("end", &self.end)
4157            .finish()
4158    }
4159}
4160
4161#[repr(C)]
4162#[allow(dead_code)]
4163pub struct GtkPaperSize {
4164    _data: [u8; 0],
4165    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4166}
4167
4168impl ::std::fmt::Debug for GtkPaperSize {
4169    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4170        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
4171    }
4172}
4173
4174#[derive(Copy, Clone)]
4175#[repr(C)]
4176pub struct GtkPasswordEntryBufferClass {
4177    pub parent_class: GtkEntryBufferClass,
4178}
4179
4180impl ::std::fmt::Debug for GtkPasswordEntryBufferClass {
4181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4182        f.debug_struct(&format!("GtkPasswordEntryBufferClass @ {self:p}"))
4183            .field("parent_class", &self.parent_class)
4184            .finish()
4185    }
4186}
4187
4188#[repr(C)]
4189#[allow(dead_code)]
4190pub struct _GtkPasswordEntryClass {
4191    _data: [u8; 0],
4192    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4193}
4194
4195pub type GtkPasswordEntryClass = _GtkPasswordEntryClass;
4196
4197#[derive(Copy, Clone)]
4198#[repr(C)]
4199pub struct GtkPictureClass {
4200    pub parent_class: GtkWidgetClass,
4201}
4202
4203impl ::std::fmt::Debug for GtkPictureClass {
4204    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4205        f.debug_struct(&format!("GtkPictureClass @ {self:p}"))
4206            .field("parent_class", &self.parent_class)
4207            .finish()
4208    }
4209}
4210
4211#[derive(Copy, Clone)]
4212#[repr(C)]
4213pub struct GtkPopoverClass {
4214    pub parent_class: GtkWidgetClass,
4215    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4216    pub activate_default: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4217    pub reserved: [gpointer; 8],
4218}
4219
4220impl ::std::fmt::Debug for GtkPopoverClass {
4221    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4222        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
4223            .field("parent_class", &self.parent_class)
4224            .field("closed", &self.closed)
4225            .field("activate_default", &self.activate_default)
4226            .finish()
4227    }
4228}
4229
4230#[repr(C)]
4231#[allow(dead_code)]
4232pub struct _GtkPrintBackend {
4233    _data: [u8; 0],
4234    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4235}
4236
4237pub type GtkPrintBackend = _GtkPrintBackend;
4238
4239#[derive(Copy, Clone)]
4240#[repr(C)]
4241pub struct GtkPrintDialogClass {
4242    pub parent_class: gobject::GObjectClass,
4243}
4244
4245impl ::std::fmt::Debug for GtkPrintDialogClass {
4246    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4247        f.debug_struct(&format!("GtkPrintDialogClass @ {self:p}"))
4248            .field("parent_class", &self.parent_class)
4249            .finish()
4250    }
4251}
4252
4253#[derive(Copy, Clone)]
4254#[repr(C)]
4255pub struct GtkPrintOperationClass {
4256    pub parent_class: gobject::GObjectClass,
4257    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
4258    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4259    pub paginate:
4260        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
4261    pub request_page_setup: Option<
4262        unsafe extern "C" fn(
4263            *mut GtkPrintOperation,
4264            *mut GtkPrintContext,
4265            c_int,
4266            *mut GtkPageSetup,
4267        ),
4268    >,
4269    pub draw_page:
4270        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
4271    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4272    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
4273    pub create_custom_widget:
4274        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
4275    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
4276    pub preview: Option<
4277        unsafe extern "C" fn(
4278            *mut GtkPrintOperation,
4279            *mut GtkPrintOperationPreview,
4280            *mut GtkPrintContext,
4281            *mut GtkWindow,
4282        ) -> gboolean,
4283    >,
4284    pub update_custom_widget: Option<
4285        unsafe extern "C" fn(
4286            *mut GtkPrintOperation,
4287            *mut GtkWidget,
4288            *mut GtkPageSetup,
4289            *mut GtkPrintSettings,
4290        ),
4291    >,
4292    pub padding: [gpointer; 8],
4293}
4294
4295impl ::std::fmt::Debug for GtkPrintOperationClass {
4296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4297        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
4298            .field("parent_class", &self.parent_class)
4299            .field("done", &self.done)
4300            .field("begin_print", &self.begin_print)
4301            .field("paginate", &self.paginate)
4302            .field("request_page_setup", &self.request_page_setup)
4303            .field("draw_page", &self.draw_page)
4304            .field("end_print", &self.end_print)
4305            .field("status_changed", &self.status_changed)
4306            .field("create_custom_widget", &self.create_custom_widget)
4307            .field("custom_widget_apply", &self.custom_widget_apply)
4308            .field("preview", &self.preview)
4309            .field("update_custom_widget", &self.update_custom_widget)
4310            .finish()
4311    }
4312}
4313
4314#[derive(Copy, Clone)]
4315#[repr(C)]
4316pub struct GtkPrintOperationPreviewIface {
4317    pub g_iface: gobject::GTypeInterface,
4318    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
4319    pub got_page_size: Option<
4320        unsafe extern "C" fn(
4321            *mut GtkPrintOperationPreview,
4322            *mut GtkPrintContext,
4323            *mut GtkPageSetup,
4324        ),
4325    >,
4326    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
4327    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
4328    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
4329    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4330    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4331    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4332    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4333    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4334    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4335    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4336    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4337}
4338
4339impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
4340    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4341        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
4342            .field("g_iface", &self.g_iface)
4343            .field("ready", &self.ready)
4344            .field("got_page_size", &self.got_page_size)
4345            .field("render_page", &self.render_page)
4346            .field("is_selected", &self.is_selected)
4347            .field("end_preview", &self.end_preview)
4348            .field("_gtk_reserved1", &self._gtk_reserved1)
4349            .field("_gtk_reserved2", &self._gtk_reserved2)
4350            .field("_gtk_reserved3", &self._gtk_reserved3)
4351            .field("_gtk_reserved4", &self._gtk_reserved4)
4352            .field("_gtk_reserved5", &self._gtk_reserved5)
4353            .field("_gtk_reserved6", &self._gtk_reserved6)
4354            .field("_gtk_reserved7", &self._gtk_reserved7)
4355            .field("_gtk_reserved8", &self._gtk_reserved8)
4356            .finish()
4357    }
4358}
4359
4360#[repr(C)]
4361#[allow(dead_code)]
4362pub struct _GtkPrintOperationPrivate {
4363    _data: [u8; 0],
4364    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4365}
4366
4367pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
4368
4369#[repr(C)]
4370#[allow(dead_code)]
4371pub struct GtkPrintSetup {
4372    _data: [u8; 0],
4373    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4374}
4375
4376impl ::std::fmt::Debug for GtkPrintSetup {
4377    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4378        f.debug_struct(&format!("GtkPrintSetup @ {self:p}"))
4379            .finish()
4380    }
4381}
4382
4383#[derive(Copy, Clone)]
4384#[repr(C)]
4385pub struct GtkRangeClass {
4386    pub parent_class: GtkWidgetClass,
4387    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
4388    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
4389    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
4390    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
4391    pub change_value:
4392        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
4393    pub padding: [gpointer; 8],
4394}
4395
4396impl ::std::fmt::Debug for GtkRangeClass {
4397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4398        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
4399            .field("parent_class", &self.parent_class)
4400            .field("value_changed", &self.value_changed)
4401            .field("adjust_bounds", &self.adjust_bounds)
4402            .field("move_slider", &self.move_slider)
4403            .field("get_range_border", &self.get_range_border)
4404            .field("change_value", &self.change_value)
4405            .finish()
4406    }
4407}
4408
4409#[derive(Copy, Clone)]
4410#[repr(C)]
4411pub struct GtkRecentData {
4412    pub display_name: *mut c_char,
4413    pub description: *mut c_char,
4414    pub mime_type: *mut c_char,
4415    pub app_name: *mut c_char,
4416    pub app_exec: *mut c_char,
4417    pub groups: *mut *mut c_char,
4418    pub is_private: gboolean,
4419}
4420
4421impl ::std::fmt::Debug for GtkRecentData {
4422    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4423        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
4424            .field("display_name", &self.display_name)
4425            .field("description", &self.description)
4426            .field("mime_type", &self.mime_type)
4427            .field("app_name", &self.app_name)
4428            .field("app_exec", &self.app_exec)
4429            .field("groups", &self.groups)
4430            .field("is_private", &self.is_private)
4431            .finish()
4432    }
4433}
4434
4435#[repr(C)]
4436#[allow(dead_code)]
4437pub struct GtkRecentInfo {
4438    _data: [u8; 0],
4439    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4440}
4441
4442impl ::std::fmt::Debug for GtkRecentInfo {
4443    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4444        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
4445            .finish()
4446    }
4447}
4448
4449#[derive(Copy, Clone)]
4450#[repr(C)]
4451pub struct GtkRecentManagerClass {
4452    pub parent_class: gobject::GObjectClass,
4453    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
4454    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
4455    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
4456    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
4457    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
4458}
4459
4460impl ::std::fmt::Debug for GtkRecentManagerClass {
4461    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4462        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
4463            .field("changed", &self.changed)
4464            .field("_gtk_recent1", &self._gtk_recent1)
4465            .field("_gtk_recent2", &self._gtk_recent2)
4466            .field("_gtk_recent3", &self._gtk_recent3)
4467            .field("_gtk_recent4", &self._gtk_recent4)
4468            .finish()
4469    }
4470}
4471
4472#[repr(C)]
4473#[allow(dead_code)]
4474pub struct _GtkRecentManagerPrivate {
4475    _data: [u8; 0],
4476    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4477}
4478
4479pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
4480
4481#[derive(Copy, Clone)]
4482#[repr(C)]
4483pub struct GtkRequestedSize {
4484    pub data: gpointer,
4485    pub minimum_size: c_int,
4486    pub natural_size: c_int,
4487}
4488
4489impl ::std::fmt::Debug for GtkRequestedSize {
4490    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4491        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
4492            .field("data", &self.data)
4493            .field("minimum_size", &self.minimum_size)
4494            .field("natural_size", &self.natural_size)
4495            .finish()
4496    }
4497}
4498
4499#[derive(Copy, Clone)]
4500#[repr(C)]
4501pub struct GtkRequisition {
4502    pub width: c_int,
4503    pub height: c_int,
4504}
4505
4506impl ::std::fmt::Debug for GtkRequisition {
4507    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4508        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
4509            .field("width", &self.width)
4510            .field("height", &self.height)
4511            .finish()
4512    }
4513}
4514
4515#[repr(C)]
4516#[allow(dead_code)]
4517pub struct _GtkRootInterface {
4518    _data: [u8; 0],
4519    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4520}
4521
4522pub type GtkRootInterface = _GtkRootInterface;
4523
4524#[derive(Copy, Clone)]
4525#[repr(C)]
4526pub struct GtkScaleButtonClass {
4527    pub parent_class: GtkWidgetClass,
4528    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
4529    pub padding: [gpointer; 8],
4530}
4531
4532impl ::std::fmt::Debug for GtkScaleButtonClass {
4533    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4534        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
4535            .field("parent_class", &self.parent_class)
4536            .field("value_changed", &self.value_changed)
4537            .finish()
4538    }
4539}
4540
4541#[derive(Copy, Clone)]
4542#[repr(C)]
4543pub struct GtkScaleClass {
4544    pub parent_class: GtkRangeClass,
4545    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
4546    pub padding: [gpointer; 8],
4547}
4548
4549impl ::std::fmt::Debug for GtkScaleClass {
4550    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4551        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
4552            .field("parent_class", &self.parent_class)
4553            .field("get_layout_offsets", &self.get_layout_offsets)
4554            .finish()
4555    }
4556}
4557
4558#[repr(C)]
4559#[allow(dead_code)]
4560pub struct GtkScrollInfo {
4561    _data: [u8; 0],
4562    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4563}
4564
4565impl ::std::fmt::Debug for GtkScrollInfo {
4566    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4567        f.debug_struct(&format!("GtkScrollInfo @ {self:p}"))
4568            .finish()
4569    }
4570}
4571
4572#[derive(Copy, Clone)]
4573#[repr(C)]
4574pub struct GtkScrollableInterface {
4575    pub base_iface: gobject::GTypeInterface,
4576    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
4577}
4578
4579impl ::std::fmt::Debug for GtkScrollableInterface {
4580    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4581        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
4582            .field("base_iface", &self.base_iface)
4583            .field("get_border", &self.get_border)
4584            .finish()
4585    }
4586}
4587
4588#[derive(Copy, Clone)]
4589#[repr(C)]
4590pub struct GtkSectionModelInterface {
4591    pub g_iface: gobject::GTypeInterface,
4592    pub get_section:
4593        Option<unsafe extern "C" fn(*mut GtkSectionModel, c_uint, *mut c_uint, *mut c_uint)>,
4594}
4595
4596impl ::std::fmt::Debug for GtkSectionModelInterface {
4597    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4598        f.debug_struct(&format!("GtkSectionModelInterface @ {self:p}"))
4599            .field("get_section", &self.get_section)
4600            .finish()
4601    }
4602}
4603
4604#[derive(Copy, Clone)]
4605#[repr(C)]
4606pub struct GtkSelectionFilterModelClass {
4607    pub parent_class: gobject::GObjectClass,
4608}
4609
4610impl ::std::fmt::Debug for GtkSelectionFilterModelClass {
4611    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4612        f.debug_struct(&format!("GtkSelectionFilterModelClass @ {self:p}"))
4613            .field("parent_class", &self.parent_class)
4614            .finish()
4615    }
4616}
4617
4618#[derive(Copy, Clone)]
4619#[repr(C)]
4620pub struct GtkSelectionModelInterface {
4621    pub g_iface: gobject::GTypeInterface,
4622    pub is_selected: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4623    pub get_selection_in_range:
4624        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> *mut GtkBitset>,
4625    pub select_item:
4626        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, gboolean) -> gboolean>,
4627    pub unselect_item: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4628    pub select_range:
4629        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint, gboolean) -> gboolean>,
4630    pub unselect_range:
4631        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> gboolean>,
4632    pub select_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4633    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4634    pub set_selection: Option<
4635        unsafe extern "C" fn(*mut GtkSelectionModel, *mut GtkBitset, *mut GtkBitset) -> gboolean,
4636    >,
4637}
4638
4639impl ::std::fmt::Debug for GtkSelectionModelInterface {
4640    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4641        f.debug_struct(&format!("GtkSelectionModelInterface @ {self:p}"))
4642            .field("is_selected", &self.is_selected)
4643            .field("get_selection_in_range", &self.get_selection_in_range)
4644            .field("select_item", &self.select_item)
4645            .field("unselect_item", &self.unselect_item)
4646            .field("select_range", &self.select_range)
4647            .field("unselect_range", &self.unselect_range)
4648            .field("select_all", &self.select_all)
4649            .field("unselect_all", &self.unselect_all)
4650            .field("set_selection", &self.set_selection)
4651            .finish()
4652    }
4653}
4654
4655#[repr(C)]
4656#[allow(dead_code)]
4657pub struct _GtkShortcutActionClass {
4658    _data: [u8; 0],
4659    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4660}
4661
4662pub type GtkShortcutActionClass = _GtkShortcutActionClass;
4663
4664#[derive(Copy, Clone)]
4665#[repr(C)]
4666pub struct GtkShortcutClass {
4667    pub parent_class: gobject::GObjectClass,
4668}
4669
4670impl ::std::fmt::Debug for GtkShortcutClass {
4671    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4672        f.debug_struct(&format!("GtkShortcutClass @ {self:p}"))
4673            .field("parent_class", &self.parent_class)
4674            .finish()
4675    }
4676}
4677
4678#[repr(C)]
4679#[allow(dead_code)]
4680pub struct _GtkShortcutControllerClass {
4681    _data: [u8; 0],
4682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4683}
4684
4685pub type GtkShortcutControllerClass = _GtkShortcutControllerClass;
4686
4687#[repr(C)]
4688#[allow(dead_code)]
4689pub struct _GtkShortcutLabelClass {
4690    _data: [u8; 0],
4691    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4692}
4693
4694pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
4695
4696#[derive(Copy, Clone)]
4697#[repr(C)]
4698pub struct GtkShortcutManagerInterface {
4699    pub g_iface: gobject::GTypeInterface,
4700    pub add_controller:
4701        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4702    pub remove_controller:
4703        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4704}
4705
4706impl ::std::fmt::Debug for GtkShortcutManagerInterface {
4707    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4708        f.debug_struct(&format!("GtkShortcutManagerInterface @ {self:p}"))
4709            .field("add_controller", &self.add_controller)
4710            .field("remove_controller", &self.remove_controller)
4711            .finish()
4712    }
4713}
4714
4715#[repr(C)]
4716#[allow(dead_code)]
4717pub struct _GtkShortcutTriggerClass {
4718    _data: [u8; 0],
4719    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4720}
4721
4722pub type GtkShortcutTriggerClass = _GtkShortcutTriggerClass;
4723
4724#[repr(C)]
4725#[allow(dead_code)]
4726pub struct _GtkShortcutsGroupClass {
4727    _data: [u8; 0],
4728    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4729}
4730
4731pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
4732
4733#[repr(C)]
4734#[allow(dead_code)]
4735pub struct _GtkShortcutsSectionClass {
4736    _data: [u8; 0],
4737    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4738}
4739
4740pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
4741
4742#[repr(C)]
4743#[allow(dead_code)]
4744pub struct _GtkShortcutsShortcutClass {
4745    _data: [u8; 0],
4746    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4747}
4748
4749pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
4750
4751#[repr(C)]
4752#[allow(dead_code)]
4753pub struct _GtkSignalActionClass {
4754    _data: [u8; 0],
4755    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4756}
4757
4758pub type GtkSignalActionClass = _GtkSignalActionClass;
4759
4760#[repr(C)]
4761#[allow(dead_code)]
4762pub struct _GtkSignalListItemFactoryClass {
4763    _data: [u8; 0],
4764    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4765}
4766
4767pub type GtkSignalListItemFactoryClass = _GtkSignalListItemFactoryClass;
4768
4769#[derive(Copy, Clone)]
4770#[repr(C)]
4771pub struct GtkSingleSelectionClass {
4772    pub parent_class: gobject::GObjectClass,
4773}
4774
4775impl ::std::fmt::Debug for GtkSingleSelectionClass {
4776    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4777        f.debug_struct(&format!("GtkSingleSelectionClass @ {self:p}"))
4778            .field("parent_class", &self.parent_class)
4779            .finish()
4780    }
4781}
4782
4783#[derive(Copy, Clone)]
4784#[repr(C)]
4785pub struct GtkSliceListModelClass {
4786    pub parent_class: gobject::GObjectClass,
4787}
4788
4789impl ::std::fmt::Debug for GtkSliceListModelClass {
4790    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4791        f.debug_struct(&format!("GtkSliceListModelClass @ {self:p}"))
4792            .field("parent_class", &self.parent_class)
4793            .finish()
4794    }
4795}
4796
4797#[repr(C)]
4798#[allow(dead_code)]
4799pub struct _GtkSnapshotClass {
4800    _data: [u8; 0],
4801    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4802}
4803
4804pub type GtkSnapshotClass = _GtkSnapshotClass;
4805
4806#[derive(Copy, Clone)]
4807#[repr(C)]
4808pub struct GtkSortListModelClass {
4809    pub parent_class: gobject::GObjectClass,
4810}
4811
4812impl ::std::fmt::Debug for GtkSortListModelClass {
4813    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4814        f.debug_struct(&format!("GtkSortListModelClass @ {self:p}"))
4815            .field("parent_class", &self.parent_class)
4816            .finish()
4817    }
4818}
4819
4820#[derive(Copy, Clone)]
4821#[repr(C)]
4822pub struct GtkSorterClass {
4823    pub parent_class: gobject::GObjectClass,
4824    pub compare: Option<
4825        unsafe extern "C" fn(
4826            *mut GtkSorter,
4827            *mut gobject::GObject,
4828            *mut gobject::GObject,
4829        ) -> GtkOrdering,
4830    >,
4831    pub get_order: Option<unsafe extern "C" fn(*mut GtkSorter) -> GtkSorterOrder>,
4832    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4833    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4834    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4835    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4836    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4837    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4838    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4839    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4840}
4841
4842impl ::std::fmt::Debug for GtkSorterClass {
4843    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4844        f.debug_struct(&format!("GtkSorterClass @ {self:p}"))
4845            .field("parent_class", &self.parent_class)
4846            .field("compare", &self.compare)
4847            .field("get_order", &self.get_order)
4848            .field("_gtk_reserved1", &self._gtk_reserved1)
4849            .field("_gtk_reserved2", &self._gtk_reserved2)
4850            .field("_gtk_reserved3", &self._gtk_reserved3)
4851            .field("_gtk_reserved4", &self._gtk_reserved4)
4852            .field("_gtk_reserved5", &self._gtk_reserved5)
4853            .field("_gtk_reserved6", &self._gtk_reserved6)
4854            .field("_gtk_reserved7", &self._gtk_reserved7)
4855            .field("_gtk_reserved8", &self._gtk_reserved8)
4856            .finish()
4857    }
4858}
4859
4860#[derive(Copy, Clone)]
4861#[repr(C)]
4862pub struct GtkStringFilterClass {
4863    pub parent_class: GtkFilterClass,
4864}
4865
4866impl ::std::fmt::Debug for GtkStringFilterClass {
4867    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4868        f.debug_struct(&format!("GtkStringFilterClass @ {self:p}"))
4869            .field("parent_class", &self.parent_class)
4870            .finish()
4871    }
4872}
4873
4874#[derive(Copy, Clone)]
4875#[repr(C)]
4876pub struct GtkStringListClass {
4877    pub parent_class: gobject::GObjectClass,
4878}
4879
4880impl ::std::fmt::Debug for GtkStringListClass {
4881    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4882        f.debug_struct(&format!("GtkStringListClass @ {self:p}"))
4883            .field("parent_class", &self.parent_class)
4884            .finish()
4885    }
4886}
4887
4888#[derive(Copy, Clone)]
4889#[repr(C)]
4890pub struct GtkStringObjectClass {
4891    pub parent_class: gobject::GObjectClass,
4892}
4893
4894impl ::std::fmt::Debug for GtkStringObjectClass {
4895    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4896        f.debug_struct(&format!("GtkStringObjectClass @ {self:p}"))
4897            .field("parent_class", &self.parent_class)
4898            .finish()
4899    }
4900}
4901
4902#[derive(Copy, Clone)]
4903#[repr(C)]
4904pub struct GtkStringSorterClass {
4905    pub parent_class: GtkSorterClass,
4906}
4907
4908impl ::std::fmt::Debug for GtkStringSorterClass {
4909    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4910        f.debug_struct(&format!("GtkStringSorterClass @ {self:p}"))
4911            .field("parent_class", &self.parent_class)
4912            .finish()
4913    }
4914}
4915
4916#[derive(Copy, Clone)]
4917#[repr(C)]
4918pub struct GtkStyleContextClass {
4919    pub parent_class: gobject::GObjectClass,
4920    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
4921    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4922    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4923    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4924    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4925}
4926
4927impl ::std::fmt::Debug for GtkStyleContextClass {
4928    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4929        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
4930            .field("parent_class", &self.parent_class)
4931            .field("changed", &self.changed)
4932            .field("_gtk_reserved1", &self._gtk_reserved1)
4933            .field("_gtk_reserved2", &self._gtk_reserved2)
4934            .field("_gtk_reserved3", &self._gtk_reserved3)
4935            .field("_gtk_reserved4", &self._gtk_reserved4)
4936            .finish()
4937    }
4938}
4939
4940#[derive(Copy, Clone)]
4941#[repr(C)]
4942pub struct GtkSymbolicPaintableInterface {
4943    pub g_iface: gobject::GTypeInterface,
4944    pub snapshot_symbolic: Option<
4945        unsafe extern "C" fn(
4946            *mut GtkSymbolicPaintable,
4947            *mut gdk::GdkSnapshot,
4948            c_double,
4949            c_double,
4950            *const gdk::GdkRGBA,
4951            size_t,
4952        ),
4953    >,
4954}
4955
4956impl ::std::fmt::Debug for GtkSymbolicPaintableInterface {
4957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4958        f.debug_struct(&format!("GtkSymbolicPaintableInterface @ {self:p}"))
4959            .field("snapshot_symbolic", &self.snapshot_symbolic)
4960            .finish()
4961    }
4962}
4963
4964#[derive(Copy, Clone)]
4965#[repr(C)]
4966pub struct GtkTextBufferClass {
4967    pub parent_class: gobject::GObjectClass,
4968    pub insert_text:
4969        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
4970    pub insert_paintable:
4971        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk::GdkPaintable)>,
4972    pub insert_child_anchor:
4973        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
4974    pub delete_range:
4975        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
4976    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
4977    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
4978    pub mark_set:
4979        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
4980    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
4981    pub apply_tag: Option<
4982        unsafe extern "C" fn(
4983            *mut GtkTextBuffer,
4984            *mut GtkTextTag,
4985            *const GtkTextIter,
4986            *const GtkTextIter,
4987        ),
4988    >,
4989    pub remove_tag: Option<
4990        unsafe extern "C" fn(
4991            *mut GtkTextBuffer,
4992            *mut GtkTextTag,
4993            *const GtkTextIter,
4994            *const GtkTextIter,
4995        ),
4996    >,
4997    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
4998    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
4999    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut gdk::GdkClipboard)>,
5000    pub undo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5001    pub redo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5002    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5003    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5004    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5005    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5006}
5007
5008impl ::std::fmt::Debug for GtkTextBufferClass {
5009    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5010        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
5011            .field("parent_class", &self.parent_class)
5012            .field("insert_text", &self.insert_text)
5013            .field("insert_paintable", &self.insert_paintable)
5014            .field("insert_child_anchor", &self.insert_child_anchor)
5015            .field("delete_range", &self.delete_range)
5016            .field("changed", &self.changed)
5017            .field("modified_changed", &self.modified_changed)
5018            .field("mark_set", &self.mark_set)
5019            .field("mark_deleted", &self.mark_deleted)
5020            .field("apply_tag", &self.apply_tag)
5021            .field("remove_tag", &self.remove_tag)
5022            .field("begin_user_action", &self.begin_user_action)
5023            .field("end_user_action", &self.end_user_action)
5024            .field("paste_done", &self.paste_done)
5025            .field("undo", &self.undo)
5026            .field("redo", &self.redo)
5027            .field("_gtk_reserved1", &self._gtk_reserved1)
5028            .field("_gtk_reserved2", &self._gtk_reserved2)
5029            .field("_gtk_reserved3", &self._gtk_reserved3)
5030            .field("_gtk_reserved4", &self._gtk_reserved4)
5031            .finish()
5032    }
5033}
5034
5035#[repr(C)]
5036#[allow(dead_code)]
5037pub struct _GtkTextBufferPrivate {
5038    _data: [u8; 0],
5039    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5040}
5041
5042pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
5043
5044#[derive(Copy, Clone)]
5045#[repr(C)]
5046pub struct GtkTextChildAnchorClass {
5047    pub parent_class: gobject::GObjectClass,
5048    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5049    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5050    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5051    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5052}
5053
5054impl ::std::fmt::Debug for GtkTextChildAnchorClass {
5055    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5056        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
5057            .field("parent_class", &self.parent_class)
5058            .field("_gtk_reserved1", &self._gtk_reserved1)
5059            .field("_gtk_reserved2", &self._gtk_reserved2)
5060            .field("_gtk_reserved3", &self._gtk_reserved3)
5061            .field("_gtk_reserved4", &self._gtk_reserved4)
5062            .finish()
5063    }
5064}
5065
5066#[derive(Copy, Clone)]
5067#[repr(C)]
5068pub struct GtkTextIter {
5069    pub dummy1: gpointer,
5070    pub dummy2: gpointer,
5071    pub dummy3: c_int,
5072    pub dummy4: c_int,
5073    pub dummy5: c_int,
5074    pub dummy6: c_int,
5075    pub dummy7: c_int,
5076    pub dummy8: c_int,
5077    pub dummy9: gpointer,
5078    pub dummy10: gpointer,
5079    pub dummy11: c_int,
5080    pub dummy12: c_int,
5081    pub dummy13: c_int,
5082    pub dummy14: gpointer,
5083}
5084
5085impl ::std::fmt::Debug for GtkTextIter {
5086    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5087        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
5088    }
5089}
5090
5091#[derive(Copy, Clone)]
5092#[repr(C)]
5093pub struct GtkTextMarkClass {
5094    pub parent_class: gobject::GObjectClass,
5095    pub padding: [gpointer; 8],
5096}
5097
5098impl ::std::fmt::Debug for GtkTextMarkClass {
5099    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5100        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
5101            .field("parent_class", &self.parent_class)
5102            .finish()
5103    }
5104}
5105
5106#[derive(Copy, Clone)]
5107#[repr(C)]
5108pub struct GtkTextTagClass {
5109    pub parent_class: gobject::GObjectClass,
5110    pub padding: [gpointer; 8],
5111}
5112
5113impl ::std::fmt::Debug for GtkTextTagClass {
5114    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5115        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
5116            .field("parent_class", &self.parent_class)
5117            .finish()
5118    }
5119}
5120
5121#[repr(C)]
5122#[allow(dead_code)]
5123pub struct _GtkTextTagPrivate {
5124    _data: [u8; 0],
5125    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5126}
5127
5128pub type GtkTextTagPrivate = _GtkTextTagPrivate;
5129
5130#[derive(Copy, Clone)]
5131#[repr(C)]
5132pub struct GtkTextViewClass {
5133    pub parent_class: GtkWidgetClass,
5134    pub move_cursor:
5135        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
5136    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5137    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
5138    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
5139    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5140    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5141    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5142    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5143    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5144    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
5145    pub snapshot_layer:
5146        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut GtkSnapshot)>,
5147    pub extend_selection: Option<
5148        unsafe extern "C" fn(
5149            *mut GtkTextView,
5150            GtkTextExtendSelection,
5151            *const GtkTextIter,
5152            *mut GtkTextIter,
5153            *mut GtkTextIter,
5154        ) -> gboolean,
5155    >,
5156    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5157    pub padding: [gpointer; 8],
5158}
5159
5160impl ::std::fmt::Debug for GtkTextViewClass {
5161    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5162        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
5163            .field("parent_class", &self.parent_class)
5164            .field("move_cursor", &self.move_cursor)
5165            .field("set_anchor", &self.set_anchor)
5166            .field("insert_at_cursor", &self.insert_at_cursor)
5167            .field("delete_from_cursor", &self.delete_from_cursor)
5168            .field("backspace", &self.backspace)
5169            .field("cut_clipboard", &self.cut_clipboard)
5170            .field("copy_clipboard", &self.copy_clipboard)
5171            .field("paste_clipboard", &self.paste_clipboard)
5172            .field("toggle_overwrite", &self.toggle_overwrite)
5173            .field("create_buffer", &self.create_buffer)
5174            .field("snapshot_layer", &self.snapshot_layer)
5175            .field("extend_selection", &self.extend_selection)
5176            .field("insert_emoji", &self.insert_emoji)
5177            .finish()
5178    }
5179}
5180
5181#[repr(C)]
5182#[allow(dead_code)]
5183pub struct _GtkTextViewPrivate {
5184    _data: [u8; 0],
5185    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5186}
5187
5188pub type GtkTextViewPrivate = _GtkTextViewPrivate;
5189
5190#[derive(Copy, Clone)]
5191#[repr(C)]
5192pub struct GtkToggleButtonClass {
5193    pub parent_class: GtkButtonClass,
5194    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
5195    pub padding: [gpointer; 8],
5196}
5197
5198impl ::std::fmt::Debug for GtkToggleButtonClass {
5199    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5200        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
5201            .field("parent_class", &self.parent_class)
5202            .field("toggled", &self.toggled)
5203            .finish()
5204    }
5205}
5206
5207#[derive(Copy, Clone)]
5208#[repr(C)]
5209pub struct GtkTreeDragDestIface {
5210    pub g_iface: gobject::GTypeInterface,
5211    pub drag_data_received: Option<
5212        unsafe extern "C" fn(
5213            *mut GtkTreeDragDest,
5214            *mut GtkTreePath,
5215            *const gobject::GValue,
5216        ) -> gboolean,
5217    >,
5218    pub row_drop_possible: Option<
5219        unsafe extern "C" fn(
5220            *mut GtkTreeDragDest,
5221            *mut GtkTreePath,
5222            *const gobject::GValue,
5223        ) -> gboolean,
5224    >,
5225}
5226
5227impl ::std::fmt::Debug for GtkTreeDragDestIface {
5228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5229        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
5230            .field("drag_data_received", &self.drag_data_received)
5231            .field("row_drop_possible", &self.row_drop_possible)
5232            .finish()
5233    }
5234}
5235
5236#[derive(Copy, Clone)]
5237#[repr(C)]
5238pub struct GtkTreeDragSourceIface {
5239    pub g_iface: gobject::GTypeInterface,
5240    pub row_draggable:
5241        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5242    pub drag_data_get: Option<
5243        unsafe extern "C" fn(
5244            *mut GtkTreeDragSource,
5245            *mut GtkTreePath,
5246        ) -> *mut gdk::GdkContentProvider,
5247    >,
5248    pub drag_data_delete:
5249        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5250}
5251
5252impl ::std::fmt::Debug for GtkTreeDragSourceIface {
5253    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5254        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
5255            .field("row_draggable", &self.row_draggable)
5256            .field("drag_data_get", &self.drag_data_get)
5257            .field("drag_data_delete", &self.drag_data_delete)
5258            .finish()
5259    }
5260}
5261
5262#[derive(Copy, Clone)]
5263#[repr(C)]
5264pub struct GtkTreeExpanderClass {
5265    pub parent_class: GtkWidgetClass,
5266}
5267
5268impl ::std::fmt::Debug for GtkTreeExpanderClass {
5269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5270        f.debug_struct(&format!("GtkTreeExpanderClass @ {self:p}"))
5271            .field("parent_class", &self.parent_class)
5272            .finish()
5273    }
5274}
5275
5276#[derive(Copy, Clone)]
5277#[repr(C)]
5278pub struct GtkTreeIter {
5279    pub stamp: c_int,
5280    pub user_data: gpointer,
5281    pub user_data2: gpointer,
5282    pub user_data3: gpointer,
5283}
5284
5285impl ::std::fmt::Debug for GtkTreeIter {
5286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5287        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
5288            .field("stamp", &self.stamp)
5289            .field("user_data", &self.user_data)
5290            .field("user_data2", &self.user_data2)
5291            .field("user_data3", &self.user_data3)
5292            .finish()
5293    }
5294}
5295
5296#[derive(Copy, Clone)]
5297#[repr(C)]
5298pub struct GtkTreeListModelClass {
5299    pub parent_class: gobject::GObjectClass,
5300}
5301
5302impl ::std::fmt::Debug for GtkTreeListModelClass {
5303    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5304        f.debug_struct(&format!("GtkTreeListModelClass @ {self:p}"))
5305            .field("parent_class", &self.parent_class)
5306            .finish()
5307    }
5308}
5309
5310#[derive(Copy, Clone)]
5311#[repr(C)]
5312pub struct GtkTreeListRowClass {
5313    pub parent_class: gobject::GObjectClass,
5314}
5315
5316impl ::std::fmt::Debug for GtkTreeListRowClass {
5317    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5318        f.debug_struct(&format!("GtkTreeListRowClass @ {self:p}"))
5319            .field("parent_class", &self.parent_class)
5320            .finish()
5321    }
5322}
5323
5324#[derive(Copy, Clone)]
5325#[repr(C)]
5326pub struct GtkTreeListRowSorterClass {
5327    pub parent_class: GtkSorterClass,
5328}
5329
5330impl ::std::fmt::Debug for GtkTreeListRowSorterClass {
5331    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5332        f.debug_struct(&format!("GtkTreeListRowSorterClass @ {self:p}"))
5333            .field("parent_class", &self.parent_class)
5334            .finish()
5335    }
5336}
5337
5338#[derive(Copy, Clone)]
5339#[repr(C)]
5340pub struct GtkTreeModelFilterClass {
5341    pub parent_class: gobject::GObjectClass,
5342    pub visible: Option<
5343        unsafe extern "C" fn(
5344            *mut GtkTreeModelFilter,
5345            *mut GtkTreeModel,
5346            *mut GtkTreeIter,
5347        ) -> gboolean,
5348    >,
5349    pub modify: Option<
5350        unsafe extern "C" fn(
5351            *mut GtkTreeModelFilter,
5352            *mut GtkTreeModel,
5353            *mut GtkTreeIter,
5354            *mut gobject::GValue,
5355            c_int,
5356        ),
5357    >,
5358    pub padding: [gpointer; 8],
5359}
5360
5361impl ::std::fmt::Debug for GtkTreeModelFilterClass {
5362    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5363        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
5364            .field("parent_class", &self.parent_class)
5365            .field("visible", &self.visible)
5366            .field("modify", &self.modify)
5367            .finish()
5368    }
5369}
5370
5371#[repr(C)]
5372#[allow(dead_code)]
5373pub struct _GtkTreeModelFilterPrivate {
5374    _data: [u8; 0],
5375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5376}
5377
5378pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
5379
5380#[derive(Copy, Clone)]
5381#[repr(C)]
5382pub struct GtkTreeModelIface {
5383    pub g_iface: gobject::GTypeInterface,
5384    pub row_changed:
5385        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5386    pub row_inserted:
5387        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5388    pub row_has_child_toggled:
5389        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5390    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
5391    pub rows_reordered: Option<
5392        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
5393    >,
5394    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
5395    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
5396    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
5397    pub get_iter: Option<
5398        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5399    >,
5400    pub get_path:
5401        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
5402    pub get_value: Option<
5403        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
5404    >,
5405    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5406    pub iter_previous:
5407        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5408    pub iter_children: Option<
5409        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5410    >,
5411    pub iter_has_child:
5412        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5413    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
5414    pub iter_nth_child: Option<
5415        unsafe extern "C" fn(
5416            *mut GtkTreeModel,
5417            *mut GtkTreeIter,
5418            *mut GtkTreeIter,
5419            c_int,
5420        ) -> gboolean,
5421    >,
5422    pub iter_parent: Option<
5423        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5424    >,
5425    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5426    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5427}
5428
5429impl ::std::fmt::Debug for GtkTreeModelIface {
5430    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5431        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
5432            .field("row_changed", &self.row_changed)
5433            .field("row_inserted", &self.row_inserted)
5434            .field("row_has_child_toggled", &self.row_has_child_toggled)
5435            .field("row_deleted", &self.row_deleted)
5436            .field("rows_reordered", &self.rows_reordered)
5437            .field("get_flags", &self.get_flags)
5438            .field("get_n_columns", &self.get_n_columns)
5439            .field("get_column_type", &self.get_column_type)
5440            .field("get_iter", &self.get_iter)
5441            .field("get_path", &self.get_path)
5442            .field("get_value", &self.get_value)
5443            .field("iter_next", &self.iter_next)
5444            .field("iter_previous", &self.iter_previous)
5445            .field("iter_children", &self.iter_children)
5446            .field("iter_has_child", &self.iter_has_child)
5447            .field("iter_n_children", &self.iter_n_children)
5448            .field("iter_nth_child", &self.iter_nth_child)
5449            .field("iter_parent", &self.iter_parent)
5450            .field("ref_node", &self.ref_node)
5451            .field("unref_node", &self.unref_node)
5452            .finish()
5453    }
5454}
5455
5456#[derive(Copy, Clone)]
5457#[repr(C)]
5458pub struct GtkTreeModelSortClass {
5459    pub parent_class: gobject::GObjectClass,
5460    pub padding: [gpointer; 8],
5461}
5462
5463impl ::std::fmt::Debug for GtkTreeModelSortClass {
5464    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5465        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
5466            .field("parent_class", &self.parent_class)
5467            .finish()
5468    }
5469}
5470
5471#[repr(C)]
5472#[allow(dead_code)]
5473pub struct _GtkTreeModelSortPrivate {
5474    _data: [u8; 0],
5475    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5476}
5477
5478pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
5479
5480#[repr(C)]
5481#[allow(dead_code)]
5482pub struct GtkTreePath {
5483    _data: [u8; 0],
5484    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5485}
5486
5487impl ::std::fmt::Debug for GtkTreePath {
5488    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5489        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
5490    }
5491}
5492
5493#[repr(C)]
5494#[allow(dead_code)]
5495pub struct GtkTreeRowReference {
5496    _data: [u8; 0],
5497    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5498}
5499
5500impl ::std::fmt::Debug for GtkTreeRowReference {
5501    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5502        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
5503            .finish()
5504    }
5505}
5506
5507#[derive(Copy, Clone)]
5508#[repr(C)]
5509pub struct GtkTreeSortableIface {
5510    pub g_iface: gobject::GTypeInterface,
5511    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
5512    pub get_sort_column_id: Option<
5513        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
5514    >,
5515    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
5516    pub set_sort_func: Option<
5517        unsafe extern "C" fn(
5518            *mut GtkTreeSortable,
5519            c_int,
5520            GtkTreeIterCompareFunc,
5521            gpointer,
5522            glib::GDestroyNotify,
5523        ),
5524    >,
5525    pub set_default_sort_func: Option<
5526        unsafe extern "C" fn(
5527            *mut GtkTreeSortable,
5528            GtkTreeIterCompareFunc,
5529            gpointer,
5530            glib::GDestroyNotify,
5531        ),
5532    >,
5533    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
5534}
5535
5536impl ::std::fmt::Debug for GtkTreeSortableIface {
5537    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5538        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
5539            .field("sort_column_changed", &self.sort_column_changed)
5540            .field("get_sort_column_id", &self.get_sort_column_id)
5541            .field("set_sort_column_id", &self.set_sort_column_id)
5542            .field("set_sort_func", &self.set_sort_func)
5543            .field("set_default_sort_func", &self.set_default_sort_func)
5544            .field("has_default_sort_func", &self.has_default_sort_func)
5545            .finish()
5546    }
5547}
5548
5549#[derive(Copy, Clone)]
5550#[repr(C)]
5551pub struct GtkTreeStoreClass {
5552    pub parent_class: gobject::GObjectClass,
5553    pub padding: [gpointer; 8],
5554}
5555
5556impl ::std::fmt::Debug for GtkTreeStoreClass {
5557    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5558        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
5559            .field("parent_class", &self.parent_class)
5560            .finish()
5561    }
5562}
5563
5564#[repr(C)]
5565#[allow(dead_code)]
5566pub struct _GtkTreeStorePrivate {
5567    _data: [u8; 0],
5568    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5569}
5570
5571pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
5572
5573#[derive(Copy, Clone)]
5574#[repr(C)]
5575pub struct GtkTreeViewClass {
5576    pub parent_class: GtkWidgetClass,
5577    pub row_activated:
5578        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
5579    pub test_expand_row: Option<
5580        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5581    >,
5582    pub test_collapse_row: Option<
5583        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5584    >,
5585    pub row_expanded:
5586        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5587    pub row_collapsed:
5588        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5589    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5590    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5591    pub move_cursor: Option<
5592        unsafe extern "C" fn(
5593            *mut GtkTreeView,
5594            GtkMovementStep,
5595            c_int,
5596            gboolean,
5597            gboolean,
5598        ) -> gboolean,
5599    >,
5600    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5601    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5602    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
5603    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5604    pub expand_collapse_cursor_row:
5605        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
5606    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5607    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5608    pub _reserved: [gpointer; 16],
5609}
5610
5611impl ::std::fmt::Debug for GtkTreeViewClass {
5612    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5613        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
5614            .field("parent_class", &self.parent_class)
5615            .field("row_activated", &self.row_activated)
5616            .field("test_expand_row", &self.test_expand_row)
5617            .field("test_collapse_row", &self.test_collapse_row)
5618            .field("row_expanded", &self.row_expanded)
5619            .field("row_collapsed", &self.row_collapsed)
5620            .field("columns_changed", &self.columns_changed)
5621            .field("cursor_changed", &self.cursor_changed)
5622            .field("move_cursor", &self.move_cursor)
5623            .field("select_all", &self.select_all)
5624            .field("unselect_all", &self.unselect_all)
5625            .field("select_cursor_row", &self.select_cursor_row)
5626            .field("toggle_cursor_row", &self.toggle_cursor_row)
5627            .field(
5628                "expand_collapse_cursor_row",
5629                &self.expand_collapse_cursor_row,
5630            )
5631            .field("select_cursor_parent", &self.select_cursor_parent)
5632            .field("start_interactive_search", &self.start_interactive_search)
5633            .finish()
5634    }
5635}
5636
5637#[derive(Copy, Clone)]
5638#[repr(C)]
5639pub struct GtkUriLauncherClass {
5640    pub parent_class: gobject::GObjectClass,
5641}
5642
5643impl ::std::fmt::Debug for GtkUriLauncherClass {
5644    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5645        f.debug_struct(&format!("GtkUriLauncherClass @ {self:p}"))
5646            .field("parent_class", &self.parent_class)
5647            .finish()
5648    }
5649}
5650
5651#[derive(Copy, Clone)]
5652#[repr(C)]
5653pub struct GtkVideoClass {
5654    pub parent_class: GtkWidgetClass,
5655}
5656
5657impl ::std::fmt::Debug for GtkVideoClass {
5658    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5659        f.debug_struct(&format!("GtkVideoClass @ {self:p}"))
5660            .field("parent_class", &self.parent_class)
5661            .finish()
5662    }
5663}
5664
5665#[derive(Copy, Clone)]
5666#[repr(C)]
5667pub struct GtkWidgetClass {
5668    pub parent_class: gobject::GInitiallyUnownedClass,
5669    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5670    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5671    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5672    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5673    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5674    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5675    pub root: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5676    pub unroot: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5677    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>,
5678    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
5679    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
5680    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
5681    pub measure: Option<
5682        unsafe extern "C" fn(
5683            *mut GtkWidget,
5684            GtkOrientation,
5685            c_int,
5686            *mut c_int,
5687            *mut c_int,
5688            *mut c_int,
5689            *mut c_int,
5690        ),
5691    >,
5692    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
5693    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
5694    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5695    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
5696    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
5697    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5698    pub query_tooltip: Option<
5699        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
5700    >,
5701    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
5702    pub css_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkCssStyleChange)>,
5703    pub system_setting_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkSystemSetting)>,
5704    pub snapshot: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSnapshot)>,
5705    pub contains: Option<unsafe extern "C" fn(*mut GtkWidget, c_double, c_double) -> gboolean>,
5706    pub priv_: *mut GtkWidgetClassPrivate,
5707    pub padding: [gpointer; 8],
5708}
5709
5710impl ::std::fmt::Debug for GtkWidgetClass {
5711    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5712        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
5713            .field("parent_class", &self.parent_class)
5714            .field("show", &self.show)
5715            .field("hide", &self.hide)
5716            .field("map", &self.map)
5717            .field("unmap", &self.unmap)
5718            .field("realize", &self.realize)
5719            .field("unrealize", &self.unrealize)
5720            .field("root", &self.root)
5721            .field("unroot", &self.unroot)
5722            .field("size_allocate", &self.size_allocate)
5723            .field("state_flags_changed", &self.state_flags_changed)
5724            .field("direction_changed", &self.direction_changed)
5725            .field("get_request_mode", &self.get_request_mode)
5726            .field("measure", &self.measure)
5727            .field("mnemonic_activate", &self.mnemonic_activate)
5728            .field("grab_focus", &self.grab_focus)
5729            .field("focus", &self.focus)
5730            .field("set_focus_child", &self.set_focus_child)
5731            .field("move_focus", &self.move_focus)
5732            .field("keynav_failed", &self.keynav_failed)
5733            .field("query_tooltip", &self.query_tooltip)
5734            .field("compute_expand", &self.compute_expand)
5735            .field("css_changed", &self.css_changed)
5736            .field("system_setting_changed", &self.system_setting_changed)
5737            .field("snapshot", &self.snapshot)
5738            .field("contains", &self.contains)
5739            .finish()
5740    }
5741}
5742
5743#[repr(C)]
5744#[allow(dead_code)]
5745pub struct _GtkWidgetClassPrivate {
5746    _data: [u8; 0],
5747    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5748}
5749
5750pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
5751
5752#[derive(Copy, Clone)]
5753#[repr(C)]
5754pub struct GtkWidgetPaintableClass {
5755    pub parent_class: gobject::GObjectClass,
5756}
5757
5758impl ::std::fmt::Debug for GtkWidgetPaintableClass {
5759    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5760        f.debug_struct(&format!("GtkWidgetPaintableClass @ {self:p}"))
5761            .field("parent_class", &self.parent_class)
5762            .finish()
5763    }
5764}
5765
5766#[repr(C)]
5767#[allow(dead_code)]
5768pub struct _GtkWidgetPrivate {
5769    _data: [u8; 0],
5770    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5771}
5772
5773pub type GtkWidgetPrivate = _GtkWidgetPrivate;
5774
5775#[derive(Copy, Clone)]
5776#[repr(C)]
5777pub struct GtkWindowClass {
5778    pub parent_class: GtkWidgetClass,
5779    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5780    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5781    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5782    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
5783    pub close_request: Option<unsafe extern "C" fn(*mut GtkWindow) -> gboolean>,
5784    pub padding: [gpointer; 8],
5785}
5786
5787impl ::std::fmt::Debug for GtkWindowClass {
5788    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5789        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
5790            .field("parent_class", &self.parent_class)
5791            .field("activate_focus", &self.activate_focus)
5792            .field("activate_default", &self.activate_default)
5793            .field("keys_changed", &self.keys_changed)
5794            .field("enable_debugging", &self.enable_debugging)
5795            .field("close_request", &self.close_request)
5796            .finish()
5797    }
5798}
5799
5800#[derive(Copy, Clone)]
5801#[repr(C)]
5802pub struct GtkWindowControlsClass {
5803    pub parent_class: GtkWidgetClass,
5804}
5805
5806impl ::std::fmt::Debug for GtkWindowControlsClass {
5807    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5808        f.debug_struct(&format!("GtkWindowControlsClass @ {self:p}"))
5809            .field("parent_class", &self.parent_class)
5810            .finish()
5811    }
5812}
5813
5814#[derive(Copy, Clone)]
5815#[repr(C)]
5816pub struct GtkWindowGroupClass {
5817    pub parent_class: gobject::GObjectClass,
5818    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5819    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5820    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5821    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5822}
5823
5824impl ::std::fmt::Debug for GtkWindowGroupClass {
5825    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5826        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
5827            .field("parent_class", &self.parent_class)
5828            .field("_gtk_reserved1", &self._gtk_reserved1)
5829            .field("_gtk_reserved2", &self._gtk_reserved2)
5830            .field("_gtk_reserved3", &self._gtk_reserved3)
5831            .field("_gtk_reserved4", &self._gtk_reserved4)
5832            .finish()
5833    }
5834}
5835
5836#[repr(C)]
5837#[allow(dead_code)]
5838pub struct _GtkWindowGroupPrivate {
5839    _data: [u8; 0],
5840    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5841}
5842
5843pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
5844
5845#[derive(Copy, Clone)]
5846#[repr(C)]
5847pub struct GtkWindowHandleClass {
5848    pub parent_class: GtkWidgetClass,
5849}
5850
5851impl ::std::fmt::Debug for GtkWindowHandleClass {
5852    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5853        f.debug_struct(&format!("GtkWindowHandleClass @ {self:p}"))
5854            .field("parent_class", &self.parent_class)
5855            .finish()
5856    }
5857}
5858
5859// Classes
5860#[repr(C)]
5861#[allow(dead_code)]
5862pub struct GtkATContext {
5863    _data: [u8; 0],
5864    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5865}
5866
5867impl ::std::fmt::Debug for GtkATContext {
5868    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5869        f.debug_struct(&format!("GtkATContext @ {self:p}")).finish()
5870    }
5871}
5872
5873#[repr(C)]
5874#[allow(dead_code)]
5875pub struct GtkAboutDialog {
5876    _data: [u8; 0],
5877    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5878}
5879
5880impl ::std::fmt::Debug for GtkAboutDialog {
5881    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5882        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
5883            .finish()
5884    }
5885}
5886
5887#[repr(C)]
5888#[allow(dead_code)]
5889pub struct GtkActionBar {
5890    _data: [u8; 0],
5891    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5892}
5893
5894impl ::std::fmt::Debug for GtkActionBar {
5895    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5896        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
5897    }
5898}
5899
5900#[repr(C)]
5901#[allow(dead_code)]
5902pub struct GtkActivateAction {
5903    _data: [u8; 0],
5904    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5905}
5906
5907impl ::std::fmt::Debug for GtkActivateAction {
5908    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5909        f.debug_struct(&format!("GtkActivateAction @ {self:p}"))
5910            .finish()
5911    }
5912}
5913
5914#[derive(Copy, Clone)]
5915#[repr(C)]
5916pub struct GtkAdjustment {
5917    pub parent_instance: gobject::GInitiallyUnowned,
5918}
5919
5920impl ::std::fmt::Debug for GtkAdjustment {
5921    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5922        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
5923            .field("parent_instance", &self.parent_instance)
5924            .finish()
5925    }
5926}
5927
5928#[repr(C)]
5929#[allow(dead_code)]
5930pub struct GtkAlertDialog {
5931    _data: [u8; 0],
5932    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5933}
5934
5935impl ::std::fmt::Debug for GtkAlertDialog {
5936    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5937        f.debug_struct(&format!("GtkAlertDialog @ {self:p}"))
5938            .finish()
5939    }
5940}
5941
5942#[repr(C)]
5943#[allow(dead_code)]
5944pub struct GtkAlternativeTrigger {
5945    _data: [u8; 0],
5946    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5947}
5948
5949impl ::std::fmt::Debug for GtkAlternativeTrigger {
5950    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5951        f.debug_struct(&format!("GtkAlternativeTrigger @ {self:p}"))
5952            .finish()
5953    }
5954}
5955
5956#[repr(C)]
5957#[allow(dead_code)]
5958pub struct GtkAnyFilter {
5959    _data: [u8; 0],
5960    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5961}
5962
5963impl ::std::fmt::Debug for GtkAnyFilter {
5964    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5965        f.debug_struct(&format!("GtkAnyFilter @ {self:p}")).finish()
5966    }
5967}
5968
5969#[repr(C)]
5970#[allow(dead_code)]
5971pub struct GtkAppChooserButton {
5972    _data: [u8; 0],
5973    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5974}
5975
5976impl ::std::fmt::Debug for GtkAppChooserButton {
5977    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5978        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
5979            .finish()
5980    }
5981}
5982
5983#[repr(C)]
5984#[allow(dead_code)]
5985pub struct GtkAppChooserDialog {
5986    _data: [u8; 0],
5987    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5988}
5989
5990impl ::std::fmt::Debug for GtkAppChooserDialog {
5991    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5992        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
5993            .finish()
5994    }
5995}
5996
5997#[repr(C)]
5998#[allow(dead_code)]
5999pub struct GtkAppChooserWidget {
6000    _data: [u8; 0],
6001    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6002}
6003
6004impl ::std::fmt::Debug for GtkAppChooserWidget {
6005    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6006        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
6007            .finish()
6008    }
6009}
6010
6011#[derive(Copy, Clone)]
6012#[repr(C)]
6013pub struct GtkApplication {
6014    pub parent_instance: gio::GApplication,
6015}
6016
6017impl ::std::fmt::Debug for GtkApplication {
6018    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6019        f.debug_struct(&format!("GtkApplication @ {self:p}"))
6020            .field("parent_instance", &self.parent_instance)
6021            .finish()
6022    }
6023}
6024
6025#[derive(Copy, Clone)]
6026#[repr(C)]
6027pub struct GtkApplicationWindow {
6028    pub parent_instance: GtkWindow,
6029}
6030
6031impl ::std::fmt::Debug for GtkApplicationWindow {
6032    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6033        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
6034            .field("parent_instance", &self.parent_instance)
6035            .finish()
6036    }
6037}
6038
6039#[repr(C)]
6040#[allow(dead_code)]
6041pub struct GtkAspectFrame {
6042    _data: [u8; 0],
6043    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6044}
6045
6046impl ::std::fmt::Debug for GtkAspectFrame {
6047    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6048        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
6049            .finish()
6050    }
6051}
6052
6053#[repr(C)]
6054#[allow(dead_code)]
6055pub struct GtkAssistant {
6056    _data: [u8; 0],
6057    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6058}
6059
6060impl ::std::fmt::Debug for GtkAssistant {
6061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6062        f.debug_struct(&format!("GtkAssistant @ {self:p}")).finish()
6063    }
6064}
6065
6066#[repr(C)]
6067#[allow(dead_code)]
6068pub struct GtkAssistantPage {
6069    _data: [u8; 0],
6070    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6071}
6072
6073impl ::std::fmt::Debug for GtkAssistantPage {
6074    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6075        f.debug_struct(&format!("GtkAssistantPage @ {self:p}"))
6076            .finish()
6077    }
6078}
6079
6080#[repr(C)]
6081#[allow(dead_code)]
6082pub struct GtkBinLayout {
6083    _data: [u8; 0],
6084    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6085}
6086
6087impl ::std::fmt::Debug for GtkBinLayout {
6088    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6089        f.debug_struct(&format!("GtkBinLayout @ {self:p}")).finish()
6090    }
6091}
6092
6093#[repr(C)]
6094#[allow(dead_code)]
6095pub struct GtkBookmarkList {
6096    _data: [u8; 0],
6097    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6098}
6099
6100impl ::std::fmt::Debug for GtkBookmarkList {
6101    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6102        f.debug_struct(&format!("GtkBookmarkList @ {self:p}"))
6103            .finish()
6104    }
6105}
6106
6107#[repr(C)]
6108#[allow(dead_code)]
6109pub struct GtkBoolFilter {
6110    _data: [u8; 0],
6111    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6112}
6113
6114impl ::std::fmt::Debug for GtkBoolFilter {
6115    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6116        f.debug_struct(&format!("GtkBoolFilter @ {self:p}"))
6117            .finish()
6118    }
6119}
6120
6121#[derive(Copy, Clone)]
6122#[repr(C)]
6123pub struct GtkBox {
6124    pub parent_instance: GtkWidget,
6125}
6126
6127impl ::std::fmt::Debug for GtkBox {
6128    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6129        f.debug_struct(&format!("GtkBox @ {self:p}"))
6130            .field("parent_instance", &self.parent_instance)
6131            .finish()
6132    }
6133}
6134
6135#[repr(C)]
6136#[allow(dead_code)]
6137pub struct GtkBoxLayout {
6138    _data: [u8; 0],
6139    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6140}
6141
6142impl ::std::fmt::Debug for GtkBoxLayout {
6143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6144        f.debug_struct(&format!("GtkBoxLayout @ {self:p}")).finish()
6145    }
6146}
6147
6148#[repr(C)]
6149#[allow(dead_code)]
6150pub struct GtkBuilder {
6151    _data: [u8; 0],
6152    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6153}
6154
6155impl ::std::fmt::Debug for GtkBuilder {
6156    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6157        f.debug_struct(&format!("GtkBuilder @ {self:p}")).finish()
6158    }
6159}
6160
6161#[derive(Copy, Clone)]
6162#[repr(C)]
6163pub struct GtkBuilderCScope {
6164    pub parent_instance: gobject::GObject,
6165}
6166
6167impl ::std::fmt::Debug for GtkBuilderCScope {
6168    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6169        f.debug_struct(&format!("GtkBuilderCScope @ {self:p}"))
6170            .field("parent_instance", &self.parent_instance)
6171            .finish()
6172    }
6173}
6174
6175#[repr(C)]
6176#[allow(dead_code)]
6177pub struct GtkBuilderListItemFactory {
6178    _data: [u8; 0],
6179    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6180}
6181
6182impl ::std::fmt::Debug for GtkBuilderListItemFactory {
6183    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6184        f.debug_struct(&format!("GtkBuilderListItemFactory @ {self:p}"))
6185            .finish()
6186    }
6187}
6188
6189#[derive(Copy, Clone)]
6190#[repr(C)]
6191pub struct GtkButton {
6192    pub parent_instance: GtkWidget,
6193}
6194
6195impl ::std::fmt::Debug for GtkButton {
6196    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6197        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
6198    }
6199}
6200
6201#[repr(C)]
6202#[allow(dead_code)]
6203pub struct GtkCClosureExpression {
6204    _data: [u8; 0],
6205    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6206}
6207
6208impl ::std::fmt::Debug for GtkCClosureExpression {
6209    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6210        f.debug_struct(&format!("GtkCClosureExpression @ {self:p}"))
6211            .finish()
6212    }
6213}
6214
6215#[repr(C)]
6216#[allow(dead_code)]
6217pub struct GtkCalendar {
6218    _data: [u8; 0],
6219    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6220}
6221
6222impl ::std::fmt::Debug for GtkCalendar {
6223    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6224        f.debug_struct(&format!("GtkCalendar @ {self:p}")).finish()
6225    }
6226}
6227
6228#[repr(C)]
6229#[allow(dead_code)]
6230pub struct GtkCallbackAction {
6231    _data: [u8; 0],
6232    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6233}
6234
6235impl ::std::fmt::Debug for GtkCallbackAction {
6236    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6237        f.debug_struct(&format!("GtkCallbackAction @ {self:p}"))
6238            .finish()
6239    }
6240}
6241
6242#[derive(Copy, Clone)]
6243#[repr(C)]
6244pub struct GtkCellArea {
6245    pub parent_instance: gobject::GInitiallyUnowned,
6246}
6247
6248impl ::std::fmt::Debug for GtkCellArea {
6249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6250        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
6251    }
6252}
6253
6254#[repr(C)]
6255#[allow(dead_code)]
6256pub struct GtkCellAreaBox {
6257    _data: [u8; 0],
6258    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6259}
6260
6261impl ::std::fmt::Debug for GtkCellAreaBox {
6262    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6263        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
6264            .finish()
6265    }
6266}
6267
6268#[derive(Copy, Clone)]
6269#[repr(C)]
6270pub struct GtkCellAreaContext {
6271    pub parent_instance: gobject::GObject,
6272}
6273
6274impl ::std::fmt::Debug for GtkCellAreaContext {
6275    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6276        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
6277            .finish()
6278    }
6279}
6280
6281#[derive(Copy, Clone)]
6282#[repr(C)]
6283pub struct GtkCellRenderer {
6284    pub parent_instance: gobject::GInitiallyUnowned,
6285    pub priv_: *mut GtkCellRendererPrivate,
6286}
6287
6288impl ::std::fmt::Debug for GtkCellRenderer {
6289    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6290        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
6291            .field("parent_instance", &self.parent_instance)
6292            .finish()
6293    }
6294}
6295
6296#[repr(C)]
6297#[allow(dead_code)]
6298pub struct GtkCellRendererAccel {
6299    _data: [u8; 0],
6300    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6301}
6302
6303impl ::std::fmt::Debug for GtkCellRendererAccel {
6304    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6305        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
6306            .finish()
6307    }
6308}
6309
6310#[repr(C)]
6311#[allow(dead_code)]
6312pub struct GtkCellRendererCombo {
6313    _data: [u8; 0],
6314    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6315}
6316
6317impl ::std::fmt::Debug for GtkCellRendererCombo {
6318    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6319        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
6320            .finish()
6321    }
6322}
6323
6324#[repr(C)]
6325#[allow(dead_code)]
6326pub struct GtkCellRendererPixbuf {
6327    _data: [u8; 0],
6328    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6329}
6330
6331impl ::std::fmt::Debug for GtkCellRendererPixbuf {
6332    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6333        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
6334            .finish()
6335    }
6336}
6337
6338#[repr(C)]
6339#[allow(dead_code)]
6340pub struct GtkCellRendererProgress {
6341    _data: [u8; 0],
6342    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6343}
6344
6345impl ::std::fmt::Debug for GtkCellRendererProgress {
6346    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6347        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
6348            .finish()
6349    }
6350}
6351
6352#[repr(C)]
6353#[allow(dead_code)]
6354pub struct GtkCellRendererSpin {
6355    _data: [u8; 0],
6356    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6357}
6358
6359impl ::std::fmt::Debug for GtkCellRendererSpin {
6360    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6361        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
6362            .finish()
6363    }
6364}
6365
6366#[repr(C)]
6367#[allow(dead_code)]
6368pub struct GtkCellRendererSpinner {
6369    _data: [u8; 0],
6370    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6371}
6372
6373impl ::std::fmt::Debug for GtkCellRendererSpinner {
6374    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6375        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
6376            .finish()
6377    }
6378}
6379
6380#[derive(Copy, Clone)]
6381#[repr(C)]
6382pub struct GtkCellRendererText {
6383    pub parent: GtkCellRenderer,
6384}
6385
6386impl ::std::fmt::Debug for GtkCellRendererText {
6387    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6388        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
6389            .field("parent", &self.parent)
6390            .finish()
6391    }
6392}
6393
6394#[repr(C)]
6395#[allow(dead_code)]
6396pub struct GtkCellRendererToggle {
6397    _data: [u8; 0],
6398    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6399}
6400
6401impl ::std::fmt::Debug for GtkCellRendererToggle {
6402    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6403        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
6404            .finish()
6405    }
6406}
6407
6408#[repr(C)]
6409#[allow(dead_code)]
6410pub struct GtkCellView {
6411    _data: [u8; 0],
6412    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6413}
6414
6415impl ::std::fmt::Debug for GtkCellView {
6416    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6417        f.debug_struct(&format!("GtkCellView @ {self:p}")).finish()
6418    }
6419}
6420
6421#[repr(C)]
6422#[allow(dead_code)]
6423pub struct GtkCenterBox {
6424    _data: [u8; 0],
6425    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6426}
6427
6428impl ::std::fmt::Debug for GtkCenterBox {
6429    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6430        f.debug_struct(&format!("GtkCenterBox @ {self:p}")).finish()
6431    }
6432}
6433
6434#[repr(C)]
6435#[allow(dead_code)]
6436pub struct GtkCenterLayout {
6437    _data: [u8; 0],
6438    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6439}
6440
6441impl ::std::fmt::Debug for GtkCenterLayout {
6442    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6443        f.debug_struct(&format!("GtkCenterLayout @ {self:p}"))
6444            .finish()
6445    }
6446}
6447
6448#[derive(Copy, Clone)]
6449#[repr(C)]
6450pub struct GtkCheckButton {
6451    pub parent_instance: GtkWidget,
6452}
6453
6454impl ::std::fmt::Debug for GtkCheckButton {
6455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6456        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
6457            .field("parent_instance", &self.parent_instance)
6458            .finish()
6459    }
6460}
6461
6462#[repr(C)]
6463#[allow(dead_code)]
6464pub struct GtkClosureExpression {
6465    _data: [u8; 0],
6466    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6467}
6468
6469impl ::std::fmt::Debug for GtkClosureExpression {
6470    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6471        f.debug_struct(&format!("GtkClosureExpression @ {self:p}"))
6472            .finish()
6473    }
6474}
6475
6476#[repr(C)]
6477#[allow(dead_code)]
6478pub struct GtkColorButton {
6479    _data: [u8; 0],
6480    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6481}
6482
6483impl ::std::fmt::Debug for GtkColorButton {
6484    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6485        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
6486            .finish()
6487    }
6488}
6489
6490#[repr(C)]
6491#[allow(dead_code)]
6492pub struct GtkColorChooserDialog {
6493    _data: [u8; 0],
6494    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6495}
6496
6497impl ::std::fmt::Debug for GtkColorChooserDialog {
6498    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6499        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
6500            .finish()
6501    }
6502}
6503
6504#[repr(C)]
6505#[allow(dead_code)]
6506pub struct GtkColorChooserWidget {
6507    _data: [u8; 0],
6508    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6509}
6510
6511impl ::std::fmt::Debug for GtkColorChooserWidget {
6512    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6513        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
6514            .finish()
6515    }
6516}
6517
6518#[repr(C)]
6519#[allow(dead_code)]
6520pub struct GtkColorDialog {
6521    _data: [u8; 0],
6522    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6523}
6524
6525impl ::std::fmt::Debug for GtkColorDialog {
6526    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6527        f.debug_struct(&format!("GtkColorDialog @ {self:p}"))
6528            .finish()
6529    }
6530}
6531
6532#[repr(C)]
6533#[allow(dead_code)]
6534pub struct GtkColorDialogButton {
6535    _data: [u8; 0],
6536    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6537}
6538
6539impl ::std::fmt::Debug for GtkColorDialogButton {
6540    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6541        f.debug_struct(&format!("GtkColorDialogButton @ {self:p}"))
6542            .finish()
6543    }
6544}
6545
6546#[repr(C)]
6547#[allow(dead_code)]
6548pub struct GtkColumnView {
6549    _data: [u8; 0],
6550    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6551}
6552
6553impl ::std::fmt::Debug for GtkColumnView {
6554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6555        f.debug_struct(&format!("GtkColumnView @ {self:p}"))
6556            .finish()
6557    }
6558}
6559
6560#[repr(C)]
6561#[allow(dead_code)]
6562pub struct GtkColumnViewCell {
6563    _data: [u8; 0],
6564    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6565}
6566
6567impl ::std::fmt::Debug for GtkColumnViewCell {
6568    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6569        f.debug_struct(&format!("GtkColumnViewCell @ {self:p}"))
6570            .finish()
6571    }
6572}
6573
6574#[repr(C)]
6575#[allow(dead_code)]
6576pub struct GtkColumnViewColumn {
6577    _data: [u8; 0],
6578    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6579}
6580
6581impl ::std::fmt::Debug for GtkColumnViewColumn {
6582    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6583        f.debug_struct(&format!("GtkColumnViewColumn @ {self:p}"))
6584            .finish()
6585    }
6586}
6587
6588#[repr(C)]
6589#[allow(dead_code)]
6590pub struct GtkColumnViewRow {
6591    _data: [u8; 0],
6592    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6593}
6594
6595impl ::std::fmt::Debug for GtkColumnViewRow {
6596    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6597        f.debug_struct(&format!("GtkColumnViewRow @ {self:p}"))
6598            .finish()
6599    }
6600}
6601
6602#[repr(C)]
6603#[allow(dead_code)]
6604pub struct GtkColumnViewSorter {
6605    _data: [u8; 0],
6606    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6607}
6608
6609impl ::std::fmt::Debug for GtkColumnViewSorter {
6610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6611        f.debug_struct(&format!("GtkColumnViewSorter @ {self:p}"))
6612            .finish()
6613    }
6614}
6615
6616#[derive(Copy, Clone)]
6617#[repr(C)]
6618pub struct GtkComboBox {
6619    pub parent_instance: GtkWidget,
6620}
6621
6622impl ::std::fmt::Debug for GtkComboBox {
6623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6624        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
6625            .field("parent_instance", &self.parent_instance)
6626            .finish()
6627    }
6628}
6629
6630#[repr(C)]
6631#[allow(dead_code)]
6632pub struct GtkComboBoxText {
6633    _data: [u8; 0],
6634    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6635}
6636
6637impl ::std::fmt::Debug for GtkComboBoxText {
6638    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6639        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
6640            .finish()
6641    }
6642}
6643
6644#[repr(C)]
6645#[allow(dead_code)]
6646pub struct GtkConstantExpression {
6647    _data: [u8; 0],
6648    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6649}
6650
6651impl ::std::fmt::Debug for GtkConstantExpression {
6652    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6653        f.debug_struct(&format!("GtkConstantExpression @ {self:p}"))
6654            .finish()
6655    }
6656}
6657
6658#[repr(C)]
6659#[allow(dead_code)]
6660pub struct GtkConstraint {
6661    _data: [u8; 0],
6662    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6663}
6664
6665impl ::std::fmt::Debug for GtkConstraint {
6666    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6667        f.debug_struct(&format!("GtkConstraint @ {self:p}"))
6668            .finish()
6669    }
6670}
6671
6672#[repr(C)]
6673#[allow(dead_code)]
6674pub struct GtkConstraintGuide {
6675    _data: [u8; 0],
6676    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6677}
6678
6679impl ::std::fmt::Debug for GtkConstraintGuide {
6680    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6681        f.debug_struct(&format!("GtkConstraintGuide @ {self:p}"))
6682            .finish()
6683    }
6684}
6685
6686#[repr(C)]
6687#[allow(dead_code)]
6688pub struct GtkConstraintLayout {
6689    _data: [u8; 0],
6690    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6691}
6692
6693impl ::std::fmt::Debug for GtkConstraintLayout {
6694    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6695        f.debug_struct(&format!("GtkConstraintLayout @ {self:p}"))
6696            .finish()
6697    }
6698}
6699
6700#[repr(C)]
6701#[allow(dead_code)]
6702pub struct GtkConstraintLayoutChild {
6703    _data: [u8; 0],
6704    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6705}
6706
6707impl ::std::fmt::Debug for GtkConstraintLayoutChild {
6708    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6709        f.debug_struct(&format!("GtkConstraintLayoutChild @ {self:p}"))
6710            .finish()
6711    }
6712}
6713
6714#[derive(Copy, Clone)]
6715#[repr(C)]
6716pub struct GtkCssProvider {
6717    pub parent_instance: gobject::GObject,
6718}
6719
6720impl ::std::fmt::Debug for GtkCssProvider {
6721    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6722        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
6723            .field("parent_instance", &self.parent_instance)
6724            .finish()
6725    }
6726}
6727
6728#[repr(C)]
6729#[allow(dead_code)]
6730pub struct GtkCustomFilter {
6731    _data: [u8; 0],
6732    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6733}
6734
6735impl ::std::fmt::Debug for GtkCustomFilter {
6736    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6737        f.debug_struct(&format!("GtkCustomFilter @ {self:p}"))
6738            .finish()
6739    }
6740}
6741
6742#[repr(C)]
6743#[allow(dead_code)]
6744pub struct GtkCustomLayout {
6745    _data: [u8; 0],
6746    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6747}
6748
6749impl ::std::fmt::Debug for GtkCustomLayout {
6750    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6751        f.debug_struct(&format!("GtkCustomLayout @ {self:p}"))
6752            .finish()
6753    }
6754}
6755
6756#[repr(C)]
6757#[allow(dead_code)]
6758pub struct GtkCustomSorter {
6759    _data: [u8; 0],
6760    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6761}
6762
6763impl ::std::fmt::Debug for GtkCustomSorter {
6764    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6765        f.debug_struct(&format!("GtkCustomSorter @ {self:p}"))
6766            .finish()
6767    }
6768}
6769
6770#[derive(Copy, Clone)]
6771#[repr(C)]
6772pub struct GtkDialog {
6773    pub parent_instance: GtkWindow,
6774}
6775
6776impl ::std::fmt::Debug for GtkDialog {
6777    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6778        f.debug_struct(&format!("GtkDialog @ {self:p}"))
6779            .field("parent_instance", &self.parent_instance)
6780            .finish()
6781    }
6782}
6783
6784#[repr(C)]
6785#[allow(dead_code)]
6786pub struct GtkDirectoryList {
6787    _data: [u8; 0],
6788    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6789}
6790
6791impl ::std::fmt::Debug for GtkDirectoryList {
6792    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6793        f.debug_struct(&format!("GtkDirectoryList @ {self:p}"))
6794            .finish()
6795    }
6796}
6797
6798#[repr(C)]
6799#[allow(dead_code)]
6800pub struct GtkDragIcon {
6801    _data: [u8; 0],
6802    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6803}
6804
6805impl ::std::fmt::Debug for GtkDragIcon {
6806    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6807        f.debug_struct(&format!("GtkDragIcon @ {self:p}")).finish()
6808    }
6809}
6810
6811#[repr(C)]
6812#[allow(dead_code)]
6813pub struct GtkDragSource {
6814    _data: [u8; 0],
6815    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6816}
6817
6818impl ::std::fmt::Debug for GtkDragSource {
6819    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6820        f.debug_struct(&format!("GtkDragSource @ {self:p}"))
6821            .finish()
6822    }
6823}
6824
6825#[derive(Copy, Clone)]
6826#[repr(C)]
6827pub struct GtkDrawingArea {
6828    pub widget: GtkWidget,
6829}
6830
6831impl ::std::fmt::Debug for GtkDrawingArea {
6832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6833        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
6834            .field("widget", &self.widget)
6835            .finish()
6836    }
6837}
6838
6839#[repr(C)]
6840#[allow(dead_code)]
6841pub struct GtkDropControllerMotion {
6842    _data: [u8; 0],
6843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6844}
6845
6846impl ::std::fmt::Debug for GtkDropControllerMotion {
6847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6848        f.debug_struct(&format!("GtkDropControllerMotion @ {self:p}"))
6849            .finish()
6850    }
6851}
6852
6853#[repr(C)]
6854#[allow(dead_code)]
6855pub struct GtkDropDown {
6856    _data: [u8; 0],
6857    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6858}
6859
6860impl ::std::fmt::Debug for GtkDropDown {
6861    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6862        f.debug_struct(&format!("GtkDropDown @ {self:p}")).finish()
6863    }
6864}
6865
6866#[repr(C)]
6867#[allow(dead_code)]
6868pub struct GtkDropTarget {
6869    _data: [u8; 0],
6870    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6871}
6872
6873impl ::std::fmt::Debug for GtkDropTarget {
6874    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6875        f.debug_struct(&format!("GtkDropTarget @ {self:p}"))
6876            .finish()
6877    }
6878}
6879
6880#[repr(C)]
6881#[allow(dead_code)]
6882pub struct GtkDropTargetAsync {
6883    _data: [u8; 0],
6884    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6885}
6886
6887impl ::std::fmt::Debug for GtkDropTargetAsync {
6888    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6889        f.debug_struct(&format!("GtkDropTargetAsync @ {self:p}"))
6890            .finish()
6891    }
6892}
6893
6894#[repr(C)]
6895#[allow(dead_code)]
6896pub struct GtkEditableLabel {
6897    _data: [u8; 0],
6898    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6899}
6900
6901impl ::std::fmt::Debug for GtkEditableLabel {
6902    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6903        f.debug_struct(&format!("GtkEditableLabel @ {self:p}"))
6904            .finish()
6905    }
6906}
6907
6908#[repr(C)]
6909#[allow(dead_code)]
6910pub struct GtkEmojiChooser {
6911    _data: [u8; 0],
6912    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6913}
6914
6915impl ::std::fmt::Debug for GtkEmojiChooser {
6916    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6917        f.debug_struct(&format!("GtkEmojiChooser @ {self:p}"))
6918            .finish()
6919    }
6920}
6921
6922#[derive(Copy, Clone)]
6923#[repr(C)]
6924pub struct GtkEntry {
6925    pub parent_instance: GtkWidget,
6926}
6927
6928impl ::std::fmt::Debug for GtkEntry {
6929    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6930        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
6931    }
6932}
6933
6934#[derive(Copy, Clone)]
6935#[repr(C)]
6936pub struct GtkEntryBuffer {
6937    pub parent_instance: gobject::GObject,
6938}
6939
6940impl ::std::fmt::Debug for GtkEntryBuffer {
6941    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6942        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
6943            .field("parent_instance", &self.parent_instance)
6944            .finish()
6945    }
6946}
6947
6948#[repr(C)]
6949#[allow(dead_code)]
6950pub struct GtkEntryCompletion {
6951    _data: [u8; 0],
6952    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6953}
6954
6955impl ::std::fmt::Debug for GtkEntryCompletion {
6956    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6957        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
6958            .finish()
6959    }
6960}
6961
6962#[repr(C)]
6963#[allow(dead_code)]
6964pub struct GtkEventController {
6965    _data: [u8; 0],
6966    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6967}
6968
6969impl ::std::fmt::Debug for GtkEventController {
6970    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6971        f.debug_struct(&format!("GtkEventController @ {self:p}"))
6972            .finish()
6973    }
6974}
6975
6976#[repr(C)]
6977#[allow(dead_code)]
6978pub struct GtkEventControllerFocus {
6979    _data: [u8; 0],
6980    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6981}
6982
6983impl ::std::fmt::Debug for GtkEventControllerFocus {
6984    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6985        f.debug_struct(&format!("GtkEventControllerFocus @ {self:p}"))
6986            .finish()
6987    }
6988}
6989
6990#[repr(C)]
6991#[allow(dead_code)]
6992pub struct GtkEventControllerKey {
6993    _data: [u8; 0],
6994    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6995}
6996
6997impl ::std::fmt::Debug for GtkEventControllerKey {
6998    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6999        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
7000            .finish()
7001    }
7002}
7003
7004#[repr(C)]
7005#[allow(dead_code)]
7006pub struct GtkEventControllerLegacy {
7007    _data: [u8; 0],
7008    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7009}
7010
7011impl ::std::fmt::Debug for GtkEventControllerLegacy {
7012    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7013        f.debug_struct(&format!("GtkEventControllerLegacy @ {self:p}"))
7014            .finish()
7015    }
7016}
7017
7018#[repr(C)]
7019#[allow(dead_code)]
7020pub struct GtkEventControllerMotion {
7021    _data: [u8; 0],
7022    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7023}
7024
7025impl ::std::fmt::Debug for GtkEventControllerMotion {
7026    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7027        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
7028            .finish()
7029    }
7030}
7031
7032#[repr(C)]
7033#[allow(dead_code)]
7034pub struct GtkEventControllerScroll {
7035    _data: [u8; 0],
7036    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7037}
7038
7039impl ::std::fmt::Debug for GtkEventControllerScroll {
7040    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7041        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
7042            .finish()
7043    }
7044}
7045
7046#[repr(C)]
7047#[allow(dead_code)]
7048pub struct GtkEveryFilter {
7049    _data: [u8; 0],
7050    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7051}
7052
7053impl ::std::fmt::Debug for GtkEveryFilter {
7054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7055        f.debug_struct(&format!("GtkEveryFilter @ {self:p}"))
7056            .finish()
7057    }
7058}
7059
7060#[repr(C)]
7061#[allow(dead_code)]
7062pub struct GtkExpander {
7063    _data: [u8; 0],
7064    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7065}
7066
7067impl ::std::fmt::Debug for GtkExpander {
7068    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7069        f.debug_struct(&format!("GtkExpander @ {self:p}")).finish()
7070    }
7071}
7072
7073#[repr(C)]
7074#[allow(dead_code)]
7075pub struct GtkExpression {
7076    _data: [u8; 0],
7077    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7078}
7079
7080impl ::std::fmt::Debug for GtkExpression {
7081    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7082        f.debug_struct(&format!("GtkExpression @ {self:p}"))
7083            .finish()
7084    }
7085}
7086
7087#[repr(C)]
7088#[allow(dead_code)]
7089pub struct GtkFileChooserDialog {
7090    _data: [u8; 0],
7091    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7092}
7093
7094impl ::std::fmt::Debug for GtkFileChooserDialog {
7095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7096        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
7097            .finish()
7098    }
7099}
7100
7101#[repr(C)]
7102#[allow(dead_code)]
7103pub struct GtkFileChooserNative {
7104    _data: [u8; 0],
7105    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7106}
7107
7108impl ::std::fmt::Debug for GtkFileChooserNative {
7109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7110        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
7111            .finish()
7112    }
7113}
7114
7115#[repr(C)]
7116#[allow(dead_code)]
7117pub struct GtkFileChooserWidget {
7118    _data: [u8; 0],
7119    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7120}
7121
7122impl ::std::fmt::Debug for GtkFileChooserWidget {
7123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7124        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
7125            .finish()
7126    }
7127}
7128
7129#[repr(C)]
7130#[allow(dead_code)]
7131pub struct GtkFileDialog {
7132    _data: [u8; 0],
7133    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7134}
7135
7136impl ::std::fmt::Debug for GtkFileDialog {
7137    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7138        f.debug_struct(&format!("GtkFileDialog @ {self:p}"))
7139            .finish()
7140    }
7141}
7142
7143#[repr(C)]
7144#[allow(dead_code)]
7145pub struct GtkFileFilter {
7146    _data: [u8; 0],
7147    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7148}
7149
7150impl ::std::fmt::Debug for GtkFileFilter {
7151    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7152        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
7153            .finish()
7154    }
7155}
7156
7157#[repr(C)]
7158#[allow(dead_code)]
7159pub struct GtkFileLauncher {
7160    _data: [u8; 0],
7161    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7162}
7163
7164impl ::std::fmt::Debug for GtkFileLauncher {
7165    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7166        f.debug_struct(&format!("GtkFileLauncher @ {self:p}"))
7167            .finish()
7168    }
7169}
7170
7171#[derive(Copy, Clone)]
7172#[repr(C)]
7173pub struct GtkFilter {
7174    pub parent_instance: gobject::GObject,
7175}
7176
7177impl ::std::fmt::Debug for GtkFilter {
7178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7179        f.debug_struct(&format!("GtkFilter @ {self:p}"))
7180            .field("parent_instance", &self.parent_instance)
7181            .finish()
7182    }
7183}
7184
7185#[repr(C)]
7186#[allow(dead_code)]
7187pub struct GtkFilterListModel {
7188    _data: [u8; 0],
7189    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7190}
7191
7192impl ::std::fmt::Debug for GtkFilterListModel {
7193    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7194        f.debug_struct(&format!("GtkFilterListModel @ {self:p}"))
7195            .finish()
7196    }
7197}
7198
7199#[derive(Copy, Clone)]
7200#[repr(C)]
7201pub struct GtkFixed {
7202    pub parent_instance: GtkWidget,
7203}
7204
7205impl ::std::fmt::Debug for GtkFixed {
7206    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7207        f.debug_struct(&format!("GtkFixed @ {self:p}"))
7208            .field("parent_instance", &self.parent_instance)
7209            .finish()
7210    }
7211}
7212
7213#[repr(C)]
7214#[allow(dead_code)]
7215pub struct GtkFixedLayout {
7216    _data: [u8; 0],
7217    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7218}
7219
7220impl ::std::fmt::Debug for GtkFixedLayout {
7221    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7222        f.debug_struct(&format!("GtkFixedLayout @ {self:p}"))
7223            .finish()
7224    }
7225}
7226
7227#[repr(C)]
7228#[allow(dead_code)]
7229pub struct GtkFixedLayoutChild {
7230    _data: [u8; 0],
7231    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7232}
7233
7234impl ::std::fmt::Debug for GtkFixedLayoutChild {
7235    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7236        f.debug_struct(&format!("GtkFixedLayoutChild @ {self:p}"))
7237            .finish()
7238    }
7239}
7240
7241#[repr(C)]
7242#[allow(dead_code)]
7243pub struct GtkFlattenListModel {
7244    _data: [u8; 0],
7245    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7246}
7247
7248impl ::std::fmt::Debug for GtkFlattenListModel {
7249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7250        f.debug_struct(&format!("GtkFlattenListModel @ {self:p}"))
7251            .finish()
7252    }
7253}
7254
7255#[repr(C)]
7256#[allow(dead_code)]
7257pub struct GtkFlowBox {
7258    _data: [u8; 0],
7259    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7260}
7261
7262impl ::std::fmt::Debug for GtkFlowBox {
7263    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7264        f.debug_struct(&format!("GtkFlowBox @ {self:p}")).finish()
7265    }
7266}
7267
7268#[derive(Copy, Clone)]
7269#[repr(C)]
7270pub struct GtkFlowBoxChild {
7271    pub parent_instance: GtkWidget,
7272}
7273
7274impl ::std::fmt::Debug for GtkFlowBoxChild {
7275    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7276        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
7277            .finish()
7278    }
7279}
7280
7281#[repr(C)]
7282#[allow(dead_code)]
7283pub struct GtkFontButton {
7284    _data: [u8; 0],
7285    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7286}
7287
7288impl ::std::fmt::Debug for GtkFontButton {
7289    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7290        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
7291            .finish()
7292    }
7293}
7294
7295#[repr(C)]
7296#[allow(dead_code)]
7297pub struct GtkFontChooserDialog {
7298    _data: [u8; 0],
7299    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7300}
7301
7302impl ::std::fmt::Debug for GtkFontChooserDialog {
7303    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7304        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
7305            .finish()
7306    }
7307}
7308
7309#[repr(C)]
7310#[allow(dead_code)]
7311pub struct GtkFontChooserWidget {
7312    _data: [u8; 0],
7313    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7314}
7315
7316impl ::std::fmt::Debug for GtkFontChooserWidget {
7317    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7318        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
7319            .finish()
7320    }
7321}
7322
7323#[repr(C)]
7324#[allow(dead_code)]
7325pub struct GtkFontDialog {
7326    _data: [u8; 0],
7327    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7328}
7329
7330impl ::std::fmt::Debug for GtkFontDialog {
7331    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7332        f.debug_struct(&format!("GtkFontDialog @ {self:p}"))
7333            .finish()
7334    }
7335}
7336
7337#[repr(C)]
7338#[allow(dead_code)]
7339pub struct GtkFontDialogButton {
7340    _data: [u8; 0],
7341    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7342}
7343
7344impl ::std::fmt::Debug for GtkFontDialogButton {
7345    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7346        f.debug_struct(&format!("GtkFontDialogButton @ {self:p}"))
7347            .finish()
7348    }
7349}
7350
7351#[derive(Copy, Clone)]
7352#[repr(C)]
7353pub struct GtkFrame {
7354    pub parent_instance: GtkWidget,
7355}
7356
7357impl ::std::fmt::Debug for GtkFrame {
7358    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7359        f.debug_struct(&format!("GtkFrame @ {self:p}"))
7360            .field("parent_instance", &self.parent_instance)
7361            .finish()
7362    }
7363}
7364
7365#[derive(Copy, Clone)]
7366#[repr(C)]
7367pub struct GtkGLArea {
7368    pub parent_instance: GtkWidget,
7369}
7370
7371impl ::std::fmt::Debug for GtkGLArea {
7372    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7373        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
7374    }
7375}
7376
7377#[repr(C)]
7378#[allow(dead_code)]
7379pub struct GtkGesture {
7380    _data: [u8; 0],
7381    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7382}
7383
7384impl ::std::fmt::Debug for GtkGesture {
7385    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7386        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
7387    }
7388}
7389
7390#[repr(C)]
7391#[allow(dead_code)]
7392pub struct GtkGestureClick {
7393    _data: [u8; 0],
7394    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7395}
7396
7397impl ::std::fmt::Debug for GtkGestureClick {
7398    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7399        f.debug_struct(&format!("GtkGestureClick @ {self:p}"))
7400            .finish()
7401    }
7402}
7403
7404#[repr(C)]
7405#[allow(dead_code)]
7406pub struct GtkGestureDrag {
7407    _data: [u8; 0],
7408    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7409}
7410
7411impl ::std::fmt::Debug for GtkGestureDrag {
7412    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7413        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
7414            .finish()
7415    }
7416}
7417
7418#[repr(C)]
7419#[allow(dead_code)]
7420pub struct GtkGestureLongPress {
7421    _data: [u8; 0],
7422    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7423}
7424
7425impl ::std::fmt::Debug for GtkGestureLongPress {
7426    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7427        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
7428            .finish()
7429    }
7430}
7431
7432#[repr(C)]
7433#[allow(dead_code)]
7434pub struct GtkGesturePan {
7435    _data: [u8; 0],
7436    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7437}
7438
7439impl ::std::fmt::Debug for GtkGesturePan {
7440    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7441        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
7442            .finish()
7443    }
7444}
7445
7446#[repr(C)]
7447#[allow(dead_code)]
7448pub struct GtkGestureRotate {
7449    _data: [u8; 0],
7450    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7451}
7452
7453impl ::std::fmt::Debug for GtkGestureRotate {
7454    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7455        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
7456            .finish()
7457    }
7458}
7459
7460#[repr(C)]
7461#[allow(dead_code)]
7462pub struct GtkGestureSingle {
7463    _data: [u8; 0],
7464    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7465}
7466
7467impl ::std::fmt::Debug for GtkGestureSingle {
7468    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7469        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
7470            .finish()
7471    }
7472}
7473
7474#[repr(C)]
7475#[allow(dead_code)]
7476pub struct GtkGestureStylus {
7477    _data: [u8; 0],
7478    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7479}
7480
7481impl ::std::fmt::Debug for GtkGestureStylus {
7482    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7483        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
7484            .finish()
7485    }
7486}
7487
7488#[repr(C)]
7489#[allow(dead_code)]
7490pub struct GtkGestureSwipe {
7491    _data: [u8; 0],
7492    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7493}
7494
7495impl ::std::fmt::Debug for GtkGestureSwipe {
7496    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7497        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
7498            .finish()
7499    }
7500}
7501
7502#[repr(C)]
7503#[allow(dead_code)]
7504pub struct GtkGestureZoom {
7505    _data: [u8; 0],
7506    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7507}
7508
7509impl ::std::fmt::Debug for GtkGestureZoom {
7510    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7511        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
7512            .finish()
7513    }
7514}
7515
7516#[repr(C)]
7517#[allow(dead_code)]
7518pub struct GtkGraphicsOffload {
7519    _data: [u8; 0],
7520    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7521}
7522
7523impl ::std::fmt::Debug for GtkGraphicsOffload {
7524    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7525        f.debug_struct(&format!("GtkGraphicsOffload @ {self:p}"))
7526            .finish()
7527    }
7528}
7529
7530#[derive(Copy, Clone)]
7531#[repr(C)]
7532pub struct GtkGrid {
7533    pub parent_instance: GtkWidget,
7534}
7535
7536impl ::std::fmt::Debug for GtkGrid {
7537    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7538        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
7539    }
7540}
7541
7542#[repr(C)]
7543#[allow(dead_code)]
7544pub struct GtkGridLayout {
7545    _data: [u8; 0],
7546    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7547}
7548
7549impl ::std::fmt::Debug for GtkGridLayout {
7550    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7551        f.debug_struct(&format!("GtkGridLayout @ {self:p}"))
7552            .finish()
7553    }
7554}
7555
7556#[repr(C)]
7557#[allow(dead_code)]
7558pub struct GtkGridLayoutChild {
7559    _data: [u8; 0],
7560    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7561}
7562
7563impl ::std::fmt::Debug for GtkGridLayoutChild {
7564    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7565        f.debug_struct(&format!("GtkGridLayoutChild @ {self:p}"))
7566            .finish()
7567    }
7568}
7569
7570#[repr(C)]
7571#[allow(dead_code)]
7572pub struct GtkGridView {
7573    _data: [u8; 0],
7574    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7575}
7576
7577impl ::std::fmt::Debug for GtkGridView {
7578    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7579        f.debug_struct(&format!("GtkGridView @ {self:p}")).finish()
7580    }
7581}
7582
7583#[repr(C)]
7584#[allow(dead_code)]
7585pub struct GtkHeaderBar {
7586    _data: [u8; 0],
7587    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7588}
7589
7590impl ::std::fmt::Debug for GtkHeaderBar {
7591    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7592        f.debug_struct(&format!("GtkHeaderBar @ {self:p}")).finish()
7593    }
7594}
7595
7596#[derive(Copy, Clone)]
7597#[repr(C)]
7598pub struct GtkIMContext {
7599    pub parent_instance: gobject::GObject,
7600}
7601
7602impl ::std::fmt::Debug for GtkIMContext {
7603    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7604        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
7605            .field("parent_instance", &self.parent_instance)
7606            .finish()
7607    }
7608}
7609
7610#[derive(Copy, Clone)]
7611#[repr(C)]
7612pub struct GtkIMContextSimple {
7613    pub object: GtkIMContext,
7614    pub priv_: *mut GtkIMContextSimplePrivate,
7615}
7616
7617impl ::std::fmt::Debug for GtkIMContextSimple {
7618    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7619        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
7620            .field("object", &self.object)
7621            .finish()
7622    }
7623}
7624
7625#[derive(Copy, Clone)]
7626#[repr(C)]
7627pub struct GtkIMMulticontext {
7628    pub object: GtkIMContext,
7629    pub priv_: *mut GtkIMMulticontextPrivate,
7630}
7631
7632impl ::std::fmt::Debug for GtkIMMulticontext {
7633    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7634        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
7635            .field("object", &self.object)
7636            .finish()
7637    }
7638}
7639
7640#[repr(C)]
7641#[allow(dead_code)]
7642pub struct GtkIconPaintable {
7643    _data: [u8; 0],
7644    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7645}
7646
7647impl ::std::fmt::Debug for GtkIconPaintable {
7648    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7649        f.debug_struct(&format!("GtkIconPaintable @ {self:p}"))
7650            .finish()
7651    }
7652}
7653
7654#[repr(C)]
7655#[allow(dead_code)]
7656pub struct GtkIconTheme {
7657    _data: [u8; 0],
7658    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7659}
7660
7661impl ::std::fmt::Debug for GtkIconTheme {
7662    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7663        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
7664    }
7665}
7666
7667#[repr(C)]
7668#[allow(dead_code)]
7669pub struct GtkIconView {
7670    _data: [u8; 0],
7671    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7672}
7673
7674impl ::std::fmt::Debug for GtkIconView {
7675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7676        f.debug_struct(&format!("GtkIconView @ {self:p}")).finish()
7677    }
7678}
7679
7680#[repr(C)]
7681#[allow(dead_code)]
7682pub struct GtkImage {
7683    _data: [u8; 0],
7684    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7685}
7686
7687impl ::std::fmt::Debug for GtkImage {
7688    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7689        f.debug_struct(&format!("GtkImage @ {self:p}")).finish()
7690    }
7691}
7692
7693#[repr(C)]
7694#[allow(dead_code)]
7695pub struct GtkInfoBar {
7696    _data: [u8; 0],
7697    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7698}
7699
7700impl ::std::fmt::Debug for GtkInfoBar {
7701    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7702        f.debug_struct(&format!("GtkInfoBar @ {self:p}")).finish()
7703    }
7704}
7705
7706#[repr(C)]
7707#[allow(dead_code)]
7708pub struct GtkInscription {
7709    _data: [u8; 0],
7710    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7711}
7712
7713impl ::std::fmt::Debug for GtkInscription {
7714    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7715        f.debug_struct(&format!("GtkInscription @ {self:p}"))
7716            .finish()
7717    }
7718}
7719
7720#[repr(C)]
7721#[allow(dead_code)]
7722pub struct GtkKeyvalTrigger {
7723    _data: [u8; 0],
7724    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7725}
7726
7727impl ::std::fmt::Debug for GtkKeyvalTrigger {
7728    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7729        f.debug_struct(&format!("GtkKeyvalTrigger @ {self:p}"))
7730            .finish()
7731    }
7732}
7733
7734#[repr(C)]
7735#[allow(dead_code)]
7736pub struct GtkLabel {
7737    _data: [u8; 0],
7738    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7739}
7740
7741impl ::std::fmt::Debug for GtkLabel {
7742    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7743        f.debug_struct(&format!("GtkLabel @ {self:p}")).finish()
7744    }
7745}
7746
7747#[derive(Copy, Clone)]
7748#[repr(C)]
7749pub struct GtkLayoutChild {
7750    pub parent_instance: gobject::GObject,
7751}
7752
7753impl ::std::fmt::Debug for GtkLayoutChild {
7754    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7755        f.debug_struct(&format!("GtkLayoutChild @ {self:p}"))
7756            .field("parent_instance", &self.parent_instance)
7757            .finish()
7758    }
7759}
7760
7761#[derive(Copy, Clone)]
7762#[repr(C)]
7763pub struct GtkLayoutManager {
7764    pub parent_instance: gobject::GObject,
7765}
7766
7767impl ::std::fmt::Debug for GtkLayoutManager {
7768    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7769        f.debug_struct(&format!("GtkLayoutManager @ {self:p}"))
7770            .field("parent_instance", &self.parent_instance)
7771            .finish()
7772    }
7773}
7774
7775#[repr(C)]
7776#[allow(dead_code)]
7777pub struct GtkLevelBar {
7778    _data: [u8; 0],
7779    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7780}
7781
7782impl ::std::fmt::Debug for GtkLevelBar {
7783    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7784        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
7785    }
7786}
7787
7788#[repr(C)]
7789#[allow(dead_code)]
7790pub struct GtkLinkButton {
7791    _data: [u8; 0],
7792    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7793}
7794
7795impl ::std::fmt::Debug for GtkLinkButton {
7796    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7797        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
7798            .finish()
7799    }
7800}
7801
7802#[repr(C)]
7803#[allow(dead_code)]
7804pub struct GtkListBase {
7805    _data: [u8; 0],
7806    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7807}
7808
7809impl ::std::fmt::Debug for GtkListBase {
7810    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7811        f.debug_struct(&format!("GtkListBase @ {self:p}")).finish()
7812    }
7813}
7814
7815#[repr(C)]
7816#[allow(dead_code)]
7817pub struct GtkListBox {
7818    _data: [u8; 0],
7819    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7820}
7821
7822impl ::std::fmt::Debug for GtkListBox {
7823    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7824        f.debug_struct(&format!("GtkListBox @ {self:p}")).finish()
7825    }
7826}
7827
7828#[derive(Copy, Clone)]
7829#[repr(C)]
7830pub struct GtkListBoxRow {
7831    pub parent_instance: GtkWidget,
7832}
7833
7834impl ::std::fmt::Debug for GtkListBoxRow {
7835    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7836        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
7837            .field("parent_instance", &self.parent_instance)
7838            .finish()
7839    }
7840}
7841
7842#[repr(C)]
7843#[allow(dead_code)]
7844pub struct GtkListHeader {
7845    _data: [u8; 0],
7846    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7847}
7848
7849impl ::std::fmt::Debug for GtkListHeader {
7850    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7851        f.debug_struct(&format!("GtkListHeader @ {self:p}"))
7852            .finish()
7853    }
7854}
7855
7856#[repr(C)]
7857#[allow(dead_code)]
7858pub struct GtkListItem {
7859    _data: [u8; 0],
7860    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7861}
7862
7863impl ::std::fmt::Debug for GtkListItem {
7864    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7865        f.debug_struct(&format!("GtkListItem @ {self:p}")).finish()
7866    }
7867}
7868
7869#[repr(C)]
7870#[allow(dead_code)]
7871pub struct GtkListItemFactory {
7872    _data: [u8; 0],
7873    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7874}
7875
7876impl ::std::fmt::Debug for GtkListItemFactory {
7877    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7878        f.debug_struct(&format!("GtkListItemFactory @ {self:p}"))
7879            .finish()
7880    }
7881}
7882
7883#[derive(Copy, Clone)]
7884#[repr(C)]
7885pub struct GtkListStore {
7886    pub parent: gobject::GObject,
7887    pub priv_: *mut GtkListStorePrivate,
7888}
7889
7890impl ::std::fmt::Debug for GtkListStore {
7891    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7892        f.debug_struct(&format!("GtkListStore @ {self:p}"))
7893            .field("parent", &self.parent)
7894            .finish()
7895    }
7896}
7897
7898#[repr(C)]
7899#[allow(dead_code)]
7900pub struct GtkListView {
7901    _data: [u8; 0],
7902    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7903}
7904
7905impl ::std::fmt::Debug for GtkListView {
7906    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7907        f.debug_struct(&format!("GtkListView @ {self:p}")).finish()
7908    }
7909}
7910
7911#[repr(C)]
7912#[allow(dead_code)]
7913pub struct GtkLockButton {
7914    _data: [u8; 0],
7915    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7916}
7917
7918impl ::std::fmt::Debug for GtkLockButton {
7919    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7920        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
7921            .finish()
7922    }
7923}
7924
7925#[repr(C)]
7926#[allow(dead_code)]
7927pub struct GtkMapListModel {
7928    _data: [u8; 0],
7929    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7930}
7931
7932impl ::std::fmt::Debug for GtkMapListModel {
7933    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7934        f.debug_struct(&format!("GtkMapListModel @ {self:p}"))
7935            .finish()
7936    }
7937}
7938
7939#[repr(C)]
7940#[allow(dead_code)]
7941pub struct GtkMediaControls {
7942    _data: [u8; 0],
7943    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7944}
7945
7946impl ::std::fmt::Debug for GtkMediaControls {
7947    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7948        f.debug_struct(&format!("GtkMediaControls @ {self:p}"))
7949            .finish()
7950    }
7951}
7952
7953#[derive(Copy, Clone)]
7954#[repr(C)]
7955pub struct GtkMediaFile {
7956    pub parent_instance: GtkMediaStream,
7957}
7958
7959impl ::std::fmt::Debug for GtkMediaFile {
7960    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7961        f.debug_struct(&format!("GtkMediaFile @ {self:p}"))
7962            .field("parent_instance", &self.parent_instance)
7963            .finish()
7964    }
7965}
7966
7967#[derive(Copy, Clone)]
7968#[repr(C)]
7969pub struct GtkMediaStream {
7970    pub parent_instance: gobject::GObject,
7971}
7972
7973impl ::std::fmt::Debug for GtkMediaStream {
7974    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7975        f.debug_struct(&format!("GtkMediaStream @ {self:p}"))
7976            .field("parent_instance", &self.parent_instance)
7977            .finish()
7978    }
7979}
7980
7981#[repr(C)]
7982#[allow(dead_code)]
7983pub struct GtkMenuButton {
7984    _data: [u8; 0],
7985    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7986}
7987
7988impl ::std::fmt::Debug for GtkMenuButton {
7989    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7990        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
7991            .finish()
7992    }
7993}
7994
7995#[derive(Copy, Clone)]
7996#[repr(C)]
7997pub struct GtkMessageDialog {
7998    pub parent_instance: GtkDialog,
7999}
8000
8001impl ::std::fmt::Debug for GtkMessageDialog {
8002    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8003        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
8004            .field("parent_instance", &self.parent_instance)
8005            .finish()
8006    }
8007}
8008
8009#[repr(C)]
8010#[allow(dead_code)]
8011pub struct GtkMnemonicAction {
8012    _data: [u8; 0],
8013    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8014}
8015
8016impl ::std::fmt::Debug for GtkMnemonicAction {
8017    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8018        f.debug_struct(&format!("GtkMnemonicAction @ {self:p}"))
8019            .finish()
8020    }
8021}
8022
8023#[repr(C)]
8024#[allow(dead_code)]
8025pub struct GtkMnemonicTrigger {
8026    _data: [u8; 0],
8027    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8028}
8029
8030impl ::std::fmt::Debug for GtkMnemonicTrigger {
8031    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8032        f.debug_struct(&format!("GtkMnemonicTrigger @ {self:p}"))
8033            .finish()
8034    }
8035}
8036
8037#[derive(Copy, Clone)]
8038#[repr(C)]
8039pub struct GtkMountOperation {
8040    pub parent_instance: gio::GMountOperation,
8041    pub priv_: *mut GtkMountOperationPrivate,
8042}
8043
8044impl ::std::fmt::Debug for GtkMountOperation {
8045    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8046        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
8047            .field("parent_instance", &self.parent_instance)
8048            .field("priv_", &self.priv_)
8049            .finish()
8050    }
8051}
8052
8053#[repr(C)]
8054#[allow(dead_code)]
8055pub struct GtkMultiFilter {
8056    _data: [u8; 0],
8057    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8058}
8059
8060impl ::std::fmt::Debug for GtkMultiFilter {
8061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8062        f.debug_struct(&format!("GtkMultiFilter @ {self:p}"))
8063            .finish()
8064    }
8065}
8066
8067#[repr(C)]
8068#[allow(dead_code)]
8069pub struct GtkMultiSelection {
8070    _data: [u8; 0],
8071    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8072}
8073
8074impl ::std::fmt::Debug for GtkMultiSelection {
8075    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8076        f.debug_struct(&format!("GtkMultiSelection @ {self:p}"))
8077            .finish()
8078    }
8079}
8080
8081#[repr(C)]
8082#[allow(dead_code)]
8083pub struct GtkMultiSorter {
8084    _data: [u8; 0],
8085    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8086}
8087
8088impl ::std::fmt::Debug for GtkMultiSorter {
8089    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8090        f.debug_struct(&format!("GtkMultiSorter @ {self:p}"))
8091            .finish()
8092    }
8093}
8094
8095#[repr(C)]
8096#[allow(dead_code)]
8097pub struct GtkNamedAction {
8098    _data: [u8; 0],
8099    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8100}
8101
8102impl ::std::fmt::Debug for GtkNamedAction {
8103    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8104        f.debug_struct(&format!("GtkNamedAction @ {self:p}"))
8105            .finish()
8106    }
8107}
8108
8109#[derive(Copy, Clone)]
8110#[repr(C)]
8111pub struct GtkNativeDialog {
8112    pub parent_instance: gobject::GObject,
8113}
8114
8115impl ::std::fmt::Debug for GtkNativeDialog {
8116    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8117        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
8118            .field("parent_instance", &self.parent_instance)
8119            .finish()
8120    }
8121}
8122
8123#[repr(C)]
8124#[allow(dead_code)]
8125pub struct GtkNeverTrigger {
8126    _data: [u8; 0],
8127    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8128}
8129
8130impl ::std::fmt::Debug for GtkNeverTrigger {
8131    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8132        f.debug_struct(&format!("GtkNeverTrigger @ {self:p}"))
8133            .finish()
8134    }
8135}
8136
8137#[repr(C)]
8138#[allow(dead_code)]
8139pub struct GtkNoSelection {
8140    _data: [u8; 0],
8141    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8142}
8143
8144impl ::std::fmt::Debug for GtkNoSelection {
8145    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8146        f.debug_struct(&format!("GtkNoSelection @ {self:p}"))
8147            .finish()
8148    }
8149}
8150
8151#[repr(C)]
8152#[allow(dead_code)]
8153pub struct GtkNotebook {
8154    _data: [u8; 0],
8155    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8156}
8157
8158impl ::std::fmt::Debug for GtkNotebook {
8159    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8160        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
8161    }
8162}
8163
8164#[repr(C)]
8165#[allow(dead_code)]
8166pub struct GtkNotebookPage {
8167    _data: [u8; 0],
8168    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8169}
8170
8171impl ::std::fmt::Debug for GtkNotebookPage {
8172    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8173        f.debug_struct(&format!("GtkNotebookPage @ {self:p}"))
8174            .finish()
8175    }
8176}
8177
8178#[repr(C)]
8179#[allow(dead_code)]
8180pub struct GtkNothingAction {
8181    _data: [u8; 0],
8182    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8183}
8184
8185impl ::std::fmt::Debug for GtkNothingAction {
8186    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8187        f.debug_struct(&format!("GtkNothingAction @ {self:p}"))
8188            .finish()
8189    }
8190}
8191
8192#[repr(C)]
8193#[allow(dead_code)]
8194pub struct GtkNumericSorter {
8195    _data: [u8; 0],
8196    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8197}
8198
8199impl ::std::fmt::Debug for GtkNumericSorter {
8200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8201        f.debug_struct(&format!("GtkNumericSorter @ {self:p}"))
8202            .finish()
8203    }
8204}
8205
8206#[repr(C)]
8207#[allow(dead_code)]
8208pub struct GtkObjectExpression {
8209    _data: [u8; 0],
8210    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8211}
8212
8213impl ::std::fmt::Debug for GtkObjectExpression {
8214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8215        f.debug_struct(&format!("GtkObjectExpression @ {self:p}"))
8216            .finish()
8217    }
8218}
8219
8220#[repr(C)]
8221#[allow(dead_code)]
8222pub struct GtkOverlay {
8223    _data: [u8; 0],
8224    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8225}
8226
8227impl ::std::fmt::Debug for GtkOverlay {
8228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8229        f.debug_struct(&format!("GtkOverlay @ {self:p}")).finish()
8230    }
8231}
8232
8233#[repr(C)]
8234#[allow(dead_code)]
8235pub struct GtkOverlayLayout {
8236    _data: [u8; 0],
8237    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8238}
8239
8240impl ::std::fmt::Debug for GtkOverlayLayout {
8241    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8242        f.debug_struct(&format!("GtkOverlayLayout @ {self:p}"))
8243            .finish()
8244    }
8245}
8246
8247#[repr(C)]
8248#[allow(dead_code)]
8249pub struct GtkOverlayLayoutChild {
8250    _data: [u8; 0],
8251    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8252}
8253
8254impl ::std::fmt::Debug for GtkOverlayLayoutChild {
8255    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8256        f.debug_struct(&format!("GtkOverlayLayoutChild @ {self:p}"))
8257            .finish()
8258    }
8259}
8260
8261#[repr(C)]
8262#[allow(dead_code)]
8263pub struct GtkPadController {
8264    _data: [u8; 0],
8265    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8266}
8267
8268impl ::std::fmt::Debug for GtkPadController {
8269    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8270        f.debug_struct(&format!("GtkPadController @ {self:p}"))
8271            .finish()
8272    }
8273}
8274
8275#[repr(C)]
8276#[allow(dead_code)]
8277pub struct GtkPageSetup {
8278    _data: [u8; 0],
8279    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8280}
8281
8282impl ::std::fmt::Debug for GtkPageSetup {
8283    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8284        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
8285    }
8286}
8287
8288#[repr(C)]
8289#[allow(dead_code)]
8290pub struct GtkPageSetupUnixDialog {
8291    _data: [u8; 0],
8292    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8293}
8294
8295impl ::std::fmt::Debug for GtkPageSetupUnixDialog {
8296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8297        f.debug_struct(&format!("GtkPageSetupUnixDialog @ {self:p}"))
8298            .finish()
8299    }
8300}
8301
8302#[repr(C)]
8303#[allow(dead_code)]
8304pub struct GtkPaned {
8305    _data: [u8; 0],
8306    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8307}
8308
8309impl ::std::fmt::Debug for GtkPaned {
8310    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8311        f.debug_struct(&format!("GtkPaned @ {self:p}")).finish()
8312    }
8313}
8314
8315#[derive(Copy, Clone)]
8316#[repr(C)]
8317pub struct GtkParamSpecExpression {
8318    pub parent_instance: gobject::GParamSpec,
8319}
8320
8321impl ::std::fmt::Debug for GtkParamSpecExpression {
8322    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8323        f.debug_struct(&format!("GtkParamSpecExpression @ {self:p}"))
8324            .finish()
8325    }
8326}
8327
8328#[repr(C)]
8329#[allow(dead_code)]
8330pub struct GtkPasswordEntry {
8331    _data: [u8; 0],
8332    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8333}
8334
8335impl ::std::fmt::Debug for GtkPasswordEntry {
8336    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8337        f.debug_struct(&format!("GtkPasswordEntry @ {self:p}"))
8338            .finish()
8339    }
8340}
8341
8342#[repr(C)]
8343#[allow(dead_code)]
8344pub struct GtkPasswordEntryBuffer {
8345    _data: [u8; 0],
8346    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8347}
8348
8349impl ::std::fmt::Debug for GtkPasswordEntryBuffer {
8350    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8351        f.debug_struct(&format!("GtkPasswordEntryBuffer @ {self:p}"))
8352            .finish()
8353    }
8354}
8355
8356#[repr(C)]
8357#[allow(dead_code)]
8358pub struct GtkPicture {
8359    _data: [u8; 0],
8360    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8361}
8362
8363impl ::std::fmt::Debug for GtkPicture {
8364    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8365        f.debug_struct(&format!("GtkPicture @ {self:p}")).finish()
8366    }
8367}
8368
8369#[derive(Copy, Clone)]
8370#[repr(C)]
8371pub struct GtkPopover {
8372    pub parent: GtkWidget,
8373}
8374
8375impl ::std::fmt::Debug for GtkPopover {
8376    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8377        f.debug_struct(&format!("GtkPopover @ {self:p}"))
8378            .field("parent", &self.parent)
8379            .finish()
8380    }
8381}
8382
8383#[repr(C)]
8384#[allow(dead_code)]
8385pub struct GtkPopoverMenu {
8386    _data: [u8; 0],
8387    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8388}
8389
8390impl ::std::fmt::Debug for GtkPopoverMenu {
8391    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8392        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
8393            .finish()
8394    }
8395}
8396
8397#[repr(C)]
8398#[allow(dead_code)]
8399pub struct GtkPopoverMenuBar {
8400    _data: [u8; 0],
8401    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8402}
8403
8404impl ::std::fmt::Debug for GtkPopoverMenuBar {
8405    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8406        f.debug_struct(&format!("GtkPopoverMenuBar @ {self:p}"))
8407            .finish()
8408    }
8409}
8410
8411#[repr(C)]
8412#[allow(dead_code)]
8413pub struct GtkPrintContext {
8414    _data: [u8; 0],
8415    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8416}
8417
8418impl ::std::fmt::Debug for GtkPrintContext {
8419    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8420        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
8421            .finish()
8422    }
8423}
8424
8425#[repr(C)]
8426#[allow(dead_code)]
8427pub struct GtkPrintDialog {
8428    _data: [u8; 0],
8429    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8430}
8431
8432impl ::std::fmt::Debug for GtkPrintDialog {
8433    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8434        f.debug_struct(&format!("GtkPrintDialog @ {self:p}"))
8435            .finish()
8436    }
8437}
8438
8439#[repr(C)]
8440#[allow(dead_code)]
8441pub struct GtkPrintJob {
8442    _data: [u8; 0],
8443    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8444}
8445
8446impl ::std::fmt::Debug for GtkPrintJob {
8447    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8448        f.debug_struct(&format!("GtkPrintJob @ {self:p}")).finish()
8449    }
8450}
8451
8452#[derive(Copy, Clone)]
8453#[repr(C)]
8454pub struct GtkPrintOperation {
8455    pub parent_instance: gobject::GObject,
8456    pub priv_: *mut GtkPrintOperationPrivate,
8457}
8458
8459impl ::std::fmt::Debug for GtkPrintOperation {
8460    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8461        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
8462            .field("parent_instance", &self.parent_instance)
8463            .finish()
8464    }
8465}
8466
8467#[repr(C)]
8468#[allow(dead_code)]
8469pub struct GtkPrintSettings {
8470    _data: [u8; 0],
8471    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8472}
8473
8474impl ::std::fmt::Debug for GtkPrintSettings {
8475    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8476        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
8477            .finish()
8478    }
8479}
8480
8481#[repr(C)]
8482#[allow(dead_code)]
8483pub struct GtkPrintUnixDialog {
8484    _data: [u8; 0],
8485    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8486}
8487
8488impl ::std::fmt::Debug for GtkPrintUnixDialog {
8489    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8490        f.debug_struct(&format!("GtkPrintUnixDialog @ {self:p}"))
8491            .finish()
8492    }
8493}
8494
8495#[repr(C)]
8496#[allow(dead_code)]
8497pub struct GtkPrinter {
8498    _data: [u8; 0],
8499    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8500}
8501
8502impl ::std::fmt::Debug for GtkPrinter {
8503    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8504        f.debug_struct(&format!("GtkPrinter @ {self:p}")).finish()
8505    }
8506}
8507
8508#[repr(C)]
8509#[allow(dead_code)]
8510pub struct GtkProgressBar {
8511    _data: [u8; 0],
8512    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8513}
8514
8515impl ::std::fmt::Debug for GtkProgressBar {
8516    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8517        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
8518            .finish()
8519    }
8520}
8521
8522#[repr(C)]
8523#[allow(dead_code)]
8524pub struct GtkPropertyExpression {
8525    _data: [u8; 0],
8526    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8527}
8528
8529impl ::std::fmt::Debug for GtkPropertyExpression {
8530    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8531        f.debug_struct(&format!("GtkPropertyExpression @ {self:p}"))
8532            .finish()
8533    }
8534}
8535
8536#[derive(Copy, Clone)]
8537#[repr(C)]
8538pub struct GtkRange {
8539    pub parent_instance: GtkWidget,
8540}
8541
8542impl ::std::fmt::Debug for GtkRange {
8543    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8544        f.debug_struct(&format!("GtkRange @ {self:p}"))
8545            .field("parent_instance", &self.parent_instance)
8546            .finish()
8547    }
8548}
8549
8550#[derive(Copy, Clone)]
8551#[repr(C)]
8552pub struct GtkRecentManager {
8553    pub parent_instance: gobject::GObject,
8554    pub priv_: *mut GtkRecentManagerPrivate,
8555}
8556
8557impl ::std::fmt::Debug for GtkRecentManager {
8558    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8559        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
8560            .finish()
8561    }
8562}
8563
8564#[repr(C)]
8565#[allow(dead_code)]
8566pub struct GtkRevealer {
8567    _data: [u8; 0],
8568    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8569}
8570
8571impl ::std::fmt::Debug for GtkRevealer {
8572    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8573        f.debug_struct(&format!("GtkRevealer @ {self:p}")).finish()
8574    }
8575}
8576
8577#[derive(Copy, Clone)]
8578#[repr(C)]
8579pub struct GtkScale {
8580    pub parent_instance: GtkRange,
8581}
8582
8583impl ::std::fmt::Debug for GtkScale {
8584    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8585        f.debug_struct(&format!("GtkScale @ {self:p}"))
8586            .field("parent_instance", &self.parent_instance)
8587            .finish()
8588    }
8589}
8590
8591#[derive(Copy, Clone)]
8592#[repr(C)]
8593pub struct GtkScaleButton {
8594    pub parent_instance: GtkWidget,
8595}
8596
8597impl ::std::fmt::Debug for GtkScaleButton {
8598    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8599        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
8600            .field("parent_instance", &self.parent_instance)
8601            .finish()
8602    }
8603}
8604
8605#[repr(C)]
8606#[allow(dead_code)]
8607pub struct GtkScrollbar {
8608    _data: [u8; 0],
8609    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8610}
8611
8612impl ::std::fmt::Debug for GtkScrollbar {
8613    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8614        f.debug_struct(&format!("GtkScrollbar @ {self:p}")).finish()
8615    }
8616}
8617
8618#[repr(C)]
8619#[allow(dead_code)]
8620pub struct GtkScrolledWindow {
8621    _data: [u8; 0],
8622    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8623}
8624
8625impl ::std::fmt::Debug for GtkScrolledWindow {
8626    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8627        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
8628            .finish()
8629    }
8630}
8631
8632#[repr(C)]
8633#[allow(dead_code)]
8634pub struct GtkSearchBar {
8635    _data: [u8; 0],
8636    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8637}
8638
8639impl ::std::fmt::Debug for GtkSearchBar {
8640    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8641        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
8642    }
8643}
8644
8645#[repr(C)]
8646#[allow(dead_code)]
8647pub struct GtkSearchEntry {
8648    _data: [u8; 0],
8649    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8650}
8651
8652impl ::std::fmt::Debug for GtkSearchEntry {
8653    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8654        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
8655            .finish()
8656    }
8657}
8658
8659#[repr(C)]
8660#[allow(dead_code)]
8661pub struct GtkSelectionFilterModel {
8662    _data: [u8; 0],
8663    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8664}
8665
8666impl ::std::fmt::Debug for GtkSelectionFilterModel {
8667    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8668        f.debug_struct(&format!("GtkSelectionFilterModel @ {self:p}"))
8669            .finish()
8670    }
8671}
8672
8673#[repr(C)]
8674#[allow(dead_code)]
8675pub struct GtkSeparator {
8676    _data: [u8; 0],
8677    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8678}
8679
8680impl ::std::fmt::Debug for GtkSeparator {
8681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8682        f.debug_struct(&format!("GtkSeparator @ {self:p}")).finish()
8683    }
8684}
8685
8686#[repr(C)]
8687#[allow(dead_code)]
8688pub struct GtkSettings {
8689    _data: [u8; 0],
8690    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8691}
8692
8693impl ::std::fmt::Debug for GtkSettings {
8694    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8695        f.debug_struct(&format!("GtkSettings @ {self:p}")).finish()
8696    }
8697}
8698
8699#[repr(C)]
8700#[allow(dead_code)]
8701pub struct GtkShortcut {
8702    _data: [u8; 0],
8703    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8704}
8705
8706impl ::std::fmt::Debug for GtkShortcut {
8707    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8708        f.debug_struct(&format!("GtkShortcut @ {self:p}")).finish()
8709    }
8710}
8711
8712#[repr(C)]
8713#[allow(dead_code)]
8714pub struct GtkShortcutAction {
8715    _data: [u8; 0],
8716    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8717}
8718
8719impl ::std::fmt::Debug for GtkShortcutAction {
8720    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8721        f.debug_struct(&format!("GtkShortcutAction @ {self:p}"))
8722            .finish()
8723    }
8724}
8725
8726#[repr(C)]
8727#[allow(dead_code)]
8728pub struct GtkShortcutController {
8729    _data: [u8; 0],
8730    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8731}
8732
8733impl ::std::fmt::Debug for GtkShortcutController {
8734    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8735        f.debug_struct(&format!("GtkShortcutController @ {self:p}"))
8736            .finish()
8737    }
8738}
8739
8740#[repr(C)]
8741#[allow(dead_code)]
8742pub struct GtkShortcutLabel {
8743    _data: [u8; 0],
8744    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8745}
8746
8747impl ::std::fmt::Debug for GtkShortcutLabel {
8748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8749        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
8750            .finish()
8751    }
8752}
8753
8754#[repr(C)]
8755#[allow(dead_code)]
8756pub struct GtkShortcutTrigger {
8757    _data: [u8; 0],
8758    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8759}
8760
8761impl ::std::fmt::Debug for GtkShortcutTrigger {
8762    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8763        f.debug_struct(&format!("GtkShortcutTrigger @ {self:p}"))
8764            .finish()
8765    }
8766}
8767
8768#[repr(C)]
8769#[allow(dead_code)]
8770pub struct GtkShortcutsGroup {
8771    _data: [u8; 0],
8772    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8773}
8774
8775impl ::std::fmt::Debug for GtkShortcutsGroup {
8776    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8777        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
8778            .finish()
8779    }
8780}
8781
8782#[repr(C)]
8783#[allow(dead_code)]
8784pub struct GtkShortcutsSection {
8785    _data: [u8; 0],
8786    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8787}
8788
8789impl ::std::fmt::Debug for GtkShortcutsSection {
8790    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8791        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
8792            .finish()
8793    }
8794}
8795
8796#[repr(C)]
8797#[allow(dead_code)]
8798pub struct GtkShortcutsShortcut {
8799    _data: [u8; 0],
8800    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8801}
8802
8803impl ::std::fmt::Debug for GtkShortcutsShortcut {
8804    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8805        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
8806            .finish()
8807    }
8808}
8809
8810#[repr(C)]
8811#[allow(dead_code)]
8812pub struct GtkShortcutsWindow {
8813    _data: [u8; 0],
8814    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8815}
8816
8817impl ::std::fmt::Debug for GtkShortcutsWindow {
8818    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8819        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
8820            .finish()
8821    }
8822}
8823
8824#[repr(C)]
8825#[allow(dead_code)]
8826pub struct GtkSignalAction {
8827    _data: [u8; 0],
8828    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8829}
8830
8831impl ::std::fmt::Debug for GtkSignalAction {
8832    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8833        f.debug_struct(&format!("GtkSignalAction @ {self:p}"))
8834            .finish()
8835    }
8836}
8837
8838#[repr(C)]
8839#[allow(dead_code)]
8840pub struct GtkSignalListItemFactory {
8841    _data: [u8; 0],
8842    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8843}
8844
8845impl ::std::fmt::Debug for GtkSignalListItemFactory {
8846    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8847        f.debug_struct(&format!("GtkSignalListItemFactory @ {self:p}"))
8848            .finish()
8849    }
8850}
8851
8852#[repr(C)]
8853#[allow(dead_code)]
8854pub struct GtkSingleSelection {
8855    _data: [u8; 0],
8856    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8857}
8858
8859impl ::std::fmt::Debug for GtkSingleSelection {
8860    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8861        f.debug_struct(&format!("GtkSingleSelection @ {self:p}"))
8862            .finish()
8863    }
8864}
8865
8866#[derive(Copy, Clone)]
8867#[repr(C)]
8868pub struct GtkSizeGroup {
8869    pub parent_instance: gobject::GObject,
8870}
8871
8872impl ::std::fmt::Debug for GtkSizeGroup {
8873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8874        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
8875            .field("parent_instance", &self.parent_instance)
8876            .finish()
8877    }
8878}
8879
8880#[repr(C)]
8881#[allow(dead_code)]
8882pub struct GtkSliceListModel {
8883    _data: [u8; 0],
8884    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8885}
8886
8887impl ::std::fmt::Debug for GtkSliceListModel {
8888    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8889        f.debug_struct(&format!("GtkSliceListModel @ {self:p}"))
8890            .finish()
8891    }
8892}
8893
8894#[repr(C)]
8895#[allow(dead_code)]
8896pub struct GtkSnapshot {
8897    _data: [u8; 0],
8898    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8899}
8900
8901impl ::std::fmt::Debug for GtkSnapshot {
8902    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8903        f.debug_struct(&format!("GtkSnapshot @ {self:p}")).finish()
8904    }
8905}
8906
8907#[repr(C)]
8908#[allow(dead_code)]
8909pub struct GtkSortListModel {
8910    _data: [u8; 0],
8911    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8912}
8913
8914impl ::std::fmt::Debug for GtkSortListModel {
8915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8916        f.debug_struct(&format!("GtkSortListModel @ {self:p}"))
8917            .finish()
8918    }
8919}
8920
8921#[derive(Copy, Clone)]
8922#[repr(C)]
8923pub struct GtkSorter {
8924    pub parent_instance: gobject::GObject,
8925}
8926
8927impl ::std::fmt::Debug for GtkSorter {
8928    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8929        f.debug_struct(&format!("GtkSorter @ {self:p}"))
8930            .field("parent_instance", &self.parent_instance)
8931            .finish()
8932    }
8933}
8934
8935#[repr(C)]
8936#[allow(dead_code)]
8937pub struct GtkSpinButton {
8938    _data: [u8; 0],
8939    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8940}
8941
8942impl ::std::fmt::Debug for GtkSpinButton {
8943    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8944        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
8945            .finish()
8946    }
8947}
8948
8949#[repr(C)]
8950#[allow(dead_code)]
8951pub struct GtkSpinner {
8952    _data: [u8; 0],
8953    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8954}
8955
8956impl ::std::fmt::Debug for GtkSpinner {
8957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8958        f.debug_struct(&format!("GtkSpinner @ {self:p}")).finish()
8959    }
8960}
8961
8962#[repr(C)]
8963#[allow(dead_code)]
8964pub struct GtkStack {
8965    _data: [u8; 0],
8966    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8967}
8968
8969impl ::std::fmt::Debug for GtkStack {
8970    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8971        f.debug_struct(&format!("GtkStack @ {self:p}")).finish()
8972    }
8973}
8974
8975#[repr(C)]
8976#[allow(dead_code)]
8977pub struct GtkStackPage {
8978    _data: [u8; 0],
8979    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8980}
8981
8982impl ::std::fmt::Debug for GtkStackPage {
8983    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8984        f.debug_struct(&format!("GtkStackPage @ {self:p}")).finish()
8985    }
8986}
8987
8988#[repr(C)]
8989#[allow(dead_code)]
8990pub struct GtkStackSidebar {
8991    _data: [u8; 0],
8992    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8993}
8994
8995impl ::std::fmt::Debug for GtkStackSidebar {
8996    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8997        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
8998            .finish()
8999    }
9000}
9001
9002#[repr(C)]
9003#[allow(dead_code)]
9004pub struct GtkStackSwitcher {
9005    _data: [u8; 0],
9006    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9007}
9008
9009impl ::std::fmt::Debug for GtkStackSwitcher {
9010    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9011        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
9012            .finish()
9013    }
9014}
9015
9016#[repr(C)]
9017#[allow(dead_code)]
9018pub struct GtkStatusbar {
9019    _data: [u8; 0],
9020    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9021}
9022
9023impl ::std::fmt::Debug for GtkStatusbar {
9024    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9025        f.debug_struct(&format!("GtkStatusbar @ {self:p}")).finish()
9026    }
9027}
9028
9029#[repr(C)]
9030#[allow(dead_code)]
9031pub struct GtkStringFilter {
9032    _data: [u8; 0],
9033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9034}
9035
9036impl ::std::fmt::Debug for GtkStringFilter {
9037    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9038        f.debug_struct(&format!("GtkStringFilter @ {self:p}"))
9039            .finish()
9040    }
9041}
9042
9043#[repr(C)]
9044#[allow(dead_code)]
9045pub struct GtkStringList {
9046    _data: [u8; 0],
9047    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9048}
9049
9050impl ::std::fmt::Debug for GtkStringList {
9051    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9052        f.debug_struct(&format!("GtkStringList @ {self:p}"))
9053            .finish()
9054    }
9055}
9056
9057#[repr(C)]
9058#[allow(dead_code)]
9059pub struct GtkStringObject {
9060    _data: [u8; 0],
9061    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9062}
9063
9064impl ::std::fmt::Debug for GtkStringObject {
9065    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9066        f.debug_struct(&format!("GtkStringObject @ {self:p}"))
9067            .finish()
9068    }
9069}
9070
9071#[repr(C)]
9072#[allow(dead_code)]
9073pub struct GtkStringSorter {
9074    _data: [u8; 0],
9075    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9076}
9077
9078impl ::std::fmt::Debug for GtkStringSorter {
9079    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9080        f.debug_struct(&format!("GtkStringSorter @ {self:p}"))
9081            .finish()
9082    }
9083}
9084
9085#[derive(Copy, Clone)]
9086#[repr(C)]
9087pub struct GtkStyleContext {
9088    pub parent_object: gobject::GObject,
9089}
9090
9091impl ::std::fmt::Debug for GtkStyleContext {
9092    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9093        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
9094            .field("parent_object", &self.parent_object)
9095            .finish()
9096    }
9097}
9098
9099#[repr(C)]
9100#[allow(dead_code)]
9101pub struct GtkSwitch {
9102    _data: [u8; 0],
9103    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9104}
9105
9106impl ::std::fmt::Debug for GtkSwitch {
9107    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9108        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
9109    }
9110}
9111
9112#[derive(Copy, Clone)]
9113#[repr(C)]
9114pub struct GtkText {
9115    pub parent_instance: GtkWidget,
9116}
9117
9118impl ::std::fmt::Debug for GtkText {
9119    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9120        f.debug_struct(&format!("GtkText @ {self:p}")).finish()
9121    }
9122}
9123
9124#[derive(Copy, Clone)]
9125#[repr(C)]
9126pub struct GtkTextBuffer {
9127    pub parent_instance: gobject::GObject,
9128    pub priv_: *mut GtkTextBufferPrivate,
9129}
9130
9131impl ::std::fmt::Debug for GtkTextBuffer {
9132    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9133        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
9134            .field("parent_instance", &self.parent_instance)
9135            .field("priv_", &self.priv_)
9136            .finish()
9137    }
9138}
9139
9140#[derive(Copy, Clone)]
9141#[repr(C)]
9142pub struct GtkTextChildAnchor {
9143    pub parent_instance: gobject::GObject,
9144    pub segment: gpointer,
9145}
9146
9147impl ::std::fmt::Debug for GtkTextChildAnchor {
9148    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9149        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
9150            .field("parent_instance", &self.parent_instance)
9151            .finish()
9152    }
9153}
9154
9155#[derive(Copy, Clone)]
9156#[repr(C)]
9157pub struct GtkTextMark {
9158    pub parent_instance: gobject::GObject,
9159    pub segment: gpointer,
9160}
9161
9162impl ::std::fmt::Debug for GtkTextMark {
9163    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9164        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
9165            .field("parent_instance", &self.parent_instance)
9166            .finish()
9167    }
9168}
9169
9170#[derive(Copy, Clone)]
9171#[repr(C)]
9172pub struct GtkTextTag {
9173    pub parent_instance: gobject::GObject,
9174    pub priv_: *mut GtkTextTagPrivate,
9175}
9176
9177impl ::std::fmt::Debug for GtkTextTag {
9178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9179        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
9180            .field("parent_instance", &self.parent_instance)
9181            .field("priv_", &self.priv_)
9182            .finish()
9183    }
9184}
9185
9186#[repr(C)]
9187#[allow(dead_code)]
9188pub struct GtkTextTagTable {
9189    _data: [u8; 0],
9190    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9191}
9192
9193impl ::std::fmt::Debug for GtkTextTagTable {
9194    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9195        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
9196            .finish()
9197    }
9198}
9199
9200#[derive(Copy, Clone)]
9201#[repr(C)]
9202pub struct GtkTextView {
9203    pub parent_instance: GtkWidget,
9204    pub priv_: *mut GtkTextViewPrivate,
9205}
9206
9207impl ::std::fmt::Debug for GtkTextView {
9208    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9209        f.debug_struct(&format!("GtkTextView @ {self:p}"))
9210            .field("parent_instance", &self.parent_instance)
9211            .finish()
9212    }
9213}
9214
9215#[derive(Copy, Clone)]
9216#[repr(C)]
9217pub struct GtkToggleButton {
9218    pub button: GtkButton,
9219}
9220
9221impl ::std::fmt::Debug for GtkToggleButton {
9222    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9223        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
9224            .finish()
9225    }
9226}
9227
9228#[repr(C)]
9229#[allow(dead_code)]
9230pub struct GtkTooltip {
9231    _data: [u8; 0],
9232    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9233}
9234
9235impl ::std::fmt::Debug for GtkTooltip {
9236    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9237        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
9238    }
9239}
9240
9241#[repr(C)]
9242#[allow(dead_code)]
9243pub struct GtkTreeExpander {
9244    _data: [u8; 0],
9245    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9246}
9247
9248impl ::std::fmt::Debug for GtkTreeExpander {
9249    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9250        f.debug_struct(&format!("GtkTreeExpander @ {self:p}"))
9251            .finish()
9252    }
9253}
9254
9255#[repr(C)]
9256#[allow(dead_code)]
9257pub struct GtkTreeListModel {
9258    _data: [u8; 0],
9259    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9260}
9261
9262impl ::std::fmt::Debug for GtkTreeListModel {
9263    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9264        f.debug_struct(&format!("GtkTreeListModel @ {self:p}"))
9265            .finish()
9266    }
9267}
9268
9269#[repr(C)]
9270#[allow(dead_code)]
9271pub struct GtkTreeListRow {
9272    _data: [u8; 0],
9273    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9274}
9275
9276impl ::std::fmt::Debug for GtkTreeListRow {
9277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9278        f.debug_struct(&format!("GtkTreeListRow @ {self:p}"))
9279            .finish()
9280    }
9281}
9282
9283#[repr(C)]
9284#[allow(dead_code)]
9285pub struct GtkTreeListRowSorter {
9286    _data: [u8; 0],
9287    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9288}
9289
9290impl ::std::fmt::Debug for GtkTreeListRowSorter {
9291    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9292        f.debug_struct(&format!("GtkTreeListRowSorter @ {self:p}"))
9293            .finish()
9294    }
9295}
9296
9297#[derive(Copy, Clone)]
9298#[repr(C)]
9299pub struct GtkTreeModelFilter {
9300    pub parent: gobject::GObject,
9301    pub priv_: *mut GtkTreeModelFilterPrivate,
9302}
9303
9304impl ::std::fmt::Debug for GtkTreeModelFilter {
9305    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9306        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
9307            .field("parent", &self.parent)
9308            .finish()
9309    }
9310}
9311
9312#[derive(Copy, Clone)]
9313#[repr(C)]
9314pub struct GtkTreeModelSort {
9315    pub parent: gobject::GObject,
9316    pub priv_: *mut GtkTreeModelSortPrivate,
9317}
9318
9319impl ::std::fmt::Debug for GtkTreeModelSort {
9320    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9321        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
9322            .field("parent", &self.parent)
9323            .finish()
9324    }
9325}
9326
9327#[repr(C)]
9328#[allow(dead_code)]
9329pub struct GtkTreeSelection {
9330    _data: [u8; 0],
9331    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9332}
9333
9334impl ::std::fmt::Debug for GtkTreeSelection {
9335    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9336        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
9337            .finish()
9338    }
9339}
9340
9341#[derive(Copy, Clone)]
9342#[repr(C)]
9343pub struct GtkTreeStore {
9344    pub parent: gobject::GObject,
9345    pub priv_: *mut GtkTreeStorePrivate,
9346}
9347
9348impl ::std::fmt::Debug for GtkTreeStore {
9349    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9350        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
9351            .field("parent", &self.parent)
9352            .field("priv_", &self.priv_)
9353            .finish()
9354    }
9355}
9356
9357#[derive(Copy, Clone)]
9358#[repr(C)]
9359pub struct GtkTreeView {
9360    pub parent_instance: GtkWidget,
9361}
9362
9363impl ::std::fmt::Debug for GtkTreeView {
9364    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9365        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
9366            .field("parent_instance", &self.parent_instance)
9367            .finish()
9368    }
9369}
9370
9371#[repr(C)]
9372#[allow(dead_code)]
9373pub struct GtkTreeViewColumn {
9374    _data: [u8; 0],
9375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9376}
9377
9378impl ::std::fmt::Debug for GtkTreeViewColumn {
9379    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9380        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
9381            .finish()
9382    }
9383}
9384
9385#[repr(C)]
9386#[allow(dead_code)]
9387pub struct GtkUriLauncher {
9388    _data: [u8; 0],
9389    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9390}
9391
9392impl ::std::fmt::Debug for GtkUriLauncher {
9393    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9394        f.debug_struct(&format!("GtkUriLauncher @ {self:p}"))
9395            .finish()
9396    }
9397}
9398
9399#[repr(C)]
9400#[allow(dead_code)]
9401pub struct GtkVideo {
9402    _data: [u8; 0],
9403    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9404}
9405
9406impl ::std::fmt::Debug for GtkVideo {
9407    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9408        f.debug_struct(&format!("GtkVideo @ {self:p}")).finish()
9409    }
9410}
9411
9412#[repr(C)]
9413#[allow(dead_code)]
9414pub struct GtkViewport {
9415    _data: [u8; 0],
9416    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9417}
9418
9419impl ::std::fmt::Debug for GtkViewport {
9420    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9421        f.debug_struct(&format!("GtkViewport @ {self:p}")).finish()
9422    }
9423}
9424
9425#[derive(Copy, Clone)]
9426#[repr(C)]
9427pub struct GtkVolumeButton {
9428    pub parent: GtkScaleButton,
9429}
9430
9431impl ::std::fmt::Debug for GtkVolumeButton {
9432    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9433        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
9434            .field("parent", &self.parent)
9435            .finish()
9436    }
9437}
9438
9439#[derive(Copy, Clone)]
9440#[repr(C)]
9441pub struct GtkWidget {
9442    pub parent_instance: gobject::GInitiallyUnowned,
9443    pub priv_: *mut GtkWidgetPrivate,
9444}
9445
9446impl ::std::fmt::Debug for GtkWidget {
9447    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9448        f.debug_struct(&format!("GtkWidget @ {self:p}"))
9449            .field("parent_instance", &self.parent_instance)
9450            .finish()
9451    }
9452}
9453
9454#[repr(C)]
9455#[allow(dead_code)]
9456pub struct GtkWidgetPaintable {
9457    _data: [u8; 0],
9458    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9459}
9460
9461impl ::std::fmt::Debug for GtkWidgetPaintable {
9462    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9463        f.debug_struct(&format!("GtkWidgetPaintable @ {self:p}"))
9464            .finish()
9465    }
9466}
9467
9468#[derive(Copy, Clone)]
9469#[repr(C)]
9470pub struct GtkWindow {
9471    pub parent_instance: GtkWidget,
9472}
9473
9474impl ::std::fmt::Debug for GtkWindow {
9475    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9476        f.debug_struct(&format!("GtkWindow @ {self:p}"))
9477            .field("parent_instance", &self.parent_instance)
9478            .finish()
9479    }
9480}
9481
9482#[repr(C)]
9483#[allow(dead_code)]
9484pub struct GtkWindowControls {
9485    _data: [u8; 0],
9486    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9487}
9488
9489impl ::std::fmt::Debug for GtkWindowControls {
9490    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9491        f.debug_struct(&format!("GtkWindowControls @ {self:p}"))
9492            .finish()
9493    }
9494}
9495
9496#[derive(Copy, Clone)]
9497#[repr(C)]
9498pub struct GtkWindowGroup {
9499    pub parent_instance: gobject::GObject,
9500    pub priv_: *mut GtkWindowGroupPrivate,
9501}
9502
9503impl ::std::fmt::Debug for GtkWindowGroup {
9504    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9505        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
9506            .field("parent_instance", &self.parent_instance)
9507            .field("priv_", &self.priv_)
9508            .finish()
9509    }
9510}
9511
9512#[repr(C)]
9513#[allow(dead_code)]
9514pub struct GtkWindowHandle {
9515    _data: [u8; 0],
9516    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9517}
9518
9519impl ::std::fmt::Debug for GtkWindowHandle {
9520    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9521        f.debug_struct(&format!("GtkWindowHandle @ {self:p}"))
9522            .finish()
9523    }
9524}
9525
9526// Interfaces
9527#[repr(C)]
9528#[allow(dead_code)]
9529pub struct GtkAccessible {
9530    _data: [u8; 0],
9531    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9532}
9533
9534impl ::std::fmt::Debug for GtkAccessible {
9535    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9536        write!(f, "GtkAccessible @ {self:p}")
9537    }
9538}
9539
9540#[repr(C)]
9541#[allow(dead_code)]
9542pub struct GtkAccessibleRange {
9543    _data: [u8; 0],
9544    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9545}
9546
9547impl ::std::fmt::Debug for GtkAccessibleRange {
9548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9549        write!(f, "GtkAccessibleRange @ {self:p}")
9550    }
9551}
9552
9553#[repr(C)]
9554#[allow(dead_code)]
9555pub struct GtkAccessibleText {
9556    _data: [u8; 0],
9557    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9558}
9559
9560impl ::std::fmt::Debug for GtkAccessibleText {
9561    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9562        write!(f, "GtkAccessibleText @ {self:p}")
9563    }
9564}
9565
9566#[repr(C)]
9567#[allow(dead_code)]
9568pub struct GtkActionable {
9569    _data: [u8; 0],
9570    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9571}
9572
9573impl ::std::fmt::Debug for GtkActionable {
9574    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9575        write!(f, "GtkActionable @ {self:p}")
9576    }
9577}
9578
9579#[repr(C)]
9580#[allow(dead_code)]
9581pub struct GtkAppChooser {
9582    _data: [u8; 0],
9583    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9584}
9585
9586impl ::std::fmt::Debug for GtkAppChooser {
9587    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9588        write!(f, "GtkAppChooser @ {self:p}")
9589    }
9590}
9591
9592#[repr(C)]
9593#[allow(dead_code)]
9594pub struct GtkBuildable {
9595    _data: [u8; 0],
9596    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9597}
9598
9599impl ::std::fmt::Debug for GtkBuildable {
9600    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9601        write!(f, "GtkBuildable @ {self:p}")
9602    }
9603}
9604
9605#[repr(C)]
9606#[allow(dead_code)]
9607pub struct GtkBuilderScope {
9608    _data: [u8; 0],
9609    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9610}
9611
9612impl ::std::fmt::Debug for GtkBuilderScope {
9613    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9614        write!(f, "GtkBuilderScope @ {self:p}")
9615    }
9616}
9617
9618#[repr(C)]
9619#[allow(dead_code)]
9620pub struct GtkCellEditable {
9621    _data: [u8; 0],
9622    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9623}
9624
9625impl ::std::fmt::Debug for GtkCellEditable {
9626    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9627        write!(f, "GtkCellEditable @ {self:p}")
9628    }
9629}
9630
9631#[repr(C)]
9632#[allow(dead_code)]
9633pub struct GtkCellLayout {
9634    _data: [u8; 0],
9635    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9636}
9637
9638impl ::std::fmt::Debug for GtkCellLayout {
9639    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9640        write!(f, "GtkCellLayout @ {self:p}")
9641    }
9642}
9643
9644#[repr(C)]
9645#[allow(dead_code)]
9646pub struct GtkColorChooser {
9647    _data: [u8; 0],
9648    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9649}
9650
9651impl ::std::fmt::Debug for GtkColorChooser {
9652    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9653        write!(f, "GtkColorChooser @ {self:p}")
9654    }
9655}
9656
9657#[repr(C)]
9658#[allow(dead_code)]
9659pub struct GtkConstraintTarget {
9660    _data: [u8; 0],
9661    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9662}
9663
9664impl ::std::fmt::Debug for GtkConstraintTarget {
9665    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9666        write!(f, "GtkConstraintTarget @ {self:p}")
9667    }
9668}
9669
9670#[repr(C)]
9671#[allow(dead_code)]
9672pub struct GtkEditable {
9673    _data: [u8; 0],
9674    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9675}
9676
9677impl ::std::fmt::Debug for GtkEditable {
9678    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9679        write!(f, "GtkEditable @ {self:p}")
9680    }
9681}
9682
9683#[repr(C)]
9684#[allow(dead_code)]
9685pub struct GtkFileChooser {
9686    _data: [u8; 0],
9687    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9688}
9689
9690impl ::std::fmt::Debug for GtkFileChooser {
9691    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9692        write!(f, "GtkFileChooser @ {self:p}")
9693    }
9694}
9695
9696#[repr(C)]
9697#[allow(dead_code)]
9698pub struct GtkFontChooser {
9699    _data: [u8; 0],
9700    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9701}
9702
9703impl ::std::fmt::Debug for GtkFontChooser {
9704    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9705        write!(f, "GtkFontChooser @ {self:p}")
9706    }
9707}
9708
9709#[repr(C)]
9710#[allow(dead_code)]
9711pub struct GtkNative {
9712    _data: [u8; 0],
9713    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9714}
9715
9716impl ::std::fmt::Debug for GtkNative {
9717    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9718        write!(f, "GtkNative @ {self:p}")
9719    }
9720}
9721
9722#[repr(C)]
9723#[allow(dead_code)]
9724pub struct GtkOrientable {
9725    _data: [u8; 0],
9726    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9727}
9728
9729impl ::std::fmt::Debug for GtkOrientable {
9730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9731        write!(f, "GtkOrientable @ {self:p}")
9732    }
9733}
9734
9735#[repr(C)]
9736#[allow(dead_code)]
9737pub struct GtkPrintOperationPreview {
9738    _data: [u8; 0],
9739    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9740}
9741
9742impl ::std::fmt::Debug for GtkPrintOperationPreview {
9743    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9744        write!(f, "GtkPrintOperationPreview @ {self:p}")
9745    }
9746}
9747
9748#[repr(C)]
9749#[allow(dead_code)]
9750pub struct GtkRoot {
9751    _data: [u8; 0],
9752    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9753}
9754
9755impl ::std::fmt::Debug for GtkRoot {
9756    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9757        write!(f, "GtkRoot @ {self:p}")
9758    }
9759}
9760
9761#[repr(C)]
9762#[allow(dead_code)]
9763pub struct GtkScrollable {
9764    _data: [u8; 0],
9765    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9766}
9767
9768impl ::std::fmt::Debug for GtkScrollable {
9769    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9770        write!(f, "GtkScrollable @ {self:p}")
9771    }
9772}
9773
9774#[repr(C)]
9775#[allow(dead_code)]
9776pub struct GtkSectionModel {
9777    _data: [u8; 0],
9778    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9779}
9780
9781impl ::std::fmt::Debug for GtkSectionModel {
9782    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9783        write!(f, "GtkSectionModel @ {self:p}")
9784    }
9785}
9786
9787#[repr(C)]
9788#[allow(dead_code)]
9789pub struct GtkSelectionModel {
9790    _data: [u8; 0],
9791    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9792}
9793
9794impl ::std::fmt::Debug for GtkSelectionModel {
9795    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9796        write!(f, "GtkSelectionModel @ {self:p}")
9797    }
9798}
9799
9800#[repr(C)]
9801#[allow(dead_code)]
9802pub struct GtkShortcutManager {
9803    _data: [u8; 0],
9804    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9805}
9806
9807impl ::std::fmt::Debug for GtkShortcutManager {
9808    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9809        write!(f, "GtkShortcutManager @ {self:p}")
9810    }
9811}
9812
9813#[repr(C)]
9814#[allow(dead_code)]
9815pub struct GtkStyleProvider {
9816    _data: [u8; 0],
9817    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9818}
9819
9820impl ::std::fmt::Debug for GtkStyleProvider {
9821    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9822        write!(f, "GtkStyleProvider @ {self:p}")
9823    }
9824}
9825
9826#[repr(C)]
9827#[allow(dead_code)]
9828pub struct GtkSymbolicPaintable {
9829    _data: [u8; 0],
9830    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9831}
9832
9833impl ::std::fmt::Debug for GtkSymbolicPaintable {
9834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9835        write!(f, "GtkSymbolicPaintable @ {self:p}")
9836    }
9837}
9838
9839#[repr(C)]
9840#[allow(dead_code)]
9841pub struct GtkTreeDragDest {
9842    _data: [u8; 0],
9843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9844}
9845
9846impl ::std::fmt::Debug for GtkTreeDragDest {
9847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9848        write!(f, "GtkTreeDragDest @ {self:p}")
9849    }
9850}
9851
9852#[repr(C)]
9853#[allow(dead_code)]
9854pub struct GtkTreeDragSource {
9855    _data: [u8; 0],
9856    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9857}
9858
9859impl ::std::fmt::Debug for GtkTreeDragSource {
9860    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9861        write!(f, "GtkTreeDragSource @ {self:p}")
9862    }
9863}
9864
9865#[repr(C)]
9866#[allow(dead_code)]
9867pub struct GtkTreeModel {
9868    _data: [u8; 0],
9869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9870}
9871
9872impl ::std::fmt::Debug for GtkTreeModel {
9873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9874        write!(f, "GtkTreeModel @ {self:p}")
9875    }
9876}
9877
9878#[repr(C)]
9879#[allow(dead_code)]
9880pub struct GtkTreeSortable {
9881    _data: [u8; 0],
9882    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9883}
9884
9885impl ::std::fmt::Debug for GtkTreeSortable {
9886    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9887        write!(f, "GtkTreeSortable @ {self:p}")
9888    }
9889}
9890
9891extern "C" {
9892
9893    //=========================================================================
9894    // GtkAccessibleAnnouncementPriority
9895    //=========================================================================
9896    #[cfg(feature = "v4_14")]
9897    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9898    pub fn gtk_accessible_announcement_priority_get_type() -> GType;
9899
9900    //=========================================================================
9901    // GtkAccessibleAutocomplete
9902    //=========================================================================
9903    pub fn gtk_accessible_autocomplete_get_type() -> GType;
9904
9905    //=========================================================================
9906    // GtkAccessibleInvalidState
9907    //=========================================================================
9908    pub fn gtk_accessible_invalid_state_get_type() -> GType;
9909
9910    //=========================================================================
9911    // GtkAccessiblePlatformState
9912    //=========================================================================
9913    #[cfg(feature = "v4_10")]
9914    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
9915    pub fn gtk_accessible_platform_state_get_type() -> GType;
9916
9917    //=========================================================================
9918    // GtkAccessibleProperty
9919    //=========================================================================
9920    pub fn gtk_accessible_property_get_type() -> GType;
9921    pub fn gtk_accessible_property_init_value(
9922        property: GtkAccessibleProperty,
9923        value: *mut gobject::GValue,
9924    );
9925
9926    //=========================================================================
9927    // GtkAccessibleRelation
9928    //=========================================================================
9929    pub fn gtk_accessible_relation_get_type() -> GType;
9930    pub fn gtk_accessible_relation_init_value(
9931        relation: GtkAccessibleRelation,
9932        value: *mut gobject::GValue,
9933    );
9934
9935    //=========================================================================
9936    // GtkAccessibleRole
9937    //=========================================================================
9938    pub fn gtk_accessible_role_get_type() -> GType;
9939
9940    //=========================================================================
9941    // GtkAccessibleSort
9942    //=========================================================================
9943    pub fn gtk_accessible_sort_get_type() -> GType;
9944
9945    //=========================================================================
9946    // GtkAccessibleState
9947    //=========================================================================
9948    pub fn gtk_accessible_state_get_type() -> GType;
9949    pub fn gtk_accessible_state_init_value(state: GtkAccessibleState, value: *mut gobject::GValue);
9950
9951    //=========================================================================
9952    // GtkAccessibleTextContentChange
9953    //=========================================================================
9954    #[cfg(feature = "v4_14")]
9955    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9956    pub fn gtk_accessible_text_content_change_get_type() -> GType;
9957
9958    //=========================================================================
9959    // GtkAccessibleTextGranularity
9960    //=========================================================================
9961    #[cfg(feature = "v4_14")]
9962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
9963    pub fn gtk_accessible_text_granularity_get_type() -> GType;
9964
9965    //=========================================================================
9966    // GtkAccessibleTristate
9967    //=========================================================================
9968    pub fn gtk_accessible_tristate_get_type() -> GType;
9969
9970    //=========================================================================
9971    // GtkAlign
9972    //=========================================================================
9973    pub fn gtk_align_get_type() -> GType;
9974
9975    //=========================================================================
9976    // GtkArrowType
9977    //=========================================================================
9978    pub fn gtk_arrow_type_get_type() -> GType;
9979
9980    //=========================================================================
9981    // GtkAssistantPageType
9982    //=========================================================================
9983    pub fn gtk_assistant_page_type_get_type() -> GType;
9984
9985    //=========================================================================
9986    // GtkBaselinePosition
9987    //=========================================================================
9988    pub fn gtk_baseline_position_get_type() -> GType;
9989
9990    //=========================================================================
9991    // GtkBorderStyle
9992    //=========================================================================
9993    pub fn gtk_border_style_get_type() -> GType;
9994
9995    //=========================================================================
9996    // GtkBuilderError
9997    //=========================================================================
9998    pub fn gtk_builder_error_get_type() -> GType;
9999    pub fn gtk_builder_error_quark() -> glib::GQuark;
10000
10001    //=========================================================================
10002    // GtkButtonsType
10003    //=========================================================================
10004    pub fn gtk_buttons_type_get_type() -> GType;
10005
10006    //=========================================================================
10007    // GtkCellRendererAccelMode
10008    //=========================================================================
10009    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
10010
10011    //=========================================================================
10012    // GtkCellRendererMode
10013    //=========================================================================
10014    pub fn gtk_cell_renderer_mode_get_type() -> GType;
10015
10016    //=========================================================================
10017    // GtkCollation
10018    //=========================================================================
10019    #[cfg(feature = "v4_10")]
10020    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10021    pub fn gtk_collation_get_type() -> GType;
10022
10023    //=========================================================================
10024    // GtkConstraintAttribute
10025    //=========================================================================
10026    pub fn gtk_constraint_attribute_get_type() -> GType;
10027
10028    //=========================================================================
10029    // GtkConstraintRelation
10030    //=========================================================================
10031    pub fn gtk_constraint_relation_get_type() -> GType;
10032
10033    //=========================================================================
10034    // GtkConstraintStrength
10035    //=========================================================================
10036    pub fn gtk_constraint_strength_get_type() -> GType;
10037
10038    //=========================================================================
10039    // GtkConstraintVflParserError
10040    //=========================================================================
10041    pub fn gtk_constraint_vfl_parser_error_get_type() -> GType;
10042    pub fn gtk_constraint_vfl_parser_error_quark() -> glib::GQuark;
10043
10044    //=========================================================================
10045    // GtkContentFit
10046    //=========================================================================
10047    #[cfg(feature = "v4_8")]
10048    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10049    pub fn gtk_content_fit_get_type() -> GType;
10050
10051    //=========================================================================
10052    // GtkCornerType
10053    //=========================================================================
10054    pub fn gtk_corner_type_get_type() -> GType;
10055
10056    //=========================================================================
10057    // GtkDeleteType
10058    //=========================================================================
10059    pub fn gtk_delete_type_get_type() -> GType;
10060
10061    //=========================================================================
10062    // GtkDialogError
10063    //=========================================================================
10064    #[cfg(feature = "v4_10")]
10065    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10066    pub fn gtk_dialog_error_get_type() -> GType;
10067    #[cfg(feature = "v4_10")]
10068    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10069    pub fn gtk_dialog_error_quark() -> glib::GQuark;
10070
10071    //=========================================================================
10072    // GtkDirectionType
10073    //=========================================================================
10074    pub fn gtk_direction_type_get_type() -> GType;
10075
10076    //=========================================================================
10077    // GtkEditableProperties
10078    //=========================================================================
10079    pub fn gtk_editable_properties_get_type() -> GType;
10080
10081    //=========================================================================
10082    // GtkEntryIconPosition
10083    //=========================================================================
10084    pub fn gtk_entry_icon_position_get_type() -> GType;
10085
10086    //=========================================================================
10087    // GtkEventSequenceState
10088    //=========================================================================
10089    pub fn gtk_event_sequence_state_get_type() -> GType;
10090
10091    //=========================================================================
10092    // GtkFileChooserAction
10093    //=========================================================================
10094    pub fn gtk_file_chooser_action_get_type() -> GType;
10095
10096    //=========================================================================
10097    // GtkFileChooserError
10098    //=========================================================================
10099    pub fn gtk_file_chooser_error_get_type() -> GType;
10100    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
10101
10102    //=========================================================================
10103    // GtkFilterChange
10104    //=========================================================================
10105    pub fn gtk_filter_change_get_type() -> GType;
10106
10107    //=========================================================================
10108    // GtkFilterMatch
10109    //=========================================================================
10110    pub fn gtk_filter_match_get_type() -> GType;
10111
10112    //=========================================================================
10113    // GtkFontLevel
10114    //=========================================================================
10115    #[cfg(feature = "v4_10")]
10116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10117    pub fn gtk_font_level_get_type() -> GType;
10118
10119    //=========================================================================
10120    // GtkFontRendering
10121    //=========================================================================
10122    #[cfg(feature = "v4_16")]
10123    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10124    pub fn gtk_font_rendering_get_type() -> GType;
10125
10126    //=========================================================================
10127    // GtkGraphicsOffloadEnabled
10128    //=========================================================================
10129    #[cfg(feature = "v4_14")]
10130    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10131    pub fn gtk_graphics_offload_enabled_get_type() -> GType;
10132
10133    //=========================================================================
10134    // GtkIconSize
10135    //=========================================================================
10136    pub fn gtk_icon_size_get_type() -> GType;
10137
10138    //=========================================================================
10139    // GtkIconThemeError
10140    //=========================================================================
10141    pub fn gtk_icon_theme_error_get_type() -> GType;
10142    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
10143
10144    //=========================================================================
10145    // GtkIconViewDropPosition
10146    //=========================================================================
10147    pub fn gtk_icon_view_drop_position_get_type() -> GType;
10148
10149    //=========================================================================
10150    // GtkImageType
10151    //=========================================================================
10152    pub fn gtk_image_type_get_type() -> GType;
10153
10154    //=========================================================================
10155    // GtkInputPurpose
10156    //=========================================================================
10157    pub fn gtk_input_purpose_get_type() -> GType;
10158
10159    //=========================================================================
10160    // GtkInscriptionOverflow
10161    //=========================================================================
10162    #[cfg(feature = "v4_8")]
10163    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10164    pub fn gtk_inscription_overflow_get_type() -> GType;
10165
10166    //=========================================================================
10167    // GtkJustification
10168    //=========================================================================
10169    pub fn gtk_justification_get_type() -> GType;
10170
10171    //=========================================================================
10172    // GtkLevelBarMode
10173    //=========================================================================
10174    pub fn gtk_level_bar_mode_get_type() -> GType;
10175
10176    //=========================================================================
10177    // GtkLicense
10178    //=========================================================================
10179    pub fn gtk_license_get_type() -> GType;
10180
10181    //=========================================================================
10182    // GtkListTabBehavior
10183    //=========================================================================
10184    #[cfg(feature = "v4_12")]
10185    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10186    pub fn gtk_list_tab_behavior_get_type() -> GType;
10187
10188    //=========================================================================
10189    // GtkMessageType
10190    //=========================================================================
10191    pub fn gtk_message_type_get_type() -> GType;
10192
10193    //=========================================================================
10194    // GtkMovementStep
10195    //=========================================================================
10196    pub fn gtk_movement_step_get_type() -> GType;
10197
10198    //=========================================================================
10199    // GtkNaturalWrapMode
10200    //=========================================================================
10201    #[cfg(feature = "v4_6")]
10202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10203    pub fn gtk_natural_wrap_mode_get_type() -> GType;
10204
10205    //=========================================================================
10206    // GtkNotebookTab
10207    //=========================================================================
10208    pub fn gtk_notebook_tab_get_type() -> GType;
10209
10210    //=========================================================================
10211    // GtkNumberUpLayout
10212    //=========================================================================
10213    pub fn gtk_number_up_layout_get_type() -> GType;
10214
10215    //=========================================================================
10216    // GtkOrdering
10217    //=========================================================================
10218    pub fn gtk_ordering_get_type() -> GType;
10219    #[cfg(feature = "v4_2")]
10220    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10221    pub fn gtk_ordering_from_cmpfunc(cmpfunc_result: c_int) -> GtkOrdering;
10222
10223    //=========================================================================
10224    // GtkOrientation
10225    //=========================================================================
10226    pub fn gtk_orientation_get_type() -> GType;
10227
10228    //=========================================================================
10229    // GtkOverflow
10230    //=========================================================================
10231    pub fn gtk_overflow_get_type() -> GType;
10232
10233    //=========================================================================
10234    // GtkPackType
10235    //=========================================================================
10236    pub fn gtk_pack_type_get_type() -> GType;
10237
10238    //=========================================================================
10239    // GtkPadActionType
10240    //=========================================================================
10241    pub fn gtk_pad_action_type_get_type() -> GType;
10242
10243    //=========================================================================
10244    // GtkPageOrientation
10245    //=========================================================================
10246    pub fn gtk_page_orientation_get_type() -> GType;
10247
10248    //=========================================================================
10249    // GtkPageSet
10250    //=========================================================================
10251    pub fn gtk_page_set_get_type() -> GType;
10252
10253    //=========================================================================
10254    // GtkPanDirection
10255    //=========================================================================
10256    pub fn gtk_pan_direction_get_type() -> GType;
10257
10258    //=========================================================================
10259    // GtkPolicyType
10260    //=========================================================================
10261    pub fn gtk_policy_type_get_type() -> GType;
10262
10263    //=========================================================================
10264    // GtkPositionType
10265    //=========================================================================
10266    pub fn gtk_position_type_get_type() -> GType;
10267
10268    //=========================================================================
10269    // GtkPrintDuplex
10270    //=========================================================================
10271    pub fn gtk_print_duplex_get_type() -> GType;
10272
10273    //=========================================================================
10274    // GtkPrintError
10275    //=========================================================================
10276    pub fn gtk_print_error_get_type() -> GType;
10277    pub fn gtk_print_error_quark() -> glib::GQuark;
10278
10279    //=========================================================================
10280    // GtkPrintOperationAction
10281    //=========================================================================
10282    pub fn gtk_print_operation_action_get_type() -> GType;
10283
10284    //=========================================================================
10285    // GtkPrintOperationResult
10286    //=========================================================================
10287    pub fn gtk_print_operation_result_get_type() -> GType;
10288
10289    //=========================================================================
10290    // GtkPrintPages
10291    //=========================================================================
10292    pub fn gtk_print_pages_get_type() -> GType;
10293
10294    //=========================================================================
10295    // GtkPrintQuality
10296    //=========================================================================
10297    pub fn gtk_print_quality_get_type() -> GType;
10298
10299    //=========================================================================
10300    // GtkPrintStatus
10301    //=========================================================================
10302    pub fn gtk_print_status_get_type() -> GType;
10303
10304    //=========================================================================
10305    // GtkPropagationLimit
10306    //=========================================================================
10307    pub fn gtk_propagation_limit_get_type() -> GType;
10308
10309    //=========================================================================
10310    // GtkPropagationPhase
10311    //=========================================================================
10312    pub fn gtk_propagation_phase_get_type() -> GType;
10313
10314    //=========================================================================
10315    // GtkRecentManagerError
10316    //=========================================================================
10317    pub fn gtk_recent_manager_error_get_type() -> GType;
10318    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
10319
10320    //=========================================================================
10321    // GtkResponseType
10322    //=========================================================================
10323    pub fn gtk_response_type_get_type() -> GType;
10324
10325    //=========================================================================
10326    // GtkRevealerTransitionType
10327    //=========================================================================
10328    pub fn gtk_revealer_transition_type_get_type() -> GType;
10329
10330    //=========================================================================
10331    // GtkScrollStep
10332    //=========================================================================
10333    pub fn gtk_scroll_step_get_type() -> GType;
10334
10335    //=========================================================================
10336    // GtkScrollType
10337    //=========================================================================
10338    pub fn gtk_scroll_type_get_type() -> GType;
10339
10340    //=========================================================================
10341    // GtkScrollablePolicy
10342    //=========================================================================
10343    pub fn gtk_scrollable_policy_get_type() -> GType;
10344
10345    //=========================================================================
10346    // GtkSelectionMode
10347    //=========================================================================
10348    pub fn gtk_selection_mode_get_type() -> GType;
10349
10350    //=========================================================================
10351    // GtkSensitivityType
10352    //=========================================================================
10353    pub fn gtk_sensitivity_type_get_type() -> GType;
10354
10355    //=========================================================================
10356    // GtkShortcutScope
10357    //=========================================================================
10358    pub fn gtk_shortcut_scope_get_type() -> GType;
10359
10360    //=========================================================================
10361    // GtkShortcutType
10362    //=========================================================================
10363    pub fn gtk_shortcut_type_get_type() -> GType;
10364
10365    //=========================================================================
10366    // GtkSizeGroupMode
10367    //=========================================================================
10368    pub fn gtk_size_group_mode_get_type() -> GType;
10369
10370    //=========================================================================
10371    // GtkSizeRequestMode
10372    //=========================================================================
10373    pub fn gtk_size_request_mode_get_type() -> GType;
10374
10375    //=========================================================================
10376    // GtkSortType
10377    //=========================================================================
10378    pub fn gtk_sort_type_get_type() -> GType;
10379
10380    //=========================================================================
10381    // GtkSorterChange
10382    //=========================================================================
10383    pub fn gtk_sorter_change_get_type() -> GType;
10384
10385    //=========================================================================
10386    // GtkSorterOrder
10387    //=========================================================================
10388    pub fn gtk_sorter_order_get_type() -> GType;
10389
10390    //=========================================================================
10391    // GtkSpinButtonUpdatePolicy
10392    //=========================================================================
10393    pub fn gtk_spin_button_update_policy_get_type() -> GType;
10394
10395    //=========================================================================
10396    // GtkSpinType
10397    //=========================================================================
10398    pub fn gtk_spin_type_get_type() -> GType;
10399
10400    //=========================================================================
10401    // GtkStackTransitionType
10402    //=========================================================================
10403    pub fn gtk_stack_transition_type_get_type() -> GType;
10404
10405    //=========================================================================
10406    // GtkStringFilterMatchMode
10407    //=========================================================================
10408    pub fn gtk_string_filter_match_mode_get_type() -> GType;
10409
10410    //=========================================================================
10411    // GtkSymbolicColor
10412    //=========================================================================
10413    #[cfg(feature = "v4_6")]
10414    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10415    pub fn gtk_symbolic_color_get_type() -> GType;
10416
10417    //=========================================================================
10418    // GtkSystemSetting
10419    //=========================================================================
10420    pub fn gtk_system_setting_get_type() -> GType;
10421
10422    //=========================================================================
10423    // GtkTextDirection
10424    //=========================================================================
10425    pub fn gtk_text_direction_get_type() -> GType;
10426
10427    //=========================================================================
10428    // GtkTextExtendSelection
10429    //=========================================================================
10430    pub fn gtk_text_extend_selection_get_type() -> GType;
10431
10432    //=========================================================================
10433    // GtkTextViewLayer
10434    //=========================================================================
10435    pub fn gtk_text_view_layer_get_type() -> GType;
10436
10437    //=========================================================================
10438    // GtkTextWindowType
10439    //=========================================================================
10440    pub fn gtk_text_window_type_get_type() -> GType;
10441
10442    //=========================================================================
10443    // GtkTreeViewColumnSizing
10444    //=========================================================================
10445    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
10446
10447    //=========================================================================
10448    // GtkTreeViewDropPosition
10449    //=========================================================================
10450    pub fn gtk_tree_view_drop_position_get_type() -> GType;
10451
10452    //=========================================================================
10453    // GtkTreeViewGridLines
10454    //=========================================================================
10455    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
10456
10457    //=========================================================================
10458    // GtkUnit
10459    //=========================================================================
10460    pub fn gtk_unit_get_type() -> GType;
10461
10462    //=========================================================================
10463    // GtkWindowGravity
10464    //=========================================================================
10465    #[cfg(feature = "v4_20")]
10466    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10467    pub fn gtk_window_gravity_get_type() -> GType;
10468
10469    //=========================================================================
10470    // GtkWrapMode
10471    //=========================================================================
10472    pub fn gtk_wrap_mode_get_type() -> GType;
10473
10474    //=========================================================================
10475    // GtkApplicationInhibitFlags
10476    //=========================================================================
10477    pub fn gtk_application_inhibit_flags_get_type() -> GType;
10478
10479    //=========================================================================
10480    // GtkBuilderClosureFlags
10481    //=========================================================================
10482    pub fn gtk_builder_closure_flags_get_type() -> GType;
10483
10484    //=========================================================================
10485    // GtkCellRendererState
10486    //=========================================================================
10487    pub fn gtk_cell_renderer_state_get_type() -> GType;
10488
10489    //=========================================================================
10490    // GtkDebugFlags
10491    //=========================================================================
10492    pub fn gtk_debug_flags_get_type() -> GType;
10493
10494    //=========================================================================
10495    // GtkDialogFlags
10496    //=========================================================================
10497    pub fn gtk_dialog_flags_get_type() -> GType;
10498
10499    //=========================================================================
10500    // GtkEventControllerScrollFlags
10501    //=========================================================================
10502    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
10503
10504    //=========================================================================
10505    // GtkFontChooserLevel
10506    //=========================================================================
10507    pub fn gtk_font_chooser_level_get_type() -> GType;
10508
10509    //=========================================================================
10510    // GtkIconLookupFlags
10511    //=========================================================================
10512    pub fn gtk_icon_lookup_flags_get_type() -> GType;
10513
10514    //=========================================================================
10515    // GtkInputHints
10516    //=========================================================================
10517    pub fn gtk_input_hints_get_type() -> GType;
10518
10519    //=========================================================================
10520    // GtkListScrollFlags
10521    //=========================================================================
10522    #[cfg(feature = "v4_12")]
10523    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10524    pub fn gtk_list_scroll_flags_get_type() -> GType;
10525
10526    //=========================================================================
10527    // GtkPickFlags
10528    //=========================================================================
10529    pub fn gtk_pick_flags_get_type() -> GType;
10530
10531    //=========================================================================
10532    // GtkPopoverMenuFlags
10533    //=========================================================================
10534    pub fn gtk_popover_menu_flags_get_type() -> GType;
10535
10536    //=========================================================================
10537    // GtkPrintCapabilities
10538    //=========================================================================
10539    pub fn gtk_print_capabilities_get_type() -> GType;
10540
10541    //=========================================================================
10542    // GtkShortcutActionFlags
10543    //=========================================================================
10544    pub fn gtk_shortcut_action_flags_get_type() -> GType;
10545
10546    //=========================================================================
10547    // GtkStateFlags
10548    //=========================================================================
10549    pub fn gtk_state_flags_get_type() -> GType;
10550
10551    //=========================================================================
10552    // GtkStyleContextPrintFlags
10553    //=========================================================================
10554    pub fn gtk_style_context_print_flags_get_type() -> GType;
10555
10556    //=========================================================================
10557    // GtkTextBufferNotifyFlags
10558    //=========================================================================
10559    #[cfg(feature = "v4_16")]
10560    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10561    pub fn gtk_text_buffer_notify_flags_get_type() -> GType;
10562
10563    //=========================================================================
10564    // GtkTextSearchFlags
10565    //=========================================================================
10566    pub fn gtk_text_search_flags_get_type() -> GType;
10567
10568    //=========================================================================
10569    // GtkTreeModelFlags
10570    //=========================================================================
10571    pub fn gtk_tree_model_flags_get_type() -> GType;
10572
10573    //=========================================================================
10574    // GtkAccessibleList
10575    //=========================================================================
10576    #[cfg(feature = "v4_14")]
10577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10578    pub fn gtk_accessible_list_get_type() -> GType;
10579    #[cfg(feature = "v4_14")]
10580    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10581    pub fn gtk_accessible_list_new_from_array(
10582        accessibles: *mut *mut GtkAccessible,
10583        n_accessibles: size_t,
10584    ) -> *mut GtkAccessibleList;
10585    #[cfg(feature = "v4_14")]
10586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10587    pub fn gtk_accessible_list_new_from_list(list: *mut glib::GList) -> *mut GtkAccessibleList;
10588    #[cfg(feature = "v4_14")]
10589    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10590    pub fn gtk_accessible_list_get_objects(
10591        accessible_list: *mut GtkAccessibleList,
10592    ) -> *mut glib::GList;
10593
10594    //=========================================================================
10595    // GtkBitset
10596    //=========================================================================
10597    pub fn gtk_bitset_get_type() -> GType;
10598    pub fn gtk_bitset_new_empty() -> *mut GtkBitset;
10599    pub fn gtk_bitset_new_range(start: c_uint, n_items: c_uint) -> *mut GtkBitset;
10600    pub fn gtk_bitset_add(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10601    pub fn gtk_bitset_add_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10602    pub fn gtk_bitset_add_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10603    pub fn gtk_bitset_add_rectangle(
10604        self_: *mut GtkBitset,
10605        start: c_uint,
10606        width: c_uint,
10607        height: c_uint,
10608        stride: c_uint,
10609    );
10610    pub fn gtk_bitset_contains(self_: *const GtkBitset, value: c_uint) -> gboolean;
10611    pub fn gtk_bitset_copy(self_: *const GtkBitset) -> *mut GtkBitset;
10612    pub fn gtk_bitset_difference(self_: *mut GtkBitset, other: *const GtkBitset);
10613    pub fn gtk_bitset_equals(self_: *const GtkBitset, other: *const GtkBitset) -> gboolean;
10614    pub fn gtk_bitset_get_maximum(self_: *const GtkBitset) -> c_uint;
10615    pub fn gtk_bitset_get_minimum(self_: *const GtkBitset) -> c_uint;
10616    pub fn gtk_bitset_get_nth(self_: *const GtkBitset, nth: c_uint) -> c_uint;
10617    pub fn gtk_bitset_get_size(self_: *const GtkBitset) -> u64;
10618    pub fn gtk_bitset_get_size_in_range(
10619        self_: *const GtkBitset,
10620        first: c_uint,
10621        last: c_uint,
10622    ) -> u64;
10623    pub fn gtk_bitset_intersect(self_: *mut GtkBitset, other: *const GtkBitset);
10624    pub fn gtk_bitset_is_empty(self_: *const GtkBitset) -> gboolean;
10625    pub fn gtk_bitset_ref(self_: *mut GtkBitset) -> *mut GtkBitset;
10626    pub fn gtk_bitset_remove(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10627    pub fn gtk_bitset_remove_all(self_: *mut GtkBitset);
10628    pub fn gtk_bitset_remove_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10629    pub fn gtk_bitset_remove_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10630    pub fn gtk_bitset_remove_rectangle(
10631        self_: *mut GtkBitset,
10632        start: c_uint,
10633        width: c_uint,
10634        height: c_uint,
10635        stride: c_uint,
10636    );
10637    pub fn gtk_bitset_shift_left(self_: *mut GtkBitset, amount: c_uint);
10638    pub fn gtk_bitset_shift_right(self_: *mut GtkBitset, amount: c_uint);
10639    pub fn gtk_bitset_splice(
10640        self_: *mut GtkBitset,
10641        position: c_uint,
10642        removed: c_uint,
10643        added: c_uint,
10644    );
10645    pub fn gtk_bitset_subtract(self_: *mut GtkBitset, other: *const GtkBitset);
10646    pub fn gtk_bitset_union(self_: *mut GtkBitset, other: *const GtkBitset);
10647    pub fn gtk_bitset_unref(self_: *mut GtkBitset);
10648
10649    //=========================================================================
10650    // GtkBitsetIter
10651    //=========================================================================
10652    pub fn gtk_bitset_iter_get_type() -> GType;
10653    pub fn gtk_bitset_iter_get_value(iter: *const GtkBitsetIter) -> c_uint;
10654    pub fn gtk_bitset_iter_is_valid(iter: *const GtkBitsetIter) -> gboolean;
10655    pub fn gtk_bitset_iter_next(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10656    pub fn gtk_bitset_iter_previous(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10657    pub fn gtk_bitset_iter_init_at(
10658        iter: *mut GtkBitsetIter,
10659        set: *const GtkBitset,
10660        target: c_uint,
10661        value: *mut c_uint,
10662    ) -> gboolean;
10663    pub fn gtk_bitset_iter_init_first(
10664        iter: *mut GtkBitsetIter,
10665        set: *const GtkBitset,
10666        value: *mut c_uint,
10667    ) -> gboolean;
10668    pub fn gtk_bitset_iter_init_last(
10669        iter: *mut GtkBitsetIter,
10670        set: *const GtkBitset,
10671        value: *mut c_uint,
10672    ) -> gboolean;
10673
10674    //=========================================================================
10675    // GtkBorder
10676    //=========================================================================
10677    pub fn gtk_border_get_type() -> GType;
10678    pub fn gtk_border_new() -> *mut GtkBorder;
10679    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
10680    pub fn gtk_border_free(border_: *mut GtkBorder);
10681
10682    //=========================================================================
10683    // GtkBuildableParseContext
10684    //=========================================================================
10685    pub fn gtk_buildable_parse_context_get_element(
10686        context: *mut GtkBuildableParseContext,
10687    ) -> *const c_char;
10688    pub fn gtk_buildable_parse_context_get_element_stack(
10689        context: *mut GtkBuildableParseContext,
10690    ) -> *mut glib::GPtrArray;
10691    pub fn gtk_buildable_parse_context_get_position(
10692        context: *mut GtkBuildableParseContext,
10693        line_number: *mut c_int,
10694        char_number: *mut c_int,
10695    );
10696    pub fn gtk_buildable_parse_context_pop(context: *mut GtkBuildableParseContext) -> gpointer;
10697    pub fn gtk_buildable_parse_context_push(
10698        context: *mut GtkBuildableParseContext,
10699        parser: *const GtkBuildableParser,
10700        user_data: gpointer,
10701    );
10702
10703    //=========================================================================
10704    // GtkCellAreaClass
10705    //=========================================================================
10706    pub fn gtk_cell_area_class_find_cell_property(
10707        aclass: *mut GtkCellAreaClass,
10708        property_name: *const c_char,
10709    ) -> *mut gobject::GParamSpec;
10710    pub fn gtk_cell_area_class_install_cell_property(
10711        aclass: *mut GtkCellAreaClass,
10712        property_id: c_uint,
10713        pspec: *mut gobject::GParamSpec,
10714    );
10715    pub fn gtk_cell_area_class_list_cell_properties(
10716        aclass: *mut GtkCellAreaClass,
10717        n_properties: *mut c_uint,
10718    ) -> *mut *mut gobject::GParamSpec;
10719
10720    //=========================================================================
10721    // GtkCssSection
10722    //=========================================================================
10723    pub fn gtk_css_section_get_type() -> GType;
10724    pub fn gtk_css_section_new(
10725        file: *mut gio::GFile,
10726        start: *const GtkCssLocation,
10727        end: *const GtkCssLocation,
10728    ) -> *mut GtkCssSection;
10729    #[cfg(feature = "v4_16")]
10730    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10731    pub fn gtk_css_section_new_with_bytes(
10732        file: *mut gio::GFile,
10733        bytes: *mut glib::GBytes,
10734        start: *const GtkCssLocation,
10735        end: *const GtkCssLocation,
10736    ) -> *mut GtkCssSection;
10737    #[cfg(feature = "v4_16")]
10738    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10739    pub fn gtk_css_section_get_bytes(section: *const GtkCssSection) -> *mut glib::GBytes;
10740    pub fn gtk_css_section_get_end_location(section: *const GtkCssSection)
10741        -> *const GtkCssLocation;
10742    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
10743    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
10744    pub fn gtk_css_section_get_start_location(
10745        section: *const GtkCssSection,
10746    ) -> *const GtkCssLocation;
10747    pub fn gtk_css_section_print(section: *const GtkCssSection, string: *mut glib::GString);
10748    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
10749    pub fn gtk_css_section_to_string(section: *const GtkCssSection) -> *mut c_char;
10750    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
10751
10752    //=========================================================================
10753    // GtkExpressionWatch
10754    //=========================================================================
10755    #[cfg(feature = "v4_2")]
10756    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10757    pub fn gtk_expression_watch_get_type() -> GType;
10758    pub fn gtk_expression_watch_evaluate(
10759        watch: *mut GtkExpressionWatch,
10760        value: *mut gobject::GValue,
10761    ) -> gboolean;
10762    pub fn gtk_expression_watch_ref(watch: *mut GtkExpressionWatch) -> *mut GtkExpressionWatch;
10763    pub fn gtk_expression_watch_unref(watch: *mut GtkExpressionWatch);
10764    pub fn gtk_expression_watch_unwatch(watch: *mut GtkExpressionWatch);
10765
10766    //=========================================================================
10767    // GtkPaperSize
10768    //=========================================================================
10769    pub fn gtk_paper_size_get_type() -> GType;
10770    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
10771    pub fn gtk_paper_size_new_custom(
10772        name: *const c_char,
10773        display_name: *const c_char,
10774        width: c_double,
10775        height: c_double,
10776        unit: GtkUnit,
10777    ) -> *mut GtkPaperSize;
10778    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
10779    pub fn gtk_paper_size_new_from_ipp(
10780        ipp_name: *const c_char,
10781        width: c_double,
10782        height: c_double,
10783    ) -> *mut GtkPaperSize;
10784    pub fn gtk_paper_size_new_from_key_file(
10785        key_file: *mut glib::GKeyFile,
10786        group_name: *const c_char,
10787        error: *mut *mut glib::GError,
10788    ) -> *mut GtkPaperSize;
10789    pub fn gtk_paper_size_new_from_ppd(
10790        ppd_name: *const c_char,
10791        ppd_display_name: *const c_char,
10792        width: c_double,
10793        height: c_double,
10794    ) -> *mut GtkPaperSize;
10795    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
10796    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
10797    pub fn gtk_paper_size_get_default_bottom_margin(
10798        size: *mut GtkPaperSize,
10799        unit: GtkUnit,
10800    ) -> c_double;
10801    pub fn gtk_paper_size_get_default_left_margin(
10802        size: *mut GtkPaperSize,
10803        unit: GtkUnit,
10804    ) -> c_double;
10805    pub fn gtk_paper_size_get_default_right_margin(
10806        size: *mut GtkPaperSize,
10807        unit: GtkUnit,
10808    ) -> c_double;
10809    pub fn gtk_paper_size_get_default_top_margin(
10810        size: *mut GtkPaperSize,
10811        unit: GtkUnit,
10812    ) -> c_double;
10813    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
10814    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
10815    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
10816    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
10817    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
10818    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
10819    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
10820    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
10821    pub fn gtk_paper_size_set_size(
10822        size: *mut GtkPaperSize,
10823        width: c_double,
10824        height: c_double,
10825        unit: GtkUnit,
10826    );
10827    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
10828    pub fn gtk_paper_size_to_key_file(
10829        size: *mut GtkPaperSize,
10830        key_file: *mut glib::GKeyFile,
10831        group_name: *const c_char,
10832    );
10833    pub fn gtk_paper_size_get_default() -> *const c_char;
10834    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
10835
10836    //=========================================================================
10837    // GtkPrintSetup
10838    //=========================================================================
10839    #[cfg(feature = "v4_14")]
10840    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10841    pub fn gtk_print_setup_get_type() -> GType;
10842    #[cfg(feature = "v4_14")]
10843    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10844    pub fn gtk_print_setup_get_page_setup(setup: *mut GtkPrintSetup) -> *mut GtkPageSetup;
10845    #[cfg(feature = "v4_14")]
10846    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10847    pub fn gtk_print_setup_get_print_settings(setup: *mut GtkPrintSetup) -> *mut GtkPrintSettings;
10848    #[cfg(feature = "v4_14")]
10849    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10850    pub fn gtk_print_setup_ref(setup: *mut GtkPrintSetup) -> *mut GtkPrintSetup;
10851    #[cfg(feature = "v4_14")]
10852    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10853    pub fn gtk_print_setup_unref(setup: *mut GtkPrintSetup);
10854
10855    //=========================================================================
10856    // GtkRecentInfo
10857    //=========================================================================
10858    pub fn gtk_recent_info_get_type() -> GType;
10859    pub fn gtk_recent_info_create_app_info(
10860        info: *mut GtkRecentInfo,
10861        app_name: *const c_char,
10862        error: *mut *mut glib::GError,
10863    ) -> *mut gio::GAppInfo;
10864    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
10865    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10866    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
10867    pub fn gtk_recent_info_get_application_info(
10868        info: *mut GtkRecentInfo,
10869        app_name: *const c_char,
10870        app_exec: *mut *const c_char,
10871        count: *mut c_uint,
10872        stamp: *mut *mut glib::GDateTime,
10873    ) -> gboolean;
10874    pub fn gtk_recent_info_get_applications(
10875        info: *mut GtkRecentInfo,
10876        length: *mut size_t,
10877    ) -> *mut *mut c_char;
10878    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
10879    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
10880    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
10881    pub fn gtk_recent_info_get_groups(
10882        info: *mut GtkRecentInfo,
10883        length: *mut size_t,
10884    ) -> *mut *mut c_char;
10885    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
10886    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10887    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
10888    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
10889    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
10890    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
10891    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
10892    pub fn gtk_recent_info_has_application(
10893        info: *mut GtkRecentInfo,
10894        app_name: *const c_char,
10895    ) -> gboolean;
10896    pub fn gtk_recent_info_has_group(
10897        info: *mut GtkRecentInfo,
10898        group_name: *const c_char,
10899    ) -> gboolean;
10900    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
10901    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
10902    pub fn gtk_recent_info_match(
10903        info_a: *mut GtkRecentInfo,
10904        info_b: *mut GtkRecentInfo,
10905    ) -> gboolean;
10906    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
10907    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
10908
10909    //=========================================================================
10910    // GtkRequisition
10911    //=========================================================================
10912    pub fn gtk_requisition_get_type() -> GType;
10913    pub fn gtk_requisition_new() -> *mut GtkRequisition;
10914    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
10915    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
10916
10917    //=========================================================================
10918    // GtkScrollInfo
10919    //=========================================================================
10920    #[cfg(feature = "v4_12")]
10921    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10922    pub fn gtk_scroll_info_get_type() -> GType;
10923    #[cfg(feature = "v4_12")]
10924    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10925    pub fn gtk_scroll_info_new() -> *mut GtkScrollInfo;
10926    #[cfg(feature = "v4_12")]
10927    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10928    pub fn gtk_scroll_info_get_enable_horizontal(self_: *mut GtkScrollInfo) -> gboolean;
10929    #[cfg(feature = "v4_12")]
10930    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10931    pub fn gtk_scroll_info_get_enable_vertical(self_: *mut GtkScrollInfo) -> gboolean;
10932    #[cfg(feature = "v4_12")]
10933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10934    pub fn gtk_scroll_info_ref(self_: *mut GtkScrollInfo) -> *mut GtkScrollInfo;
10935    #[cfg(feature = "v4_12")]
10936    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10937    pub fn gtk_scroll_info_set_enable_horizontal(self_: *mut GtkScrollInfo, horizontal: gboolean);
10938    #[cfg(feature = "v4_12")]
10939    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10940    pub fn gtk_scroll_info_set_enable_vertical(self_: *mut GtkScrollInfo, vertical: gboolean);
10941    #[cfg(feature = "v4_12")]
10942    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10943    pub fn gtk_scroll_info_unref(self_: *mut GtkScrollInfo);
10944
10945    //=========================================================================
10946    // GtkTextIter
10947    //=========================================================================
10948    pub fn gtk_text_iter_get_type() -> GType;
10949    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
10950    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
10951    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
10952    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
10953    pub fn gtk_text_iter_backward_cursor_positions(
10954        iter: *mut GtkTextIter,
10955        count: c_int,
10956    ) -> gboolean;
10957    pub fn gtk_text_iter_backward_find_char(
10958        iter: *mut GtkTextIter,
10959        pred: GtkTextCharPredicate,
10960        user_data: gpointer,
10961        limit: *const GtkTextIter,
10962    ) -> gboolean;
10963    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
10964    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
10965    pub fn gtk_text_iter_backward_search(
10966        iter: *const GtkTextIter,
10967        str: *const c_char,
10968        flags: GtkTextSearchFlags,
10969        match_start: *mut GtkTextIter,
10970        match_end: *mut GtkTextIter,
10971        limit: *const GtkTextIter,
10972    ) -> gboolean;
10973    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
10974    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
10975        -> gboolean;
10976    pub fn gtk_text_iter_backward_to_tag_toggle(
10977        iter: *mut GtkTextIter,
10978        tag: *mut GtkTextTag,
10979    ) -> gboolean;
10980    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
10981    pub fn gtk_text_iter_backward_visible_cursor_positions(
10982        iter: *mut GtkTextIter,
10983        count: c_int,
10984    ) -> gboolean;
10985    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
10986    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
10987    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
10988    pub fn gtk_text_iter_backward_visible_word_starts(
10989        iter: *mut GtkTextIter,
10990        count: c_int,
10991    ) -> gboolean;
10992    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
10993    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
10994    pub fn gtk_text_iter_can_insert(
10995        iter: *const GtkTextIter,
10996        default_editability: gboolean,
10997    ) -> gboolean;
10998    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
10999    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
11000    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
11001    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
11002    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
11003    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11004    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
11005    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
11006    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
11007    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11008    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11009    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
11010        -> gboolean;
11011    pub fn gtk_text_iter_forward_find_char(
11012        iter: *mut GtkTextIter,
11013        pred: GtkTextCharPredicate,
11014        user_data: gpointer,
11015        limit: *const GtkTextIter,
11016    ) -> gboolean;
11017    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
11018    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11019    pub fn gtk_text_iter_forward_search(
11020        iter: *const GtkTextIter,
11021        str: *const c_char,
11022        flags: GtkTextSearchFlags,
11023        match_start: *mut GtkTextIter,
11024        match_end: *mut GtkTextIter,
11025        limit: *const GtkTextIter,
11026    ) -> gboolean;
11027    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
11028    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11029    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
11030    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
11031    pub fn gtk_text_iter_forward_to_tag_toggle(
11032        iter: *mut GtkTextIter,
11033        tag: *mut GtkTextTag,
11034    ) -> gboolean;
11035    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11036    pub fn gtk_text_iter_forward_visible_cursor_positions(
11037        iter: *mut GtkTextIter,
11038        count: c_int,
11039    ) -> gboolean;
11040    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11041    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11042    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
11043    pub fn gtk_text_iter_forward_visible_word_ends(
11044        iter: *mut GtkTextIter,
11045        count: c_int,
11046    ) -> gboolean;
11047    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
11048    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11049    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
11050    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
11051    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
11052    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
11053    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
11054    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
11055    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
11056    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
11057    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
11058    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
11059    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
11060    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
11061    pub fn gtk_text_iter_get_paintable(iter: *const GtkTextIter) -> *mut gdk::GdkPaintable;
11062    pub fn gtk_text_iter_get_slice(
11063        start: *const GtkTextIter,
11064        end: *const GtkTextIter,
11065    ) -> *mut c_char;
11066    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
11067    pub fn gtk_text_iter_get_text(
11068        start: *const GtkTextIter,
11069        end: *const GtkTextIter,
11070    ) -> *mut c_char;
11071    pub fn gtk_text_iter_get_toggled_tags(
11072        iter: *const GtkTextIter,
11073        toggled_on: gboolean,
11074    ) -> *mut glib::GSList;
11075    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
11076    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
11077    pub fn gtk_text_iter_get_visible_slice(
11078        start: *const GtkTextIter,
11079        end: *const GtkTextIter,
11080    ) -> *mut c_char;
11081    pub fn gtk_text_iter_get_visible_text(
11082        start: *const GtkTextIter,
11083        end: *const GtkTextIter,
11084    ) -> *mut c_char;
11085    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11086    pub fn gtk_text_iter_in_range(
11087        iter: *const GtkTextIter,
11088        start: *const GtkTextIter,
11089        end: *const GtkTextIter,
11090    ) -> gboolean;
11091    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
11092    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
11093    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
11094    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
11095    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
11096    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
11097    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
11098    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11099    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11100    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
11101    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11102    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11103    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
11104    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
11105    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11106    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
11107    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11108
11109    //=========================================================================
11110    // GtkTreeIter
11111    //=========================================================================
11112    pub fn gtk_tree_iter_get_type() -> GType;
11113    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
11114    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
11115
11116    //=========================================================================
11117    // GtkTreePath
11118    //=========================================================================
11119    pub fn gtk_tree_path_get_type() -> GType;
11120    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
11121    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
11122    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
11123    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
11124        -> *mut GtkTreePath;
11125    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
11126    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
11127    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
11128    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
11129    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
11130    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
11131    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
11132    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
11133    pub fn gtk_tree_path_get_indices_with_depth(
11134        path: *mut GtkTreePath,
11135        depth: *mut c_int,
11136    ) -> *mut c_int;
11137    pub fn gtk_tree_path_is_ancestor(
11138        path: *mut GtkTreePath,
11139        descendant: *mut GtkTreePath,
11140    ) -> gboolean;
11141    pub fn gtk_tree_path_is_descendant(
11142        path: *mut GtkTreePath,
11143        ancestor: *mut GtkTreePath,
11144    ) -> gboolean;
11145    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
11146    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
11147    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
11148    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
11149    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
11150
11151    //=========================================================================
11152    // GtkTreeRowReference
11153    //=========================================================================
11154    pub fn gtk_tree_row_reference_get_type() -> GType;
11155    pub fn gtk_tree_row_reference_new(
11156        model: *mut GtkTreeModel,
11157        path: *mut GtkTreePath,
11158    ) -> *mut GtkTreeRowReference;
11159    pub fn gtk_tree_row_reference_new_proxy(
11160        proxy: *mut gobject::GObject,
11161        model: *mut GtkTreeModel,
11162        path: *mut GtkTreePath,
11163    ) -> *mut GtkTreeRowReference;
11164    pub fn gtk_tree_row_reference_copy(
11165        reference: *mut GtkTreeRowReference,
11166    ) -> *mut GtkTreeRowReference;
11167    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
11168    pub fn gtk_tree_row_reference_get_model(
11169        reference: *mut GtkTreeRowReference,
11170    ) -> *mut GtkTreeModel;
11171    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
11172        -> *mut GtkTreePath;
11173    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
11174    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11175    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11176    pub fn gtk_tree_row_reference_reordered(
11177        proxy: *mut gobject::GObject,
11178        path: *mut GtkTreePath,
11179        iter: *mut GtkTreeIter,
11180        new_order: *mut c_int,
11181    );
11182
11183    //=========================================================================
11184    // GtkWidgetClass
11185    //=========================================================================
11186    pub fn gtk_widget_class_add_binding(
11187        widget_class: *mut GtkWidgetClass,
11188        keyval: c_uint,
11189        mods: gdk::GdkModifierType,
11190        callback: GtkShortcutFunc,
11191        format_string: *const c_char,
11192        ...
11193    );
11194    pub fn gtk_widget_class_add_binding_action(
11195        widget_class: *mut GtkWidgetClass,
11196        keyval: c_uint,
11197        mods: gdk::GdkModifierType,
11198        action_name: *const c_char,
11199        format_string: *const c_char,
11200        ...
11201    );
11202    pub fn gtk_widget_class_add_binding_signal(
11203        widget_class: *mut GtkWidgetClass,
11204        keyval: c_uint,
11205        mods: gdk::GdkModifierType,
11206        signal: *const c_char,
11207        format_string: *const c_char,
11208        ...
11209    );
11210    pub fn gtk_widget_class_add_shortcut(
11211        widget_class: *mut GtkWidgetClass,
11212        shortcut: *mut GtkShortcut,
11213    );
11214    pub fn gtk_widget_class_bind_template_callback_full(
11215        widget_class: *mut GtkWidgetClass,
11216        callback_name: *const c_char,
11217        callback_symbol: gobject::GCallback,
11218    );
11219    pub fn gtk_widget_class_bind_template_child_full(
11220        widget_class: *mut GtkWidgetClass,
11221        name: *const c_char,
11222        internal_child: gboolean,
11223        struct_offset: ssize_t,
11224    );
11225    pub fn gtk_widget_class_get_accessible_role(
11226        widget_class: *mut GtkWidgetClass,
11227    ) -> GtkAccessibleRole;
11228    pub fn gtk_widget_class_get_activate_signal(widget_class: *mut GtkWidgetClass) -> c_uint;
11229    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
11230    pub fn gtk_widget_class_get_layout_manager_type(widget_class: *mut GtkWidgetClass) -> GType;
11231    pub fn gtk_widget_class_install_action(
11232        widget_class: *mut GtkWidgetClass,
11233        action_name: *const c_char,
11234        parameter_type: *const c_char,
11235        activate: GtkWidgetActionActivateFunc,
11236    );
11237    pub fn gtk_widget_class_install_property_action(
11238        widget_class: *mut GtkWidgetClass,
11239        action_name: *const c_char,
11240        property_name: *const c_char,
11241    );
11242    pub fn gtk_widget_class_query_action(
11243        widget_class: *mut GtkWidgetClass,
11244        index_: c_uint,
11245        owner: *mut GType,
11246        action_name: *mut *const c_char,
11247        parameter_type: *mut *const glib::GVariantType,
11248        property_name: *mut *const c_char,
11249    ) -> gboolean;
11250    pub fn gtk_widget_class_set_accessible_role(
11251        widget_class: *mut GtkWidgetClass,
11252        accessible_role: GtkAccessibleRole,
11253    );
11254    pub fn gtk_widget_class_set_activate_signal(
11255        widget_class: *mut GtkWidgetClass,
11256        signal_id: c_uint,
11257    );
11258    pub fn gtk_widget_class_set_activate_signal_from_name(
11259        widget_class: *mut GtkWidgetClass,
11260        signal_name: *const c_char,
11261    );
11262    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
11263    pub fn gtk_widget_class_set_layout_manager_type(
11264        widget_class: *mut GtkWidgetClass,
11265        type_: GType,
11266    );
11267    pub fn gtk_widget_class_set_template(
11268        widget_class: *mut GtkWidgetClass,
11269        template_bytes: *mut glib::GBytes,
11270    );
11271    pub fn gtk_widget_class_set_template_from_resource(
11272        widget_class: *mut GtkWidgetClass,
11273        resource_name: *const c_char,
11274    );
11275    pub fn gtk_widget_class_set_template_scope(
11276        widget_class: *mut GtkWidgetClass,
11277        scope: *mut GtkBuilderScope,
11278    );
11279
11280    //=========================================================================
11281    // GtkATContext
11282    //=========================================================================
11283    pub fn gtk_at_context_get_type() -> GType;
11284    pub fn gtk_at_context_create(
11285        accessible_role: GtkAccessibleRole,
11286        accessible: *mut GtkAccessible,
11287        display: *mut gdk::GdkDisplay,
11288    ) -> *mut GtkATContext;
11289    pub fn gtk_at_context_get_accessible(self_: *mut GtkATContext) -> *mut GtkAccessible;
11290    pub fn gtk_at_context_get_accessible_role(self_: *mut GtkATContext) -> GtkAccessibleRole;
11291
11292    //=========================================================================
11293    // GtkAboutDialog
11294    //=========================================================================
11295    pub fn gtk_about_dialog_get_type() -> GType;
11296    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
11297    pub fn gtk_about_dialog_add_credit_section(
11298        about: *mut GtkAboutDialog,
11299        section_name: *const c_char,
11300        people: *mut *const c_char,
11301    );
11302    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
11303    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
11304    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
11305    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
11306    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
11307    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
11308    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
11309    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk::GdkPaintable;
11310    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
11311    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
11312    pub fn gtk_about_dialog_get_system_information(about: *mut GtkAboutDialog) -> *const c_char;
11313    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
11314    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
11315    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
11316    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
11317    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
11318    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
11319    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
11320    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
11321    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
11322    pub fn gtk_about_dialog_set_documenters(
11323        about: *mut GtkAboutDialog,
11324        documenters: *mut *const c_char,
11325    );
11326    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
11327    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
11328    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk::GdkPaintable);
11329    pub fn gtk_about_dialog_set_logo_icon_name(
11330        about: *mut GtkAboutDialog,
11331        icon_name: *const c_char,
11332    );
11333    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
11334    pub fn gtk_about_dialog_set_system_information(
11335        about: *mut GtkAboutDialog,
11336        system_information: *const c_char,
11337    );
11338    pub fn gtk_about_dialog_set_translator_credits(
11339        about: *mut GtkAboutDialog,
11340        translator_credits: *const c_char,
11341    );
11342    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
11343    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
11344    pub fn gtk_about_dialog_set_website_label(
11345        about: *mut GtkAboutDialog,
11346        website_label: *const c_char,
11347    );
11348    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
11349
11350    //=========================================================================
11351    // GtkActionBar
11352    //=========================================================================
11353    pub fn gtk_action_bar_get_type() -> GType;
11354    pub fn gtk_action_bar_new() -> *mut GtkWidget;
11355    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
11356    pub fn gtk_action_bar_get_revealed(action_bar: *mut GtkActionBar) -> gboolean;
11357    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11358    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11359    pub fn gtk_action_bar_remove(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11360    pub fn gtk_action_bar_set_center_widget(
11361        action_bar: *mut GtkActionBar,
11362        center_widget: *mut GtkWidget,
11363    );
11364    pub fn gtk_action_bar_set_revealed(action_bar: *mut GtkActionBar, revealed: gboolean);
11365
11366    //=========================================================================
11367    // GtkActivateAction
11368    //=========================================================================
11369    pub fn gtk_activate_action_get_type() -> GType;
11370    pub fn gtk_activate_action_get() -> *mut GtkActivateAction;
11371
11372    //=========================================================================
11373    // GtkAdjustment
11374    //=========================================================================
11375    pub fn gtk_adjustment_get_type() -> GType;
11376    pub fn gtk_adjustment_new(
11377        value: c_double,
11378        lower: c_double,
11379        upper: c_double,
11380        step_increment: c_double,
11381        page_increment: c_double,
11382        page_size: c_double,
11383    ) -> *mut GtkAdjustment;
11384    pub fn gtk_adjustment_clamp_page(
11385        adjustment: *mut GtkAdjustment,
11386        lower: c_double,
11387        upper: c_double,
11388    );
11389    pub fn gtk_adjustment_configure(
11390        adjustment: *mut GtkAdjustment,
11391        value: c_double,
11392        lower: c_double,
11393        upper: c_double,
11394        step_increment: c_double,
11395        page_increment: c_double,
11396        page_size: c_double,
11397    );
11398    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
11399    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
11400    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
11401    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
11402    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
11403    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
11404    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
11405    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
11406    pub fn gtk_adjustment_set_page_increment(
11407        adjustment: *mut GtkAdjustment,
11408        page_increment: c_double,
11409    );
11410    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
11411    pub fn gtk_adjustment_set_step_increment(
11412        adjustment: *mut GtkAdjustment,
11413        step_increment: c_double,
11414    );
11415    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
11416    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
11417
11418    //=========================================================================
11419    // GtkAlertDialog
11420    //=========================================================================
11421    #[cfg(feature = "v4_10")]
11422    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11423    pub fn gtk_alert_dialog_get_type() -> GType;
11424    #[cfg(feature = "v4_10")]
11425    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11426    pub fn gtk_alert_dialog_new(format: *const c_char, ...) -> *mut GtkAlertDialog;
11427    #[cfg(feature = "v4_10")]
11428    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11429    pub fn gtk_alert_dialog_choose(
11430        self_: *mut GtkAlertDialog,
11431        parent: *mut GtkWindow,
11432        cancellable: *mut gio::GCancellable,
11433        callback: gio::GAsyncReadyCallback,
11434        user_data: gpointer,
11435    );
11436    #[cfg(feature = "v4_10")]
11437    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11438    pub fn gtk_alert_dialog_choose_finish(
11439        self_: *mut GtkAlertDialog,
11440        result: *mut gio::GAsyncResult,
11441        error: *mut *mut glib::GError,
11442    ) -> c_int;
11443    #[cfg(feature = "v4_10")]
11444    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11445    pub fn gtk_alert_dialog_get_buttons(self_: *mut GtkAlertDialog) -> *const *const c_char;
11446    #[cfg(feature = "v4_10")]
11447    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11448    pub fn gtk_alert_dialog_get_cancel_button(self_: *mut GtkAlertDialog) -> c_int;
11449    #[cfg(feature = "v4_10")]
11450    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11451    pub fn gtk_alert_dialog_get_default_button(self_: *mut GtkAlertDialog) -> c_int;
11452    #[cfg(feature = "v4_10")]
11453    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11454    pub fn gtk_alert_dialog_get_detail(self_: *mut GtkAlertDialog) -> *const c_char;
11455    #[cfg(feature = "v4_10")]
11456    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11457    pub fn gtk_alert_dialog_get_message(self_: *mut GtkAlertDialog) -> *const c_char;
11458    #[cfg(feature = "v4_10")]
11459    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11460    pub fn gtk_alert_dialog_get_modal(self_: *mut GtkAlertDialog) -> gboolean;
11461    #[cfg(feature = "v4_10")]
11462    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11463    pub fn gtk_alert_dialog_set_buttons(self_: *mut GtkAlertDialog, labels: *const *const c_char);
11464    #[cfg(feature = "v4_10")]
11465    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11466    pub fn gtk_alert_dialog_set_cancel_button(self_: *mut GtkAlertDialog, button: c_int);
11467    #[cfg(feature = "v4_10")]
11468    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11469    pub fn gtk_alert_dialog_set_default_button(self_: *mut GtkAlertDialog, button: c_int);
11470    #[cfg(feature = "v4_10")]
11471    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11472    pub fn gtk_alert_dialog_set_detail(self_: *mut GtkAlertDialog, detail: *const c_char);
11473    #[cfg(feature = "v4_10")]
11474    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11475    pub fn gtk_alert_dialog_set_message(self_: *mut GtkAlertDialog, message: *const c_char);
11476    #[cfg(feature = "v4_10")]
11477    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11478    pub fn gtk_alert_dialog_set_modal(self_: *mut GtkAlertDialog, modal: gboolean);
11479    #[cfg(feature = "v4_10")]
11480    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11481    pub fn gtk_alert_dialog_show(self_: *mut GtkAlertDialog, parent: *mut GtkWindow);
11482
11483    //=========================================================================
11484    // GtkAlternativeTrigger
11485    //=========================================================================
11486    pub fn gtk_alternative_trigger_get_type() -> GType;
11487    pub fn gtk_alternative_trigger_new(
11488        first: *mut GtkShortcutTrigger,
11489        second: *mut GtkShortcutTrigger,
11490    ) -> *mut GtkShortcutTrigger;
11491    pub fn gtk_alternative_trigger_get_first(
11492        self_: *mut GtkAlternativeTrigger,
11493    ) -> *mut GtkShortcutTrigger;
11494    pub fn gtk_alternative_trigger_get_second(
11495        self_: *mut GtkAlternativeTrigger,
11496    ) -> *mut GtkShortcutTrigger;
11497
11498    //=========================================================================
11499    // GtkAnyFilter
11500    //=========================================================================
11501    pub fn gtk_any_filter_get_type() -> GType;
11502    pub fn gtk_any_filter_new() -> *mut GtkAnyFilter;
11503
11504    //=========================================================================
11505    // GtkAppChooserButton
11506    //=========================================================================
11507    pub fn gtk_app_chooser_button_get_type() -> GType;
11508    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
11509    pub fn gtk_app_chooser_button_append_custom_item(
11510        self_: *mut GtkAppChooserButton,
11511        name: *const c_char,
11512        label: *const c_char,
11513        icon: *mut gio::GIcon,
11514    );
11515    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
11516    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
11517    pub fn gtk_app_chooser_button_get_modal(self_: *mut GtkAppChooserButton) -> gboolean;
11518    pub fn gtk_app_chooser_button_get_show_default_item(
11519        self_: *mut GtkAppChooserButton,
11520    ) -> gboolean;
11521    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
11522        -> gboolean;
11523    pub fn gtk_app_chooser_button_set_active_custom_item(
11524        self_: *mut GtkAppChooserButton,
11525        name: *const c_char,
11526    );
11527    pub fn gtk_app_chooser_button_set_heading(
11528        self_: *mut GtkAppChooserButton,
11529        heading: *const c_char,
11530    );
11531    pub fn gtk_app_chooser_button_set_modal(self_: *mut GtkAppChooserButton, modal: gboolean);
11532    pub fn gtk_app_chooser_button_set_show_default_item(
11533        self_: *mut GtkAppChooserButton,
11534        setting: gboolean,
11535    );
11536    pub fn gtk_app_chooser_button_set_show_dialog_item(
11537        self_: *mut GtkAppChooserButton,
11538        setting: gboolean,
11539    );
11540
11541    //=========================================================================
11542    // GtkAppChooserDialog
11543    //=========================================================================
11544    pub fn gtk_app_chooser_dialog_get_type() -> GType;
11545    pub fn gtk_app_chooser_dialog_new(
11546        parent: *mut GtkWindow,
11547        flags: GtkDialogFlags,
11548        file: *mut gio::GFile,
11549    ) -> *mut GtkWidget;
11550    pub fn gtk_app_chooser_dialog_new_for_content_type(
11551        parent: *mut GtkWindow,
11552        flags: GtkDialogFlags,
11553        content_type: *const c_char,
11554    ) -> *mut GtkWidget;
11555    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
11556    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
11557    pub fn gtk_app_chooser_dialog_set_heading(
11558        self_: *mut GtkAppChooserDialog,
11559        heading: *const c_char,
11560    );
11561
11562    //=========================================================================
11563    // GtkAppChooserWidget
11564    //=========================================================================
11565    pub fn gtk_app_chooser_widget_get_type() -> GType;
11566    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
11567    pub fn gtk_app_chooser_widget_get_default_text(
11568        self_: *mut GtkAppChooserWidget,
11569    ) -> *const c_char;
11570    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
11571    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
11572    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
11573    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
11574    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
11575        -> gboolean;
11576    pub fn gtk_app_chooser_widget_set_default_text(
11577        self_: *mut GtkAppChooserWidget,
11578        text: *const c_char,
11579    );
11580    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
11581    pub fn gtk_app_chooser_widget_set_show_default(
11582        self_: *mut GtkAppChooserWidget,
11583        setting: gboolean,
11584    );
11585    pub fn gtk_app_chooser_widget_set_show_fallback(
11586        self_: *mut GtkAppChooserWidget,
11587        setting: gboolean,
11588    );
11589    pub fn gtk_app_chooser_widget_set_show_other(
11590        self_: *mut GtkAppChooserWidget,
11591        setting: gboolean,
11592    );
11593    pub fn gtk_app_chooser_widget_set_show_recommended(
11594        self_: *mut GtkAppChooserWidget,
11595        setting: gboolean,
11596    );
11597
11598    //=========================================================================
11599    // GtkApplication
11600    //=========================================================================
11601    pub fn gtk_application_get_type() -> GType;
11602    pub fn gtk_application_new(
11603        application_id: *const c_char,
11604        flags: gio::GApplicationFlags,
11605    ) -> *mut GtkApplication;
11606    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
11607    pub fn gtk_application_get_accels_for_action(
11608        application: *mut GtkApplication,
11609        detailed_action_name: *const c_char,
11610    ) -> *mut *mut c_char;
11611    pub fn gtk_application_get_actions_for_accel(
11612        application: *mut GtkApplication,
11613        accel: *const c_char,
11614    ) -> *mut *mut c_char;
11615    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
11616    pub fn gtk_application_get_menu_by_id(
11617        application: *mut GtkApplication,
11618        id: *const c_char,
11619    ) -> *mut gio::GMenu;
11620    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
11621    pub fn gtk_application_get_window_by_id(
11622        application: *mut GtkApplication,
11623        id: c_uint,
11624    ) -> *mut GtkWindow;
11625    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
11626    pub fn gtk_application_inhibit(
11627        application: *mut GtkApplication,
11628        window: *mut GtkWindow,
11629        flags: GtkApplicationInhibitFlags,
11630        reason: *const c_char,
11631    ) -> c_uint;
11632    pub fn gtk_application_list_action_descriptions(
11633        application: *mut GtkApplication,
11634    ) -> *mut *mut c_char;
11635    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
11636    pub fn gtk_application_set_accels_for_action(
11637        application: *mut GtkApplication,
11638        detailed_action_name: *const c_char,
11639        accels: *const *const c_char,
11640    );
11641    pub fn gtk_application_set_menubar(
11642        application: *mut GtkApplication,
11643        menubar: *mut gio::GMenuModel,
11644    );
11645    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
11646
11647    //=========================================================================
11648    // GtkApplicationWindow
11649    //=========================================================================
11650    pub fn gtk_application_window_get_type() -> GType;
11651    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
11652    pub fn gtk_application_window_get_help_overlay(
11653        window: *mut GtkApplicationWindow,
11654    ) -> *mut GtkShortcutsWindow;
11655    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
11656    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
11657    pub fn gtk_application_window_set_help_overlay(
11658        window: *mut GtkApplicationWindow,
11659        help_overlay: *mut GtkShortcutsWindow,
11660    );
11661    pub fn gtk_application_window_set_show_menubar(
11662        window: *mut GtkApplicationWindow,
11663        show_menubar: gboolean,
11664    );
11665
11666    //=========================================================================
11667    // GtkAspectFrame
11668    //=========================================================================
11669    pub fn gtk_aspect_frame_get_type() -> GType;
11670    pub fn gtk_aspect_frame_new(
11671        xalign: c_float,
11672        yalign: c_float,
11673        ratio: c_float,
11674        obey_child: gboolean,
11675    ) -> *mut GtkWidget;
11676    pub fn gtk_aspect_frame_get_child(self_: *mut GtkAspectFrame) -> *mut GtkWidget;
11677    pub fn gtk_aspect_frame_get_obey_child(self_: *mut GtkAspectFrame) -> gboolean;
11678    pub fn gtk_aspect_frame_get_ratio(self_: *mut GtkAspectFrame) -> c_float;
11679    pub fn gtk_aspect_frame_get_xalign(self_: *mut GtkAspectFrame) -> c_float;
11680    pub fn gtk_aspect_frame_get_yalign(self_: *mut GtkAspectFrame) -> c_float;
11681    pub fn gtk_aspect_frame_set_child(self_: *mut GtkAspectFrame, child: *mut GtkWidget);
11682    pub fn gtk_aspect_frame_set_obey_child(self_: *mut GtkAspectFrame, obey_child: gboolean);
11683    pub fn gtk_aspect_frame_set_ratio(self_: *mut GtkAspectFrame, ratio: c_float);
11684    pub fn gtk_aspect_frame_set_xalign(self_: *mut GtkAspectFrame, xalign: c_float);
11685    pub fn gtk_aspect_frame_set_yalign(self_: *mut GtkAspectFrame, yalign: c_float);
11686
11687    //=========================================================================
11688    // GtkAssistant
11689    //=========================================================================
11690    pub fn gtk_assistant_get_type() -> GType;
11691    pub fn gtk_assistant_new() -> *mut GtkWidget;
11692    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11693    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11694    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
11695    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
11696    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
11697    pub fn gtk_assistant_get_nth_page(
11698        assistant: *mut GtkAssistant,
11699        page_num: c_int,
11700    ) -> *mut GtkWidget;
11701    pub fn gtk_assistant_get_page(
11702        assistant: *mut GtkAssistant,
11703        child: *mut GtkWidget,
11704    ) -> *mut GtkAssistantPage;
11705    pub fn gtk_assistant_get_page_complete(
11706        assistant: *mut GtkAssistant,
11707        page: *mut GtkWidget,
11708    ) -> gboolean;
11709    pub fn gtk_assistant_get_page_title(
11710        assistant: *mut GtkAssistant,
11711        page: *mut GtkWidget,
11712    ) -> *const c_char;
11713    pub fn gtk_assistant_get_page_type(
11714        assistant: *mut GtkAssistant,
11715        page: *mut GtkWidget,
11716    ) -> GtkAssistantPageType;
11717    pub fn gtk_assistant_get_pages(assistant: *mut GtkAssistant) -> *mut gio::GListModel;
11718    pub fn gtk_assistant_insert_page(
11719        assistant: *mut GtkAssistant,
11720        page: *mut GtkWidget,
11721        position: c_int,
11722    ) -> c_int;
11723    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
11724    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
11725    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
11726    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
11727    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
11728    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
11729    pub fn gtk_assistant_set_forward_page_func(
11730        assistant: *mut GtkAssistant,
11731        page_func: GtkAssistantPageFunc,
11732        data: gpointer,
11733        destroy: glib::GDestroyNotify,
11734    );
11735    pub fn gtk_assistant_set_page_complete(
11736        assistant: *mut GtkAssistant,
11737        page: *mut GtkWidget,
11738        complete: gboolean,
11739    );
11740    pub fn gtk_assistant_set_page_title(
11741        assistant: *mut GtkAssistant,
11742        page: *mut GtkWidget,
11743        title: *const c_char,
11744    );
11745    pub fn gtk_assistant_set_page_type(
11746        assistant: *mut GtkAssistant,
11747        page: *mut GtkWidget,
11748        type_: GtkAssistantPageType,
11749    );
11750    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
11751
11752    //=========================================================================
11753    // GtkAssistantPage
11754    //=========================================================================
11755    pub fn gtk_assistant_page_get_type() -> GType;
11756    pub fn gtk_assistant_page_get_child(page: *mut GtkAssistantPage) -> *mut GtkWidget;
11757
11758    //=========================================================================
11759    // GtkBinLayout
11760    //=========================================================================
11761    pub fn gtk_bin_layout_get_type() -> GType;
11762    pub fn gtk_bin_layout_new() -> *mut GtkLayoutManager;
11763
11764    //=========================================================================
11765    // GtkBookmarkList
11766    //=========================================================================
11767    pub fn gtk_bookmark_list_get_type() -> GType;
11768    pub fn gtk_bookmark_list_new(
11769        filename: *const c_char,
11770        attributes: *const c_char,
11771    ) -> *mut GtkBookmarkList;
11772    pub fn gtk_bookmark_list_get_attributes(self_: *mut GtkBookmarkList) -> *const c_char;
11773    pub fn gtk_bookmark_list_get_filename(self_: *mut GtkBookmarkList) -> *const c_char;
11774    pub fn gtk_bookmark_list_get_io_priority(self_: *mut GtkBookmarkList) -> c_int;
11775    pub fn gtk_bookmark_list_is_loading(self_: *mut GtkBookmarkList) -> gboolean;
11776    pub fn gtk_bookmark_list_set_attributes(self_: *mut GtkBookmarkList, attributes: *const c_char);
11777    pub fn gtk_bookmark_list_set_io_priority(self_: *mut GtkBookmarkList, io_priority: c_int);
11778
11779    //=========================================================================
11780    // GtkBoolFilter
11781    //=========================================================================
11782    pub fn gtk_bool_filter_get_type() -> GType;
11783    pub fn gtk_bool_filter_new(expression: *mut GtkExpression) -> *mut GtkBoolFilter;
11784    pub fn gtk_bool_filter_get_expression(self_: *mut GtkBoolFilter) -> *mut GtkExpression;
11785    pub fn gtk_bool_filter_get_invert(self_: *mut GtkBoolFilter) -> gboolean;
11786    pub fn gtk_bool_filter_set_expression(
11787        self_: *mut GtkBoolFilter,
11788        expression: *mut GtkExpression,
11789    );
11790    pub fn gtk_bool_filter_set_invert(self_: *mut GtkBoolFilter, invert: gboolean);
11791
11792    //=========================================================================
11793    // GtkBox
11794    //=========================================================================
11795    pub fn gtk_box_get_type() -> GType;
11796    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
11797    pub fn gtk_box_append(box_: *mut GtkBox, child: *mut GtkWidget);
11798    #[cfg(feature = "v4_12")]
11799    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11800    pub fn gtk_box_get_baseline_child(box_: *mut GtkBox) -> c_int;
11801    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
11802    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
11803    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
11804    pub fn gtk_box_insert_child_after(
11805        box_: *mut GtkBox,
11806        child: *mut GtkWidget,
11807        sibling: *mut GtkWidget,
11808    );
11809    pub fn gtk_box_prepend(box_: *mut GtkBox, child: *mut GtkWidget);
11810    pub fn gtk_box_remove(box_: *mut GtkBox, child: *mut GtkWidget);
11811    pub fn gtk_box_reorder_child_after(
11812        box_: *mut GtkBox,
11813        child: *mut GtkWidget,
11814        sibling: *mut GtkWidget,
11815    );
11816    #[cfg(feature = "v4_12")]
11817    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11818    pub fn gtk_box_set_baseline_child(box_: *mut GtkBox, child: c_int);
11819    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
11820    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
11821    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
11822
11823    //=========================================================================
11824    // GtkBoxLayout
11825    //=========================================================================
11826    pub fn gtk_box_layout_get_type() -> GType;
11827    pub fn gtk_box_layout_new(orientation: GtkOrientation) -> *mut GtkLayoutManager;
11828    #[cfg(feature = "v4_12")]
11829    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11830    pub fn gtk_box_layout_get_baseline_child(box_layout: *mut GtkBoxLayout) -> c_int;
11831    pub fn gtk_box_layout_get_baseline_position(
11832        box_layout: *mut GtkBoxLayout,
11833    ) -> GtkBaselinePosition;
11834    pub fn gtk_box_layout_get_homogeneous(box_layout: *mut GtkBoxLayout) -> gboolean;
11835    pub fn gtk_box_layout_get_spacing(box_layout: *mut GtkBoxLayout) -> c_uint;
11836    #[cfg(feature = "v4_12")]
11837    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11838    pub fn gtk_box_layout_set_baseline_child(box_layout: *mut GtkBoxLayout, child: c_int);
11839    pub fn gtk_box_layout_set_baseline_position(
11840        box_layout: *mut GtkBoxLayout,
11841        position: GtkBaselinePosition,
11842    );
11843    pub fn gtk_box_layout_set_homogeneous(box_layout: *mut GtkBoxLayout, homogeneous: gboolean);
11844    pub fn gtk_box_layout_set_spacing(box_layout: *mut GtkBoxLayout, spacing: c_uint);
11845
11846    //=========================================================================
11847    // GtkBuilder
11848    //=========================================================================
11849    pub fn gtk_builder_get_type() -> GType;
11850    pub fn gtk_builder_new() -> *mut GtkBuilder;
11851    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
11852    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
11853    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
11854    pub fn gtk_builder_add_from_file(
11855        builder: *mut GtkBuilder,
11856        filename: *const c_char,
11857        error: *mut *mut glib::GError,
11858    ) -> gboolean;
11859    pub fn gtk_builder_add_from_resource(
11860        builder: *mut GtkBuilder,
11861        resource_path: *const c_char,
11862        error: *mut *mut glib::GError,
11863    ) -> gboolean;
11864    pub fn gtk_builder_add_from_string(
11865        builder: *mut GtkBuilder,
11866        buffer: *const c_char,
11867        length: ssize_t,
11868        error: *mut *mut glib::GError,
11869    ) -> gboolean;
11870    pub fn gtk_builder_add_objects_from_file(
11871        builder: *mut GtkBuilder,
11872        filename: *const c_char,
11873        object_ids: *mut *const c_char,
11874        error: *mut *mut glib::GError,
11875    ) -> gboolean;
11876    pub fn gtk_builder_add_objects_from_resource(
11877        builder: *mut GtkBuilder,
11878        resource_path: *const c_char,
11879        object_ids: *mut *const c_char,
11880        error: *mut *mut glib::GError,
11881    ) -> gboolean;
11882    pub fn gtk_builder_add_objects_from_string(
11883        builder: *mut GtkBuilder,
11884        buffer: *const c_char,
11885        length: ssize_t,
11886        object_ids: *mut *const c_char,
11887        error: *mut *mut glib::GError,
11888    ) -> gboolean;
11889    pub fn gtk_builder_create_closure(
11890        builder: *mut GtkBuilder,
11891        function_name: *const c_char,
11892        flags: GtkBuilderClosureFlags,
11893        object: *mut gobject::GObject,
11894        error: *mut *mut glib::GError,
11895    ) -> *mut gobject::GClosure;
11896    pub fn gtk_builder_expose_object(
11897        builder: *mut GtkBuilder,
11898        name: *const c_char,
11899        object: *mut gobject::GObject,
11900    );
11901    pub fn gtk_builder_extend_with_template(
11902        builder: *mut GtkBuilder,
11903        object: *mut gobject::GObject,
11904        template_type: GType,
11905        buffer: *const c_char,
11906        length: ssize_t,
11907        error: *mut *mut glib::GError,
11908    ) -> gboolean;
11909    pub fn gtk_builder_get_current_object(builder: *mut GtkBuilder) -> *mut gobject::GObject;
11910    pub fn gtk_builder_get_object(
11911        builder: *mut GtkBuilder,
11912        name: *const c_char,
11913    ) -> *mut gobject::GObject;
11914    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
11915    pub fn gtk_builder_get_scope(builder: *mut GtkBuilder) -> *mut GtkBuilderScope;
11916    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
11917    pub fn gtk_builder_get_type_from_name(
11918        builder: *mut GtkBuilder,
11919        type_name: *const c_char,
11920    ) -> GType;
11921    pub fn gtk_builder_set_current_object(
11922        builder: *mut GtkBuilder,
11923        current_object: *mut gobject::GObject,
11924    );
11925    pub fn gtk_builder_set_scope(builder: *mut GtkBuilder, scope: *mut GtkBuilderScope);
11926    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
11927    pub fn gtk_builder_value_from_string(
11928        builder: *mut GtkBuilder,
11929        pspec: *mut gobject::GParamSpec,
11930        string: *const c_char,
11931        value: *mut gobject::GValue,
11932        error: *mut *mut glib::GError,
11933    ) -> gboolean;
11934    pub fn gtk_builder_value_from_string_type(
11935        builder: *mut GtkBuilder,
11936        type_: GType,
11937        string: *const c_char,
11938        value: *mut gobject::GValue,
11939        error: *mut *mut glib::GError,
11940    ) -> gboolean;
11941
11942    //=========================================================================
11943    // GtkBuilderCScope
11944    //=========================================================================
11945    pub fn gtk_builder_cscope_get_type() -> GType;
11946    pub fn gtk_builder_cscope_new() -> *mut GtkBuilderCScope;
11947    pub fn gtk_builder_cscope_add_callback_symbol(
11948        self_: *mut GtkBuilderCScope,
11949        callback_name: *const c_char,
11950        callback_symbol: gobject::GCallback,
11951    );
11952    pub fn gtk_builder_cscope_add_callback_symbols(
11953        self_: *mut GtkBuilderCScope,
11954        first_callback_name: *const c_char,
11955        first_callback_symbol: gobject::GCallback,
11956        ...
11957    );
11958    pub fn gtk_builder_cscope_lookup_callback_symbol(
11959        self_: *mut GtkBuilderCScope,
11960        callback_name: *const c_char,
11961    ) -> gobject::GCallback;
11962
11963    //=========================================================================
11964    // GtkBuilderListItemFactory
11965    //=========================================================================
11966    pub fn gtk_builder_list_item_factory_get_type() -> GType;
11967    pub fn gtk_builder_list_item_factory_new_from_bytes(
11968        scope: *mut GtkBuilderScope,
11969        bytes: *mut glib::GBytes,
11970    ) -> *mut GtkListItemFactory;
11971    pub fn gtk_builder_list_item_factory_new_from_resource(
11972        scope: *mut GtkBuilderScope,
11973        resource_path: *const c_char,
11974    ) -> *mut GtkListItemFactory;
11975    pub fn gtk_builder_list_item_factory_get_bytes(
11976        self_: *mut GtkBuilderListItemFactory,
11977    ) -> *mut glib::GBytes;
11978    pub fn gtk_builder_list_item_factory_get_resource(
11979        self_: *mut GtkBuilderListItemFactory,
11980    ) -> *const c_char;
11981    pub fn gtk_builder_list_item_factory_get_scope(
11982        self_: *mut GtkBuilderListItemFactory,
11983    ) -> *mut GtkBuilderScope;
11984
11985    //=========================================================================
11986    // GtkButton
11987    //=========================================================================
11988    pub fn gtk_button_get_type() -> GType;
11989    pub fn gtk_button_new() -> *mut GtkWidget;
11990    pub fn gtk_button_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
11991    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
11992    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
11993    #[cfg(feature = "v4_12")]
11994    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11995    pub fn gtk_button_get_can_shrink(button: *mut GtkButton) -> gboolean;
11996    pub fn gtk_button_get_child(button: *mut GtkButton) -> *mut GtkWidget;
11997    pub fn gtk_button_get_has_frame(button: *mut GtkButton) -> gboolean;
11998    pub fn gtk_button_get_icon_name(button: *mut GtkButton) -> *const c_char;
11999    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
12000    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
12001    #[cfg(feature = "v4_12")]
12002    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12003    pub fn gtk_button_set_can_shrink(button: *mut GtkButton, can_shrink: gboolean);
12004    pub fn gtk_button_set_child(button: *mut GtkButton, child: *mut GtkWidget);
12005    pub fn gtk_button_set_has_frame(button: *mut GtkButton, has_frame: gboolean);
12006    pub fn gtk_button_set_icon_name(button: *mut GtkButton, icon_name: *const c_char);
12007    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
12008    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
12009
12010    //=========================================================================
12011    // GtkCClosureExpression
12012    //=========================================================================
12013    pub fn gtk_cclosure_expression_get_type() -> GType;
12014    pub fn gtk_cclosure_expression_new(
12015        value_type: GType,
12016        marshal: gobject::GClosureMarshal,
12017        n_params: c_uint,
12018        params: *mut *mut GtkExpression,
12019        callback_func: gobject::GCallback,
12020        user_data: gpointer,
12021        user_destroy: gobject::GClosureNotify,
12022    ) -> *mut GtkCClosureExpression;
12023
12024    //=========================================================================
12025    // GtkCalendar
12026    //=========================================================================
12027    pub fn gtk_calendar_get_type() -> GType;
12028    pub fn gtk_calendar_new() -> *mut GtkWidget;
12029    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
12030    pub fn gtk_calendar_get_date(self_: *mut GtkCalendar) -> *mut glib::GDateTime;
12031    #[cfg(feature = "v4_14")]
12032    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12033    pub fn gtk_calendar_get_day(self_: *mut GtkCalendar) -> c_int;
12034    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
12035    #[cfg(feature = "v4_14")]
12036    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12037    pub fn gtk_calendar_get_month(self_: *mut GtkCalendar) -> c_int;
12038    pub fn gtk_calendar_get_show_day_names(self_: *mut GtkCalendar) -> gboolean;
12039    pub fn gtk_calendar_get_show_heading(self_: *mut GtkCalendar) -> gboolean;
12040    pub fn gtk_calendar_get_show_week_numbers(self_: *mut GtkCalendar) -> gboolean;
12041    #[cfg(feature = "v4_14")]
12042    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12043    pub fn gtk_calendar_get_year(self_: *mut GtkCalendar) -> c_int;
12044    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
12045    pub fn gtk_calendar_select_day(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12046    #[cfg(feature = "v4_20")]
12047    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
12048    pub fn gtk_calendar_set_date(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12049    #[cfg(feature = "v4_14")]
12050    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12051    pub fn gtk_calendar_set_day(self_: *mut GtkCalendar, day: c_int);
12052    #[cfg(feature = "v4_14")]
12053    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12054    pub fn gtk_calendar_set_month(self_: *mut GtkCalendar, month: c_int);
12055    pub fn gtk_calendar_set_show_day_names(self_: *mut GtkCalendar, value: gboolean);
12056    pub fn gtk_calendar_set_show_heading(self_: *mut GtkCalendar, value: gboolean);
12057    pub fn gtk_calendar_set_show_week_numbers(self_: *mut GtkCalendar, value: gboolean);
12058    #[cfg(feature = "v4_14")]
12059    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12060    pub fn gtk_calendar_set_year(self_: *mut GtkCalendar, year: c_int);
12061    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
12062
12063    //=========================================================================
12064    // GtkCallbackAction
12065    //=========================================================================
12066    pub fn gtk_callback_action_get_type() -> GType;
12067    pub fn gtk_callback_action_new(
12068        callback: GtkShortcutFunc,
12069        data: gpointer,
12070        destroy: glib::GDestroyNotify,
12071    ) -> *mut GtkCallbackAction;
12072
12073    //=========================================================================
12074    // GtkCellArea
12075    //=========================================================================
12076    pub fn gtk_cell_area_get_type() -> GType;
12077    pub fn gtk_cell_area_activate(
12078        area: *mut GtkCellArea,
12079        context: *mut GtkCellAreaContext,
12080        widget: *mut GtkWidget,
12081        cell_area: *const gdk::GdkRectangle,
12082        flags: GtkCellRendererState,
12083        edit_only: gboolean,
12084    ) -> gboolean;
12085    pub fn gtk_cell_area_activate_cell(
12086        area: *mut GtkCellArea,
12087        widget: *mut GtkWidget,
12088        renderer: *mut GtkCellRenderer,
12089        event: *mut gdk::GdkEvent,
12090        cell_area: *const gdk::GdkRectangle,
12091        flags: GtkCellRendererState,
12092    ) -> gboolean;
12093    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12094    pub fn gtk_cell_area_add_focus_sibling(
12095        area: *mut GtkCellArea,
12096        renderer: *mut GtkCellRenderer,
12097        sibling: *mut GtkCellRenderer,
12098    );
12099    pub fn gtk_cell_area_add_with_properties(
12100        area: *mut GtkCellArea,
12101        renderer: *mut GtkCellRenderer,
12102        first_prop_name: *const c_char,
12103        ...
12104    );
12105    pub fn gtk_cell_area_apply_attributes(
12106        area: *mut GtkCellArea,
12107        tree_model: *mut GtkTreeModel,
12108        iter: *mut GtkTreeIter,
12109        is_expander: gboolean,
12110        is_expanded: gboolean,
12111    );
12112    pub fn gtk_cell_area_attribute_connect(
12113        area: *mut GtkCellArea,
12114        renderer: *mut GtkCellRenderer,
12115        attribute: *const c_char,
12116        column: c_int,
12117    );
12118    pub fn gtk_cell_area_attribute_disconnect(
12119        area: *mut GtkCellArea,
12120        renderer: *mut GtkCellRenderer,
12121        attribute: *const c_char,
12122    );
12123    pub fn gtk_cell_area_attribute_get_column(
12124        area: *mut GtkCellArea,
12125        renderer: *mut GtkCellRenderer,
12126        attribute: *const c_char,
12127    ) -> c_int;
12128    pub fn gtk_cell_area_cell_get(
12129        area: *mut GtkCellArea,
12130        renderer: *mut GtkCellRenderer,
12131        first_prop_name: *const c_char,
12132        ...
12133    );
12134    pub fn gtk_cell_area_cell_get_property(
12135        area: *mut GtkCellArea,
12136        renderer: *mut GtkCellRenderer,
12137        property_name: *const c_char,
12138        value: *mut gobject::GValue,
12139    );
12140    //pub fn gtk_cell_area_cell_get_valist(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
12141    pub fn gtk_cell_area_cell_set(
12142        area: *mut GtkCellArea,
12143        renderer: *mut GtkCellRenderer,
12144        first_prop_name: *const c_char,
12145        ...
12146    );
12147    pub fn gtk_cell_area_cell_set_property(
12148        area: *mut GtkCellArea,
12149        renderer: *mut GtkCellRenderer,
12150        property_name: *const c_char,
12151        value: *const gobject::GValue,
12152    );
12153    //pub fn gtk_cell_area_cell_set_valist(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer, first_property_name: *const c_char, var_args: /*Unimplemented*/va_list);
12154    pub fn gtk_cell_area_copy_context(
12155        area: *mut GtkCellArea,
12156        context: *mut GtkCellAreaContext,
12157    ) -> *mut GtkCellAreaContext;
12158    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
12159    pub fn gtk_cell_area_event(
12160        area: *mut GtkCellArea,
12161        context: *mut GtkCellAreaContext,
12162        widget: *mut GtkWidget,
12163        event: *mut gdk::GdkEvent,
12164        cell_area: *const gdk::GdkRectangle,
12165        flags: GtkCellRendererState,
12166    ) -> c_int;
12167    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
12168    pub fn gtk_cell_area_foreach(
12169        area: *mut GtkCellArea,
12170        callback: GtkCellCallback,
12171        callback_data: gpointer,
12172    );
12173    pub fn gtk_cell_area_foreach_alloc(
12174        area: *mut GtkCellArea,
12175        context: *mut GtkCellAreaContext,
12176        widget: *mut GtkWidget,
12177        cell_area: *const gdk::GdkRectangle,
12178        background_area: *const gdk::GdkRectangle,
12179        callback: GtkCellAllocCallback,
12180        callback_data: gpointer,
12181    );
12182    pub fn gtk_cell_area_get_cell_allocation(
12183        area: *mut GtkCellArea,
12184        context: *mut GtkCellAreaContext,
12185        widget: *mut GtkWidget,
12186        renderer: *mut GtkCellRenderer,
12187        cell_area: *const gdk::GdkRectangle,
12188        allocation: *mut gdk::GdkRectangle,
12189    );
12190    pub fn gtk_cell_area_get_cell_at_position(
12191        area: *mut GtkCellArea,
12192        context: *mut GtkCellAreaContext,
12193        widget: *mut GtkWidget,
12194        cell_area: *const gdk::GdkRectangle,
12195        x: c_int,
12196        y: c_int,
12197        alloc_area: *mut gdk::GdkRectangle,
12198    ) -> *mut GtkCellRenderer;
12199    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
12200    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
12201    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12202    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12203    pub fn gtk_cell_area_get_focus_from_sibling(
12204        area: *mut GtkCellArea,
12205        renderer: *mut GtkCellRenderer,
12206    ) -> *mut GtkCellRenderer;
12207    pub fn gtk_cell_area_get_focus_siblings(
12208        area: *mut GtkCellArea,
12209        renderer: *mut GtkCellRenderer,
12210    ) -> *const glib::GList;
12211    pub fn gtk_cell_area_get_preferred_height(
12212        area: *mut GtkCellArea,
12213        context: *mut GtkCellAreaContext,
12214        widget: *mut GtkWidget,
12215        minimum_height: *mut c_int,
12216        natural_height: *mut c_int,
12217    );
12218    pub fn gtk_cell_area_get_preferred_height_for_width(
12219        area: *mut GtkCellArea,
12220        context: *mut GtkCellAreaContext,
12221        widget: *mut GtkWidget,
12222        width: c_int,
12223        minimum_height: *mut c_int,
12224        natural_height: *mut c_int,
12225    );
12226    pub fn gtk_cell_area_get_preferred_width(
12227        area: *mut GtkCellArea,
12228        context: *mut GtkCellAreaContext,
12229        widget: *mut GtkWidget,
12230        minimum_width: *mut c_int,
12231        natural_width: *mut c_int,
12232    );
12233    pub fn gtk_cell_area_get_preferred_width_for_height(
12234        area: *mut GtkCellArea,
12235        context: *mut GtkCellAreaContext,
12236        widget: *mut GtkWidget,
12237        height: c_int,
12238        minimum_width: *mut c_int,
12239        natural_width: *mut c_int,
12240    );
12241    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
12242    pub fn gtk_cell_area_has_renderer(
12243        area: *mut GtkCellArea,
12244        renderer: *mut GtkCellRenderer,
12245    ) -> gboolean;
12246    pub fn gtk_cell_area_inner_cell_area(
12247        area: *mut GtkCellArea,
12248        widget: *mut GtkWidget,
12249        cell_area: *const gdk::GdkRectangle,
12250        inner_area: *mut gdk::GdkRectangle,
12251    );
12252    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
12253    pub fn gtk_cell_area_is_focus_sibling(
12254        area: *mut GtkCellArea,
12255        renderer: *mut GtkCellRenderer,
12256        sibling: *mut GtkCellRenderer,
12257    ) -> gboolean;
12258    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12259    pub fn gtk_cell_area_remove_focus_sibling(
12260        area: *mut GtkCellArea,
12261        renderer: *mut GtkCellRenderer,
12262        sibling: *mut GtkCellRenderer,
12263    );
12264    pub fn gtk_cell_area_request_renderer(
12265        area: *mut GtkCellArea,
12266        renderer: *mut GtkCellRenderer,
12267        orientation: GtkOrientation,
12268        widget: *mut GtkWidget,
12269        for_size: c_int,
12270        minimum_size: *mut c_int,
12271        natural_size: *mut c_int,
12272    );
12273    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12274    pub fn gtk_cell_area_snapshot(
12275        area: *mut GtkCellArea,
12276        context: *mut GtkCellAreaContext,
12277        widget: *mut GtkWidget,
12278        snapshot: *mut GtkSnapshot,
12279        background_area: *const gdk::GdkRectangle,
12280        cell_area: *const gdk::GdkRectangle,
12281        flags: GtkCellRendererState,
12282        paint_focus: gboolean,
12283    );
12284    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
12285
12286    //=========================================================================
12287    // GtkCellAreaBox
12288    //=========================================================================
12289    pub fn gtk_cell_area_box_get_type() -> GType;
12290    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
12291    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
12292    pub fn gtk_cell_area_box_pack_end(
12293        box_: *mut GtkCellAreaBox,
12294        renderer: *mut GtkCellRenderer,
12295        expand: gboolean,
12296        align: gboolean,
12297        fixed: gboolean,
12298    );
12299    pub fn gtk_cell_area_box_pack_start(
12300        box_: *mut GtkCellAreaBox,
12301        renderer: *mut GtkCellRenderer,
12302        expand: gboolean,
12303        align: gboolean,
12304        fixed: gboolean,
12305    );
12306    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
12307
12308    //=========================================================================
12309    // GtkCellAreaContext
12310    //=========================================================================
12311    pub fn gtk_cell_area_context_get_type() -> GType;
12312    pub fn gtk_cell_area_context_allocate(
12313        context: *mut GtkCellAreaContext,
12314        width: c_int,
12315        height: c_int,
12316    );
12317    pub fn gtk_cell_area_context_get_allocation(
12318        context: *mut GtkCellAreaContext,
12319        width: *mut c_int,
12320        height: *mut c_int,
12321    );
12322    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
12323    pub fn gtk_cell_area_context_get_preferred_height(
12324        context: *mut GtkCellAreaContext,
12325        minimum_height: *mut c_int,
12326        natural_height: *mut c_int,
12327    );
12328    pub fn gtk_cell_area_context_get_preferred_height_for_width(
12329        context: *mut GtkCellAreaContext,
12330        width: c_int,
12331        minimum_height: *mut c_int,
12332        natural_height: *mut c_int,
12333    );
12334    pub fn gtk_cell_area_context_get_preferred_width(
12335        context: *mut GtkCellAreaContext,
12336        minimum_width: *mut c_int,
12337        natural_width: *mut c_int,
12338    );
12339    pub fn gtk_cell_area_context_get_preferred_width_for_height(
12340        context: *mut GtkCellAreaContext,
12341        height: c_int,
12342        minimum_width: *mut c_int,
12343        natural_width: *mut c_int,
12344    );
12345    pub fn gtk_cell_area_context_push_preferred_height(
12346        context: *mut GtkCellAreaContext,
12347        minimum_height: c_int,
12348        natural_height: c_int,
12349    );
12350    pub fn gtk_cell_area_context_push_preferred_width(
12351        context: *mut GtkCellAreaContext,
12352        minimum_width: c_int,
12353        natural_width: c_int,
12354    );
12355    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
12356
12357    //=========================================================================
12358    // GtkCellRenderer
12359    //=========================================================================
12360    pub fn gtk_cell_renderer_get_type() -> GType;
12361    pub fn gtk_cell_renderer_activate(
12362        cell: *mut GtkCellRenderer,
12363        event: *mut gdk::GdkEvent,
12364        widget: *mut GtkWidget,
12365        path: *const c_char,
12366        background_area: *const gdk::GdkRectangle,
12367        cell_area: *const gdk::GdkRectangle,
12368        flags: GtkCellRendererState,
12369    ) -> gboolean;
12370    pub fn gtk_cell_renderer_get_aligned_area(
12371        cell: *mut GtkCellRenderer,
12372        widget: *mut GtkWidget,
12373        flags: GtkCellRendererState,
12374        cell_area: *const gdk::GdkRectangle,
12375        aligned_area: *mut gdk::GdkRectangle,
12376    );
12377    pub fn gtk_cell_renderer_get_alignment(
12378        cell: *mut GtkCellRenderer,
12379        xalign: *mut c_float,
12380        yalign: *mut c_float,
12381    );
12382    pub fn gtk_cell_renderer_get_fixed_size(
12383        cell: *mut GtkCellRenderer,
12384        width: *mut c_int,
12385        height: *mut c_int,
12386    );
12387    pub fn gtk_cell_renderer_get_is_expanded(cell: *mut GtkCellRenderer) -> gboolean;
12388    pub fn gtk_cell_renderer_get_is_expander(cell: *mut GtkCellRenderer) -> gboolean;
12389    pub fn gtk_cell_renderer_get_padding(
12390        cell: *mut GtkCellRenderer,
12391        xpad: *mut c_int,
12392        ypad: *mut c_int,
12393    );
12394    pub fn gtk_cell_renderer_get_preferred_height(
12395        cell: *mut GtkCellRenderer,
12396        widget: *mut GtkWidget,
12397        minimum_size: *mut c_int,
12398        natural_size: *mut c_int,
12399    );
12400    pub fn gtk_cell_renderer_get_preferred_height_for_width(
12401        cell: *mut GtkCellRenderer,
12402        widget: *mut GtkWidget,
12403        width: c_int,
12404        minimum_height: *mut c_int,
12405        natural_height: *mut c_int,
12406    );
12407    pub fn gtk_cell_renderer_get_preferred_size(
12408        cell: *mut GtkCellRenderer,
12409        widget: *mut GtkWidget,
12410        minimum_size: *mut GtkRequisition,
12411        natural_size: *mut GtkRequisition,
12412    );
12413    pub fn gtk_cell_renderer_get_preferred_width(
12414        cell: *mut GtkCellRenderer,
12415        widget: *mut GtkWidget,
12416        minimum_size: *mut c_int,
12417        natural_size: *mut c_int,
12418    );
12419    pub fn gtk_cell_renderer_get_preferred_width_for_height(
12420        cell: *mut GtkCellRenderer,
12421        widget: *mut GtkWidget,
12422        height: c_int,
12423        minimum_width: *mut c_int,
12424        natural_width: *mut c_int,
12425    );
12426    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
12427    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
12428    pub fn gtk_cell_renderer_get_state(
12429        cell: *mut GtkCellRenderer,
12430        widget: *mut GtkWidget,
12431        cell_state: GtkCellRendererState,
12432    ) -> GtkStateFlags;
12433    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
12434    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
12435    pub fn gtk_cell_renderer_set_alignment(
12436        cell: *mut GtkCellRenderer,
12437        xalign: c_float,
12438        yalign: c_float,
12439    );
12440    pub fn gtk_cell_renderer_set_fixed_size(
12441        cell: *mut GtkCellRenderer,
12442        width: c_int,
12443        height: c_int,
12444    );
12445    pub fn gtk_cell_renderer_set_is_expanded(cell: *mut GtkCellRenderer, is_expanded: gboolean);
12446    pub fn gtk_cell_renderer_set_is_expander(cell: *mut GtkCellRenderer, is_expander: gboolean);
12447    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
12448    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
12449    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
12450    pub fn gtk_cell_renderer_snapshot(
12451        cell: *mut GtkCellRenderer,
12452        snapshot: *mut GtkSnapshot,
12453        widget: *mut GtkWidget,
12454        background_area: *const gdk::GdkRectangle,
12455        cell_area: *const gdk::GdkRectangle,
12456        flags: GtkCellRendererState,
12457    );
12458    pub fn gtk_cell_renderer_start_editing(
12459        cell: *mut GtkCellRenderer,
12460        event: *mut gdk::GdkEvent,
12461        widget: *mut GtkWidget,
12462        path: *const c_char,
12463        background_area: *const gdk::GdkRectangle,
12464        cell_area: *const gdk::GdkRectangle,
12465        flags: GtkCellRendererState,
12466    ) -> *mut GtkCellEditable;
12467    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
12468
12469    //=========================================================================
12470    // GtkCellRendererAccel
12471    //=========================================================================
12472    pub fn gtk_cell_renderer_accel_get_type() -> GType;
12473    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
12474
12475    //=========================================================================
12476    // GtkCellRendererCombo
12477    //=========================================================================
12478    pub fn gtk_cell_renderer_combo_get_type() -> GType;
12479    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
12480
12481    //=========================================================================
12482    // GtkCellRendererPixbuf
12483    //=========================================================================
12484    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
12485    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
12486
12487    //=========================================================================
12488    // GtkCellRendererProgress
12489    //=========================================================================
12490    pub fn gtk_cell_renderer_progress_get_type() -> GType;
12491    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
12492
12493    //=========================================================================
12494    // GtkCellRendererSpin
12495    //=========================================================================
12496    pub fn gtk_cell_renderer_spin_get_type() -> GType;
12497    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
12498
12499    //=========================================================================
12500    // GtkCellRendererSpinner
12501    //=========================================================================
12502    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
12503    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
12504
12505    //=========================================================================
12506    // GtkCellRendererText
12507    //=========================================================================
12508    pub fn gtk_cell_renderer_text_get_type() -> GType;
12509    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
12510    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
12511        renderer: *mut GtkCellRendererText,
12512        number_of_rows: c_int,
12513    );
12514
12515    //=========================================================================
12516    // GtkCellRendererToggle
12517    //=========================================================================
12518    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
12519    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
12520    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
12521        -> gboolean;
12522    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
12523    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
12524    pub fn gtk_cell_renderer_toggle_set_activatable(
12525        toggle: *mut GtkCellRendererToggle,
12526        setting: gboolean,
12527    );
12528    pub fn gtk_cell_renderer_toggle_set_active(
12529        toggle: *mut GtkCellRendererToggle,
12530        setting: gboolean,
12531    );
12532    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
12533
12534    //=========================================================================
12535    // GtkCellView
12536    //=========================================================================
12537    pub fn gtk_cell_view_get_type() -> GType;
12538    pub fn gtk_cell_view_new() -> *mut GtkWidget;
12539    pub fn gtk_cell_view_new_with_context(
12540        area: *mut GtkCellArea,
12541        context: *mut GtkCellAreaContext,
12542    ) -> *mut GtkWidget;
12543    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
12544    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
12545    pub fn gtk_cell_view_new_with_texture(texture: *mut gdk::GdkTexture) -> *mut GtkWidget;
12546    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
12547    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
12548    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
12549    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
12550    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
12551    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
12552    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
12553    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
12554
12555    //=========================================================================
12556    // GtkCenterBox
12557    //=========================================================================
12558    pub fn gtk_center_box_get_type() -> GType;
12559    pub fn gtk_center_box_new() -> *mut GtkWidget;
12560    pub fn gtk_center_box_get_baseline_position(self_: *mut GtkCenterBox) -> GtkBaselinePosition;
12561    pub fn gtk_center_box_get_center_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12562    pub fn gtk_center_box_get_end_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12563    #[cfg(feature = "v4_12")]
12564    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12565    pub fn gtk_center_box_get_shrink_center_last(self_: *mut GtkCenterBox) -> gboolean;
12566    pub fn gtk_center_box_get_start_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12567    pub fn gtk_center_box_set_baseline_position(
12568        self_: *mut GtkCenterBox,
12569        position: GtkBaselinePosition,
12570    );
12571    pub fn gtk_center_box_set_center_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12572    pub fn gtk_center_box_set_end_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12573    #[cfg(feature = "v4_12")]
12574    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12575    pub fn gtk_center_box_set_shrink_center_last(
12576        self_: *mut GtkCenterBox,
12577        shrink_center_last: gboolean,
12578    );
12579    pub fn gtk_center_box_set_start_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12580
12581    //=========================================================================
12582    // GtkCenterLayout
12583    //=========================================================================
12584    pub fn gtk_center_layout_get_type() -> GType;
12585    pub fn gtk_center_layout_new() -> *mut GtkLayoutManager;
12586    pub fn gtk_center_layout_get_baseline_position(
12587        self_: *mut GtkCenterLayout,
12588    ) -> GtkBaselinePosition;
12589    pub fn gtk_center_layout_get_center_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12590    pub fn gtk_center_layout_get_end_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12591    pub fn gtk_center_layout_get_orientation(self_: *mut GtkCenterLayout) -> GtkOrientation;
12592    #[cfg(feature = "v4_12")]
12593    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12594    pub fn gtk_center_layout_get_shrink_center_last(self_: *mut GtkCenterLayout) -> gboolean;
12595    pub fn gtk_center_layout_get_start_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12596    pub fn gtk_center_layout_set_baseline_position(
12597        self_: *mut GtkCenterLayout,
12598        baseline_position: GtkBaselinePosition,
12599    );
12600    pub fn gtk_center_layout_set_center_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12601    pub fn gtk_center_layout_set_end_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12602    pub fn gtk_center_layout_set_orientation(
12603        self_: *mut GtkCenterLayout,
12604        orientation: GtkOrientation,
12605    );
12606    #[cfg(feature = "v4_12")]
12607    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12608    pub fn gtk_center_layout_set_shrink_center_last(
12609        self_: *mut GtkCenterLayout,
12610        shrink_center_last: gboolean,
12611    );
12612    pub fn gtk_center_layout_set_start_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12613
12614    //=========================================================================
12615    // GtkCheckButton
12616    //=========================================================================
12617    pub fn gtk_check_button_get_type() -> GType;
12618    pub fn gtk_check_button_new() -> *mut GtkWidget;
12619    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12620    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12621    pub fn gtk_check_button_get_active(self_: *mut GtkCheckButton) -> gboolean;
12622    #[cfg(feature = "v4_8")]
12623    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12624    pub fn gtk_check_button_get_child(button: *mut GtkCheckButton) -> *mut GtkWidget;
12625    pub fn gtk_check_button_get_inconsistent(check_button: *mut GtkCheckButton) -> gboolean;
12626    pub fn gtk_check_button_get_label(self_: *mut GtkCheckButton) -> *const c_char;
12627    pub fn gtk_check_button_get_use_underline(self_: *mut GtkCheckButton) -> gboolean;
12628    pub fn gtk_check_button_set_active(self_: *mut GtkCheckButton, setting: gboolean);
12629    #[cfg(feature = "v4_8")]
12630    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12631    pub fn gtk_check_button_set_child(button: *mut GtkCheckButton, child: *mut GtkWidget);
12632    pub fn gtk_check_button_set_group(self_: *mut GtkCheckButton, group: *mut GtkCheckButton);
12633    pub fn gtk_check_button_set_inconsistent(
12634        check_button: *mut GtkCheckButton,
12635        inconsistent: gboolean,
12636    );
12637    pub fn gtk_check_button_set_label(self_: *mut GtkCheckButton, label: *const c_char);
12638    pub fn gtk_check_button_set_use_underline(self_: *mut GtkCheckButton, setting: gboolean);
12639
12640    //=========================================================================
12641    // GtkClosureExpression
12642    //=========================================================================
12643    pub fn gtk_closure_expression_get_type() -> GType;
12644    pub fn gtk_closure_expression_new(
12645        value_type: GType,
12646        closure: *mut gobject::GClosure,
12647        n_params: c_uint,
12648        params: *mut *mut GtkExpression,
12649    ) -> *mut GtkClosureExpression;
12650
12651    //=========================================================================
12652    // GtkColorButton
12653    //=========================================================================
12654    pub fn gtk_color_button_get_type() -> GType;
12655    pub fn gtk_color_button_new() -> *mut GtkWidget;
12656    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
12657    pub fn gtk_color_button_get_modal(button: *mut GtkColorButton) -> gboolean;
12658    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
12659    pub fn gtk_color_button_set_modal(button: *mut GtkColorButton, modal: gboolean);
12660    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
12661
12662    //=========================================================================
12663    // GtkColorChooserDialog
12664    //=========================================================================
12665    pub fn gtk_color_chooser_dialog_get_type() -> GType;
12666    pub fn gtk_color_chooser_dialog_new(
12667        title: *const c_char,
12668        parent: *mut GtkWindow,
12669    ) -> *mut GtkWidget;
12670
12671    //=========================================================================
12672    // GtkColorChooserWidget
12673    //=========================================================================
12674    pub fn gtk_color_chooser_widget_get_type() -> GType;
12675    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
12676
12677    //=========================================================================
12678    // GtkColorDialog
12679    //=========================================================================
12680    #[cfg(feature = "v4_10")]
12681    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12682    pub fn gtk_color_dialog_get_type() -> GType;
12683    #[cfg(feature = "v4_10")]
12684    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12685    pub fn gtk_color_dialog_new() -> *mut GtkColorDialog;
12686    #[cfg(feature = "v4_10")]
12687    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12688    pub fn gtk_color_dialog_choose_rgba(
12689        self_: *mut GtkColorDialog,
12690        parent: *mut GtkWindow,
12691        initial_color: *const gdk::GdkRGBA,
12692        cancellable: *mut gio::GCancellable,
12693        callback: gio::GAsyncReadyCallback,
12694        user_data: gpointer,
12695    );
12696    #[cfg(feature = "v4_10")]
12697    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12698    pub fn gtk_color_dialog_choose_rgba_finish(
12699        self_: *mut GtkColorDialog,
12700        result: *mut gio::GAsyncResult,
12701        error: *mut *mut glib::GError,
12702    ) -> *mut gdk::GdkRGBA;
12703    #[cfg(feature = "v4_10")]
12704    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12705    pub fn gtk_color_dialog_get_modal(self_: *mut GtkColorDialog) -> gboolean;
12706    #[cfg(feature = "v4_10")]
12707    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12708    pub fn gtk_color_dialog_get_title(self_: *mut GtkColorDialog) -> *const c_char;
12709    #[cfg(feature = "v4_10")]
12710    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12711    pub fn gtk_color_dialog_get_with_alpha(self_: *mut GtkColorDialog) -> gboolean;
12712    #[cfg(feature = "v4_10")]
12713    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12714    pub fn gtk_color_dialog_set_modal(self_: *mut GtkColorDialog, modal: gboolean);
12715    #[cfg(feature = "v4_10")]
12716    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12717    pub fn gtk_color_dialog_set_title(self_: *mut GtkColorDialog, title: *const c_char);
12718    #[cfg(feature = "v4_10")]
12719    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12720    pub fn gtk_color_dialog_set_with_alpha(self_: *mut GtkColorDialog, with_alpha: gboolean);
12721
12722    //=========================================================================
12723    // GtkColorDialogButton
12724    //=========================================================================
12725    #[cfg(feature = "v4_10")]
12726    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12727    pub fn gtk_color_dialog_button_get_type() -> GType;
12728    #[cfg(feature = "v4_10")]
12729    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12730    pub fn gtk_color_dialog_button_new(dialog: *mut GtkColorDialog) -> *mut GtkWidget;
12731    #[cfg(feature = "v4_10")]
12732    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12733    pub fn gtk_color_dialog_button_get_dialog(
12734        self_: *mut GtkColorDialogButton,
12735    ) -> *mut GtkColorDialog;
12736    #[cfg(feature = "v4_10")]
12737    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12738    pub fn gtk_color_dialog_button_get_rgba(
12739        self_: *mut GtkColorDialogButton,
12740    ) -> *const gdk::GdkRGBA;
12741    #[cfg(feature = "v4_10")]
12742    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12743    pub fn gtk_color_dialog_button_set_dialog(
12744        self_: *mut GtkColorDialogButton,
12745        dialog: *mut GtkColorDialog,
12746    );
12747    #[cfg(feature = "v4_10")]
12748    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12749    pub fn gtk_color_dialog_button_set_rgba(
12750        self_: *mut GtkColorDialogButton,
12751        color: *const gdk::GdkRGBA,
12752    );
12753
12754    //=========================================================================
12755    // GtkColumnView
12756    //=========================================================================
12757    pub fn gtk_column_view_get_type() -> GType;
12758    pub fn gtk_column_view_new(model: *mut GtkSelectionModel) -> *mut GtkWidget;
12759    pub fn gtk_column_view_append_column(
12760        self_: *mut GtkColumnView,
12761        column: *mut GtkColumnViewColumn,
12762    );
12763    pub fn gtk_column_view_get_columns(self_: *mut GtkColumnView) -> *mut gio::GListModel;
12764    pub fn gtk_column_view_get_enable_rubberband(self_: *mut GtkColumnView) -> gboolean;
12765    #[cfg(feature = "v4_12")]
12766    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12767    pub fn gtk_column_view_get_header_factory(self_: *mut GtkColumnView)
12768        -> *mut GtkListItemFactory;
12769    pub fn gtk_column_view_get_model(self_: *mut GtkColumnView) -> *mut GtkSelectionModel;
12770    pub fn gtk_column_view_get_reorderable(self_: *mut GtkColumnView) -> gboolean;
12771    #[cfg(feature = "v4_12")]
12772    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12773    pub fn gtk_column_view_get_row_factory(self_: *mut GtkColumnView) -> *mut GtkListItemFactory;
12774    pub fn gtk_column_view_get_show_column_separators(self_: *mut GtkColumnView) -> gboolean;
12775    pub fn gtk_column_view_get_show_row_separators(self_: *mut GtkColumnView) -> gboolean;
12776    pub fn gtk_column_view_get_single_click_activate(self_: *mut GtkColumnView) -> gboolean;
12777    pub fn gtk_column_view_get_sorter(self_: *mut GtkColumnView) -> *mut GtkSorter;
12778    #[cfg(feature = "v4_12")]
12779    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12780    pub fn gtk_column_view_get_tab_behavior(self_: *mut GtkColumnView) -> GtkListTabBehavior;
12781    pub fn gtk_column_view_insert_column(
12782        self_: *mut GtkColumnView,
12783        position: c_uint,
12784        column: *mut GtkColumnViewColumn,
12785    );
12786    pub fn gtk_column_view_remove_column(
12787        self_: *mut GtkColumnView,
12788        column: *mut GtkColumnViewColumn,
12789    );
12790    #[cfg(feature = "v4_12")]
12791    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12792    pub fn gtk_column_view_scroll_to(
12793        self_: *mut GtkColumnView,
12794        pos: c_uint,
12795        column: *mut GtkColumnViewColumn,
12796        flags: GtkListScrollFlags,
12797        scroll: *mut GtkScrollInfo,
12798    );
12799    pub fn gtk_column_view_set_enable_rubberband(
12800        self_: *mut GtkColumnView,
12801        enable_rubberband: gboolean,
12802    );
12803    #[cfg(feature = "v4_12")]
12804    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12805    pub fn gtk_column_view_set_header_factory(
12806        self_: *mut GtkColumnView,
12807        factory: *mut GtkListItemFactory,
12808    );
12809    pub fn gtk_column_view_set_model(self_: *mut GtkColumnView, model: *mut GtkSelectionModel);
12810    pub fn gtk_column_view_set_reorderable(self_: *mut GtkColumnView, reorderable: gboolean);
12811    #[cfg(feature = "v4_12")]
12812    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12813    pub fn gtk_column_view_set_row_factory(
12814        self_: *mut GtkColumnView,
12815        factory: *mut GtkListItemFactory,
12816    );
12817    pub fn gtk_column_view_set_show_column_separators(
12818        self_: *mut GtkColumnView,
12819        show_column_separators: gboolean,
12820    );
12821    pub fn gtk_column_view_set_show_row_separators(
12822        self_: *mut GtkColumnView,
12823        show_row_separators: gboolean,
12824    );
12825    pub fn gtk_column_view_set_single_click_activate(
12826        self_: *mut GtkColumnView,
12827        single_click_activate: gboolean,
12828    );
12829    #[cfg(feature = "v4_12")]
12830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12831    pub fn gtk_column_view_set_tab_behavior(
12832        self_: *mut GtkColumnView,
12833        tab_behavior: GtkListTabBehavior,
12834    );
12835    pub fn gtk_column_view_sort_by_column(
12836        self_: *mut GtkColumnView,
12837        column: *mut GtkColumnViewColumn,
12838        direction: GtkSortType,
12839    );
12840
12841    //=========================================================================
12842    // GtkColumnViewCell
12843    //=========================================================================
12844    #[cfg(feature = "v4_12")]
12845    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12846    pub fn gtk_column_view_cell_get_type() -> GType;
12847    #[cfg(feature = "v4_12")]
12848    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12849    pub fn gtk_column_view_cell_get_child(self_: *mut GtkColumnViewCell) -> *mut GtkWidget;
12850    #[cfg(feature = "v4_12")]
12851    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12852    pub fn gtk_column_view_cell_get_focusable(self_: *mut GtkColumnViewCell) -> gboolean;
12853    #[cfg(feature = "v4_12")]
12854    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12855    pub fn gtk_column_view_cell_get_item(self_: *mut GtkColumnViewCell) -> *mut gobject::GObject;
12856    #[cfg(feature = "v4_12")]
12857    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12858    pub fn gtk_column_view_cell_get_position(self_: *mut GtkColumnViewCell) -> c_uint;
12859    #[cfg(feature = "v4_12")]
12860    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12861    pub fn gtk_column_view_cell_get_selected(self_: *mut GtkColumnViewCell) -> gboolean;
12862    #[cfg(feature = "v4_12")]
12863    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12864    pub fn gtk_column_view_cell_set_child(self_: *mut GtkColumnViewCell, child: *mut GtkWidget);
12865    #[cfg(feature = "v4_12")]
12866    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12867    pub fn gtk_column_view_cell_set_focusable(self_: *mut GtkColumnViewCell, focusable: gboolean);
12868
12869    //=========================================================================
12870    // GtkColumnViewColumn
12871    //=========================================================================
12872    pub fn gtk_column_view_column_get_type() -> GType;
12873    pub fn gtk_column_view_column_new(
12874        title: *const c_char,
12875        factory: *mut GtkListItemFactory,
12876    ) -> *mut GtkColumnViewColumn;
12877    pub fn gtk_column_view_column_get_column_view(
12878        self_: *mut GtkColumnViewColumn,
12879    ) -> *mut GtkColumnView;
12880    pub fn gtk_column_view_column_get_expand(self_: *mut GtkColumnViewColumn) -> gboolean;
12881    pub fn gtk_column_view_column_get_factory(
12882        self_: *mut GtkColumnViewColumn,
12883    ) -> *mut GtkListItemFactory;
12884    pub fn gtk_column_view_column_get_fixed_width(self_: *mut GtkColumnViewColumn) -> c_int;
12885    pub fn gtk_column_view_column_get_header_menu(
12886        self_: *mut GtkColumnViewColumn,
12887    ) -> *mut gio::GMenuModel;
12888    #[cfg(feature = "v4_10")]
12889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12890    pub fn gtk_column_view_column_get_id(self_: *mut GtkColumnViewColumn) -> *const c_char;
12891    pub fn gtk_column_view_column_get_resizable(self_: *mut GtkColumnViewColumn) -> gboolean;
12892    pub fn gtk_column_view_column_get_sorter(self_: *mut GtkColumnViewColumn) -> *mut GtkSorter;
12893    pub fn gtk_column_view_column_get_title(self_: *mut GtkColumnViewColumn) -> *const c_char;
12894    pub fn gtk_column_view_column_get_visible(self_: *mut GtkColumnViewColumn) -> gboolean;
12895    pub fn gtk_column_view_column_set_expand(self_: *mut GtkColumnViewColumn, expand: gboolean);
12896    pub fn gtk_column_view_column_set_factory(
12897        self_: *mut GtkColumnViewColumn,
12898        factory: *mut GtkListItemFactory,
12899    );
12900    pub fn gtk_column_view_column_set_fixed_width(
12901        self_: *mut GtkColumnViewColumn,
12902        fixed_width: c_int,
12903    );
12904    pub fn gtk_column_view_column_set_header_menu(
12905        self_: *mut GtkColumnViewColumn,
12906        menu: *mut gio::GMenuModel,
12907    );
12908    #[cfg(feature = "v4_10")]
12909    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12910    pub fn gtk_column_view_column_set_id(self_: *mut GtkColumnViewColumn, id: *const c_char);
12911    pub fn gtk_column_view_column_set_resizable(
12912        self_: *mut GtkColumnViewColumn,
12913        resizable: gboolean,
12914    );
12915    pub fn gtk_column_view_column_set_sorter(
12916        self_: *mut GtkColumnViewColumn,
12917        sorter: *mut GtkSorter,
12918    );
12919    pub fn gtk_column_view_column_set_title(self_: *mut GtkColumnViewColumn, title: *const c_char);
12920    pub fn gtk_column_view_column_set_visible(self_: *mut GtkColumnViewColumn, visible: gboolean);
12921
12922    //=========================================================================
12923    // GtkColumnViewRow
12924    //=========================================================================
12925    #[cfg(feature = "v4_12")]
12926    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12927    pub fn gtk_column_view_row_get_type() -> GType;
12928    #[cfg(feature = "v4_12")]
12929    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12930    pub fn gtk_column_view_row_get_accessible_description(
12931        self_: *mut GtkColumnViewRow,
12932    ) -> *const c_char;
12933    #[cfg(feature = "v4_12")]
12934    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12935    pub fn gtk_column_view_row_get_accessible_label(self_: *mut GtkColumnViewRow) -> *const c_char;
12936    #[cfg(feature = "v4_12")]
12937    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12938    pub fn gtk_column_view_row_get_activatable(self_: *mut GtkColumnViewRow) -> gboolean;
12939    #[cfg(feature = "v4_12")]
12940    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12941    pub fn gtk_column_view_row_get_focusable(self_: *mut GtkColumnViewRow) -> gboolean;
12942    #[cfg(feature = "v4_12")]
12943    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12944    pub fn gtk_column_view_row_get_item(self_: *mut GtkColumnViewRow) -> *mut gobject::GObject;
12945    #[cfg(feature = "v4_12")]
12946    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12947    pub fn gtk_column_view_row_get_position(self_: *mut GtkColumnViewRow) -> c_uint;
12948    #[cfg(feature = "v4_12")]
12949    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12950    pub fn gtk_column_view_row_get_selectable(self_: *mut GtkColumnViewRow) -> gboolean;
12951    #[cfg(feature = "v4_12")]
12952    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12953    pub fn gtk_column_view_row_get_selected(self_: *mut GtkColumnViewRow) -> gboolean;
12954    #[cfg(feature = "v4_12")]
12955    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12956    pub fn gtk_column_view_row_set_accessible_description(
12957        self_: *mut GtkColumnViewRow,
12958        description: *const c_char,
12959    );
12960    #[cfg(feature = "v4_12")]
12961    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12962    pub fn gtk_column_view_row_set_accessible_label(
12963        self_: *mut GtkColumnViewRow,
12964        label: *const c_char,
12965    );
12966    #[cfg(feature = "v4_12")]
12967    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12968    pub fn gtk_column_view_row_set_activatable(self_: *mut GtkColumnViewRow, activatable: gboolean);
12969    #[cfg(feature = "v4_12")]
12970    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12971    pub fn gtk_column_view_row_set_focusable(self_: *mut GtkColumnViewRow, focusable: gboolean);
12972    #[cfg(feature = "v4_12")]
12973    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12974    pub fn gtk_column_view_row_set_selectable(self_: *mut GtkColumnViewRow, selectable: gboolean);
12975
12976    //=========================================================================
12977    // GtkColumnViewSorter
12978    //=========================================================================
12979    #[cfg(feature = "v4_10")]
12980    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12981    pub fn gtk_column_view_sorter_get_type() -> GType;
12982    #[cfg(feature = "v4_10")]
12983    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12984    pub fn gtk_column_view_sorter_get_n_sort_columns(self_: *mut GtkColumnViewSorter) -> c_uint;
12985    #[cfg(feature = "v4_10")]
12986    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12987    pub fn gtk_column_view_sorter_get_nth_sort_column(
12988        self_: *mut GtkColumnViewSorter,
12989        position: c_uint,
12990        sort_order: *mut GtkSortType,
12991    ) -> *mut GtkColumnViewColumn;
12992    #[cfg(feature = "v4_10")]
12993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12994    pub fn gtk_column_view_sorter_get_primary_sort_column(
12995        self_: *mut GtkColumnViewSorter,
12996    ) -> *mut GtkColumnViewColumn;
12997    #[cfg(feature = "v4_10")]
12998    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
12999    pub fn gtk_column_view_sorter_get_primary_sort_order(
13000        self_: *mut GtkColumnViewSorter,
13001    ) -> GtkSortType;
13002
13003    //=========================================================================
13004    // GtkComboBox
13005    //=========================================================================
13006    pub fn gtk_combo_box_get_type() -> GType;
13007    pub fn gtk_combo_box_new() -> *mut GtkWidget;
13008    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
13009    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
13010    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
13011    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
13012    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
13013    pub fn gtk_combo_box_get_active_iter(
13014        combo_box: *mut GtkComboBox,
13015        iter: *mut GtkTreeIter,
13016    ) -> gboolean;
13017    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
13018    pub fn gtk_combo_box_get_child(combo_box: *mut GtkComboBox) -> *mut GtkWidget;
13019    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
13020    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
13021    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
13022    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
13023    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
13024    pub fn gtk_combo_box_get_row_separator_func(
13025        combo_box: *mut GtkComboBox,
13026    ) -> GtkTreeViewRowSeparatorFunc;
13027    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
13028    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
13029    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
13030    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
13031    pub fn gtk_combo_box_set_active_id(
13032        combo_box: *mut GtkComboBox,
13033        active_id: *const c_char,
13034    ) -> gboolean;
13035    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
13036    pub fn gtk_combo_box_set_button_sensitivity(
13037        combo_box: *mut GtkComboBox,
13038        sensitivity: GtkSensitivityType,
13039    );
13040    pub fn gtk_combo_box_set_child(combo_box: *mut GtkComboBox, child: *mut GtkWidget);
13041    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
13042    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
13043    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
13044    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
13045    pub fn gtk_combo_box_set_row_separator_func(
13046        combo_box: *mut GtkComboBox,
13047        func: GtkTreeViewRowSeparatorFunc,
13048        data: gpointer,
13049        destroy: glib::GDestroyNotify,
13050    );
13051
13052    //=========================================================================
13053    // GtkComboBoxText
13054    //=========================================================================
13055    pub fn gtk_combo_box_text_get_type() -> GType;
13056    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
13057    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
13058    pub fn gtk_combo_box_text_append(
13059        combo_box: *mut GtkComboBoxText,
13060        id: *const c_char,
13061        text: *const c_char,
13062    );
13063    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13064    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
13065    pub fn gtk_combo_box_text_insert(
13066        combo_box: *mut GtkComboBoxText,
13067        position: c_int,
13068        id: *const c_char,
13069        text: *const c_char,
13070    );
13071    pub fn gtk_combo_box_text_insert_text(
13072        combo_box: *mut GtkComboBoxText,
13073        position: c_int,
13074        text: *const c_char,
13075    );
13076    pub fn gtk_combo_box_text_prepend(
13077        combo_box: *mut GtkComboBoxText,
13078        id: *const c_char,
13079        text: *const c_char,
13080    );
13081    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13082    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
13083    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
13084
13085    //=========================================================================
13086    // GtkConstantExpression
13087    //=========================================================================
13088    pub fn gtk_constant_expression_get_type() -> GType;
13089    pub fn gtk_constant_expression_new(value_type: GType, ...) -> *mut GtkConstantExpression;
13090    pub fn gtk_constant_expression_new_for_value(
13091        value: *const gobject::GValue,
13092    ) -> *mut GtkConstantExpression;
13093    pub fn gtk_constant_expression_get_value(
13094        expression: *mut GtkConstantExpression,
13095    ) -> *const gobject::GValue;
13096
13097    //=========================================================================
13098    // GtkConstraint
13099    //=========================================================================
13100    pub fn gtk_constraint_get_type() -> GType;
13101    pub fn gtk_constraint_new(
13102        target: *mut GtkConstraintTarget,
13103        target_attribute: GtkConstraintAttribute,
13104        relation: GtkConstraintRelation,
13105        source: *mut GtkConstraintTarget,
13106        source_attribute: GtkConstraintAttribute,
13107        multiplier: c_double,
13108        constant: c_double,
13109        strength: c_int,
13110    ) -> *mut GtkConstraint;
13111    pub fn gtk_constraint_new_constant(
13112        target: *mut GtkConstraintTarget,
13113        target_attribute: GtkConstraintAttribute,
13114        relation: GtkConstraintRelation,
13115        constant: c_double,
13116        strength: c_int,
13117    ) -> *mut GtkConstraint;
13118    pub fn gtk_constraint_get_constant(constraint: *mut GtkConstraint) -> c_double;
13119    pub fn gtk_constraint_get_multiplier(constraint: *mut GtkConstraint) -> c_double;
13120    pub fn gtk_constraint_get_relation(constraint: *mut GtkConstraint) -> GtkConstraintRelation;
13121    pub fn gtk_constraint_get_source(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13122    pub fn gtk_constraint_get_source_attribute(
13123        constraint: *mut GtkConstraint,
13124    ) -> GtkConstraintAttribute;
13125    pub fn gtk_constraint_get_strength(constraint: *mut GtkConstraint) -> c_int;
13126    pub fn gtk_constraint_get_target(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13127    pub fn gtk_constraint_get_target_attribute(
13128        constraint: *mut GtkConstraint,
13129    ) -> GtkConstraintAttribute;
13130    pub fn gtk_constraint_is_attached(constraint: *mut GtkConstraint) -> gboolean;
13131    pub fn gtk_constraint_is_constant(constraint: *mut GtkConstraint) -> gboolean;
13132    pub fn gtk_constraint_is_required(constraint: *mut GtkConstraint) -> gboolean;
13133
13134    //=========================================================================
13135    // GtkConstraintGuide
13136    //=========================================================================
13137    pub fn gtk_constraint_guide_get_type() -> GType;
13138    pub fn gtk_constraint_guide_new() -> *mut GtkConstraintGuide;
13139    pub fn gtk_constraint_guide_get_max_size(
13140        guide: *mut GtkConstraintGuide,
13141        width: *mut c_int,
13142        height: *mut c_int,
13143    );
13144    pub fn gtk_constraint_guide_get_min_size(
13145        guide: *mut GtkConstraintGuide,
13146        width: *mut c_int,
13147        height: *mut c_int,
13148    );
13149    pub fn gtk_constraint_guide_get_name(guide: *mut GtkConstraintGuide) -> *const c_char;
13150    pub fn gtk_constraint_guide_get_nat_size(
13151        guide: *mut GtkConstraintGuide,
13152        width: *mut c_int,
13153        height: *mut c_int,
13154    );
13155    pub fn gtk_constraint_guide_get_strength(
13156        guide: *mut GtkConstraintGuide,
13157    ) -> GtkConstraintStrength;
13158    pub fn gtk_constraint_guide_set_max_size(
13159        guide: *mut GtkConstraintGuide,
13160        width: c_int,
13161        height: c_int,
13162    );
13163    pub fn gtk_constraint_guide_set_min_size(
13164        guide: *mut GtkConstraintGuide,
13165        width: c_int,
13166        height: c_int,
13167    );
13168    pub fn gtk_constraint_guide_set_name(guide: *mut GtkConstraintGuide, name: *const c_char);
13169    pub fn gtk_constraint_guide_set_nat_size(
13170        guide: *mut GtkConstraintGuide,
13171        width: c_int,
13172        height: c_int,
13173    );
13174    pub fn gtk_constraint_guide_set_strength(
13175        guide: *mut GtkConstraintGuide,
13176        strength: GtkConstraintStrength,
13177    );
13178
13179    //=========================================================================
13180    // GtkConstraintLayout
13181    //=========================================================================
13182    pub fn gtk_constraint_layout_get_type() -> GType;
13183    pub fn gtk_constraint_layout_new() -> *mut GtkLayoutManager;
13184    pub fn gtk_constraint_layout_add_constraint(
13185        layout: *mut GtkConstraintLayout,
13186        constraint: *mut GtkConstraint,
13187    );
13188    pub fn gtk_constraint_layout_add_constraints_from_description(
13189        layout: *mut GtkConstraintLayout,
13190        lines: *const *const c_char,
13191        n_lines: size_t,
13192        hspacing: c_int,
13193        vspacing: c_int,
13194        error: *mut *mut glib::GError,
13195        first_view: *const c_char,
13196        ...
13197    ) -> *mut glib::GList;
13198    pub fn gtk_constraint_layout_add_constraints_from_descriptionv(
13199        layout: *mut GtkConstraintLayout,
13200        lines: *const *const c_char,
13201        n_lines: size_t,
13202        hspacing: c_int,
13203        vspacing: c_int,
13204        views: *mut glib::GHashTable,
13205        error: *mut *mut glib::GError,
13206    ) -> *mut glib::GList;
13207    pub fn gtk_constraint_layout_add_guide(
13208        layout: *mut GtkConstraintLayout,
13209        guide: *mut GtkConstraintGuide,
13210    );
13211    pub fn gtk_constraint_layout_observe_constraints(
13212        layout: *mut GtkConstraintLayout,
13213    ) -> *mut gio::GListModel;
13214    pub fn gtk_constraint_layout_observe_guides(
13215        layout: *mut GtkConstraintLayout,
13216    ) -> *mut gio::GListModel;
13217    pub fn gtk_constraint_layout_remove_all_constraints(layout: *mut GtkConstraintLayout);
13218    pub fn gtk_constraint_layout_remove_constraint(
13219        layout: *mut GtkConstraintLayout,
13220        constraint: *mut GtkConstraint,
13221    );
13222    pub fn gtk_constraint_layout_remove_guide(
13223        layout: *mut GtkConstraintLayout,
13224        guide: *mut GtkConstraintGuide,
13225    );
13226
13227    //=========================================================================
13228    // GtkConstraintLayoutChild
13229    //=========================================================================
13230    pub fn gtk_constraint_layout_child_get_type() -> GType;
13231
13232    //=========================================================================
13233    // GtkCssProvider
13234    //=========================================================================
13235    pub fn gtk_css_provider_get_type() -> GType;
13236    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
13237    #[cfg(feature = "v4_12")]
13238    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13239    pub fn gtk_css_provider_load_from_bytes(
13240        css_provider: *mut GtkCssProvider,
13241        data: *mut glib::GBytes,
13242    );
13243    pub fn gtk_css_provider_load_from_data(
13244        css_provider: *mut GtkCssProvider,
13245        data: *const c_char,
13246        length: ssize_t,
13247    );
13248    pub fn gtk_css_provider_load_from_file(
13249        css_provider: *mut GtkCssProvider,
13250        file: *mut gio::GFile,
13251    );
13252    pub fn gtk_css_provider_load_from_path(css_provider: *mut GtkCssProvider, path: *const c_char);
13253    pub fn gtk_css_provider_load_from_resource(
13254        css_provider: *mut GtkCssProvider,
13255        resource_path: *const c_char,
13256    );
13257    #[cfg(feature = "v4_12")]
13258    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13259    pub fn gtk_css_provider_load_from_string(
13260        css_provider: *mut GtkCssProvider,
13261        string: *const c_char,
13262    );
13263    pub fn gtk_css_provider_load_named(
13264        provider: *mut GtkCssProvider,
13265        name: *const c_char,
13266        variant: *const c_char,
13267    );
13268    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
13269
13270    //=========================================================================
13271    // GtkCustomFilter
13272    //=========================================================================
13273    pub fn gtk_custom_filter_get_type() -> GType;
13274    pub fn gtk_custom_filter_new(
13275        match_func: GtkCustomFilterFunc,
13276        user_data: gpointer,
13277        user_destroy: glib::GDestroyNotify,
13278    ) -> *mut GtkCustomFilter;
13279    pub fn gtk_custom_filter_set_filter_func(
13280        self_: *mut GtkCustomFilter,
13281        match_func: GtkCustomFilterFunc,
13282        user_data: gpointer,
13283        user_destroy: glib::GDestroyNotify,
13284    );
13285
13286    //=========================================================================
13287    // GtkCustomLayout
13288    //=========================================================================
13289    pub fn gtk_custom_layout_get_type() -> GType;
13290    pub fn gtk_custom_layout_new(
13291        request_mode: GtkCustomRequestModeFunc,
13292        measure: GtkCustomMeasureFunc,
13293        allocate: GtkCustomAllocateFunc,
13294    ) -> *mut GtkLayoutManager;
13295
13296    //=========================================================================
13297    // GtkCustomSorter
13298    //=========================================================================
13299    pub fn gtk_custom_sorter_get_type() -> GType;
13300    pub fn gtk_custom_sorter_new(
13301        sort_func: glib::GCompareDataFunc,
13302        user_data: gpointer,
13303        user_destroy: glib::GDestroyNotify,
13304    ) -> *mut GtkCustomSorter;
13305    pub fn gtk_custom_sorter_set_sort_func(
13306        self_: *mut GtkCustomSorter,
13307        sort_func: glib::GCompareDataFunc,
13308        user_data: gpointer,
13309        user_destroy: glib::GDestroyNotify,
13310    );
13311
13312    //=========================================================================
13313    // GtkDialog
13314    //=========================================================================
13315    pub fn gtk_dialog_get_type() -> GType;
13316    pub fn gtk_dialog_new() -> *mut GtkWidget;
13317    pub fn gtk_dialog_new_with_buttons(
13318        title: *const c_char,
13319        parent: *mut GtkWindow,
13320        flags: GtkDialogFlags,
13321        first_button_text: *const c_char,
13322        ...
13323    ) -> *mut GtkWidget;
13324    pub fn gtk_dialog_add_action_widget(
13325        dialog: *mut GtkDialog,
13326        child: *mut GtkWidget,
13327        response_id: GtkResponseType,
13328    );
13329    pub fn gtk_dialog_add_button(
13330        dialog: *mut GtkDialog,
13331        button_text: *const c_char,
13332        response_id: GtkResponseType,
13333    ) -> *mut GtkWidget;
13334    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
13335    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
13336    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
13337    pub fn gtk_dialog_get_response_for_widget(
13338        dialog: *mut GtkDialog,
13339        widget: *mut GtkWidget,
13340    ) -> c_int;
13341    pub fn gtk_dialog_get_widget_for_response(
13342        dialog: *mut GtkDialog,
13343        response_id: GtkResponseType,
13344    ) -> *mut GtkWidget;
13345    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13346    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13347    pub fn gtk_dialog_set_response_sensitive(
13348        dialog: *mut GtkDialog,
13349        response_id: GtkResponseType,
13350        setting: gboolean,
13351    );
13352
13353    //=========================================================================
13354    // GtkDirectoryList
13355    //=========================================================================
13356    pub fn gtk_directory_list_get_type() -> GType;
13357    pub fn gtk_directory_list_new(
13358        attributes: *const c_char,
13359        file: *mut gio::GFile,
13360    ) -> *mut GtkDirectoryList;
13361    pub fn gtk_directory_list_get_attributes(self_: *mut GtkDirectoryList) -> *const c_char;
13362    pub fn gtk_directory_list_get_error(self_: *mut GtkDirectoryList) -> *const glib::GError;
13363    pub fn gtk_directory_list_get_file(self_: *mut GtkDirectoryList) -> *mut gio::GFile;
13364    pub fn gtk_directory_list_get_io_priority(self_: *mut GtkDirectoryList) -> c_int;
13365    pub fn gtk_directory_list_get_monitored(self_: *mut GtkDirectoryList) -> gboolean;
13366    pub fn gtk_directory_list_is_loading(self_: *mut GtkDirectoryList) -> gboolean;
13367    pub fn gtk_directory_list_set_attributes(
13368        self_: *mut GtkDirectoryList,
13369        attributes: *const c_char,
13370    );
13371    pub fn gtk_directory_list_set_file(self_: *mut GtkDirectoryList, file: *mut gio::GFile);
13372    pub fn gtk_directory_list_set_io_priority(self_: *mut GtkDirectoryList, io_priority: c_int);
13373    pub fn gtk_directory_list_set_monitored(self_: *mut GtkDirectoryList, monitored: gboolean);
13374
13375    //=========================================================================
13376    // GtkDragIcon
13377    //=========================================================================
13378    pub fn gtk_drag_icon_get_type() -> GType;
13379    pub fn gtk_drag_icon_get_for_drag(drag: *mut gdk::GdkDrag) -> *mut GtkWidget;
13380    pub fn gtk_drag_icon_create_widget_for_value(value: *const gobject::GValue) -> *mut GtkWidget;
13381    pub fn gtk_drag_icon_set_from_paintable(
13382        drag: *mut gdk::GdkDrag,
13383        paintable: *mut gdk::GdkPaintable,
13384        hot_x: c_int,
13385        hot_y: c_int,
13386    );
13387    pub fn gtk_drag_icon_get_child(self_: *mut GtkDragIcon) -> *mut GtkWidget;
13388    pub fn gtk_drag_icon_set_child(self_: *mut GtkDragIcon, child: *mut GtkWidget);
13389
13390    //=========================================================================
13391    // GtkDragSource
13392    //=========================================================================
13393    pub fn gtk_drag_source_get_type() -> GType;
13394    pub fn gtk_drag_source_new() -> *mut GtkDragSource;
13395    pub fn gtk_drag_source_drag_cancel(source: *mut GtkDragSource);
13396    pub fn gtk_drag_source_get_actions(source: *mut GtkDragSource) -> gdk::GdkDragAction;
13397    pub fn gtk_drag_source_get_content(source: *mut GtkDragSource) -> *mut gdk::GdkContentProvider;
13398    pub fn gtk_drag_source_get_drag(source: *mut GtkDragSource) -> *mut gdk::GdkDrag;
13399    pub fn gtk_drag_source_set_actions(source: *mut GtkDragSource, actions: gdk::GdkDragAction);
13400    pub fn gtk_drag_source_set_content(
13401        source: *mut GtkDragSource,
13402        content: *mut gdk::GdkContentProvider,
13403    );
13404    pub fn gtk_drag_source_set_icon(
13405        source: *mut GtkDragSource,
13406        paintable: *mut gdk::GdkPaintable,
13407        hot_x: c_int,
13408        hot_y: c_int,
13409    );
13410
13411    //=========================================================================
13412    // GtkDrawingArea
13413    //=========================================================================
13414    pub fn gtk_drawing_area_get_type() -> GType;
13415    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
13416    pub fn gtk_drawing_area_get_content_height(self_: *mut GtkDrawingArea) -> c_int;
13417    pub fn gtk_drawing_area_get_content_width(self_: *mut GtkDrawingArea) -> c_int;
13418    pub fn gtk_drawing_area_set_content_height(self_: *mut GtkDrawingArea, height: c_int);
13419    pub fn gtk_drawing_area_set_content_width(self_: *mut GtkDrawingArea, width: c_int);
13420    pub fn gtk_drawing_area_set_draw_func(
13421        self_: *mut GtkDrawingArea,
13422        draw_func: GtkDrawingAreaDrawFunc,
13423        user_data: gpointer,
13424        destroy: glib::GDestroyNotify,
13425    );
13426
13427    //=========================================================================
13428    // GtkDropControllerMotion
13429    //=========================================================================
13430    pub fn gtk_drop_controller_motion_get_type() -> GType;
13431    pub fn gtk_drop_controller_motion_new() -> *mut GtkEventController;
13432    pub fn gtk_drop_controller_motion_contains_pointer(
13433        self_: *mut GtkDropControllerMotion,
13434    ) -> gboolean;
13435    pub fn gtk_drop_controller_motion_get_drop(
13436        self_: *mut GtkDropControllerMotion,
13437    ) -> *mut gdk::GdkDrop;
13438    pub fn gtk_drop_controller_motion_is_pointer(self_: *mut GtkDropControllerMotion) -> gboolean;
13439
13440    //=========================================================================
13441    // GtkDropDown
13442    //=========================================================================
13443    pub fn gtk_drop_down_get_type() -> GType;
13444    pub fn gtk_drop_down_new(
13445        model: *mut gio::GListModel,
13446        expression: *mut GtkExpression,
13447    ) -> *mut GtkWidget;
13448    pub fn gtk_drop_down_new_from_strings(strings: *const *const c_char) -> *mut GtkWidget;
13449    pub fn gtk_drop_down_get_enable_search(self_: *mut GtkDropDown) -> gboolean;
13450    pub fn gtk_drop_down_get_expression(self_: *mut GtkDropDown) -> *mut GtkExpression;
13451    pub fn gtk_drop_down_get_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13452    #[cfg(feature = "v4_12")]
13453    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13454    pub fn gtk_drop_down_get_header_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13455    pub fn gtk_drop_down_get_list_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13456    pub fn gtk_drop_down_get_model(self_: *mut GtkDropDown) -> *mut gio::GListModel;
13457    #[cfg(feature = "v4_12")]
13458    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13459    pub fn gtk_drop_down_get_search_match_mode(self_: *mut GtkDropDown)
13460        -> GtkStringFilterMatchMode;
13461    pub fn gtk_drop_down_get_selected(self_: *mut GtkDropDown) -> c_uint;
13462    pub fn gtk_drop_down_get_selected_item(self_: *mut GtkDropDown) -> *mut gobject::GObject;
13463    #[cfg(feature = "v4_6")]
13464    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13465    pub fn gtk_drop_down_get_show_arrow(self_: *mut GtkDropDown) -> gboolean;
13466    pub fn gtk_drop_down_set_enable_search(self_: *mut GtkDropDown, enable_search: gboolean);
13467    pub fn gtk_drop_down_set_expression(self_: *mut GtkDropDown, expression: *mut GtkExpression);
13468    pub fn gtk_drop_down_set_factory(self_: *mut GtkDropDown, factory: *mut GtkListItemFactory);
13469    #[cfg(feature = "v4_12")]
13470    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13471    pub fn gtk_drop_down_set_header_factory(
13472        self_: *mut GtkDropDown,
13473        factory: *mut GtkListItemFactory,
13474    );
13475    pub fn gtk_drop_down_set_list_factory(
13476        self_: *mut GtkDropDown,
13477        factory: *mut GtkListItemFactory,
13478    );
13479    pub fn gtk_drop_down_set_model(self_: *mut GtkDropDown, model: *mut gio::GListModel);
13480    #[cfg(feature = "v4_12")]
13481    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13482    pub fn gtk_drop_down_set_search_match_mode(
13483        self_: *mut GtkDropDown,
13484        search_match_mode: GtkStringFilterMatchMode,
13485    );
13486    pub fn gtk_drop_down_set_selected(self_: *mut GtkDropDown, position: c_uint);
13487    #[cfg(feature = "v4_6")]
13488    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13489    pub fn gtk_drop_down_set_show_arrow(self_: *mut GtkDropDown, show_arrow: gboolean);
13490
13491    //=========================================================================
13492    // GtkDropTarget
13493    //=========================================================================
13494    pub fn gtk_drop_target_get_type() -> GType;
13495    pub fn gtk_drop_target_new(type_: GType, actions: gdk::GdkDragAction) -> *mut GtkDropTarget;
13496    pub fn gtk_drop_target_get_actions(self_: *mut GtkDropTarget) -> gdk::GdkDragAction;
13497    #[cfg(feature = "v4_4")]
13498    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
13499    pub fn gtk_drop_target_get_current_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13500    pub fn gtk_drop_target_get_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13501    pub fn gtk_drop_target_get_formats(self_: *mut GtkDropTarget) -> *mut gdk::GdkContentFormats;
13502    pub fn gtk_drop_target_get_gtypes(
13503        self_: *mut GtkDropTarget,
13504        n_types: *mut size_t,
13505    ) -> *const GType;
13506    pub fn gtk_drop_target_get_preload(self_: *mut GtkDropTarget) -> gboolean;
13507    pub fn gtk_drop_target_get_value(self_: *mut GtkDropTarget) -> *const gobject::GValue;
13508    pub fn gtk_drop_target_reject(self_: *mut GtkDropTarget);
13509    pub fn gtk_drop_target_set_actions(self_: *mut GtkDropTarget, actions: gdk::GdkDragAction);
13510    pub fn gtk_drop_target_set_gtypes(
13511        self_: *mut GtkDropTarget,
13512        types: *mut GType,
13513        n_types: size_t,
13514    );
13515    pub fn gtk_drop_target_set_preload(self_: *mut GtkDropTarget, preload: gboolean);
13516
13517    //=========================================================================
13518    // GtkDropTargetAsync
13519    //=========================================================================
13520    pub fn gtk_drop_target_async_get_type() -> GType;
13521    pub fn gtk_drop_target_async_new(
13522        formats: *mut gdk::GdkContentFormats,
13523        actions: gdk::GdkDragAction,
13524    ) -> *mut GtkDropTargetAsync;
13525    pub fn gtk_drop_target_async_get_actions(self_: *mut GtkDropTargetAsync) -> gdk::GdkDragAction;
13526    pub fn gtk_drop_target_async_get_formats(
13527        self_: *mut GtkDropTargetAsync,
13528    ) -> *mut gdk::GdkContentFormats;
13529    pub fn gtk_drop_target_async_reject_drop(
13530        self_: *mut GtkDropTargetAsync,
13531        drop: *mut gdk::GdkDrop,
13532    );
13533    pub fn gtk_drop_target_async_set_actions(
13534        self_: *mut GtkDropTargetAsync,
13535        actions: gdk::GdkDragAction,
13536    );
13537    pub fn gtk_drop_target_async_set_formats(
13538        self_: *mut GtkDropTargetAsync,
13539        formats: *mut gdk::GdkContentFormats,
13540    );
13541
13542    //=========================================================================
13543    // GtkEditableLabel
13544    //=========================================================================
13545    pub fn gtk_editable_label_get_type() -> GType;
13546    pub fn gtk_editable_label_new(str: *const c_char) -> *mut GtkWidget;
13547    pub fn gtk_editable_label_get_editing(self_: *mut GtkEditableLabel) -> gboolean;
13548    pub fn gtk_editable_label_start_editing(self_: *mut GtkEditableLabel);
13549    pub fn gtk_editable_label_stop_editing(self_: *mut GtkEditableLabel, commit: gboolean);
13550
13551    //=========================================================================
13552    // GtkEmojiChooser
13553    //=========================================================================
13554    pub fn gtk_emoji_chooser_get_type() -> GType;
13555    pub fn gtk_emoji_chooser_new() -> *mut GtkWidget;
13556
13557    //=========================================================================
13558    // GtkEntry
13559    //=========================================================================
13560    pub fn gtk_entry_get_type() -> GType;
13561    pub fn gtk_entry_new() -> *mut GtkWidget;
13562    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
13563    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
13564    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
13565    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
13566    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
13567    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
13568    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
13569    pub fn gtk_entry_get_extra_menu(entry: *mut GtkEntry) -> *mut gio::GMenuModel;
13570    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
13571    pub fn gtk_entry_get_icon_activatable(
13572        entry: *mut GtkEntry,
13573        icon_pos: GtkEntryIconPosition,
13574    ) -> gboolean;
13575    pub fn gtk_entry_get_icon_area(
13576        entry: *mut GtkEntry,
13577        icon_pos: GtkEntryIconPosition,
13578        icon_area: *mut gdk::GdkRectangle,
13579    );
13580    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
13581    pub fn gtk_entry_get_icon_gicon(
13582        entry: *mut GtkEntry,
13583        icon_pos: GtkEntryIconPosition,
13584    ) -> *mut gio::GIcon;
13585    pub fn gtk_entry_get_icon_name(
13586        entry: *mut GtkEntry,
13587        icon_pos: GtkEntryIconPosition,
13588    ) -> *const c_char;
13589    pub fn gtk_entry_get_icon_paintable(
13590        entry: *mut GtkEntry,
13591        icon_pos: GtkEntryIconPosition,
13592    ) -> *mut gdk::GdkPaintable;
13593    pub fn gtk_entry_get_icon_sensitive(
13594        entry: *mut GtkEntry,
13595        icon_pos: GtkEntryIconPosition,
13596    ) -> gboolean;
13597    pub fn gtk_entry_get_icon_storage_type(
13598        entry: *mut GtkEntry,
13599        icon_pos: GtkEntryIconPosition,
13600    ) -> GtkImageType;
13601    pub fn gtk_entry_get_icon_tooltip_markup(
13602        entry: *mut GtkEntry,
13603        icon_pos: GtkEntryIconPosition,
13604    ) -> *mut c_char;
13605    pub fn gtk_entry_get_icon_tooltip_text(
13606        entry: *mut GtkEntry,
13607        icon_pos: GtkEntryIconPosition,
13608    ) -> *mut c_char;
13609    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
13610    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
13611    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
13612    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
13613    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
13614    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
13615    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
13616    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
13617    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
13618    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
13619    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
13620    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry) -> gboolean;
13621    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
13622    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
13623    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
13624    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
13625    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
13626    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
13627    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
13628    pub fn gtk_entry_set_extra_menu(entry: *mut GtkEntry, model: *mut gio::GMenuModel);
13629    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
13630    pub fn gtk_entry_set_icon_activatable(
13631        entry: *mut GtkEntry,
13632        icon_pos: GtkEntryIconPosition,
13633        activatable: gboolean,
13634    );
13635    pub fn gtk_entry_set_icon_drag_source(
13636        entry: *mut GtkEntry,
13637        icon_pos: GtkEntryIconPosition,
13638        provider: *mut gdk::GdkContentProvider,
13639        actions: gdk::GdkDragAction,
13640    );
13641    pub fn gtk_entry_set_icon_from_gicon(
13642        entry: *mut GtkEntry,
13643        icon_pos: GtkEntryIconPosition,
13644        icon: *mut gio::GIcon,
13645    );
13646    pub fn gtk_entry_set_icon_from_icon_name(
13647        entry: *mut GtkEntry,
13648        icon_pos: GtkEntryIconPosition,
13649        icon_name: *const c_char,
13650    );
13651    pub fn gtk_entry_set_icon_from_paintable(
13652        entry: *mut GtkEntry,
13653        icon_pos: GtkEntryIconPosition,
13654        paintable: *mut gdk::GdkPaintable,
13655    );
13656    pub fn gtk_entry_set_icon_sensitive(
13657        entry: *mut GtkEntry,
13658        icon_pos: GtkEntryIconPosition,
13659        sensitive: gboolean,
13660    );
13661    pub fn gtk_entry_set_icon_tooltip_markup(
13662        entry: *mut GtkEntry,
13663        icon_pos: GtkEntryIconPosition,
13664        tooltip: *const c_char,
13665    );
13666    pub fn gtk_entry_set_icon_tooltip_text(
13667        entry: *mut GtkEntry,
13668        icon_pos: GtkEntryIconPosition,
13669        tooltip: *const c_char,
13670    );
13671    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
13672    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
13673    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
13674    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
13675    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
13676    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
13677    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
13678    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
13679    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
13680    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
13681    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
13682
13683    //=========================================================================
13684    // GtkEntryBuffer
13685    //=========================================================================
13686    pub fn gtk_entry_buffer_get_type() -> GType;
13687    pub fn gtk_entry_buffer_new(
13688        initial_chars: *const c_char,
13689        n_initial_chars: c_int,
13690    ) -> *mut GtkEntryBuffer;
13691    pub fn gtk_entry_buffer_delete_text(
13692        buffer: *mut GtkEntryBuffer,
13693        position: c_uint,
13694        n_chars: c_int,
13695    ) -> c_uint;
13696    pub fn gtk_entry_buffer_emit_deleted_text(
13697        buffer: *mut GtkEntryBuffer,
13698        position: c_uint,
13699        n_chars: c_uint,
13700    );
13701    pub fn gtk_entry_buffer_emit_inserted_text(
13702        buffer: *mut GtkEntryBuffer,
13703        position: c_uint,
13704        chars: *const c_char,
13705        n_chars: c_uint,
13706    );
13707    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
13708    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
13709    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
13710    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
13711    pub fn gtk_entry_buffer_insert_text(
13712        buffer: *mut GtkEntryBuffer,
13713        position: c_uint,
13714        chars: *const c_char,
13715        n_chars: c_int,
13716    ) -> c_uint;
13717    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
13718    pub fn gtk_entry_buffer_set_text(
13719        buffer: *mut GtkEntryBuffer,
13720        chars: *const c_char,
13721        n_chars: c_int,
13722    );
13723
13724    //=========================================================================
13725    // GtkEntryCompletion
13726    //=========================================================================
13727    pub fn gtk_entry_completion_get_type() -> GType;
13728    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
13729    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
13730    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
13731    pub fn gtk_entry_completion_compute_prefix(
13732        completion: *mut GtkEntryCompletion,
13733        key: *const c_char,
13734    ) -> *mut c_char;
13735    pub fn gtk_entry_completion_get_completion_prefix(
13736        completion: *mut GtkEntryCompletion,
13737    ) -> *const c_char;
13738    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
13739    pub fn gtk_entry_completion_get_inline_completion(
13740        completion: *mut GtkEntryCompletion,
13741    ) -> gboolean;
13742    pub fn gtk_entry_completion_get_inline_selection(
13743        completion: *mut GtkEntryCompletion,
13744    ) -> gboolean;
13745    pub fn gtk_entry_completion_get_minimum_key_length(
13746        completion: *mut GtkEntryCompletion,
13747    ) -> c_int;
13748    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
13749        -> *mut GtkTreeModel;
13750    pub fn gtk_entry_completion_get_popup_completion(
13751        completion: *mut GtkEntryCompletion,
13752    ) -> gboolean;
13753    pub fn gtk_entry_completion_get_popup_set_width(
13754        completion: *mut GtkEntryCompletion,
13755    ) -> gboolean;
13756    pub fn gtk_entry_completion_get_popup_single_match(
13757        completion: *mut GtkEntryCompletion,
13758    ) -> gboolean;
13759    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
13760    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
13761    pub fn gtk_entry_completion_set_inline_completion(
13762        completion: *mut GtkEntryCompletion,
13763        inline_completion: gboolean,
13764    );
13765    pub fn gtk_entry_completion_set_inline_selection(
13766        completion: *mut GtkEntryCompletion,
13767        inline_selection: gboolean,
13768    );
13769    pub fn gtk_entry_completion_set_match_func(
13770        completion: *mut GtkEntryCompletion,
13771        func: GtkEntryCompletionMatchFunc,
13772        func_data: gpointer,
13773        func_notify: glib::GDestroyNotify,
13774    );
13775    pub fn gtk_entry_completion_set_minimum_key_length(
13776        completion: *mut GtkEntryCompletion,
13777        length: c_int,
13778    );
13779    pub fn gtk_entry_completion_set_model(
13780        completion: *mut GtkEntryCompletion,
13781        model: *mut GtkTreeModel,
13782    );
13783    pub fn gtk_entry_completion_set_popup_completion(
13784        completion: *mut GtkEntryCompletion,
13785        popup_completion: gboolean,
13786    );
13787    pub fn gtk_entry_completion_set_popup_set_width(
13788        completion: *mut GtkEntryCompletion,
13789        popup_set_width: gboolean,
13790    );
13791    pub fn gtk_entry_completion_set_popup_single_match(
13792        completion: *mut GtkEntryCompletion,
13793        popup_single_match: gboolean,
13794    );
13795    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
13796
13797    //=========================================================================
13798    // GtkEventController
13799    //=========================================================================
13800    pub fn gtk_event_controller_get_type() -> GType;
13801    pub fn gtk_event_controller_get_current_event(
13802        controller: *mut GtkEventController,
13803    ) -> *mut gdk::GdkEvent;
13804    pub fn gtk_event_controller_get_current_event_device(
13805        controller: *mut GtkEventController,
13806    ) -> *mut gdk::GdkDevice;
13807    pub fn gtk_event_controller_get_current_event_state(
13808        controller: *mut GtkEventController,
13809    ) -> gdk::GdkModifierType;
13810    pub fn gtk_event_controller_get_current_event_time(controller: *mut GtkEventController) -> u32;
13811    pub fn gtk_event_controller_get_name(controller: *mut GtkEventController) -> *const c_char;
13812    pub fn gtk_event_controller_get_propagation_limit(
13813        controller: *mut GtkEventController,
13814    ) -> GtkPropagationLimit;
13815    pub fn gtk_event_controller_get_propagation_phase(
13816        controller: *mut GtkEventController,
13817    ) -> GtkPropagationPhase;
13818    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
13819    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
13820    pub fn gtk_event_controller_set_name(controller: *mut GtkEventController, name: *const c_char);
13821    pub fn gtk_event_controller_set_propagation_limit(
13822        controller: *mut GtkEventController,
13823        limit: GtkPropagationLimit,
13824    );
13825    pub fn gtk_event_controller_set_propagation_phase(
13826        controller: *mut GtkEventController,
13827        phase: GtkPropagationPhase,
13828    );
13829    #[cfg(feature = "v4_8")]
13830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
13831    pub fn gtk_event_controller_set_static_name(
13832        controller: *mut GtkEventController,
13833        name: *const c_char,
13834    );
13835
13836    //=========================================================================
13837    // GtkEventControllerFocus
13838    //=========================================================================
13839    pub fn gtk_event_controller_focus_get_type() -> GType;
13840    pub fn gtk_event_controller_focus_new() -> *mut GtkEventController;
13841    pub fn gtk_event_controller_focus_contains_focus(
13842        self_: *mut GtkEventControllerFocus,
13843    ) -> gboolean;
13844    pub fn gtk_event_controller_focus_is_focus(self_: *mut GtkEventControllerFocus) -> gboolean;
13845
13846    //=========================================================================
13847    // GtkEventControllerKey
13848    //=========================================================================
13849    pub fn gtk_event_controller_key_get_type() -> GType;
13850    pub fn gtk_event_controller_key_new() -> *mut GtkEventController;
13851    pub fn gtk_event_controller_key_forward(
13852        controller: *mut GtkEventControllerKey,
13853        widget: *mut GtkWidget,
13854    ) -> gboolean;
13855    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
13856    pub fn gtk_event_controller_key_get_im_context(
13857        controller: *mut GtkEventControllerKey,
13858    ) -> *mut GtkIMContext;
13859    pub fn gtk_event_controller_key_set_im_context(
13860        controller: *mut GtkEventControllerKey,
13861        im_context: *mut GtkIMContext,
13862    );
13863
13864    //=========================================================================
13865    // GtkEventControllerLegacy
13866    //=========================================================================
13867    pub fn gtk_event_controller_legacy_get_type() -> GType;
13868    pub fn gtk_event_controller_legacy_new() -> *mut GtkEventController;
13869
13870    //=========================================================================
13871    // GtkEventControllerMotion
13872    //=========================================================================
13873    pub fn gtk_event_controller_motion_get_type() -> GType;
13874    pub fn gtk_event_controller_motion_new() -> *mut GtkEventController;
13875    pub fn gtk_event_controller_motion_contains_pointer(
13876        self_: *mut GtkEventControllerMotion,
13877    ) -> gboolean;
13878    pub fn gtk_event_controller_motion_is_pointer(self_: *mut GtkEventControllerMotion)
13879        -> gboolean;
13880
13881    //=========================================================================
13882    // GtkEventControllerScroll
13883    //=========================================================================
13884    pub fn gtk_event_controller_scroll_get_type() -> GType;
13885    pub fn gtk_event_controller_scroll_new(
13886        flags: GtkEventControllerScrollFlags,
13887    ) -> *mut GtkEventController;
13888    pub fn gtk_event_controller_scroll_get_flags(
13889        scroll: *mut GtkEventControllerScroll,
13890    ) -> GtkEventControllerScrollFlags;
13891    #[cfg(feature = "v4_8")]
13892    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
13893    pub fn gtk_event_controller_scroll_get_unit(
13894        scroll: *mut GtkEventControllerScroll,
13895    ) -> gdk::GdkScrollUnit;
13896    pub fn gtk_event_controller_scroll_set_flags(
13897        scroll: *mut GtkEventControllerScroll,
13898        flags: GtkEventControllerScrollFlags,
13899    );
13900
13901    //=========================================================================
13902    // GtkEveryFilter
13903    //=========================================================================
13904    pub fn gtk_every_filter_get_type() -> GType;
13905    pub fn gtk_every_filter_new() -> *mut GtkEveryFilter;
13906
13907    //=========================================================================
13908    // GtkExpander
13909    //=========================================================================
13910    pub fn gtk_expander_get_type() -> GType;
13911    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
13912    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
13913    pub fn gtk_expander_get_child(expander: *mut GtkExpander) -> *mut GtkWidget;
13914    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
13915    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
13916    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
13917    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
13918    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
13919    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
13920    pub fn gtk_expander_set_child(expander: *mut GtkExpander, child: *mut GtkWidget);
13921    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
13922    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
13923    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
13924    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
13925    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
13926    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
13927
13928    //=========================================================================
13929    // GtkExpression
13930    //=========================================================================
13931    pub fn gtk_expression_get_type() -> GType;
13932    pub fn gtk_expression_bind(
13933        self_: *mut GtkExpression,
13934        target: *mut gobject::GObject,
13935        property: *const c_char,
13936        this_: *mut gobject::GObject,
13937    ) -> *mut GtkExpressionWatch;
13938    pub fn gtk_expression_evaluate(
13939        self_: *mut GtkExpression,
13940        this_: *mut gobject::GObject,
13941        value: *mut gobject::GValue,
13942    ) -> gboolean;
13943    pub fn gtk_expression_get_value_type(self_: *mut GtkExpression) -> GType;
13944    pub fn gtk_expression_is_static(self_: *mut GtkExpression) -> gboolean;
13945    pub fn gtk_expression_ref(self_: *mut GtkExpression) -> *mut GtkExpression;
13946    pub fn gtk_expression_unref(self_: *mut GtkExpression);
13947    pub fn gtk_expression_watch(
13948        self_: *mut GtkExpression,
13949        this_: *mut gobject::GObject,
13950        notify: GtkExpressionNotify,
13951        user_data: gpointer,
13952        user_destroy: glib::GDestroyNotify,
13953    ) -> *mut GtkExpressionWatch;
13954
13955    //=========================================================================
13956    // GtkFileChooserDialog
13957    //=========================================================================
13958    pub fn gtk_file_chooser_dialog_get_type() -> GType;
13959    pub fn gtk_file_chooser_dialog_new(
13960        title: *const c_char,
13961        parent: *mut GtkWindow,
13962        action: GtkFileChooserAction,
13963        first_button_text: *const c_char,
13964        ...
13965    ) -> *mut GtkWidget;
13966
13967    //=========================================================================
13968    // GtkFileChooserNative
13969    //=========================================================================
13970    pub fn gtk_file_chooser_native_get_type() -> GType;
13971    pub fn gtk_file_chooser_native_new(
13972        title: *const c_char,
13973        parent: *mut GtkWindow,
13974        action: GtkFileChooserAction,
13975        accept_label: *const c_char,
13976        cancel_label: *const c_char,
13977    ) -> *mut GtkFileChooserNative;
13978    pub fn gtk_file_chooser_native_get_accept_label(
13979        self_: *mut GtkFileChooserNative,
13980    ) -> *const c_char;
13981    pub fn gtk_file_chooser_native_get_cancel_label(
13982        self_: *mut GtkFileChooserNative,
13983    ) -> *const c_char;
13984    pub fn gtk_file_chooser_native_set_accept_label(
13985        self_: *mut GtkFileChooserNative,
13986        accept_label: *const c_char,
13987    );
13988    pub fn gtk_file_chooser_native_set_cancel_label(
13989        self_: *mut GtkFileChooserNative,
13990        cancel_label: *const c_char,
13991    );
13992
13993    //=========================================================================
13994    // GtkFileChooserWidget
13995    //=========================================================================
13996    pub fn gtk_file_chooser_widget_get_type() -> GType;
13997    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
13998
13999    //=========================================================================
14000    // GtkFileDialog
14001    //=========================================================================
14002    #[cfg(feature = "v4_10")]
14003    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14004    pub fn gtk_file_dialog_get_type() -> GType;
14005    #[cfg(feature = "v4_10")]
14006    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14007    pub fn gtk_file_dialog_new() -> *mut GtkFileDialog;
14008    #[cfg(feature = "v4_10")]
14009    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14010    pub fn gtk_file_dialog_get_accept_label(self_: *mut GtkFileDialog) -> *const c_char;
14011    #[cfg(feature = "v4_10")]
14012    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14013    pub fn gtk_file_dialog_get_default_filter(self_: *mut GtkFileDialog) -> *mut GtkFileFilter;
14014    #[cfg(feature = "v4_10")]
14015    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14016    pub fn gtk_file_dialog_get_filters(self_: *mut GtkFileDialog) -> *mut gio::GListModel;
14017    #[cfg(feature = "v4_10")]
14018    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14019    pub fn gtk_file_dialog_get_initial_file(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14020    #[cfg(feature = "v4_10")]
14021    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14022    pub fn gtk_file_dialog_get_initial_folder(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14023    #[cfg(feature = "v4_10")]
14024    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14025    pub fn gtk_file_dialog_get_initial_name(self_: *mut GtkFileDialog) -> *const c_char;
14026    #[cfg(feature = "v4_10")]
14027    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14028    pub fn gtk_file_dialog_get_modal(self_: *mut GtkFileDialog) -> gboolean;
14029    #[cfg(feature = "v4_10")]
14030    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14031    pub fn gtk_file_dialog_get_title(self_: *mut GtkFileDialog) -> *const c_char;
14032    #[cfg(feature = "v4_10")]
14033    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14034    pub fn gtk_file_dialog_open(
14035        self_: *mut GtkFileDialog,
14036        parent: *mut GtkWindow,
14037        cancellable: *mut gio::GCancellable,
14038        callback: gio::GAsyncReadyCallback,
14039        user_data: gpointer,
14040    );
14041    #[cfg(feature = "v4_10")]
14042    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14043    pub fn gtk_file_dialog_open_finish(
14044        self_: *mut GtkFileDialog,
14045        result: *mut gio::GAsyncResult,
14046        error: *mut *mut glib::GError,
14047    ) -> *mut gio::GFile;
14048    #[cfg(feature = "v4_10")]
14049    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14050    pub fn gtk_file_dialog_open_multiple(
14051        self_: *mut GtkFileDialog,
14052        parent: *mut GtkWindow,
14053        cancellable: *mut gio::GCancellable,
14054        callback: gio::GAsyncReadyCallback,
14055        user_data: gpointer,
14056    );
14057    #[cfg(feature = "v4_10")]
14058    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14059    pub fn gtk_file_dialog_open_multiple_finish(
14060        self_: *mut GtkFileDialog,
14061        result: *mut gio::GAsyncResult,
14062        error: *mut *mut glib::GError,
14063    ) -> *mut gio::GListModel;
14064    #[cfg(feature = "v4_18")]
14065    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14066    pub fn gtk_file_dialog_open_multiple_text_files(
14067        self_: *mut GtkFileDialog,
14068        parent: *mut GtkWindow,
14069        cancellable: *mut gio::GCancellable,
14070        callback: gio::GAsyncReadyCallback,
14071        user_data: gpointer,
14072    );
14073    #[cfg(feature = "v4_18")]
14074    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14075    pub fn gtk_file_dialog_open_multiple_text_files_finish(
14076        self_: *mut GtkFileDialog,
14077        result: *mut gio::GAsyncResult,
14078        encoding: *mut *const c_char,
14079        error: *mut *mut glib::GError,
14080    ) -> *mut gio::GListModel;
14081    #[cfg(feature = "v4_18")]
14082    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14083    pub fn gtk_file_dialog_open_text_file(
14084        self_: *mut GtkFileDialog,
14085        parent: *mut GtkWindow,
14086        cancellable: *mut gio::GCancellable,
14087        callback: gio::GAsyncReadyCallback,
14088        user_data: gpointer,
14089    );
14090    #[cfg(feature = "v4_18")]
14091    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14092    pub fn gtk_file_dialog_open_text_file_finish(
14093        self_: *mut GtkFileDialog,
14094        result: *mut gio::GAsyncResult,
14095        encoding: *mut *const c_char,
14096        error: *mut *mut glib::GError,
14097    ) -> *mut gio::GFile;
14098    #[cfg(feature = "v4_10")]
14099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14100    pub fn gtk_file_dialog_save(
14101        self_: *mut GtkFileDialog,
14102        parent: *mut GtkWindow,
14103        cancellable: *mut gio::GCancellable,
14104        callback: gio::GAsyncReadyCallback,
14105        user_data: gpointer,
14106    );
14107    #[cfg(feature = "v4_10")]
14108    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14109    pub fn gtk_file_dialog_save_finish(
14110        self_: *mut GtkFileDialog,
14111        result: *mut gio::GAsyncResult,
14112        error: *mut *mut glib::GError,
14113    ) -> *mut gio::GFile;
14114    #[cfg(feature = "v4_18")]
14115    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14116    pub fn gtk_file_dialog_save_text_file(
14117        self_: *mut GtkFileDialog,
14118        parent: *mut GtkWindow,
14119        cancellable: *mut gio::GCancellable,
14120        callback: gio::GAsyncReadyCallback,
14121        user_data: gpointer,
14122    );
14123    #[cfg(feature = "v4_18")]
14124    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14125    pub fn gtk_file_dialog_save_text_file_finish(
14126        self_: *mut GtkFileDialog,
14127        result: *mut gio::GAsyncResult,
14128        encoding: *mut *const c_char,
14129        line_ending: *mut *const c_char,
14130        error: *mut *mut glib::GError,
14131    ) -> *mut gio::GFile;
14132    #[cfg(feature = "v4_10")]
14133    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14134    pub fn gtk_file_dialog_select_folder(
14135        self_: *mut GtkFileDialog,
14136        parent: *mut GtkWindow,
14137        cancellable: *mut gio::GCancellable,
14138        callback: gio::GAsyncReadyCallback,
14139        user_data: gpointer,
14140    );
14141    #[cfg(feature = "v4_10")]
14142    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14143    pub fn gtk_file_dialog_select_folder_finish(
14144        self_: *mut GtkFileDialog,
14145        result: *mut gio::GAsyncResult,
14146        error: *mut *mut glib::GError,
14147    ) -> *mut gio::GFile;
14148    #[cfg(feature = "v4_10")]
14149    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14150    pub fn gtk_file_dialog_select_multiple_folders(
14151        self_: *mut GtkFileDialog,
14152        parent: *mut GtkWindow,
14153        cancellable: *mut gio::GCancellable,
14154        callback: gio::GAsyncReadyCallback,
14155        user_data: gpointer,
14156    );
14157    #[cfg(feature = "v4_10")]
14158    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14159    pub fn gtk_file_dialog_select_multiple_folders_finish(
14160        self_: *mut GtkFileDialog,
14161        result: *mut gio::GAsyncResult,
14162        error: *mut *mut glib::GError,
14163    ) -> *mut gio::GListModel;
14164    #[cfg(feature = "v4_10")]
14165    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14166    pub fn gtk_file_dialog_set_accept_label(self_: *mut GtkFileDialog, accept_label: *const c_char);
14167    #[cfg(feature = "v4_10")]
14168    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14169    pub fn gtk_file_dialog_set_default_filter(
14170        self_: *mut GtkFileDialog,
14171        filter: *mut GtkFileFilter,
14172    );
14173    #[cfg(feature = "v4_10")]
14174    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14175    pub fn gtk_file_dialog_set_filters(self_: *mut GtkFileDialog, filters: *mut gio::GListModel);
14176    #[cfg(feature = "v4_10")]
14177    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14178    pub fn gtk_file_dialog_set_initial_file(self_: *mut GtkFileDialog, file: *mut gio::GFile);
14179    #[cfg(feature = "v4_10")]
14180    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14181    pub fn gtk_file_dialog_set_initial_folder(self_: *mut GtkFileDialog, folder: *mut gio::GFile);
14182    #[cfg(feature = "v4_10")]
14183    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14184    pub fn gtk_file_dialog_set_initial_name(self_: *mut GtkFileDialog, name: *const c_char);
14185    #[cfg(feature = "v4_10")]
14186    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14187    pub fn gtk_file_dialog_set_modal(self_: *mut GtkFileDialog, modal: gboolean);
14188    #[cfg(feature = "v4_10")]
14189    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14190    pub fn gtk_file_dialog_set_title(self_: *mut GtkFileDialog, title: *const c_char);
14191
14192    //=========================================================================
14193    // GtkFileFilter
14194    //=========================================================================
14195    pub fn gtk_file_filter_get_type() -> GType;
14196    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
14197    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
14198    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
14199    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
14200    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
14201    #[cfg(feature = "v4_4")]
14202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
14203    pub fn gtk_file_filter_add_suffix(filter: *mut GtkFileFilter, suffix: *const c_char);
14204    pub fn gtk_file_filter_get_attributes(filter: *mut GtkFileFilter) -> *mut *const c_char;
14205    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
14206    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
14207    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
14208
14209    //=========================================================================
14210    // GtkFileLauncher
14211    //=========================================================================
14212    #[cfg(feature = "v4_10")]
14213    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14214    pub fn gtk_file_launcher_get_type() -> GType;
14215    #[cfg(feature = "v4_10")]
14216    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14217    pub fn gtk_file_launcher_new(file: *mut gio::GFile) -> *mut GtkFileLauncher;
14218    #[cfg(feature = "v4_12")]
14219    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14220    pub fn gtk_file_launcher_get_always_ask(self_: *mut GtkFileLauncher) -> gboolean;
14221    #[cfg(feature = "v4_10")]
14222    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14223    pub fn gtk_file_launcher_get_file(self_: *mut GtkFileLauncher) -> *mut gio::GFile;
14224    #[cfg(feature = "v4_14")]
14225    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14226    pub fn gtk_file_launcher_get_writable(self_: *mut GtkFileLauncher) -> gboolean;
14227    #[cfg(feature = "v4_10")]
14228    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14229    pub fn gtk_file_launcher_launch(
14230        self_: *mut GtkFileLauncher,
14231        parent: *mut GtkWindow,
14232        cancellable: *mut gio::GCancellable,
14233        callback: gio::GAsyncReadyCallback,
14234        user_data: gpointer,
14235    );
14236    #[cfg(feature = "v4_10")]
14237    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14238    pub fn gtk_file_launcher_launch_finish(
14239        self_: *mut GtkFileLauncher,
14240        result: *mut gio::GAsyncResult,
14241        error: *mut *mut glib::GError,
14242    ) -> gboolean;
14243    #[cfg(feature = "v4_10")]
14244    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14245    pub fn gtk_file_launcher_open_containing_folder(
14246        self_: *mut GtkFileLauncher,
14247        parent: *mut GtkWindow,
14248        cancellable: *mut gio::GCancellable,
14249        callback: gio::GAsyncReadyCallback,
14250        user_data: gpointer,
14251    );
14252    #[cfg(feature = "v4_10")]
14253    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14254    pub fn gtk_file_launcher_open_containing_folder_finish(
14255        self_: *mut GtkFileLauncher,
14256        result: *mut gio::GAsyncResult,
14257        error: *mut *mut glib::GError,
14258    ) -> gboolean;
14259    #[cfg(feature = "v4_12")]
14260    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14261    pub fn gtk_file_launcher_set_always_ask(self_: *mut GtkFileLauncher, always_ask: gboolean);
14262    #[cfg(feature = "v4_10")]
14263    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14264    pub fn gtk_file_launcher_set_file(self_: *mut GtkFileLauncher, file: *mut gio::GFile);
14265    #[cfg(feature = "v4_14")]
14266    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14267    pub fn gtk_file_launcher_set_writable(self_: *mut GtkFileLauncher, writable: gboolean);
14268
14269    //=========================================================================
14270    // GtkFilter
14271    //=========================================================================
14272    pub fn gtk_filter_get_type() -> GType;
14273    pub fn gtk_filter_changed(self_: *mut GtkFilter, change: GtkFilterChange);
14274    pub fn gtk_filter_get_strictness(self_: *mut GtkFilter) -> GtkFilterMatch;
14275    pub fn gtk_filter_match(self_: *mut GtkFilter, item: *mut gobject::GObject) -> gboolean;
14276
14277    //=========================================================================
14278    // GtkFilterListModel
14279    //=========================================================================
14280    pub fn gtk_filter_list_model_get_type() -> GType;
14281    pub fn gtk_filter_list_model_new(
14282        model: *mut gio::GListModel,
14283        filter: *mut GtkFilter,
14284    ) -> *mut GtkFilterListModel;
14285    pub fn gtk_filter_list_model_get_filter(self_: *mut GtkFilterListModel) -> *mut GtkFilter;
14286    pub fn gtk_filter_list_model_get_incremental(self_: *mut GtkFilterListModel) -> gboolean;
14287    pub fn gtk_filter_list_model_get_model(self_: *mut GtkFilterListModel) -> *mut gio::GListModel;
14288    pub fn gtk_filter_list_model_get_pending(self_: *mut GtkFilterListModel) -> c_uint;
14289    pub fn gtk_filter_list_model_set_filter(self_: *mut GtkFilterListModel, filter: *mut GtkFilter);
14290    pub fn gtk_filter_list_model_set_incremental(
14291        self_: *mut GtkFilterListModel,
14292        incremental: gboolean,
14293    );
14294    pub fn gtk_filter_list_model_set_model(
14295        self_: *mut GtkFilterListModel,
14296        model: *mut gio::GListModel,
14297    );
14298
14299    //=========================================================================
14300    // GtkFixed
14301    //=========================================================================
14302    pub fn gtk_fixed_get_type() -> GType;
14303    pub fn gtk_fixed_new() -> *mut GtkWidget;
14304    pub fn gtk_fixed_get_child_position(
14305        fixed: *mut GtkFixed,
14306        widget: *mut GtkWidget,
14307        x: *mut c_double,
14308        y: *mut c_double,
14309    );
14310    pub fn gtk_fixed_get_child_transform(
14311        fixed: *mut GtkFixed,
14312        widget: *mut GtkWidget,
14313    ) -> *mut gsk::GskTransform;
14314    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14315    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14316    pub fn gtk_fixed_remove(fixed: *mut GtkFixed, widget: *mut GtkWidget);
14317    pub fn gtk_fixed_set_child_transform(
14318        fixed: *mut GtkFixed,
14319        widget: *mut GtkWidget,
14320        transform: *mut gsk::GskTransform,
14321    );
14322
14323    //=========================================================================
14324    // GtkFixedLayout
14325    //=========================================================================
14326    pub fn gtk_fixed_layout_get_type() -> GType;
14327    pub fn gtk_fixed_layout_new() -> *mut GtkLayoutManager;
14328
14329    //=========================================================================
14330    // GtkFixedLayoutChild
14331    //=========================================================================
14332    pub fn gtk_fixed_layout_child_get_type() -> GType;
14333    pub fn gtk_fixed_layout_child_get_transform(
14334        child: *mut GtkFixedLayoutChild,
14335    ) -> *mut gsk::GskTransform;
14336    pub fn gtk_fixed_layout_child_set_transform(
14337        child: *mut GtkFixedLayoutChild,
14338        transform: *mut gsk::GskTransform,
14339    );
14340
14341    //=========================================================================
14342    // GtkFlattenListModel
14343    //=========================================================================
14344    pub fn gtk_flatten_list_model_get_type() -> GType;
14345    pub fn gtk_flatten_list_model_new(model: *mut gio::GListModel) -> *mut GtkFlattenListModel;
14346    pub fn gtk_flatten_list_model_get_model(
14347        self_: *mut GtkFlattenListModel,
14348    ) -> *mut gio::GListModel;
14349    pub fn gtk_flatten_list_model_get_model_for_item(
14350        self_: *mut GtkFlattenListModel,
14351        position: c_uint,
14352    ) -> *mut gio::GListModel;
14353    pub fn gtk_flatten_list_model_set_model(
14354        self_: *mut GtkFlattenListModel,
14355        model: *mut gio::GListModel,
14356    );
14357
14358    //=========================================================================
14359    // GtkFlowBox
14360    //=========================================================================
14361    pub fn gtk_flow_box_get_type() -> GType;
14362    pub fn gtk_flow_box_new() -> *mut GtkWidget;
14363    #[cfg(feature = "v4_6")]
14364    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14365    pub fn gtk_flow_box_append(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14366    pub fn gtk_flow_box_bind_model(
14367        box_: *mut GtkFlowBox,
14368        model: *mut gio::GListModel,
14369        create_widget_func: GtkFlowBoxCreateWidgetFunc,
14370        user_data: gpointer,
14371        user_data_free_func: glib::GDestroyNotify,
14372    );
14373    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
14374    pub fn gtk_flow_box_get_child_at_index(
14375        box_: *mut GtkFlowBox,
14376        idx: c_int,
14377    ) -> *mut GtkFlowBoxChild;
14378    pub fn gtk_flow_box_get_child_at_pos(
14379        box_: *mut GtkFlowBox,
14380        x: c_int,
14381        y: c_int,
14382    ) -> *mut GtkFlowBoxChild;
14383    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
14384    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
14385    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14386    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14387    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
14388    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
14389    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
14390    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
14391    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
14392    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
14393    #[cfg(feature = "v4_6")]
14394    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14395    pub fn gtk_flow_box_prepend(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14396    pub fn gtk_flow_box_remove(box_: *mut GtkFlowBox, widget: *mut GtkWidget);
14397    #[cfg(feature = "v4_12")]
14398    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14399    pub fn gtk_flow_box_remove_all(box_: *mut GtkFlowBox);
14400    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
14401    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14402    pub fn gtk_flow_box_selected_foreach(
14403        box_: *mut GtkFlowBox,
14404        func: GtkFlowBoxForeachFunc,
14405        data: gpointer,
14406    );
14407    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
14408    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14409    pub fn gtk_flow_box_set_filter_func(
14410        box_: *mut GtkFlowBox,
14411        filter_func: GtkFlowBoxFilterFunc,
14412        user_data: gpointer,
14413        destroy: glib::GDestroyNotify,
14414    );
14415    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14416    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
14417    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14418    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14419    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14420    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
14421    pub fn gtk_flow_box_set_sort_func(
14422        box_: *mut GtkFlowBox,
14423        sort_func: GtkFlowBoxSortFunc,
14424        user_data: gpointer,
14425        destroy: glib::GDestroyNotify,
14426    );
14427    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14428    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
14429    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14430
14431    //=========================================================================
14432    // GtkFlowBoxChild
14433    //=========================================================================
14434    pub fn gtk_flow_box_child_get_type() -> GType;
14435    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
14436    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
14437    pub fn gtk_flow_box_child_get_child(self_: *mut GtkFlowBoxChild) -> *mut GtkWidget;
14438    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
14439    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
14440    pub fn gtk_flow_box_child_set_child(self_: *mut GtkFlowBoxChild, child: *mut GtkWidget);
14441
14442    //=========================================================================
14443    // GtkFontButton
14444    //=========================================================================
14445    pub fn gtk_font_button_get_type() -> GType;
14446    pub fn gtk_font_button_new() -> *mut GtkWidget;
14447    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
14448    pub fn gtk_font_button_get_modal(font_button: *mut GtkFontButton) -> gboolean;
14449    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
14450    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
14451    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
14452    pub fn gtk_font_button_set_modal(font_button: *mut GtkFontButton, modal: gboolean);
14453    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
14454    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
14455    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
14456
14457    //=========================================================================
14458    // GtkFontChooserDialog
14459    //=========================================================================
14460    pub fn gtk_font_chooser_dialog_get_type() -> GType;
14461    pub fn gtk_font_chooser_dialog_new(
14462        title: *const c_char,
14463        parent: *mut GtkWindow,
14464    ) -> *mut GtkWidget;
14465
14466    //=========================================================================
14467    // GtkFontChooserWidget
14468    //=========================================================================
14469    pub fn gtk_font_chooser_widget_get_type() -> GType;
14470    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
14471
14472    //=========================================================================
14473    // GtkFontDialog
14474    //=========================================================================
14475    #[cfg(feature = "v4_10")]
14476    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14477    pub fn gtk_font_dialog_get_type() -> GType;
14478    #[cfg(feature = "v4_10")]
14479    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14480    pub fn gtk_font_dialog_new() -> *mut GtkFontDialog;
14481    #[cfg(feature = "v4_10")]
14482    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14483    pub fn gtk_font_dialog_choose_face(
14484        self_: *mut GtkFontDialog,
14485        parent: *mut GtkWindow,
14486        initial_value: *mut pango::PangoFontFace,
14487        cancellable: *mut gio::GCancellable,
14488        callback: gio::GAsyncReadyCallback,
14489        user_data: gpointer,
14490    );
14491    #[cfg(feature = "v4_10")]
14492    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14493    pub fn gtk_font_dialog_choose_face_finish(
14494        self_: *mut GtkFontDialog,
14495        result: *mut gio::GAsyncResult,
14496        error: *mut *mut glib::GError,
14497    ) -> *mut pango::PangoFontFace;
14498    #[cfg(feature = "v4_10")]
14499    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14500    pub fn gtk_font_dialog_choose_family(
14501        self_: *mut GtkFontDialog,
14502        parent: *mut GtkWindow,
14503        initial_value: *mut pango::PangoFontFamily,
14504        cancellable: *mut gio::GCancellable,
14505        callback: gio::GAsyncReadyCallback,
14506        user_data: gpointer,
14507    );
14508    #[cfg(feature = "v4_10")]
14509    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14510    pub fn gtk_font_dialog_choose_family_finish(
14511        self_: *mut GtkFontDialog,
14512        result: *mut gio::GAsyncResult,
14513        error: *mut *mut glib::GError,
14514    ) -> *mut pango::PangoFontFamily;
14515    #[cfg(feature = "v4_10")]
14516    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14517    pub fn gtk_font_dialog_choose_font(
14518        self_: *mut GtkFontDialog,
14519        parent: *mut GtkWindow,
14520        initial_value: *mut pango::PangoFontDescription,
14521        cancellable: *mut gio::GCancellable,
14522        callback: gio::GAsyncReadyCallback,
14523        user_data: gpointer,
14524    );
14525    #[cfg(feature = "v4_10")]
14526    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14527    pub fn gtk_font_dialog_choose_font_and_features(
14528        self_: *mut GtkFontDialog,
14529        parent: *mut GtkWindow,
14530        initial_value: *mut pango::PangoFontDescription,
14531        cancellable: *mut gio::GCancellable,
14532        callback: gio::GAsyncReadyCallback,
14533        user_data: gpointer,
14534    );
14535    #[cfg(feature = "v4_10")]
14536    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14537    pub fn gtk_font_dialog_choose_font_and_features_finish(
14538        self_: *mut GtkFontDialog,
14539        result: *mut gio::GAsyncResult,
14540        font_desc: *mut *mut pango::PangoFontDescription,
14541        font_features: *mut *mut c_char,
14542        language: *mut *mut pango::PangoLanguage,
14543        error: *mut *mut glib::GError,
14544    ) -> gboolean;
14545    #[cfg(feature = "v4_10")]
14546    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14547    pub fn gtk_font_dialog_choose_font_finish(
14548        self_: *mut GtkFontDialog,
14549        result: *mut gio::GAsyncResult,
14550        error: *mut *mut glib::GError,
14551    ) -> *mut pango::PangoFontDescription;
14552    #[cfg(feature = "v4_10")]
14553    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14554    pub fn gtk_font_dialog_get_filter(self_: *mut GtkFontDialog) -> *mut GtkFilter;
14555    #[cfg(feature = "v4_10")]
14556    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14557    pub fn gtk_font_dialog_get_font_map(self_: *mut GtkFontDialog) -> *mut pango::PangoFontMap;
14558    #[cfg(feature = "v4_10")]
14559    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14560    pub fn gtk_font_dialog_get_language(self_: *mut GtkFontDialog) -> *mut pango::PangoLanguage;
14561    #[cfg(feature = "v4_10")]
14562    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14563    pub fn gtk_font_dialog_get_modal(self_: *mut GtkFontDialog) -> gboolean;
14564    #[cfg(feature = "v4_10")]
14565    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14566    pub fn gtk_font_dialog_get_title(self_: *mut GtkFontDialog) -> *const c_char;
14567    #[cfg(feature = "v4_10")]
14568    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14569    pub fn gtk_font_dialog_set_filter(self_: *mut GtkFontDialog, filter: *mut GtkFilter);
14570    #[cfg(feature = "v4_10")]
14571    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14572    pub fn gtk_font_dialog_set_font_map(
14573        self_: *mut GtkFontDialog,
14574        fontmap: *mut pango::PangoFontMap,
14575    );
14576    #[cfg(feature = "v4_10")]
14577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14578    pub fn gtk_font_dialog_set_language(
14579        self_: *mut GtkFontDialog,
14580        language: *mut pango::PangoLanguage,
14581    );
14582    #[cfg(feature = "v4_10")]
14583    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14584    pub fn gtk_font_dialog_set_modal(self_: *mut GtkFontDialog, modal: gboolean);
14585    #[cfg(feature = "v4_10")]
14586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14587    pub fn gtk_font_dialog_set_title(self_: *mut GtkFontDialog, title: *const c_char);
14588
14589    //=========================================================================
14590    // GtkFontDialogButton
14591    //=========================================================================
14592    #[cfg(feature = "v4_10")]
14593    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14594    pub fn gtk_font_dialog_button_get_type() -> GType;
14595    #[cfg(feature = "v4_10")]
14596    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14597    pub fn gtk_font_dialog_button_new(dialog: *mut GtkFontDialog) -> *mut GtkWidget;
14598    #[cfg(feature = "v4_10")]
14599    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14600    pub fn gtk_font_dialog_button_get_dialog(self_: *mut GtkFontDialogButton)
14601        -> *mut GtkFontDialog;
14602    #[cfg(feature = "v4_10")]
14603    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14604    pub fn gtk_font_dialog_button_get_font_desc(
14605        self_: *mut GtkFontDialogButton,
14606    ) -> *mut pango::PangoFontDescription;
14607    #[cfg(feature = "v4_10")]
14608    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14609    pub fn gtk_font_dialog_button_get_font_features(
14610        self_: *mut GtkFontDialogButton,
14611    ) -> *const c_char;
14612    #[cfg(feature = "v4_10")]
14613    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14614    pub fn gtk_font_dialog_button_get_language(
14615        self_: *mut GtkFontDialogButton,
14616    ) -> *mut pango::PangoLanguage;
14617    #[cfg(feature = "v4_10")]
14618    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14619    pub fn gtk_font_dialog_button_get_level(self_: *mut GtkFontDialogButton) -> GtkFontLevel;
14620    #[cfg(feature = "v4_10")]
14621    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14622    pub fn gtk_font_dialog_button_get_use_font(self_: *mut GtkFontDialogButton) -> gboolean;
14623    #[cfg(feature = "v4_10")]
14624    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14625    pub fn gtk_font_dialog_button_get_use_size(self_: *mut GtkFontDialogButton) -> gboolean;
14626    #[cfg(feature = "v4_10")]
14627    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14628    pub fn gtk_font_dialog_button_set_dialog(
14629        self_: *mut GtkFontDialogButton,
14630        dialog: *mut GtkFontDialog,
14631    );
14632    #[cfg(feature = "v4_10")]
14633    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14634    pub fn gtk_font_dialog_button_set_font_desc(
14635        self_: *mut GtkFontDialogButton,
14636        font_desc: *const pango::PangoFontDescription,
14637    );
14638    #[cfg(feature = "v4_10")]
14639    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14640    pub fn gtk_font_dialog_button_set_font_features(
14641        self_: *mut GtkFontDialogButton,
14642        font_features: *const c_char,
14643    );
14644    #[cfg(feature = "v4_10")]
14645    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14646    pub fn gtk_font_dialog_button_set_language(
14647        self_: *mut GtkFontDialogButton,
14648        language: *mut pango::PangoLanguage,
14649    );
14650    #[cfg(feature = "v4_10")]
14651    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14652    pub fn gtk_font_dialog_button_set_level(self_: *mut GtkFontDialogButton, level: GtkFontLevel);
14653    #[cfg(feature = "v4_10")]
14654    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14655    pub fn gtk_font_dialog_button_set_use_font(self_: *mut GtkFontDialogButton, use_font: gboolean);
14656    #[cfg(feature = "v4_10")]
14657    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14658    pub fn gtk_font_dialog_button_set_use_size(self_: *mut GtkFontDialogButton, use_size: gboolean);
14659
14660    //=========================================================================
14661    // GtkFrame
14662    //=========================================================================
14663    pub fn gtk_frame_get_type() -> GType;
14664    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
14665    pub fn gtk_frame_get_child(frame: *mut GtkFrame) -> *mut GtkWidget;
14666    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
14667    pub fn gtk_frame_get_label_align(frame: *mut GtkFrame) -> c_float;
14668    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
14669    pub fn gtk_frame_set_child(frame: *mut GtkFrame, child: *mut GtkWidget);
14670    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
14671    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float);
14672    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
14673
14674    //=========================================================================
14675    // GtkGLArea
14676    //=========================================================================
14677    pub fn gtk_gl_area_get_type() -> GType;
14678    pub fn gtk_gl_area_new() -> *mut GtkWidget;
14679    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
14680    #[cfg(feature = "v4_12")]
14681    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14682    pub fn gtk_gl_area_get_allowed_apis(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14683    #[cfg(feature = "v4_12")]
14684    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14685    pub fn gtk_gl_area_get_api(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
14686    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
14687    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
14688    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
14689    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
14690    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
14691    pub fn gtk_gl_area_get_required_version(
14692        area: *mut GtkGLArea,
14693        major: *mut c_int,
14694        minor: *mut c_int,
14695    );
14696    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
14697    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
14698    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
14699    #[cfg(feature = "v4_12")]
14700    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14701    pub fn gtk_gl_area_set_allowed_apis(area: *mut GtkGLArea, apis: gdk::GdkGLAPI);
14702    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
14703    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
14704    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
14705    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
14706    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
14707    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
14708
14709    //=========================================================================
14710    // GtkGesture
14711    //=========================================================================
14712    pub fn gtk_gesture_get_type() -> GType;
14713    pub fn gtk_gesture_get_bounding_box(
14714        gesture: *mut GtkGesture,
14715        rect: *mut gdk::GdkRectangle,
14716    ) -> gboolean;
14717    pub fn gtk_gesture_get_bounding_box_center(
14718        gesture: *mut GtkGesture,
14719        x: *mut c_double,
14720        y: *mut c_double,
14721    ) -> gboolean;
14722    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
14723    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
14724    pub fn gtk_gesture_get_last_event(
14725        gesture: *mut GtkGesture,
14726        sequence: *mut gdk::GdkEventSequence,
14727    ) -> *mut gdk::GdkEvent;
14728    pub fn gtk_gesture_get_last_updated_sequence(
14729        gesture: *mut GtkGesture,
14730    ) -> *mut gdk::GdkEventSequence;
14731    pub fn gtk_gesture_get_point(
14732        gesture: *mut GtkGesture,
14733        sequence: *mut gdk::GdkEventSequence,
14734        x: *mut c_double,
14735        y: *mut c_double,
14736    ) -> gboolean;
14737    pub fn gtk_gesture_get_sequence_state(
14738        gesture: *mut GtkGesture,
14739        sequence: *mut gdk::GdkEventSequence,
14740    ) -> GtkEventSequenceState;
14741    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
14742    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
14743    pub fn gtk_gesture_handles_sequence(
14744        gesture: *mut GtkGesture,
14745        sequence: *mut gdk::GdkEventSequence,
14746    ) -> gboolean;
14747    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
14748    pub fn gtk_gesture_is_grouped_with(
14749        gesture: *mut GtkGesture,
14750        other: *mut GtkGesture,
14751    ) -> gboolean;
14752    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
14753    pub fn gtk_gesture_set_sequence_state(
14754        gesture: *mut GtkGesture,
14755        sequence: *mut gdk::GdkEventSequence,
14756        state: GtkEventSequenceState,
14757    ) -> gboolean;
14758    pub fn gtk_gesture_set_state(
14759        gesture: *mut GtkGesture,
14760        state: GtkEventSequenceState,
14761    ) -> gboolean;
14762    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
14763
14764    //=========================================================================
14765    // GtkGestureClick
14766    //=========================================================================
14767    pub fn gtk_gesture_click_get_type() -> GType;
14768    pub fn gtk_gesture_click_new() -> *mut GtkGesture;
14769
14770    //=========================================================================
14771    // GtkGestureDrag
14772    //=========================================================================
14773    pub fn gtk_gesture_drag_get_type() -> GType;
14774    pub fn gtk_gesture_drag_new() -> *mut GtkGesture;
14775    pub fn gtk_gesture_drag_get_offset(
14776        gesture: *mut GtkGestureDrag,
14777        x: *mut c_double,
14778        y: *mut c_double,
14779    ) -> gboolean;
14780    pub fn gtk_gesture_drag_get_start_point(
14781        gesture: *mut GtkGestureDrag,
14782        x: *mut c_double,
14783        y: *mut c_double,
14784    ) -> gboolean;
14785
14786    //=========================================================================
14787    // GtkGestureLongPress
14788    //=========================================================================
14789    pub fn gtk_gesture_long_press_get_type() -> GType;
14790    pub fn gtk_gesture_long_press_new() -> *mut GtkGesture;
14791    pub fn gtk_gesture_long_press_get_delay_factor(gesture: *mut GtkGestureLongPress) -> c_double;
14792    pub fn gtk_gesture_long_press_set_delay_factor(
14793        gesture: *mut GtkGestureLongPress,
14794        delay_factor: c_double,
14795    );
14796
14797    //=========================================================================
14798    // GtkGesturePan
14799    //=========================================================================
14800    pub fn gtk_gesture_pan_get_type() -> GType;
14801    pub fn gtk_gesture_pan_new(orientation: GtkOrientation) -> *mut GtkGesture;
14802    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
14803    pub fn gtk_gesture_pan_set_orientation(
14804        gesture: *mut GtkGesturePan,
14805        orientation: GtkOrientation,
14806    );
14807
14808    //=========================================================================
14809    // GtkGestureRotate
14810    //=========================================================================
14811    pub fn gtk_gesture_rotate_get_type() -> GType;
14812    pub fn gtk_gesture_rotate_new() -> *mut GtkGesture;
14813    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
14814
14815    //=========================================================================
14816    // GtkGestureSingle
14817    //=========================================================================
14818    pub fn gtk_gesture_single_get_type() -> GType;
14819    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
14820    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
14821    pub fn gtk_gesture_single_get_current_sequence(
14822        gesture: *mut GtkGestureSingle,
14823    ) -> *mut gdk::GdkEventSequence;
14824    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
14825    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
14826    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
14827    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
14828    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
14829
14830    //=========================================================================
14831    // GtkGestureStylus
14832    //=========================================================================
14833    pub fn gtk_gesture_stylus_get_type() -> GType;
14834    pub fn gtk_gesture_stylus_new() -> *mut GtkGesture;
14835    pub fn gtk_gesture_stylus_get_axes(
14836        gesture: *mut GtkGestureStylus,
14837        axes: *mut gdk::GdkAxisUse,
14838        values: *mut *mut c_double,
14839    ) -> gboolean;
14840    pub fn gtk_gesture_stylus_get_axis(
14841        gesture: *mut GtkGestureStylus,
14842        axis: gdk::GdkAxisUse,
14843        value: *mut c_double,
14844    ) -> gboolean;
14845    pub fn gtk_gesture_stylus_get_backlog(
14846        gesture: *mut GtkGestureStylus,
14847        backlog: *mut *mut gdk::GdkTimeCoord,
14848        n_elems: *mut c_uint,
14849    ) -> gboolean;
14850    pub fn gtk_gesture_stylus_get_device_tool(
14851        gesture: *mut GtkGestureStylus,
14852    ) -> *mut gdk::GdkDeviceTool;
14853    #[cfg(feature = "v4_10")]
14854    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14855    pub fn gtk_gesture_stylus_get_stylus_only(gesture: *mut GtkGestureStylus) -> gboolean;
14856    #[cfg(feature = "v4_10")]
14857    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14858    pub fn gtk_gesture_stylus_set_stylus_only(
14859        gesture: *mut GtkGestureStylus,
14860        stylus_only: gboolean,
14861    );
14862
14863    //=========================================================================
14864    // GtkGestureSwipe
14865    //=========================================================================
14866    pub fn gtk_gesture_swipe_get_type() -> GType;
14867    pub fn gtk_gesture_swipe_new() -> *mut GtkGesture;
14868    pub fn gtk_gesture_swipe_get_velocity(
14869        gesture: *mut GtkGestureSwipe,
14870        velocity_x: *mut c_double,
14871        velocity_y: *mut c_double,
14872    ) -> gboolean;
14873
14874    //=========================================================================
14875    // GtkGestureZoom
14876    //=========================================================================
14877    pub fn gtk_gesture_zoom_get_type() -> GType;
14878    pub fn gtk_gesture_zoom_new() -> *mut GtkGesture;
14879    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
14880
14881    //=========================================================================
14882    // GtkGraphicsOffload
14883    //=========================================================================
14884    #[cfg(feature = "v4_14")]
14885    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14886    pub fn gtk_graphics_offload_get_type() -> GType;
14887    #[cfg(feature = "v4_14")]
14888    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14889    pub fn gtk_graphics_offload_new(child: *mut GtkWidget) -> *mut GtkWidget;
14890    #[cfg(feature = "v4_16")]
14891    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
14892    pub fn gtk_graphics_offload_get_black_background(self_: *mut GtkGraphicsOffload) -> gboolean;
14893    #[cfg(feature = "v4_14")]
14894    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14895    pub fn gtk_graphics_offload_get_child(self_: *mut GtkGraphicsOffload) -> *mut GtkWidget;
14896    #[cfg(feature = "v4_14")]
14897    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14898    pub fn gtk_graphics_offload_get_enabled(
14899        self_: *mut GtkGraphicsOffload,
14900    ) -> GtkGraphicsOffloadEnabled;
14901    #[cfg(feature = "v4_16")]
14902    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
14903    pub fn gtk_graphics_offload_set_black_background(
14904        self_: *mut GtkGraphicsOffload,
14905        value: gboolean,
14906    );
14907    #[cfg(feature = "v4_14")]
14908    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14909    pub fn gtk_graphics_offload_set_child(self_: *mut GtkGraphicsOffload, child: *mut GtkWidget);
14910    #[cfg(feature = "v4_14")]
14911    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14912    pub fn gtk_graphics_offload_set_enabled(
14913        self_: *mut GtkGraphicsOffload,
14914        enabled: GtkGraphicsOffloadEnabled,
14915    );
14916
14917    //=========================================================================
14918    // GtkGrid
14919    //=========================================================================
14920    pub fn gtk_grid_get_type() -> GType;
14921    pub fn gtk_grid_new() -> *mut GtkWidget;
14922    pub fn gtk_grid_attach(
14923        grid: *mut GtkGrid,
14924        child: *mut GtkWidget,
14925        column: c_int,
14926        row: c_int,
14927        width: c_int,
14928        height: c_int,
14929    );
14930    pub fn gtk_grid_attach_next_to(
14931        grid: *mut GtkGrid,
14932        child: *mut GtkWidget,
14933        sibling: *mut GtkWidget,
14934        side: GtkPositionType,
14935        width: c_int,
14936        height: c_int,
14937    );
14938    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
14939    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, column: c_int, row: c_int) -> *mut GtkWidget;
14940    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
14941    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
14942    pub fn gtk_grid_get_row_baseline_position(
14943        grid: *mut GtkGrid,
14944        row: c_int,
14945    ) -> GtkBaselinePosition;
14946    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
14947    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
14948    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
14949    pub fn gtk_grid_insert_next_to(
14950        grid: *mut GtkGrid,
14951        sibling: *mut GtkWidget,
14952        side: GtkPositionType,
14953    );
14954    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
14955    pub fn gtk_grid_query_child(
14956        grid: *mut GtkGrid,
14957        child: *mut GtkWidget,
14958        column: *mut c_int,
14959        row: *mut c_int,
14960        width: *mut c_int,
14961        height: *mut c_int,
14962    );
14963    pub fn gtk_grid_remove(grid: *mut GtkGrid, child: *mut GtkWidget);
14964    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
14965    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
14966    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
14967    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
14968    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
14969    pub fn gtk_grid_set_row_baseline_position(
14970        grid: *mut GtkGrid,
14971        row: c_int,
14972        pos: GtkBaselinePosition,
14973    );
14974    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
14975    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
14976
14977    //=========================================================================
14978    // GtkGridLayout
14979    //=========================================================================
14980    pub fn gtk_grid_layout_get_type() -> GType;
14981    pub fn gtk_grid_layout_new() -> *mut GtkLayoutManager;
14982    pub fn gtk_grid_layout_get_baseline_row(grid: *mut GtkGridLayout) -> c_int;
14983    pub fn gtk_grid_layout_get_column_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
14984    pub fn gtk_grid_layout_get_column_spacing(grid: *mut GtkGridLayout) -> c_uint;
14985    pub fn gtk_grid_layout_get_row_baseline_position(
14986        grid: *mut GtkGridLayout,
14987        row: c_int,
14988    ) -> GtkBaselinePosition;
14989    pub fn gtk_grid_layout_get_row_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
14990    pub fn gtk_grid_layout_get_row_spacing(grid: *mut GtkGridLayout) -> c_uint;
14991    pub fn gtk_grid_layout_set_baseline_row(grid: *mut GtkGridLayout, row: c_int);
14992    pub fn gtk_grid_layout_set_column_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
14993    pub fn gtk_grid_layout_set_column_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
14994    pub fn gtk_grid_layout_set_row_baseline_position(
14995        grid: *mut GtkGridLayout,
14996        row: c_int,
14997        pos: GtkBaselinePosition,
14998    );
14999    pub fn gtk_grid_layout_set_row_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15000    pub fn gtk_grid_layout_set_row_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15001
15002    //=========================================================================
15003    // GtkGridLayoutChild
15004    //=========================================================================
15005    pub fn gtk_grid_layout_child_get_type() -> GType;
15006    pub fn gtk_grid_layout_child_get_column(child: *mut GtkGridLayoutChild) -> c_int;
15007    pub fn gtk_grid_layout_child_get_column_span(child: *mut GtkGridLayoutChild) -> c_int;
15008    pub fn gtk_grid_layout_child_get_row(child: *mut GtkGridLayoutChild) -> c_int;
15009    pub fn gtk_grid_layout_child_get_row_span(child: *mut GtkGridLayoutChild) -> c_int;
15010    pub fn gtk_grid_layout_child_set_column(child: *mut GtkGridLayoutChild, column: c_int);
15011    pub fn gtk_grid_layout_child_set_column_span(child: *mut GtkGridLayoutChild, span: c_int);
15012    pub fn gtk_grid_layout_child_set_row(child: *mut GtkGridLayoutChild, row: c_int);
15013    pub fn gtk_grid_layout_child_set_row_span(child: *mut GtkGridLayoutChild, span: c_int);
15014
15015    //=========================================================================
15016    // GtkGridView
15017    //=========================================================================
15018    pub fn gtk_grid_view_get_type() -> GType;
15019    pub fn gtk_grid_view_new(
15020        model: *mut GtkSelectionModel,
15021        factory: *mut GtkListItemFactory,
15022    ) -> *mut GtkWidget;
15023    pub fn gtk_grid_view_get_enable_rubberband(self_: *mut GtkGridView) -> gboolean;
15024    pub fn gtk_grid_view_get_factory(self_: *mut GtkGridView) -> *mut GtkListItemFactory;
15025    pub fn gtk_grid_view_get_max_columns(self_: *mut GtkGridView) -> c_uint;
15026    pub fn gtk_grid_view_get_min_columns(self_: *mut GtkGridView) -> c_uint;
15027    pub fn gtk_grid_view_get_model(self_: *mut GtkGridView) -> *mut GtkSelectionModel;
15028    pub fn gtk_grid_view_get_single_click_activate(self_: *mut GtkGridView) -> gboolean;
15029    #[cfg(feature = "v4_12")]
15030    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15031    pub fn gtk_grid_view_get_tab_behavior(self_: *mut GtkGridView) -> GtkListTabBehavior;
15032    #[cfg(feature = "v4_12")]
15033    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15034    pub fn gtk_grid_view_scroll_to(
15035        self_: *mut GtkGridView,
15036        pos: c_uint,
15037        flags: GtkListScrollFlags,
15038        scroll: *mut GtkScrollInfo,
15039    );
15040    pub fn gtk_grid_view_set_enable_rubberband(
15041        self_: *mut GtkGridView,
15042        enable_rubberband: gboolean,
15043    );
15044    pub fn gtk_grid_view_set_factory(self_: *mut GtkGridView, factory: *mut GtkListItemFactory);
15045    pub fn gtk_grid_view_set_max_columns(self_: *mut GtkGridView, max_columns: c_uint);
15046    pub fn gtk_grid_view_set_min_columns(self_: *mut GtkGridView, min_columns: c_uint);
15047    pub fn gtk_grid_view_set_model(self_: *mut GtkGridView, model: *mut GtkSelectionModel);
15048    pub fn gtk_grid_view_set_single_click_activate(
15049        self_: *mut GtkGridView,
15050        single_click_activate: gboolean,
15051    );
15052    #[cfg(feature = "v4_12")]
15053    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15054    pub fn gtk_grid_view_set_tab_behavior(
15055        self_: *mut GtkGridView,
15056        tab_behavior: GtkListTabBehavior,
15057    );
15058
15059    //=========================================================================
15060    // GtkHeaderBar
15061    //=========================================================================
15062    pub fn gtk_header_bar_get_type() -> GType;
15063    pub fn gtk_header_bar_new() -> *mut GtkWidget;
15064    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
15065    pub fn gtk_header_bar_get_show_title_buttons(bar: *mut GtkHeaderBar) -> gboolean;
15066    pub fn gtk_header_bar_get_title_widget(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
15067    #[cfg(feature = "v4_18")]
15068    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15069    pub fn gtk_header_bar_get_use_native_controls(bar: *mut GtkHeaderBar) -> gboolean;
15070    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15071    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15072    pub fn gtk_header_bar_remove(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15073    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
15074    pub fn gtk_header_bar_set_show_title_buttons(bar: *mut GtkHeaderBar, setting: gboolean);
15075    pub fn gtk_header_bar_set_title_widget(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
15076    #[cfg(feature = "v4_18")]
15077    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15078    pub fn gtk_header_bar_set_use_native_controls(bar: *mut GtkHeaderBar, setting: gboolean);
15079
15080    //=========================================================================
15081    // GtkIMContext
15082    //=========================================================================
15083    pub fn gtk_im_context_get_type() -> GType;
15084    #[cfg(feature = "v4_14")]
15085    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15086    pub fn gtk_im_context_activate_osk(
15087        context: *mut GtkIMContext,
15088        event: *mut gdk::GdkEvent,
15089    ) -> gboolean;
15090    pub fn gtk_im_context_delete_surrounding(
15091        context: *mut GtkIMContext,
15092        offset: c_int,
15093        n_chars: c_int,
15094    ) -> gboolean;
15095    pub fn gtk_im_context_filter_key(
15096        context: *mut GtkIMContext,
15097        press: gboolean,
15098        surface: *mut gdk::GdkSurface,
15099        device: *mut gdk::GdkDevice,
15100        time: u32,
15101        keycode: c_uint,
15102        state: gdk::GdkModifierType,
15103        group: c_int,
15104    ) -> gboolean;
15105    pub fn gtk_im_context_filter_keypress(
15106        context: *mut GtkIMContext,
15107        event: *mut gdk::GdkEvent,
15108    ) -> gboolean;
15109    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
15110    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
15111    pub fn gtk_im_context_get_preedit_string(
15112        context: *mut GtkIMContext,
15113        str: *mut *mut c_char,
15114        attrs: *mut *mut pango::PangoAttrList,
15115        cursor_pos: *mut c_int,
15116    );
15117    pub fn gtk_im_context_get_surrounding(
15118        context: *mut GtkIMContext,
15119        text: *mut *mut c_char,
15120        cursor_index: *mut c_int,
15121    ) -> gboolean;
15122    #[cfg(feature = "v4_2")]
15123    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15124    pub fn gtk_im_context_get_surrounding_with_selection(
15125        context: *mut GtkIMContext,
15126        text: *mut *mut c_char,
15127        cursor_index: *mut c_int,
15128        anchor_index: *mut c_int,
15129    ) -> gboolean;
15130    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
15131    pub fn gtk_im_context_set_client_widget(context: *mut GtkIMContext, widget: *mut GtkWidget);
15132    pub fn gtk_im_context_set_cursor_location(
15133        context: *mut GtkIMContext,
15134        area: *const gdk::GdkRectangle,
15135    );
15136    pub fn gtk_im_context_set_surrounding(
15137        context: *mut GtkIMContext,
15138        text: *const c_char,
15139        len: c_int,
15140        cursor_index: c_int,
15141    );
15142    #[cfg(feature = "v4_2")]
15143    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15144    pub fn gtk_im_context_set_surrounding_with_selection(
15145        context: *mut GtkIMContext,
15146        text: *const c_char,
15147        len: c_int,
15148        cursor_index: c_int,
15149        anchor_index: c_int,
15150    );
15151    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
15152
15153    //=========================================================================
15154    // GtkIMContextSimple
15155    //=========================================================================
15156    pub fn gtk_im_context_simple_get_type() -> GType;
15157    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
15158    pub fn gtk_im_context_simple_add_compose_file(
15159        context_simple: *mut GtkIMContextSimple,
15160        compose_file: *const c_char,
15161    );
15162    pub fn gtk_im_context_simple_add_table(
15163        context_simple: *mut GtkIMContextSimple,
15164        data: *mut u16,
15165        max_seq_len: c_int,
15166        n_seqs: c_int,
15167    );
15168
15169    //=========================================================================
15170    // GtkIMMulticontext
15171    //=========================================================================
15172    pub fn gtk_im_multicontext_get_type() -> GType;
15173    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
15174    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
15175    pub fn gtk_im_multicontext_set_context_id(
15176        context: *mut GtkIMMulticontext,
15177        context_id: *const c_char,
15178    );
15179
15180    //=========================================================================
15181    // GtkIconPaintable
15182    //=========================================================================
15183    pub fn gtk_icon_paintable_get_type() -> GType;
15184    pub fn gtk_icon_paintable_new_for_file(
15185        file: *mut gio::GFile,
15186        size: c_int,
15187        scale: c_int,
15188    ) -> *mut GtkIconPaintable;
15189    pub fn gtk_icon_paintable_get_file(self_: *mut GtkIconPaintable) -> *mut gio::GFile;
15190    pub fn gtk_icon_paintable_get_icon_name(self_: *mut GtkIconPaintable) -> *const c_char;
15191    pub fn gtk_icon_paintable_is_symbolic(self_: *mut GtkIconPaintable) -> gboolean;
15192
15193    //=========================================================================
15194    // GtkIconTheme
15195    //=========================================================================
15196    pub fn gtk_icon_theme_get_type() -> GType;
15197    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
15198    pub fn gtk_icon_theme_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkIconTheme;
15199    pub fn gtk_icon_theme_add_resource_path(self_: *mut GtkIconTheme, path: *const c_char);
15200    pub fn gtk_icon_theme_add_search_path(self_: *mut GtkIconTheme, path: *const c_char);
15201    pub fn gtk_icon_theme_get_display(self_: *mut GtkIconTheme) -> *mut gdk::GdkDisplay;
15202    pub fn gtk_icon_theme_get_icon_names(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15203    pub fn gtk_icon_theme_get_icon_sizes(
15204        self_: *mut GtkIconTheme,
15205        icon_name: *const c_char,
15206    ) -> *mut c_int;
15207    pub fn gtk_icon_theme_get_resource_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15208    pub fn gtk_icon_theme_get_search_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15209    pub fn gtk_icon_theme_get_theme_name(self_: *mut GtkIconTheme) -> *mut c_char;
15210    #[cfg(feature = "v4_2")]
15211    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15212    pub fn gtk_icon_theme_has_gicon(self_: *mut GtkIconTheme, gicon: *mut gio::GIcon) -> gboolean;
15213    pub fn gtk_icon_theme_has_icon(self_: *mut GtkIconTheme, icon_name: *const c_char) -> gboolean;
15214    pub fn gtk_icon_theme_lookup_by_gicon(
15215        self_: *mut GtkIconTheme,
15216        icon: *mut gio::GIcon,
15217        size: c_int,
15218        scale: c_int,
15219        direction: GtkTextDirection,
15220        flags: GtkIconLookupFlags,
15221    ) -> *mut GtkIconPaintable;
15222    pub fn gtk_icon_theme_lookup_icon(
15223        self_: *mut GtkIconTheme,
15224        icon_name: *const c_char,
15225        fallbacks: *mut *const c_char,
15226        size: c_int,
15227        scale: c_int,
15228        direction: GtkTextDirection,
15229        flags: GtkIconLookupFlags,
15230    ) -> *mut GtkIconPaintable;
15231    pub fn gtk_icon_theme_set_resource_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15232    pub fn gtk_icon_theme_set_search_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15233    pub fn gtk_icon_theme_set_theme_name(self_: *mut GtkIconTheme, theme_name: *const c_char);
15234
15235    //=========================================================================
15236    // GtkIconView
15237    //=========================================================================
15238    pub fn gtk_icon_view_get_type() -> GType;
15239    pub fn gtk_icon_view_new() -> *mut GtkWidget;
15240    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
15241    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
15242    pub fn gtk_icon_view_create_drag_icon(
15243        icon_view: *mut GtkIconView,
15244        path: *mut GtkTreePath,
15245    ) -> *mut gdk::GdkPaintable;
15246    pub fn gtk_icon_view_enable_model_drag_dest(
15247        icon_view: *mut GtkIconView,
15248        formats: *mut gdk::GdkContentFormats,
15249        actions: gdk::GdkDragAction,
15250    );
15251    pub fn gtk_icon_view_enable_model_drag_source(
15252        icon_view: *mut GtkIconView,
15253        start_button_mask: gdk::GdkModifierType,
15254        formats: *mut gdk::GdkContentFormats,
15255        actions: gdk::GdkDragAction,
15256    );
15257    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
15258    pub fn gtk_icon_view_get_cell_rect(
15259        icon_view: *mut GtkIconView,
15260        path: *mut GtkTreePath,
15261        cell: *mut GtkCellRenderer,
15262        rect: *mut gdk::GdkRectangle,
15263    ) -> gboolean;
15264    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
15265    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
15266    pub fn gtk_icon_view_get_cursor(
15267        icon_view: *mut GtkIconView,
15268        path: *mut *mut GtkTreePath,
15269        cell: *mut *mut GtkCellRenderer,
15270    ) -> gboolean;
15271    pub fn gtk_icon_view_get_dest_item_at_pos(
15272        icon_view: *mut GtkIconView,
15273        drag_x: c_int,
15274        drag_y: c_int,
15275        path: *mut *mut GtkTreePath,
15276        pos: *mut GtkIconViewDropPosition,
15277    ) -> gboolean;
15278    pub fn gtk_icon_view_get_drag_dest_item(
15279        icon_view: *mut GtkIconView,
15280        path: *mut *mut GtkTreePath,
15281        pos: *mut GtkIconViewDropPosition,
15282    );
15283    pub fn gtk_icon_view_get_item_at_pos(
15284        icon_view: *mut GtkIconView,
15285        x: c_int,
15286        y: c_int,
15287        path: *mut *mut GtkTreePath,
15288        cell: *mut *mut GtkCellRenderer,
15289    ) -> gboolean;
15290    pub fn gtk_icon_view_get_item_column(
15291        icon_view: *mut GtkIconView,
15292        path: *mut GtkTreePath,
15293    ) -> c_int;
15294    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
15295    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
15296    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
15297        -> c_int;
15298    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
15299    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
15300    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
15301    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
15302    pub fn gtk_icon_view_get_path_at_pos(
15303        icon_view: *mut GtkIconView,
15304        x: c_int,
15305        y: c_int,
15306    ) -> *mut GtkTreePath;
15307    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
15308    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
15309    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
15310    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
15311    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
15312    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
15313    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
15314    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
15315    pub fn gtk_icon_view_get_tooltip_context(
15316        icon_view: *mut GtkIconView,
15317        x: c_int,
15318        y: c_int,
15319        keyboard_tip: gboolean,
15320        model: *mut *mut GtkTreeModel,
15321        path: *mut *mut GtkTreePath,
15322        iter: *mut GtkTreeIter,
15323    ) -> gboolean;
15324    pub fn gtk_icon_view_get_visible_range(
15325        icon_view: *mut GtkIconView,
15326        start_path: *mut *mut GtkTreePath,
15327        end_path: *mut *mut GtkTreePath,
15328    ) -> gboolean;
15329    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15330    pub fn gtk_icon_view_path_is_selected(
15331        icon_view: *mut GtkIconView,
15332        path: *mut GtkTreePath,
15333    ) -> gboolean;
15334    pub fn gtk_icon_view_scroll_to_path(
15335        icon_view: *mut GtkIconView,
15336        path: *mut GtkTreePath,
15337        use_align: gboolean,
15338        row_align: c_float,
15339        col_align: c_float,
15340    );
15341    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
15342    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15343    pub fn gtk_icon_view_selected_foreach(
15344        icon_view: *mut GtkIconView,
15345        func: GtkIconViewForeachFunc,
15346        data: gpointer,
15347    );
15348    pub fn gtk_icon_view_set_activate_on_single_click(
15349        icon_view: *mut GtkIconView,
15350        single: gboolean,
15351    );
15352    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
15353    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
15354    pub fn gtk_icon_view_set_cursor(
15355        icon_view: *mut GtkIconView,
15356        path: *mut GtkTreePath,
15357        cell: *mut GtkCellRenderer,
15358        start_editing: gboolean,
15359    );
15360    pub fn gtk_icon_view_set_drag_dest_item(
15361        icon_view: *mut GtkIconView,
15362        path: *mut GtkTreePath,
15363        pos: GtkIconViewDropPosition,
15364    );
15365    pub fn gtk_icon_view_set_item_orientation(
15366        icon_view: *mut GtkIconView,
15367        orientation: GtkOrientation,
15368    );
15369    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
15370    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
15371    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
15372    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
15373    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
15374    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
15375    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
15376    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
15377    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
15378    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
15379    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
15380    pub fn gtk_icon_view_set_tooltip_cell(
15381        icon_view: *mut GtkIconView,
15382        tooltip: *mut GtkTooltip,
15383        path: *mut GtkTreePath,
15384        cell: *mut GtkCellRenderer,
15385    );
15386    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
15387    pub fn gtk_icon_view_set_tooltip_item(
15388        icon_view: *mut GtkIconView,
15389        tooltip: *mut GtkTooltip,
15390        path: *mut GtkTreePath,
15391    );
15392    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
15393    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15394    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
15395    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
15396
15397    //=========================================================================
15398    // GtkImage
15399    //=========================================================================
15400    pub fn gtk_image_get_type() -> GType;
15401    pub fn gtk_image_new() -> *mut GtkWidget;
15402    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
15403    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkWidget;
15404    pub fn gtk_image_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
15405    pub fn gtk_image_new_from_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
15406    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
15407    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
15408    pub fn gtk_image_clear(image: *mut GtkImage);
15409    pub fn gtk_image_get_gicon(image: *mut GtkImage) -> *mut gio::GIcon;
15410    pub fn gtk_image_get_icon_name(image: *mut GtkImage) -> *const c_char;
15411    pub fn gtk_image_get_icon_size(image: *mut GtkImage) -> GtkIconSize;
15412    pub fn gtk_image_get_paintable(image: *mut GtkImage) -> *mut gdk::GdkPaintable;
15413    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
15414    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
15415    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
15416    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon);
15417    pub fn gtk_image_set_from_icon_name(image: *mut GtkImage, icon_name: *const c_char);
15418    pub fn gtk_image_set_from_paintable(image: *mut GtkImage, paintable: *mut gdk::GdkPaintable);
15419    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
15420    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
15421    pub fn gtk_image_set_icon_size(image: *mut GtkImage, icon_size: GtkIconSize);
15422    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
15423
15424    //=========================================================================
15425    // GtkInfoBar
15426    //=========================================================================
15427    pub fn gtk_info_bar_get_type() -> GType;
15428    pub fn gtk_info_bar_new() -> *mut GtkWidget;
15429    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
15430    pub fn gtk_info_bar_add_action_widget(
15431        info_bar: *mut GtkInfoBar,
15432        child: *mut GtkWidget,
15433        response_id: GtkResponseType,
15434    );
15435    pub fn gtk_info_bar_add_button(
15436        info_bar: *mut GtkInfoBar,
15437        button_text: *const c_char,
15438        response_id: GtkResponseType,
15439    ) -> *mut GtkButton;
15440    pub fn gtk_info_bar_add_buttons(
15441        info_bar: *mut GtkInfoBar,
15442        first_button_text: *const c_char,
15443        ...
15444    );
15445    pub fn gtk_info_bar_add_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15446    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
15447    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
15448    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
15449    pub fn gtk_info_bar_remove_action_widget(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15450    pub fn gtk_info_bar_remove_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15451    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
15452    pub fn gtk_info_bar_set_default_response(
15453        info_bar: *mut GtkInfoBar,
15454        response_id: GtkResponseType,
15455    );
15456    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
15457    pub fn gtk_info_bar_set_response_sensitive(
15458        info_bar: *mut GtkInfoBar,
15459        response_id: GtkResponseType,
15460        setting: gboolean,
15461    );
15462    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
15463    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
15464
15465    //=========================================================================
15466    // GtkInscription
15467    //=========================================================================
15468    #[cfg(feature = "v4_8")]
15469    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15470    pub fn gtk_inscription_get_type() -> GType;
15471    #[cfg(feature = "v4_8")]
15472    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15473    pub fn gtk_inscription_new(text: *const c_char) -> *mut GtkWidget;
15474    #[cfg(feature = "v4_8")]
15475    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15476    pub fn gtk_inscription_get_attributes(self_: *mut GtkInscription) -> *mut pango::PangoAttrList;
15477    #[cfg(feature = "v4_8")]
15478    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15479    pub fn gtk_inscription_get_min_chars(self_: *mut GtkInscription) -> c_uint;
15480    #[cfg(feature = "v4_8")]
15481    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15482    pub fn gtk_inscription_get_min_lines(self_: *mut GtkInscription) -> c_uint;
15483    #[cfg(feature = "v4_8")]
15484    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15485    pub fn gtk_inscription_get_nat_chars(self_: *mut GtkInscription) -> c_uint;
15486    #[cfg(feature = "v4_8")]
15487    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15488    pub fn gtk_inscription_get_nat_lines(self_: *mut GtkInscription) -> c_uint;
15489    #[cfg(feature = "v4_8")]
15490    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15491    pub fn gtk_inscription_get_text(self_: *mut GtkInscription) -> *const c_char;
15492    #[cfg(feature = "v4_8")]
15493    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15494    pub fn gtk_inscription_get_text_overflow(self_: *mut GtkInscription) -> GtkInscriptionOverflow;
15495    #[cfg(feature = "v4_8")]
15496    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15497    pub fn gtk_inscription_get_wrap_mode(self_: *mut GtkInscription) -> pango::PangoWrapMode;
15498    #[cfg(feature = "v4_8")]
15499    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15500    pub fn gtk_inscription_get_xalign(self_: *mut GtkInscription) -> c_float;
15501    #[cfg(feature = "v4_8")]
15502    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15503    pub fn gtk_inscription_get_yalign(self_: *mut GtkInscription) -> c_float;
15504    #[cfg(feature = "v4_8")]
15505    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15506    pub fn gtk_inscription_set_attributes(
15507        self_: *mut GtkInscription,
15508        attrs: *mut pango::PangoAttrList,
15509    );
15510    #[cfg(feature = "v4_8")]
15511    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15512    pub fn gtk_inscription_set_markup(self_: *mut GtkInscription, markup: *const c_char);
15513    #[cfg(feature = "v4_8")]
15514    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15515    pub fn gtk_inscription_set_min_chars(self_: *mut GtkInscription, min_chars: c_uint);
15516    #[cfg(feature = "v4_8")]
15517    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15518    pub fn gtk_inscription_set_min_lines(self_: *mut GtkInscription, min_lines: c_uint);
15519    #[cfg(feature = "v4_8")]
15520    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15521    pub fn gtk_inscription_set_nat_chars(self_: *mut GtkInscription, nat_chars: c_uint);
15522    #[cfg(feature = "v4_8")]
15523    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15524    pub fn gtk_inscription_set_nat_lines(self_: *mut GtkInscription, nat_lines: c_uint);
15525    #[cfg(feature = "v4_8")]
15526    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15527    pub fn gtk_inscription_set_text(self_: *mut GtkInscription, text: *const c_char);
15528    #[cfg(feature = "v4_8")]
15529    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15530    pub fn gtk_inscription_set_text_overflow(
15531        self_: *mut GtkInscription,
15532        overflow: GtkInscriptionOverflow,
15533    );
15534    #[cfg(feature = "v4_8")]
15535    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15536    pub fn gtk_inscription_set_wrap_mode(
15537        self_: *mut GtkInscription,
15538        wrap_mode: pango::PangoWrapMode,
15539    );
15540    #[cfg(feature = "v4_8")]
15541    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15542    pub fn gtk_inscription_set_xalign(self_: *mut GtkInscription, xalign: c_float);
15543    #[cfg(feature = "v4_8")]
15544    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15545    pub fn gtk_inscription_set_yalign(self_: *mut GtkInscription, yalign: c_float);
15546
15547    //=========================================================================
15548    // GtkKeyvalTrigger
15549    //=========================================================================
15550    pub fn gtk_keyval_trigger_get_type() -> GType;
15551    pub fn gtk_keyval_trigger_new(
15552        keyval: c_uint,
15553        modifiers: gdk::GdkModifierType,
15554    ) -> *mut GtkShortcutTrigger;
15555    pub fn gtk_keyval_trigger_get_keyval(self_: *mut GtkKeyvalTrigger) -> c_uint;
15556    pub fn gtk_keyval_trigger_get_modifiers(self_: *mut GtkKeyvalTrigger) -> gdk::GdkModifierType;
15557
15558    //=========================================================================
15559    // GtkLabel
15560    //=========================================================================
15561    pub fn gtk_label_get_type() -> GType;
15562    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
15563    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
15564    pub fn gtk_label_get_attributes(self_: *mut GtkLabel) -> *mut pango::PangoAttrList;
15565    pub fn gtk_label_get_current_uri(self_: *mut GtkLabel) -> *const c_char;
15566    pub fn gtk_label_get_ellipsize(self_: *mut GtkLabel) -> pango::PangoEllipsizeMode;
15567    pub fn gtk_label_get_extra_menu(self_: *mut GtkLabel) -> *mut gio::GMenuModel;
15568    pub fn gtk_label_get_justify(self_: *mut GtkLabel) -> GtkJustification;
15569    pub fn gtk_label_get_label(self_: *mut GtkLabel) -> *const c_char;
15570    pub fn gtk_label_get_layout(self_: *mut GtkLabel) -> *mut pango::PangoLayout;
15571    pub fn gtk_label_get_layout_offsets(self_: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
15572    pub fn gtk_label_get_lines(self_: *mut GtkLabel) -> c_int;
15573    pub fn gtk_label_get_max_width_chars(self_: *mut GtkLabel) -> c_int;
15574    pub fn gtk_label_get_mnemonic_keyval(self_: *mut GtkLabel) -> c_uint;
15575    pub fn gtk_label_get_mnemonic_widget(self_: *mut GtkLabel) -> *mut GtkWidget;
15576    #[cfg(feature = "v4_6")]
15577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15578    pub fn gtk_label_get_natural_wrap_mode(self_: *mut GtkLabel) -> GtkNaturalWrapMode;
15579    pub fn gtk_label_get_selectable(self_: *mut GtkLabel) -> gboolean;
15580    pub fn gtk_label_get_selection_bounds(
15581        self_: *mut GtkLabel,
15582        start: *mut c_int,
15583        end: *mut c_int,
15584    ) -> gboolean;
15585    pub fn gtk_label_get_single_line_mode(self_: *mut GtkLabel) -> gboolean;
15586    #[cfg(feature = "v4_8")]
15587    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15588    pub fn gtk_label_get_tabs(self_: *mut GtkLabel) -> *mut pango::PangoTabArray;
15589    pub fn gtk_label_get_text(self_: *mut GtkLabel) -> *const c_char;
15590    pub fn gtk_label_get_use_markup(self_: *mut GtkLabel) -> gboolean;
15591    pub fn gtk_label_get_use_underline(self_: *mut GtkLabel) -> gboolean;
15592    pub fn gtk_label_get_width_chars(self_: *mut GtkLabel) -> c_int;
15593    pub fn gtk_label_get_wrap(self_: *mut GtkLabel) -> gboolean;
15594    pub fn gtk_label_get_wrap_mode(self_: *mut GtkLabel) -> pango::PangoWrapMode;
15595    pub fn gtk_label_get_xalign(self_: *mut GtkLabel) -> c_float;
15596    pub fn gtk_label_get_yalign(self_: *mut GtkLabel) -> c_float;
15597    pub fn gtk_label_select_region(self_: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
15598    pub fn gtk_label_set_attributes(self_: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
15599    pub fn gtk_label_set_ellipsize(self_: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
15600    pub fn gtk_label_set_extra_menu(self_: *mut GtkLabel, model: *mut gio::GMenuModel);
15601    pub fn gtk_label_set_justify(self_: *mut GtkLabel, jtype: GtkJustification);
15602    pub fn gtk_label_set_label(self_: *mut GtkLabel, str: *const c_char);
15603    pub fn gtk_label_set_lines(self_: *mut GtkLabel, lines: c_int);
15604    pub fn gtk_label_set_markup(self_: *mut GtkLabel, str: *const c_char);
15605    pub fn gtk_label_set_markup_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15606    pub fn gtk_label_set_max_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15607    pub fn gtk_label_set_mnemonic_widget(self_: *mut GtkLabel, widget: *mut GtkWidget);
15608    #[cfg(feature = "v4_6")]
15609    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15610    pub fn gtk_label_set_natural_wrap_mode(self_: *mut GtkLabel, wrap_mode: GtkNaturalWrapMode);
15611    pub fn gtk_label_set_selectable(self_: *mut GtkLabel, setting: gboolean);
15612    pub fn gtk_label_set_single_line_mode(self_: *mut GtkLabel, single_line_mode: gboolean);
15613    #[cfg(feature = "v4_8")]
15614    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15615    pub fn gtk_label_set_tabs(self_: *mut GtkLabel, tabs: *mut pango::PangoTabArray);
15616    pub fn gtk_label_set_text(self_: *mut GtkLabel, str: *const c_char);
15617    pub fn gtk_label_set_text_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15618    pub fn gtk_label_set_use_markup(self_: *mut GtkLabel, setting: gboolean);
15619    pub fn gtk_label_set_use_underline(self_: *mut GtkLabel, setting: gboolean);
15620    pub fn gtk_label_set_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15621    pub fn gtk_label_set_wrap(self_: *mut GtkLabel, wrap: gboolean);
15622    pub fn gtk_label_set_wrap_mode(self_: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
15623    pub fn gtk_label_set_xalign(self_: *mut GtkLabel, xalign: c_float);
15624    pub fn gtk_label_set_yalign(self_: *mut GtkLabel, yalign: c_float);
15625
15626    //=========================================================================
15627    // GtkLayoutChild
15628    //=========================================================================
15629    pub fn gtk_layout_child_get_type() -> GType;
15630    pub fn gtk_layout_child_get_child_widget(layout_child: *mut GtkLayoutChild) -> *mut GtkWidget;
15631    pub fn gtk_layout_child_get_layout_manager(
15632        layout_child: *mut GtkLayoutChild,
15633    ) -> *mut GtkLayoutManager;
15634
15635    //=========================================================================
15636    // GtkLayoutManager
15637    //=========================================================================
15638    pub fn gtk_layout_manager_get_type() -> GType;
15639    pub fn gtk_layout_manager_allocate(
15640        manager: *mut GtkLayoutManager,
15641        widget: *mut GtkWidget,
15642        width: c_int,
15643        height: c_int,
15644        baseline: c_int,
15645    );
15646    pub fn gtk_layout_manager_get_layout_child(
15647        manager: *mut GtkLayoutManager,
15648        child: *mut GtkWidget,
15649    ) -> *mut GtkLayoutChild;
15650    pub fn gtk_layout_manager_get_request_mode(
15651        manager: *mut GtkLayoutManager,
15652    ) -> GtkSizeRequestMode;
15653    pub fn gtk_layout_manager_get_widget(manager: *mut GtkLayoutManager) -> *mut GtkWidget;
15654    pub fn gtk_layout_manager_layout_changed(manager: *mut GtkLayoutManager);
15655    pub fn gtk_layout_manager_measure(
15656        manager: *mut GtkLayoutManager,
15657        widget: *mut GtkWidget,
15658        orientation: GtkOrientation,
15659        for_size: c_int,
15660        minimum: *mut c_int,
15661        natural: *mut c_int,
15662        minimum_baseline: *mut c_int,
15663        natural_baseline: *mut c_int,
15664    );
15665
15666    //=========================================================================
15667    // GtkLevelBar
15668    //=========================================================================
15669    pub fn gtk_level_bar_get_type() -> GType;
15670    pub fn gtk_level_bar_new() -> *mut GtkWidget;
15671    pub fn gtk_level_bar_new_for_interval(
15672        min_value: c_double,
15673        max_value: c_double,
15674    ) -> *mut GtkWidget;
15675    pub fn gtk_level_bar_add_offset_value(
15676        self_: *mut GtkLevelBar,
15677        name: *const c_char,
15678        value: c_double,
15679    );
15680    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
15681    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
15682    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
15683    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
15684    pub fn gtk_level_bar_get_offset_value(
15685        self_: *mut GtkLevelBar,
15686        name: *const c_char,
15687        value: *mut c_double,
15688    ) -> gboolean;
15689    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
15690    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
15691    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
15692    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
15693    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
15694    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
15695    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
15696
15697    //=========================================================================
15698    // GtkLinkButton
15699    //=========================================================================
15700    pub fn gtk_link_button_get_type() -> GType;
15701    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
15702    pub fn gtk_link_button_new_with_label(
15703        uri: *const c_char,
15704        label: *const c_char,
15705    ) -> *mut GtkWidget;
15706    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
15707    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
15708    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
15709    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
15710
15711    //=========================================================================
15712    // GtkListBase
15713    //=========================================================================
15714    pub fn gtk_list_base_get_type() -> GType;
15715
15716    //=========================================================================
15717    // GtkListBox
15718    //=========================================================================
15719    pub fn gtk_list_box_get_type() -> GType;
15720    pub fn gtk_list_box_new() -> *mut GtkWidget;
15721    pub fn gtk_list_box_append(box_: *mut GtkListBox, child: *mut GtkWidget);
15722    pub fn gtk_list_box_bind_model(
15723        box_: *mut GtkListBox,
15724        model: *mut gio::GListModel,
15725        create_widget_func: GtkListBoxCreateWidgetFunc,
15726        user_data: gpointer,
15727        user_data_free_func: glib::GDestroyNotify,
15728    );
15729    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15730    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
15731    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
15732    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
15733    pub fn gtk_list_box_get_row_at_index(
15734        box_: *mut GtkListBox,
15735        index_: c_int,
15736    ) -> *mut GtkListBoxRow;
15737    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
15738    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
15739    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
15740    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
15741    pub fn gtk_list_box_get_show_separators(box_: *mut GtkListBox) -> gboolean;
15742    #[cfg(feature = "v4_18")]
15743    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15744    pub fn gtk_list_box_get_tab_behavior(box_: *mut GtkListBox) -> GtkListTabBehavior;
15745    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
15746    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
15747    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
15748    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
15749    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
15750    pub fn gtk_list_box_remove(box_: *mut GtkListBox, child: *mut GtkWidget);
15751    #[cfg(feature = "v4_12")]
15752    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15753    pub fn gtk_list_box_remove_all(box_: *mut GtkListBox);
15754    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
15755    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15756    pub fn gtk_list_box_selected_foreach(
15757        box_: *mut GtkListBox,
15758        func: GtkListBoxForeachFunc,
15759        data: gpointer,
15760    );
15761    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
15762    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
15763    pub fn gtk_list_box_set_filter_func(
15764        box_: *mut GtkListBox,
15765        filter_func: GtkListBoxFilterFunc,
15766        user_data: gpointer,
15767        destroy: glib::GDestroyNotify,
15768    );
15769    pub fn gtk_list_box_set_header_func(
15770        box_: *mut GtkListBox,
15771        update_header: GtkListBoxUpdateHeaderFunc,
15772        user_data: gpointer,
15773        destroy: glib::GDestroyNotify,
15774    );
15775    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
15776    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
15777    pub fn gtk_list_box_set_show_separators(box_: *mut GtkListBox, show_separators: gboolean);
15778    pub fn gtk_list_box_set_sort_func(
15779        box_: *mut GtkListBox,
15780        sort_func: GtkListBoxSortFunc,
15781        user_data: gpointer,
15782        destroy: glib::GDestroyNotify,
15783    );
15784    #[cfg(feature = "v4_18")]
15785    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15786    pub fn gtk_list_box_set_tab_behavior(box_: *mut GtkListBox, behavior: GtkListTabBehavior);
15787    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
15788    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
15789
15790    //=========================================================================
15791    // GtkListBoxRow
15792    //=========================================================================
15793    pub fn gtk_list_box_row_get_type() -> GType;
15794    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
15795    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
15796    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
15797    pub fn gtk_list_box_row_get_child(row: *mut GtkListBoxRow) -> *mut GtkWidget;
15798    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
15799    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
15800    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
15801    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
15802    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
15803    pub fn gtk_list_box_row_set_child(row: *mut GtkListBoxRow, child: *mut GtkWidget);
15804    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
15805    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
15806
15807    //=========================================================================
15808    // GtkListHeader
15809    //=========================================================================
15810    #[cfg(feature = "v4_12")]
15811    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15812    pub fn gtk_list_header_get_type() -> GType;
15813    #[cfg(feature = "v4_12")]
15814    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15815    pub fn gtk_list_header_get_child(self_: *mut GtkListHeader) -> *mut GtkWidget;
15816    #[cfg(feature = "v4_12")]
15817    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15818    pub fn gtk_list_header_get_end(self_: *mut GtkListHeader) -> c_uint;
15819    #[cfg(feature = "v4_12")]
15820    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15821    pub fn gtk_list_header_get_item(self_: *mut GtkListHeader) -> *mut gobject::GObject;
15822    #[cfg(feature = "v4_12")]
15823    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15824    pub fn gtk_list_header_get_n_items(self_: *mut GtkListHeader) -> c_uint;
15825    #[cfg(feature = "v4_12")]
15826    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15827    pub fn gtk_list_header_get_start(self_: *mut GtkListHeader) -> c_uint;
15828    #[cfg(feature = "v4_12")]
15829    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15830    pub fn gtk_list_header_set_child(self_: *mut GtkListHeader, child: *mut GtkWidget);
15831
15832    //=========================================================================
15833    // GtkListItem
15834    //=========================================================================
15835    pub fn gtk_list_item_get_type() -> GType;
15836    #[cfg(feature = "v4_12")]
15837    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15838    pub fn gtk_list_item_get_accessible_description(self_: *mut GtkListItem) -> *const c_char;
15839    #[cfg(feature = "v4_12")]
15840    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15841    pub fn gtk_list_item_get_accessible_label(self_: *mut GtkListItem) -> *const c_char;
15842    pub fn gtk_list_item_get_activatable(self_: *mut GtkListItem) -> gboolean;
15843    pub fn gtk_list_item_get_child(self_: *mut GtkListItem) -> *mut GtkWidget;
15844    #[cfg(feature = "v4_12")]
15845    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15846    pub fn gtk_list_item_get_focusable(self_: *mut GtkListItem) -> gboolean;
15847    pub fn gtk_list_item_get_item(self_: *mut GtkListItem) -> *mut gobject::GObject;
15848    pub fn gtk_list_item_get_position(self_: *mut GtkListItem) -> c_uint;
15849    pub fn gtk_list_item_get_selectable(self_: *mut GtkListItem) -> gboolean;
15850    pub fn gtk_list_item_get_selected(self_: *mut GtkListItem) -> gboolean;
15851    #[cfg(feature = "v4_12")]
15852    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15853    pub fn gtk_list_item_set_accessible_description(
15854        self_: *mut GtkListItem,
15855        description: *const c_char,
15856    );
15857    #[cfg(feature = "v4_12")]
15858    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15859    pub fn gtk_list_item_set_accessible_label(self_: *mut GtkListItem, label: *const c_char);
15860    pub fn gtk_list_item_set_activatable(self_: *mut GtkListItem, activatable: gboolean);
15861    pub fn gtk_list_item_set_child(self_: *mut GtkListItem, child: *mut GtkWidget);
15862    #[cfg(feature = "v4_12")]
15863    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15864    pub fn gtk_list_item_set_focusable(self_: *mut GtkListItem, focusable: gboolean);
15865    pub fn gtk_list_item_set_selectable(self_: *mut GtkListItem, selectable: gboolean);
15866
15867    //=========================================================================
15868    // GtkListItemFactory
15869    //=========================================================================
15870    pub fn gtk_list_item_factory_get_type() -> GType;
15871
15872    //=========================================================================
15873    // GtkListStore
15874    //=========================================================================
15875    pub fn gtk_list_store_get_type() -> GType;
15876    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
15877    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
15878    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
15879    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
15880    pub fn gtk_list_store_insert(
15881        list_store: *mut GtkListStore,
15882        iter: *mut GtkTreeIter,
15883        position: c_int,
15884    );
15885    pub fn gtk_list_store_insert_after(
15886        list_store: *mut GtkListStore,
15887        iter: *mut GtkTreeIter,
15888        sibling: *mut GtkTreeIter,
15889    );
15890    pub fn gtk_list_store_insert_before(
15891        list_store: *mut GtkListStore,
15892        iter: *mut GtkTreeIter,
15893        sibling: *mut GtkTreeIter,
15894    );
15895    pub fn gtk_list_store_insert_with_values(
15896        list_store: *mut GtkListStore,
15897        iter: *mut GtkTreeIter,
15898        position: c_int,
15899        ...
15900    );
15901    pub fn gtk_list_store_insert_with_valuesv(
15902        list_store: *mut GtkListStore,
15903        iter: *mut GtkTreeIter,
15904        position: c_int,
15905        columns: *mut c_int,
15906        values: *mut gobject::GValue,
15907        n_values: c_int,
15908    );
15909    pub fn gtk_list_store_iter_is_valid(
15910        list_store: *mut GtkListStore,
15911        iter: *mut GtkTreeIter,
15912    ) -> gboolean;
15913    pub fn gtk_list_store_move_after(
15914        store: *mut GtkListStore,
15915        iter: *mut GtkTreeIter,
15916        position: *mut GtkTreeIter,
15917    );
15918    pub fn gtk_list_store_move_before(
15919        store: *mut GtkListStore,
15920        iter: *mut GtkTreeIter,
15921        position: *mut GtkTreeIter,
15922    );
15923    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
15924    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
15925        -> gboolean;
15926    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
15927    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
15928    pub fn gtk_list_store_set_column_types(
15929        list_store: *mut GtkListStore,
15930        n_columns: c_int,
15931        types: *mut GType,
15932    );
15933    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
15934    pub fn gtk_list_store_set_value(
15935        list_store: *mut GtkListStore,
15936        iter: *mut GtkTreeIter,
15937        column: c_int,
15938        value: *mut gobject::GValue,
15939    );
15940    pub fn gtk_list_store_set_valuesv(
15941        list_store: *mut GtkListStore,
15942        iter: *mut GtkTreeIter,
15943        columns: *mut c_int,
15944        values: *mut gobject::GValue,
15945        n_values: c_int,
15946    );
15947    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
15948
15949    //=========================================================================
15950    // GtkListView
15951    //=========================================================================
15952    pub fn gtk_list_view_get_type() -> GType;
15953    pub fn gtk_list_view_new(
15954        model: *mut GtkSelectionModel,
15955        factory: *mut GtkListItemFactory,
15956    ) -> *mut GtkWidget;
15957    pub fn gtk_list_view_get_enable_rubberband(self_: *mut GtkListView) -> gboolean;
15958    pub fn gtk_list_view_get_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
15959    #[cfg(feature = "v4_12")]
15960    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15961    pub fn gtk_list_view_get_header_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
15962    pub fn gtk_list_view_get_model(self_: *mut GtkListView) -> *mut GtkSelectionModel;
15963    pub fn gtk_list_view_get_show_separators(self_: *mut GtkListView) -> gboolean;
15964    pub fn gtk_list_view_get_single_click_activate(self_: *mut GtkListView) -> gboolean;
15965    #[cfg(feature = "v4_12")]
15966    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15967    pub fn gtk_list_view_get_tab_behavior(self_: *mut GtkListView) -> GtkListTabBehavior;
15968    #[cfg(feature = "v4_12")]
15969    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15970    pub fn gtk_list_view_scroll_to(
15971        self_: *mut GtkListView,
15972        pos: c_uint,
15973        flags: GtkListScrollFlags,
15974        scroll: *mut GtkScrollInfo,
15975    );
15976    pub fn gtk_list_view_set_enable_rubberband(
15977        self_: *mut GtkListView,
15978        enable_rubberband: gboolean,
15979    );
15980    pub fn gtk_list_view_set_factory(self_: *mut GtkListView, factory: *mut GtkListItemFactory);
15981    #[cfg(feature = "v4_12")]
15982    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15983    pub fn gtk_list_view_set_header_factory(
15984        self_: *mut GtkListView,
15985        factory: *mut GtkListItemFactory,
15986    );
15987    pub fn gtk_list_view_set_model(self_: *mut GtkListView, model: *mut GtkSelectionModel);
15988    pub fn gtk_list_view_set_show_separators(self_: *mut GtkListView, show_separators: gboolean);
15989    pub fn gtk_list_view_set_single_click_activate(
15990        self_: *mut GtkListView,
15991        single_click_activate: gboolean,
15992    );
15993    #[cfg(feature = "v4_12")]
15994    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15995    pub fn gtk_list_view_set_tab_behavior(
15996        self_: *mut GtkListView,
15997        tab_behavior: GtkListTabBehavior,
15998    );
15999
16000    //=========================================================================
16001    // GtkLockButton
16002    //=========================================================================
16003    pub fn gtk_lock_button_get_type() -> GType;
16004    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
16005    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
16006    pub fn gtk_lock_button_set_permission(
16007        button: *mut GtkLockButton,
16008        permission: *mut gio::GPermission,
16009    );
16010
16011    //=========================================================================
16012    // GtkMapListModel
16013    //=========================================================================
16014    pub fn gtk_map_list_model_get_type() -> GType;
16015    pub fn gtk_map_list_model_new(
16016        model: *mut gio::GListModel,
16017        map_func: GtkMapListModelMapFunc,
16018        user_data: gpointer,
16019        user_destroy: glib::GDestroyNotify,
16020    ) -> *mut GtkMapListModel;
16021    pub fn gtk_map_list_model_get_model(self_: *mut GtkMapListModel) -> *mut gio::GListModel;
16022    pub fn gtk_map_list_model_has_map(self_: *mut GtkMapListModel) -> gboolean;
16023    pub fn gtk_map_list_model_set_map_func(
16024        self_: *mut GtkMapListModel,
16025        map_func: GtkMapListModelMapFunc,
16026        user_data: gpointer,
16027        user_destroy: glib::GDestroyNotify,
16028    );
16029    pub fn gtk_map_list_model_set_model(self_: *mut GtkMapListModel, model: *mut gio::GListModel);
16030
16031    //=========================================================================
16032    // GtkMediaControls
16033    //=========================================================================
16034    pub fn gtk_media_controls_get_type() -> GType;
16035    pub fn gtk_media_controls_new(stream: *mut GtkMediaStream) -> *mut GtkWidget;
16036    pub fn gtk_media_controls_get_media_stream(
16037        controls: *mut GtkMediaControls,
16038    ) -> *mut GtkMediaStream;
16039    pub fn gtk_media_controls_set_media_stream(
16040        controls: *mut GtkMediaControls,
16041        stream: *mut GtkMediaStream,
16042    );
16043
16044    //=========================================================================
16045    // GtkMediaFile
16046    //=========================================================================
16047    pub fn gtk_media_file_get_type() -> GType;
16048    pub fn gtk_media_file_new() -> *mut GtkMediaFile;
16049    pub fn gtk_media_file_new_for_file(file: *mut gio::GFile) -> *mut GtkMediaFile;
16050    pub fn gtk_media_file_new_for_filename(filename: *const c_char) -> *mut GtkMediaFile;
16051    pub fn gtk_media_file_new_for_input_stream(stream: *mut gio::GInputStream)
16052        -> *mut GtkMediaFile;
16053    pub fn gtk_media_file_new_for_resource(resource_path: *const c_char) -> *mut GtkMediaFile;
16054    pub fn gtk_media_file_clear(self_: *mut GtkMediaFile);
16055    pub fn gtk_media_file_get_file(self_: *mut GtkMediaFile) -> *mut gio::GFile;
16056    pub fn gtk_media_file_get_input_stream(self_: *mut GtkMediaFile) -> *mut gio::GInputStream;
16057    pub fn gtk_media_file_set_file(self_: *mut GtkMediaFile, file: *mut gio::GFile);
16058    pub fn gtk_media_file_set_filename(self_: *mut GtkMediaFile, filename: *const c_char);
16059    pub fn gtk_media_file_set_input_stream(
16060        self_: *mut GtkMediaFile,
16061        stream: *mut gio::GInputStream,
16062    );
16063    pub fn gtk_media_file_set_resource(self_: *mut GtkMediaFile, resource_path: *const c_char);
16064
16065    //=========================================================================
16066    // GtkMediaStream
16067    //=========================================================================
16068    pub fn gtk_media_stream_get_type() -> GType;
16069    pub fn gtk_media_stream_ended(self_: *mut GtkMediaStream);
16070    pub fn gtk_media_stream_error(
16071        self_: *mut GtkMediaStream,
16072        domain: glib::GQuark,
16073        code: c_int,
16074        format: *const c_char,
16075        ...
16076    );
16077    //pub fn gtk_media_stream_error_valist(self_: *mut GtkMediaStream, domain: glib::GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list);
16078    pub fn gtk_media_stream_gerror(self_: *mut GtkMediaStream, error: *mut glib::GError);
16079    pub fn gtk_media_stream_get_duration(self_: *mut GtkMediaStream) -> i64;
16080    pub fn gtk_media_stream_get_ended(self_: *mut GtkMediaStream) -> gboolean;
16081    pub fn gtk_media_stream_get_error(self_: *mut GtkMediaStream) -> *const glib::GError;
16082    pub fn gtk_media_stream_get_loop(self_: *mut GtkMediaStream) -> gboolean;
16083    pub fn gtk_media_stream_get_muted(self_: *mut GtkMediaStream) -> gboolean;
16084    pub fn gtk_media_stream_get_playing(self_: *mut GtkMediaStream) -> gboolean;
16085    pub fn gtk_media_stream_get_timestamp(self_: *mut GtkMediaStream) -> i64;
16086    pub fn gtk_media_stream_get_volume(self_: *mut GtkMediaStream) -> c_double;
16087    pub fn gtk_media_stream_has_audio(self_: *mut GtkMediaStream) -> gboolean;
16088    pub fn gtk_media_stream_has_video(self_: *mut GtkMediaStream) -> gboolean;
16089    pub fn gtk_media_stream_is_prepared(self_: *mut GtkMediaStream) -> gboolean;
16090    pub fn gtk_media_stream_is_seekable(self_: *mut GtkMediaStream) -> gboolean;
16091    pub fn gtk_media_stream_is_seeking(self_: *mut GtkMediaStream) -> gboolean;
16092    pub fn gtk_media_stream_pause(self_: *mut GtkMediaStream);
16093    pub fn gtk_media_stream_play(self_: *mut GtkMediaStream);
16094    pub fn gtk_media_stream_prepared(
16095        self_: *mut GtkMediaStream,
16096        has_audio: gboolean,
16097        has_video: gboolean,
16098        seekable: gboolean,
16099        duration: i64,
16100    );
16101    pub fn gtk_media_stream_realize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16102    pub fn gtk_media_stream_seek(self_: *mut GtkMediaStream, timestamp: i64);
16103    pub fn gtk_media_stream_seek_failed(self_: *mut GtkMediaStream);
16104    pub fn gtk_media_stream_seek_success(self_: *mut GtkMediaStream);
16105    pub fn gtk_media_stream_set_loop(self_: *mut GtkMediaStream, loop_: gboolean);
16106    pub fn gtk_media_stream_set_muted(self_: *mut GtkMediaStream, muted: gboolean);
16107    pub fn gtk_media_stream_set_playing(self_: *mut GtkMediaStream, playing: gboolean);
16108    pub fn gtk_media_stream_set_volume(self_: *mut GtkMediaStream, volume: c_double);
16109    #[cfg(feature = "v4_4")]
16110    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16111    pub fn gtk_media_stream_stream_ended(self_: *mut GtkMediaStream);
16112    #[cfg(feature = "v4_4")]
16113    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16114    pub fn gtk_media_stream_stream_prepared(
16115        self_: *mut GtkMediaStream,
16116        has_audio: gboolean,
16117        has_video: gboolean,
16118        seekable: gboolean,
16119        duration: i64,
16120    );
16121    #[cfg(feature = "v4_4")]
16122    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16123    pub fn gtk_media_stream_stream_unprepared(self_: *mut GtkMediaStream);
16124    pub fn gtk_media_stream_unprepared(self_: *mut GtkMediaStream);
16125    pub fn gtk_media_stream_unrealize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16126    pub fn gtk_media_stream_update(self_: *mut GtkMediaStream, timestamp: i64);
16127
16128    //=========================================================================
16129    // GtkMenuButton
16130    //=========================================================================
16131    pub fn gtk_menu_button_get_type() -> GType;
16132    pub fn gtk_menu_button_new() -> *mut GtkWidget;
16133    #[cfg(feature = "v4_10")]
16134    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16135    pub fn gtk_menu_button_get_active(menu_button: *mut GtkMenuButton) -> gboolean;
16136    #[cfg(feature = "v4_4")]
16137    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16138    pub fn gtk_menu_button_get_always_show_arrow(menu_button: *mut GtkMenuButton) -> gboolean;
16139    #[cfg(feature = "v4_12")]
16140    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16141    pub fn gtk_menu_button_get_can_shrink(menu_button: *mut GtkMenuButton) -> gboolean;
16142    #[cfg(feature = "v4_6")]
16143    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16144    pub fn gtk_menu_button_get_child(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
16145    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
16146    pub fn gtk_menu_button_get_has_frame(menu_button: *mut GtkMenuButton) -> gboolean;
16147    pub fn gtk_menu_button_get_icon_name(menu_button: *mut GtkMenuButton) -> *const c_char;
16148    pub fn gtk_menu_button_get_label(menu_button: *mut GtkMenuButton) -> *const c_char;
16149    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
16150    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
16151    #[cfg(feature = "v4_4")]
16152    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16153    pub fn gtk_menu_button_get_primary(menu_button: *mut GtkMenuButton) -> gboolean;
16154    pub fn gtk_menu_button_get_use_underline(menu_button: *mut GtkMenuButton) -> gboolean;
16155    pub fn gtk_menu_button_popdown(menu_button: *mut GtkMenuButton);
16156    pub fn gtk_menu_button_popup(menu_button: *mut GtkMenuButton);
16157    #[cfg(feature = "v4_10")]
16158    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16159    pub fn gtk_menu_button_set_active(menu_button: *mut GtkMenuButton, active: gboolean);
16160    #[cfg(feature = "v4_4")]
16161    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16162    pub fn gtk_menu_button_set_always_show_arrow(
16163        menu_button: *mut GtkMenuButton,
16164        always_show_arrow: gboolean,
16165    );
16166    #[cfg(feature = "v4_12")]
16167    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16168    pub fn gtk_menu_button_set_can_shrink(menu_button: *mut GtkMenuButton, can_shrink: gboolean);
16169    #[cfg(feature = "v4_6")]
16170    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16171    pub fn gtk_menu_button_set_child(menu_button: *mut GtkMenuButton, child: *mut GtkWidget);
16172    pub fn gtk_menu_button_set_create_popup_func(
16173        menu_button: *mut GtkMenuButton,
16174        func: GtkMenuButtonCreatePopupFunc,
16175        user_data: gpointer,
16176        destroy_notify: glib::GDestroyNotify,
16177    );
16178    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
16179    pub fn gtk_menu_button_set_has_frame(menu_button: *mut GtkMenuButton, has_frame: gboolean);
16180    pub fn gtk_menu_button_set_icon_name(menu_button: *mut GtkMenuButton, icon_name: *const c_char);
16181    pub fn gtk_menu_button_set_label(menu_button: *mut GtkMenuButton, label: *const c_char);
16182    pub fn gtk_menu_button_set_menu_model(
16183        menu_button: *mut GtkMenuButton,
16184        menu_model: *mut gio::GMenuModel,
16185    );
16186    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkPopover);
16187    #[cfg(feature = "v4_4")]
16188    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16189    pub fn gtk_menu_button_set_primary(menu_button: *mut GtkMenuButton, primary: gboolean);
16190    pub fn gtk_menu_button_set_use_underline(
16191        menu_button: *mut GtkMenuButton,
16192        use_underline: gboolean,
16193    );
16194
16195    //=========================================================================
16196    // GtkMessageDialog
16197    //=========================================================================
16198    pub fn gtk_message_dialog_get_type() -> GType;
16199    pub fn gtk_message_dialog_new(
16200        parent: *mut GtkWindow,
16201        flags: GtkDialogFlags,
16202        type_: GtkMessageType,
16203        buttons: GtkButtonsType,
16204        message_format: *const c_char,
16205        ...
16206    ) -> *mut GtkWidget;
16207    pub fn gtk_message_dialog_new_with_markup(
16208        parent: *mut GtkWindow,
16209        flags: GtkDialogFlags,
16210        type_: GtkMessageType,
16211        buttons: GtkButtonsType,
16212        message_format: *const c_char,
16213        ...
16214    ) -> *mut GtkWidget;
16215    pub fn gtk_message_dialog_format_secondary_markup(
16216        message_dialog: *mut GtkMessageDialog,
16217        message_format: *const c_char,
16218        ...
16219    );
16220    pub fn gtk_message_dialog_format_secondary_text(
16221        message_dialog: *mut GtkMessageDialog,
16222        message_format: *const c_char,
16223        ...
16224    );
16225    pub fn gtk_message_dialog_get_message_area(
16226        message_dialog: *mut GtkMessageDialog,
16227    ) -> *mut GtkWidget;
16228    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
16229
16230    //=========================================================================
16231    // GtkMnemonicAction
16232    //=========================================================================
16233    pub fn gtk_mnemonic_action_get_type() -> GType;
16234    pub fn gtk_mnemonic_action_get() -> *mut GtkMnemonicAction;
16235
16236    //=========================================================================
16237    // GtkMnemonicTrigger
16238    //=========================================================================
16239    pub fn gtk_mnemonic_trigger_get_type() -> GType;
16240    pub fn gtk_mnemonic_trigger_new(keyval: c_uint) -> *mut GtkMnemonicTrigger;
16241    pub fn gtk_mnemonic_trigger_get_keyval(self_: *mut GtkMnemonicTrigger) -> c_uint;
16242
16243    //=========================================================================
16244    // GtkMountOperation
16245    //=========================================================================
16246    pub fn gtk_mount_operation_get_type() -> GType;
16247    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
16248    pub fn gtk_mount_operation_get_display(op: *mut GtkMountOperation) -> *mut gdk::GdkDisplay;
16249    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
16250    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
16251    pub fn gtk_mount_operation_set_display(
16252        op: *mut GtkMountOperation,
16253        display: *mut gdk::GdkDisplay,
16254    );
16255    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
16256
16257    //=========================================================================
16258    // GtkMultiFilter
16259    //=========================================================================
16260    pub fn gtk_multi_filter_get_type() -> GType;
16261    pub fn gtk_multi_filter_append(self_: *mut GtkMultiFilter, filter: *mut GtkFilter);
16262    pub fn gtk_multi_filter_remove(self_: *mut GtkMultiFilter, position: c_uint);
16263
16264    //=========================================================================
16265    // GtkMultiSelection
16266    //=========================================================================
16267    pub fn gtk_multi_selection_get_type() -> GType;
16268    pub fn gtk_multi_selection_new(model: *mut gio::GListModel) -> *mut GtkMultiSelection;
16269    pub fn gtk_multi_selection_get_model(self_: *mut GtkMultiSelection) -> *mut gio::GListModel;
16270    pub fn gtk_multi_selection_set_model(
16271        self_: *mut GtkMultiSelection,
16272        model: *mut gio::GListModel,
16273    );
16274
16275    //=========================================================================
16276    // GtkMultiSorter
16277    //=========================================================================
16278    pub fn gtk_multi_sorter_get_type() -> GType;
16279    pub fn gtk_multi_sorter_new() -> *mut GtkMultiSorter;
16280    pub fn gtk_multi_sorter_append(self_: *mut GtkMultiSorter, sorter: *mut GtkSorter);
16281    pub fn gtk_multi_sorter_remove(self_: *mut GtkMultiSorter, position: c_uint);
16282
16283    //=========================================================================
16284    // GtkNamedAction
16285    //=========================================================================
16286    pub fn gtk_named_action_get_type() -> GType;
16287    pub fn gtk_named_action_new(name: *const c_char) -> *mut GtkNamedAction;
16288    pub fn gtk_named_action_get_action_name(self_: *mut GtkNamedAction) -> *const c_char;
16289
16290    //=========================================================================
16291    // GtkNativeDialog
16292    //=========================================================================
16293    pub fn gtk_native_dialog_get_type() -> GType;
16294    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
16295    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
16296    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
16297    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
16298    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
16299    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
16300    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
16301    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
16302    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
16303    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
16304
16305    //=========================================================================
16306    // GtkNeverTrigger
16307    //=========================================================================
16308    pub fn gtk_never_trigger_get_type() -> GType;
16309    pub fn gtk_never_trigger_get() -> *mut GtkNeverTrigger;
16310
16311    //=========================================================================
16312    // GtkNoSelection
16313    //=========================================================================
16314    pub fn gtk_no_selection_get_type() -> GType;
16315    pub fn gtk_no_selection_new(model: *mut gio::GListModel) -> *mut GtkNoSelection;
16316    pub fn gtk_no_selection_get_model(self_: *mut GtkNoSelection) -> *mut gio::GListModel;
16317    pub fn gtk_no_selection_set_model(self_: *mut GtkNoSelection, model: *mut gio::GListModel);
16318
16319    //=========================================================================
16320    // GtkNotebook
16321    //=========================================================================
16322    pub fn gtk_notebook_get_type() -> GType;
16323    pub fn gtk_notebook_new() -> *mut GtkWidget;
16324    pub fn gtk_notebook_append_page(
16325        notebook: *mut GtkNotebook,
16326        child: *mut GtkWidget,
16327        tab_label: *mut GtkWidget,
16328    ) -> c_int;
16329    pub fn gtk_notebook_append_page_menu(
16330        notebook: *mut GtkNotebook,
16331        child: *mut GtkWidget,
16332        tab_label: *mut GtkWidget,
16333        menu_label: *mut GtkWidget,
16334    ) -> c_int;
16335    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
16336    pub fn gtk_notebook_get_action_widget(
16337        notebook: *mut GtkNotebook,
16338        pack_type: GtkPackType,
16339    ) -> *mut GtkWidget;
16340    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
16341    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
16342    pub fn gtk_notebook_get_menu_label(
16343        notebook: *mut GtkNotebook,
16344        child: *mut GtkWidget,
16345    ) -> *mut GtkWidget;
16346    pub fn gtk_notebook_get_menu_label_text(
16347        notebook: *mut GtkNotebook,
16348        child: *mut GtkWidget,
16349    ) -> *const c_char;
16350    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
16351    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
16352        -> *mut GtkWidget;
16353    pub fn gtk_notebook_get_page(
16354        notebook: *mut GtkNotebook,
16355        child: *mut GtkWidget,
16356    ) -> *mut GtkNotebookPage;
16357    pub fn gtk_notebook_get_pages(notebook: *mut GtkNotebook) -> *mut gio::GListModel;
16358    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
16359    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
16360    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
16361    pub fn gtk_notebook_get_tab_detachable(
16362        notebook: *mut GtkNotebook,
16363        child: *mut GtkWidget,
16364    ) -> gboolean;
16365    pub fn gtk_notebook_get_tab_label(
16366        notebook: *mut GtkNotebook,
16367        child: *mut GtkWidget,
16368    ) -> *mut GtkWidget;
16369    pub fn gtk_notebook_get_tab_label_text(
16370        notebook: *mut GtkNotebook,
16371        child: *mut GtkWidget,
16372    ) -> *const c_char;
16373    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
16374    pub fn gtk_notebook_get_tab_reorderable(
16375        notebook: *mut GtkNotebook,
16376        child: *mut GtkWidget,
16377    ) -> gboolean;
16378    pub fn gtk_notebook_insert_page(
16379        notebook: *mut GtkNotebook,
16380        child: *mut GtkWidget,
16381        tab_label: *mut GtkWidget,
16382        position: c_int,
16383    ) -> c_int;
16384    pub fn gtk_notebook_insert_page_menu(
16385        notebook: *mut GtkNotebook,
16386        child: *mut GtkWidget,
16387        tab_label: *mut GtkWidget,
16388        menu_label: *mut GtkWidget,
16389        position: c_int,
16390    ) -> c_int;
16391    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
16392    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
16393    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
16394    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
16395    pub fn gtk_notebook_prepend_page(
16396        notebook: *mut GtkNotebook,
16397        child: *mut GtkWidget,
16398        tab_label: *mut GtkWidget,
16399    ) -> c_int;
16400    pub fn gtk_notebook_prepend_page_menu(
16401        notebook: *mut GtkNotebook,
16402        child: *mut GtkWidget,
16403        tab_label: *mut GtkWidget,
16404        menu_label: *mut GtkWidget,
16405    ) -> c_int;
16406    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
16407    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
16408    pub fn gtk_notebook_reorder_child(
16409        notebook: *mut GtkNotebook,
16410        child: *mut GtkWidget,
16411        position: c_int,
16412    );
16413    pub fn gtk_notebook_set_action_widget(
16414        notebook: *mut GtkNotebook,
16415        widget: *mut GtkWidget,
16416        pack_type: GtkPackType,
16417    );
16418    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
16419    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
16420    pub fn gtk_notebook_set_menu_label(
16421        notebook: *mut GtkNotebook,
16422        child: *mut GtkWidget,
16423        menu_label: *mut GtkWidget,
16424    );
16425    pub fn gtk_notebook_set_menu_label_text(
16426        notebook: *mut GtkNotebook,
16427        child: *mut GtkWidget,
16428        menu_text: *const c_char,
16429    );
16430    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
16431    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
16432    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
16433    pub fn gtk_notebook_set_tab_detachable(
16434        notebook: *mut GtkNotebook,
16435        child: *mut GtkWidget,
16436        detachable: gboolean,
16437    );
16438    pub fn gtk_notebook_set_tab_label(
16439        notebook: *mut GtkNotebook,
16440        child: *mut GtkWidget,
16441        tab_label: *mut GtkWidget,
16442    );
16443    pub fn gtk_notebook_set_tab_label_text(
16444        notebook: *mut GtkNotebook,
16445        child: *mut GtkWidget,
16446        tab_text: *const c_char,
16447    );
16448    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
16449    pub fn gtk_notebook_set_tab_reorderable(
16450        notebook: *mut GtkNotebook,
16451        child: *mut GtkWidget,
16452        reorderable: gboolean,
16453    );
16454
16455    //=========================================================================
16456    // GtkNotebookPage
16457    //=========================================================================
16458    pub fn gtk_notebook_page_get_type() -> GType;
16459    pub fn gtk_notebook_page_get_child(page: *mut GtkNotebookPage) -> *mut GtkWidget;
16460
16461    //=========================================================================
16462    // GtkNothingAction
16463    //=========================================================================
16464    pub fn gtk_nothing_action_get_type() -> GType;
16465    pub fn gtk_nothing_action_get() -> *mut GtkNothingAction;
16466
16467    //=========================================================================
16468    // GtkNumericSorter
16469    //=========================================================================
16470    pub fn gtk_numeric_sorter_get_type() -> GType;
16471    pub fn gtk_numeric_sorter_new(expression: *mut GtkExpression) -> *mut GtkNumericSorter;
16472    pub fn gtk_numeric_sorter_get_expression(self_: *mut GtkNumericSorter) -> *mut GtkExpression;
16473    pub fn gtk_numeric_sorter_get_sort_order(self_: *mut GtkNumericSorter) -> GtkSortType;
16474    pub fn gtk_numeric_sorter_set_expression(
16475        self_: *mut GtkNumericSorter,
16476        expression: *mut GtkExpression,
16477    );
16478    pub fn gtk_numeric_sorter_set_sort_order(self_: *mut GtkNumericSorter, sort_order: GtkSortType);
16479
16480    //=========================================================================
16481    // GtkObjectExpression
16482    //=========================================================================
16483    pub fn gtk_object_expression_get_type() -> GType;
16484    pub fn gtk_object_expression_new(object: *mut gobject::GObject) -> *mut GtkObjectExpression;
16485    pub fn gtk_object_expression_get_object(
16486        expression: *mut GtkObjectExpression,
16487    ) -> *mut gobject::GObject;
16488
16489    //=========================================================================
16490    // GtkOverlay
16491    //=========================================================================
16492    pub fn gtk_overlay_get_type() -> GType;
16493    pub fn gtk_overlay_new() -> *mut GtkWidget;
16494    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16495    pub fn gtk_overlay_get_child(overlay: *mut GtkOverlay) -> *mut GtkWidget;
16496    pub fn gtk_overlay_get_clip_overlay(
16497        overlay: *mut GtkOverlay,
16498        widget: *mut GtkWidget,
16499    ) -> gboolean;
16500    pub fn gtk_overlay_get_measure_overlay(
16501        overlay: *mut GtkOverlay,
16502        widget: *mut GtkWidget,
16503    ) -> gboolean;
16504    pub fn gtk_overlay_remove_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16505    pub fn gtk_overlay_set_child(overlay: *mut GtkOverlay, child: *mut GtkWidget);
16506    pub fn gtk_overlay_set_clip_overlay(
16507        overlay: *mut GtkOverlay,
16508        widget: *mut GtkWidget,
16509        clip_overlay: gboolean,
16510    );
16511    pub fn gtk_overlay_set_measure_overlay(
16512        overlay: *mut GtkOverlay,
16513        widget: *mut GtkWidget,
16514        measure: gboolean,
16515    );
16516
16517    //=========================================================================
16518    // GtkOverlayLayout
16519    //=========================================================================
16520    pub fn gtk_overlay_layout_get_type() -> GType;
16521    pub fn gtk_overlay_layout_new() -> *mut GtkLayoutManager;
16522
16523    //=========================================================================
16524    // GtkOverlayLayoutChild
16525    //=========================================================================
16526    pub fn gtk_overlay_layout_child_get_type() -> GType;
16527    pub fn gtk_overlay_layout_child_get_clip_overlay(child: *mut GtkOverlayLayoutChild)
16528        -> gboolean;
16529    pub fn gtk_overlay_layout_child_get_measure(child: *mut GtkOverlayLayoutChild) -> gboolean;
16530    pub fn gtk_overlay_layout_child_set_clip_overlay(
16531        child: *mut GtkOverlayLayoutChild,
16532        clip_overlay: gboolean,
16533    );
16534    pub fn gtk_overlay_layout_child_set_measure(
16535        child: *mut GtkOverlayLayoutChild,
16536        measure: gboolean,
16537    );
16538
16539    //=========================================================================
16540    // GtkPadController
16541    //=========================================================================
16542    pub fn gtk_pad_controller_get_type() -> GType;
16543    pub fn gtk_pad_controller_new(
16544        group: *mut gio::GActionGroup,
16545        pad: *mut gdk::GdkDevice,
16546    ) -> *mut GtkPadController;
16547    pub fn gtk_pad_controller_set_action(
16548        controller: *mut GtkPadController,
16549        type_: GtkPadActionType,
16550        index: c_int,
16551        mode: c_int,
16552        label: *const c_char,
16553        action_name: *const c_char,
16554    );
16555    pub fn gtk_pad_controller_set_action_entries(
16556        controller: *mut GtkPadController,
16557        entries: *const GtkPadActionEntry,
16558        n_entries: c_int,
16559    );
16560
16561    //=========================================================================
16562    // GtkPageSetup
16563    //=========================================================================
16564    pub fn gtk_page_setup_get_type() -> GType;
16565    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
16566    pub fn gtk_page_setup_new_from_file(
16567        file_name: *const c_char,
16568        error: *mut *mut glib::GError,
16569    ) -> *mut GtkPageSetup;
16570    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
16571    pub fn gtk_page_setup_new_from_key_file(
16572        key_file: *mut glib::GKeyFile,
16573        group_name: *const c_char,
16574        error: *mut *mut glib::GError,
16575    ) -> *mut GtkPageSetup;
16576    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
16577    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16578    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16579    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
16580    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16581    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16582    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16583    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
16584    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16585    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16586    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16587    pub fn gtk_page_setup_load_file(
16588        setup: *mut GtkPageSetup,
16589        file_name: *const c_char,
16590        error: *mut *mut glib::GError,
16591    ) -> gboolean;
16592    pub fn gtk_page_setup_load_key_file(
16593        setup: *mut GtkPageSetup,
16594        key_file: *mut glib::GKeyFile,
16595        group_name: *const c_char,
16596        error: *mut *mut glib::GError,
16597    ) -> gboolean;
16598    pub fn gtk_page_setup_set_bottom_margin(
16599        setup: *mut GtkPageSetup,
16600        margin: c_double,
16601        unit: GtkUnit,
16602    );
16603    pub fn gtk_page_setup_set_left_margin(
16604        setup: *mut GtkPageSetup,
16605        margin: c_double,
16606        unit: GtkUnit,
16607    );
16608    pub fn gtk_page_setup_set_orientation(
16609        setup: *mut GtkPageSetup,
16610        orientation: GtkPageOrientation,
16611    );
16612    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
16613    pub fn gtk_page_setup_set_paper_size_and_default_margins(
16614        setup: *mut GtkPageSetup,
16615        size: *mut GtkPaperSize,
16616    );
16617    pub fn gtk_page_setup_set_right_margin(
16618        setup: *mut GtkPageSetup,
16619        margin: c_double,
16620        unit: GtkUnit,
16621    );
16622    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
16623    pub fn gtk_page_setup_to_file(
16624        setup: *mut GtkPageSetup,
16625        file_name: *const c_char,
16626        error: *mut *mut glib::GError,
16627    ) -> gboolean;
16628    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
16629    pub fn gtk_page_setup_to_key_file(
16630        setup: *mut GtkPageSetup,
16631        key_file: *mut glib::GKeyFile,
16632        group_name: *const c_char,
16633    );
16634
16635    //=========================================================================
16636    // GtkPageSetupUnixDialog
16637    //=========================================================================
16638    pub fn gtk_page_setup_unix_dialog_get_type() -> GType;
16639    pub fn gtk_page_setup_unix_dialog_new(
16640        title: *const c_char,
16641        parent: *mut GtkWindow,
16642    ) -> *mut GtkWidget;
16643    pub fn gtk_page_setup_unix_dialog_get_page_setup(
16644        dialog: *mut GtkPageSetupUnixDialog,
16645    ) -> *mut GtkPageSetup;
16646    pub fn gtk_page_setup_unix_dialog_get_print_settings(
16647        dialog: *mut GtkPageSetupUnixDialog,
16648    ) -> *mut GtkPrintSettings;
16649    pub fn gtk_page_setup_unix_dialog_set_page_setup(
16650        dialog: *mut GtkPageSetupUnixDialog,
16651        page_setup: *mut GtkPageSetup,
16652    );
16653    pub fn gtk_page_setup_unix_dialog_set_print_settings(
16654        dialog: *mut GtkPageSetupUnixDialog,
16655        print_settings: *mut GtkPrintSettings,
16656    );
16657
16658    //=========================================================================
16659    // GtkPaned
16660    //=========================================================================
16661    pub fn gtk_paned_get_type() -> GType;
16662    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
16663    pub fn gtk_paned_get_end_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16664    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
16665    pub fn gtk_paned_get_resize_end_child(paned: *mut GtkPaned) -> gboolean;
16666    pub fn gtk_paned_get_resize_start_child(paned: *mut GtkPaned) -> gboolean;
16667    pub fn gtk_paned_get_shrink_end_child(paned: *mut GtkPaned) -> gboolean;
16668    pub fn gtk_paned_get_shrink_start_child(paned: *mut GtkPaned) -> gboolean;
16669    pub fn gtk_paned_get_start_child(paned: *mut GtkPaned) -> *mut GtkWidget;
16670    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
16671    pub fn gtk_paned_set_end_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16672    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
16673    pub fn gtk_paned_set_resize_end_child(paned: *mut GtkPaned, resize: gboolean);
16674    pub fn gtk_paned_set_resize_start_child(paned: *mut GtkPaned, resize: gboolean);
16675    pub fn gtk_paned_set_shrink_end_child(paned: *mut GtkPaned, resize: gboolean);
16676    pub fn gtk_paned_set_shrink_start_child(paned: *mut GtkPaned, resize: gboolean);
16677    pub fn gtk_paned_set_start_child(paned: *mut GtkPaned, child: *mut GtkWidget);
16678    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
16679
16680    //=========================================================================
16681    // GtkParamSpecExpression
16682    //=========================================================================
16683    pub fn gtk_param_expression_get_type() -> GType;
16684
16685    //=========================================================================
16686    // GtkPasswordEntry
16687    //=========================================================================
16688    pub fn gtk_password_entry_get_type() -> GType;
16689    pub fn gtk_password_entry_new() -> *mut GtkWidget;
16690    pub fn gtk_password_entry_get_extra_menu(entry: *mut GtkPasswordEntry) -> *mut gio::GMenuModel;
16691    pub fn gtk_password_entry_get_show_peek_icon(entry: *mut GtkPasswordEntry) -> gboolean;
16692    pub fn gtk_password_entry_set_extra_menu(
16693        entry: *mut GtkPasswordEntry,
16694        model: *mut gio::GMenuModel,
16695    );
16696    pub fn gtk_password_entry_set_show_peek_icon(
16697        entry: *mut GtkPasswordEntry,
16698        show_peek_icon: gboolean,
16699    );
16700
16701    //=========================================================================
16702    // GtkPasswordEntryBuffer
16703    //=========================================================================
16704    #[cfg(feature = "v4_4")]
16705    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16706    pub fn gtk_password_entry_buffer_get_type() -> GType;
16707    #[cfg(feature = "v4_4")]
16708    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16709    pub fn gtk_password_entry_buffer_new() -> *mut GtkEntryBuffer;
16710
16711    //=========================================================================
16712    // GtkPicture
16713    //=========================================================================
16714    pub fn gtk_picture_get_type() -> GType;
16715    pub fn gtk_picture_new() -> *mut GtkWidget;
16716    pub fn gtk_picture_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
16717    pub fn gtk_picture_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
16718    pub fn gtk_picture_new_for_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
16719    pub fn gtk_picture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
16720    pub fn gtk_picture_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
16721    pub fn gtk_picture_get_alternative_text(self_: *mut GtkPicture) -> *const c_char;
16722    pub fn gtk_picture_get_can_shrink(self_: *mut GtkPicture) -> gboolean;
16723    #[cfg(feature = "v4_8")]
16724    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
16725    pub fn gtk_picture_get_content_fit(self_: *mut GtkPicture) -> GtkContentFit;
16726    pub fn gtk_picture_get_file(self_: *mut GtkPicture) -> *mut gio::GFile;
16727    pub fn gtk_picture_get_keep_aspect_ratio(self_: *mut GtkPicture) -> gboolean;
16728    pub fn gtk_picture_get_paintable(self_: *mut GtkPicture) -> *mut gdk::GdkPaintable;
16729    pub fn gtk_picture_set_alternative_text(
16730        self_: *mut GtkPicture,
16731        alternative_text: *const c_char,
16732    );
16733    pub fn gtk_picture_set_can_shrink(self_: *mut GtkPicture, can_shrink: gboolean);
16734    #[cfg(feature = "v4_8")]
16735    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
16736    pub fn gtk_picture_set_content_fit(self_: *mut GtkPicture, content_fit: GtkContentFit);
16737    pub fn gtk_picture_set_file(self_: *mut GtkPicture, file: *mut gio::GFile);
16738    pub fn gtk_picture_set_filename(self_: *mut GtkPicture, filename: *const c_char);
16739    pub fn gtk_picture_set_keep_aspect_ratio(self_: *mut GtkPicture, keep_aspect_ratio: gboolean);
16740    pub fn gtk_picture_set_paintable(self_: *mut GtkPicture, paintable: *mut gdk::GdkPaintable);
16741    pub fn gtk_picture_set_pixbuf(self_: *mut GtkPicture, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
16742    pub fn gtk_picture_set_resource(self_: *mut GtkPicture, resource_path: *const c_char);
16743
16744    //=========================================================================
16745    // GtkPopover
16746    //=========================================================================
16747    pub fn gtk_popover_get_type() -> GType;
16748    pub fn gtk_popover_new() -> *mut GtkWidget;
16749    pub fn gtk_popover_get_autohide(popover: *mut GtkPopover) -> gboolean;
16750    pub fn gtk_popover_get_cascade_popdown(popover: *mut GtkPopover) -> gboolean;
16751    pub fn gtk_popover_get_child(popover: *mut GtkPopover) -> *mut GtkWidget;
16752    pub fn gtk_popover_get_has_arrow(popover: *mut GtkPopover) -> gboolean;
16753    pub fn gtk_popover_get_mnemonics_visible(popover: *mut GtkPopover) -> gboolean;
16754    pub fn gtk_popover_get_offset(
16755        popover: *mut GtkPopover,
16756        x_offset: *mut c_int,
16757        y_offset: *mut c_int,
16758    );
16759    pub fn gtk_popover_get_pointing_to(
16760        popover: *mut GtkPopover,
16761        rect: *mut gdk::GdkRectangle,
16762    ) -> gboolean;
16763    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
16764    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
16765    pub fn gtk_popover_popup(popover: *mut GtkPopover);
16766    pub fn gtk_popover_present(popover: *mut GtkPopover);
16767    pub fn gtk_popover_set_autohide(popover: *mut GtkPopover, autohide: gboolean);
16768    pub fn gtk_popover_set_cascade_popdown(popover: *mut GtkPopover, cascade_popdown: gboolean);
16769    pub fn gtk_popover_set_child(popover: *mut GtkPopover, child: *mut GtkWidget);
16770    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
16771    pub fn gtk_popover_set_has_arrow(popover: *mut GtkPopover, has_arrow: gboolean);
16772    pub fn gtk_popover_set_mnemonics_visible(popover: *mut GtkPopover, mnemonics_visible: gboolean);
16773    pub fn gtk_popover_set_offset(popover: *mut GtkPopover, x_offset: c_int, y_offset: c_int);
16774    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
16775    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
16776
16777    //=========================================================================
16778    // GtkPopoverMenu
16779    //=========================================================================
16780    pub fn gtk_popover_menu_get_type() -> GType;
16781    pub fn gtk_popover_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
16782    pub fn gtk_popover_menu_new_from_model_full(
16783        model: *mut gio::GMenuModel,
16784        flags: GtkPopoverMenuFlags,
16785    ) -> *mut GtkWidget;
16786    pub fn gtk_popover_menu_add_child(
16787        popover: *mut GtkPopoverMenu,
16788        child: *mut GtkWidget,
16789        id: *const c_char,
16790    ) -> gboolean;
16791    #[cfg(feature = "v4_14")]
16792    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16793    pub fn gtk_popover_menu_get_flags(popover: *mut GtkPopoverMenu) -> GtkPopoverMenuFlags;
16794    pub fn gtk_popover_menu_get_menu_model(popover: *mut GtkPopoverMenu) -> *mut gio::GMenuModel;
16795    pub fn gtk_popover_menu_remove_child(
16796        popover: *mut GtkPopoverMenu,
16797        child: *mut GtkWidget,
16798    ) -> gboolean;
16799    #[cfg(feature = "v4_14")]
16800    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16801    pub fn gtk_popover_menu_set_flags(popover: *mut GtkPopoverMenu, flags: GtkPopoverMenuFlags);
16802    pub fn gtk_popover_menu_set_menu_model(
16803        popover: *mut GtkPopoverMenu,
16804        model: *mut gio::GMenuModel,
16805    );
16806
16807    //=========================================================================
16808    // GtkPopoverMenuBar
16809    //=========================================================================
16810    pub fn gtk_popover_menu_bar_get_type() -> GType;
16811    pub fn gtk_popover_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
16812    pub fn gtk_popover_menu_bar_add_child(
16813        bar: *mut GtkPopoverMenuBar,
16814        child: *mut GtkWidget,
16815        id: *const c_char,
16816    ) -> gboolean;
16817    pub fn gtk_popover_menu_bar_get_menu_model(bar: *mut GtkPopoverMenuBar)
16818        -> *mut gio::GMenuModel;
16819    pub fn gtk_popover_menu_bar_remove_child(
16820        bar: *mut GtkPopoverMenuBar,
16821        child: *mut GtkWidget,
16822    ) -> gboolean;
16823    pub fn gtk_popover_menu_bar_set_menu_model(
16824        bar: *mut GtkPopoverMenuBar,
16825        model: *mut gio::GMenuModel,
16826    );
16827
16828    //=========================================================================
16829    // GtkPrintContext
16830    //=========================================================================
16831    pub fn gtk_print_context_get_type() -> GType;
16832    pub fn gtk_print_context_create_pango_context(
16833        context: *mut GtkPrintContext,
16834    ) -> *mut pango::PangoContext;
16835    pub fn gtk_print_context_create_pango_layout(
16836        context: *mut GtkPrintContext,
16837    ) -> *mut pango::PangoLayout;
16838    pub fn gtk_print_context_get_cairo_context(
16839        context: *mut GtkPrintContext,
16840    ) -> *mut cairo::cairo_t;
16841    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
16842    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
16843    pub fn gtk_print_context_get_hard_margins(
16844        context: *mut GtkPrintContext,
16845        top: *mut c_double,
16846        bottom: *mut c_double,
16847        left: *mut c_double,
16848        right: *mut c_double,
16849    ) -> gboolean;
16850    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
16851    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
16852    pub fn gtk_print_context_get_pango_fontmap(
16853        context: *mut GtkPrintContext,
16854    ) -> *mut pango::PangoFontMap;
16855    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
16856    pub fn gtk_print_context_set_cairo_context(
16857        context: *mut GtkPrintContext,
16858        cr: *mut cairo::cairo_t,
16859        dpi_x: c_double,
16860        dpi_y: c_double,
16861    );
16862
16863    //=========================================================================
16864    // GtkPrintDialog
16865    //=========================================================================
16866    #[cfg(feature = "v4_14")]
16867    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16868    pub fn gtk_print_dialog_get_type() -> GType;
16869    #[cfg(feature = "v4_14")]
16870    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16871    pub fn gtk_print_dialog_new() -> *mut GtkPrintDialog;
16872    #[cfg(feature = "v4_14")]
16873    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16874    pub fn gtk_print_dialog_get_accept_label(self_: *mut GtkPrintDialog) -> *const c_char;
16875    #[cfg(feature = "v4_14")]
16876    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16877    pub fn gtk_print_dialog_get_modal(self_: *mut GtkPrintDialog) -> gboolean;
16878    #[cfg(feature = "v4_14")]
16879    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16880    pub fn gtk_print_dialog_get_page_setup(self_: *mut GtkPrintDialog) -> *mut GtkPageSetup;
16881    #[cfg(feature = "v4_14")]
16882    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16883    pub fn gtk_print_dialog_get_print_settings(self_: *mut GtkPrintDialog)
16884        -> *mut GtkPrintSettings;
16885    #[cfg(feature = "v4_14")]
16886    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16887    pub fn gtk_print_dialog_get_title(self_: *mut GtkPrintDialog) -> *const c_char;
16888    #[cfg(feature = "v4_14")]
16889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16890    pub fn gtk_print_dialog_print(
16891        self_: *mut GtkPrintDialog,
16892        parent: *mut GtkWindow,
16893        setup: *mut GtkPrintSetup,
16894        cancellable: *mut gio::GCancellable,
16895        callback: gio::GAsyncReadyCallback,
16896        user_data: gpointer,
16897    );
16898    #[cfg(feature = "v4_14")]
16899    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16900    pub fn gtk_print_dialog_print_file(
16901        self_: *mut GtkPrintDialog,
16902        parent: *mut GtkWindow,
16903        setup: *mut GtkPrintSetup,
16904        file: *mut gio::GFile,
16905        cancellable: *mut gio::GCancellable,
16906        callback: gio::GAsyncReadyCallback,
16907        user_data: gpointer,
16908    );
16909    #[cfg(feature = "v4_14")]
16910    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16911    pub fn gtk_print_dialog_print_file_finish(
16912        self_: *mut GtkPrintDialog,
16913        result: *mut gio::GAsyncResult,
16914        error: *mut *mut glib::GError,
16915    ) -> gboolean;
16916    #[cfg(feature = "v4_14")]
16917    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16918    pub fn gtk_print_dialog_print_finish(
16919        self_: *mut GtkPrintDialog,
16920        result: *mut gio::GAsyncResult,
16921        error: *mut *mut glib::GError,
16922    ) -> *mut gio::GOutputStream;
16923    #[cfg(feature = "v4_14")]
16924    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16925    pub fn gtk_print_dialog_set_accept_label(
16926        self_: *mut GtkPrintDialog,
16927        accept_label: *const c_char,
16928    );
16929    #[cfg(feature = "v4_14")]
16930    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16931    pub fn gtk_print_dialog_set_modal(self_: *mut GtkPrintDialog, modal: gboolean);
16932    #[cfg(feature = "v4_14")]
16933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16934    pub fn gtk_print_dialog_set_page_setup(
16935        self_: *mut GtkPrintDialog,
16936        page_setup: *mut GtkPageSetup,
16937    );
16938    #[cfg(feature = "v4_14")]
16939    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16940    pub fn gtk_print_dialog_set_print_settings(
16941        self_: *mut GtkPrintDialog,
16942        print_settings: *mut GtkPrintSettings,
16943    );
16944    #[cfg(feature = "v4_14")]
16945    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16946    pub fn gtk_print_dialog_set_title(self_: *mut GtkPrintDialog, title: *const c_char);
16947    #[cfg(feature = "v4_14")]
16948    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16949    pub fn gtk_print_dialog_setup(
16950        self_: *mut GtkPrintDialog,
16951        parent: *mut GtkWindow,
16952        cancellable: *mut gio::GCancellable,
16953        callback: gio::GAsyncReadyCallback,
16954        user_data: gpointer,
16955    );
16956    #[cfg(feature = "v4_14")]
16957    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
16958    pub fn gtk_print_dialog_setup_finish(
16959        self_: *mut GtkPrintDialog,
16960        result: *mut gio::GAsyncResult,
16961        error: *mut *mut glib::GError,
16962    ) -> *mut GtkPrintSetup;
16963
16964    //=========================================================================
16965    // GtkPrintJob
16966    //=========================================================================
16967    pub fn gtk_print_job_get_type() -> GType;
16968    pub fn gtk_print_job_new(
16969        title: *const c_char,
16970        printer: *mut GtkPrinter,
16971        settings: *mut GtkPrintSettings,
16972        page_setup: *mut GtkPageSetup,
16973    ) -> *mut GtkPrintJob;
16974    pub fn gtk_print_job_get_collate(job: *mut GtkPrintJob) -> gboolean;
16975    pub fn gtk_print_job_get_n_up(job: *mut GtkPrintJob) -> c_uint;
16976    pub fn gtk_print_job_get_n_up_layout(job: *mut GtkPrintJob) -> GtkNumberUpLayout;
16977    pub fn gtk_print_job_get_num_copies(job: *mut GtkPrintJob) -> c_int;
16978    pub fn gtk_print_job_get_page_ranges(
16979        job: *mut GtkPrintJob,
16980        n_ranges: *mut c_int,
16981    ) -> *mut GtkPageRange;
16982    pub fn gtk_print_job_get_page_set(job: *mut GtkPrintJob) -> GtkPageSet;
16983    pub fn gtk_print_job_get_pages(job: *mut GtkPrintJob) -> GtkPrintPages;
16984    pub fn gtk_print_job_get_printer(job: *mut GtkPrintJob) -> *mut GtkPrinter;
16985    pub fn gtk_print_job_get_reverse(job: *mut GtkPrintJob) -> gboolean;
16986    pub fn gtk_print_job_get_rotate(job: *mut GtkPrintJob) -> gboolean;
16987    pub fn gtk_print_job_get_scale(job: *mut GtkPrintJob) -> c_double;
16988    pub fn gtk_print_job_get_settings(job: *mut GtkPrintJob) -> *mut GtkPrintSettings;
16989    pub fn gtk_print_job_get_status(job: *mut GtkPrintJob) -> GtkPrintStatus;
16990    pub fn gtk_print_job_get_surface(
16991        job: *mut GtkPrintJob,
16992        error: *mut *mut glib::GError,
16993    ) -> *mut cairo::cairo_surface_t;
16994    pub fn gtk_print_job_get_title(job: *mut GtkPrintJob) -> *const c_char;
16995    pub fn gtk_print_job_get_track_print_status(job: *mut GtkPrintJob) -> gboolean;
16996    pub fn gtk_print_job_send(
16997        job: *mut GtkPrintJob,
16998        callback: GtkPrintJobCompleteFunc,
16999        user_data: gpointer,
17000        dnotify: glib::GDestroyNotify,
17001    );
17002    pub fn gtk_print_job_set_collate(job: *mut GtkPrintJob, collate: gboolean);
17003    pub fn gtk_print_job_set_n_up(job: *mut GtkPrintJob, n_up: c_uint);
17004    pub fn gtk_print_job_set_n_up_layout(job: *mut GtkPrintJob, layout: GtkNumberUpLayout);
17005    pub fn gtk_print_job_set_num_copies(job: *mut GtkPrintJob, num_copies: c_int);
17006    pub fn gtk_print_job_set_page_ranges(
17007        job: *mut GtkPrintJob,
17008        ranges: *mut GtkPageRange,
17009        n_ranges: c_int,
17010    );
17011    pub fn gtk_print_job_set_page_set(job: *mut GtkPrintJob, page_set: GtkPageSet);
17012    pub fn gtk_print_job_set_pages(job: *mut GtkPrintJob, pages: GtkPrintPages);
17013    pub fn gtk_print_job_set_reverse(job: *mut GtkPrintJob, reverse: gboolean);
17014    pub fn gtk_print_job_set_rotate(job: *mut GtkPrintJob, rotate: gboolean);
17015    pub fn gtk_print_job_set_scale(job: *mut GtkPrintJob, scale: c_double);
17016    pub fn gtk_print_job_set_source_fd(
17017        job: *mut GtkPrintJob,
17018        fd: c_int,
17019        error: *mut *mut glib::GError,
17020    ) -> gboolean;
17021    pub fn gtk_print_job_set_source_file(
17022        job: *mut GtkPrintJob,
17023        filename: *const c_char,
17024        error: *mut *mut glib::GError,
17025    ) -> gboolean;
17026    pub fn gtk_print_job_set_track_print_status(job: *mut GtkPrintJob, track_status: gboolean);
17027
17028    //=========================================================================
17029    // GtkPrintOperation
17030    //=========================================================================
17031    pub fn gtk_print_operation_get_type() -> GType;
17032    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
17033    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
17034    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
17035    pub fn gtk_print_operation_get_default_page_setup(
17036        op: *mut GtkPrintOperation,
17037    ) -> *mut GtkPageSetup;
17038    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
17039    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
17040    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
17041    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
17042    pub fn gtk_print_operation_get_print_settings(
17043        op: *mut GtkPrintOperation,
17044    ) -> *mut GtkPrintSettings;
17045    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
17046    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
17047    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
17048    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
17049    pub fn gtk_print_operation_run(
17050        op: *mut GtkPrintOperation,
17051        action: GtkPrintOperationAction,
17052        parent: *mut GtkWindow,
17053        error: *mut *mut glib::GError,
17054    ) -> GtkPrintOperationResult;
17055    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
17056    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
17057    pub fn gtk_print_operation_set_custom_tab_label(
17058        op: *mut GtkPrintOperation,
17059        label: *const c_char,
17060    );
17061    pub fn gtk_print_operation_set_default_page_setup(
17062        op: *mut GtkPrintOperation,
17063        default_page_setup: *mut GtkPageSetup,
17064    );
17065    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
17066    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
17067    pub fn gtk_print_operation_set_export_filename(
17068        op: *mut GtkPrintOperation,
17069        filename: *const c_char,
17070    );
17071    pub fn gtk_print_operation_set_has_selection(
17072        op: *mut GtkPrintOperation,
17073        has_selection: gboolean,
17074    );
17075    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
17076    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
17077    pub fn gtk_print_operation_set_print_settings(
17078        op: *mut GtkPrintOperation,
17079        print_settings: *mut GtkPrintSettings,
17080    );
17081    pub fn gtk_print_operation_set_show_progress(
17082        op: *mut GtkPrintOperation,
17083        show_progress: gboolean,
17084    );
17085    pub fn gtk_print_operation_set_support_selection(
17086        op: *mut GtkPrintOperation,
17087        support_selection: gboolean,
17088    );
17089    pub fn gtk_print_operation_set_track_print_status(
17090        op: *mut GtkPrintOperation,
17091        track_status: gboolean,
17092    );
17093    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
17094    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
17095
17096    //=========================================================================
17097    // GtkPrintSettings
17098    //=========================================================================
17099    pub fn gtk_print_settings_get_type() -> GType;
17100    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
17101    pub fn gtk_print_settings_new_from_file(
17102        file_name: *const c_char,
17103        error: *mut *mut glib::GError,
17104    ) -> *mut GtkPrintSettings;
17105    pub fn gtk_print_settings_new_from_gvariant(
17106        variant: *mut glib::GVariant,
17107    ) -> *mut GtkPrintSettings;
17108    pub fn gtk_print_settings_new_from_key_file(
17109        key_file: *mut glib::GKeyFile,
17110        group_name: *const c_char,
17111        error: *mut *mut glib::GError,
17112    ) -> *mut GtkPrintSettings;
17113    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
17114    pub fn gtk_print_settings_foreach(
17115        settings: *mut GtkPrintSettings,
17116        func: GtkPrintSettingsFunc,
17117        user_data: gpointer,
17118    );
17119    pub fn gtk_print_settings_get(
17120        settings: *mut GtkPrintSettings,
17121        key: *const c_char,
17122    ) -> *const c_char;
17123    pub fn gtk_print_settings_get_bool(
17124        settings: *mut GtkPrintSettings,
17125        key: *const c_char,
17126    ) -> gboolean;
17127    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
17128    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
17129    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
17130    pub fn gtk_print_settings_get_double(
17131        settings: *mut GtkPrintSettings,
17132        key: *const c_char,
17133    ) -> c_double;
17134    pub fn gtk_print_settings_get_double_with_default(
17135        settings: *mut GtkPrintSettings,
17136        key: *const c_char,
17137        def: c_double,
17138    ) -> c_double;
17139    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
17140    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
17141    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
17142        -> c_int;
17143    pub fn gtk_print_settings_get_int_with_default(
17144        settings: *mut GtkPrintSettings,
17145        key: *const c_char,
17146        def: c_int,
17147    ) -> c_int;
17148    pub fn gtk_print_settings_get_length(
17149        settings: *mut GtkPrintSettings,
17150        key: *const c_char,
17151        unit: GtkUnit,
17152    ) -> c_double;
17153    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
17154    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
17155    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
17156    pub fn gtk_print_settings_get_number_up_layout(
17157        settings: *mut GtkPrintSettings,
17158    ) -> GtkNumberUpLayout;
17159    pub fn gtk_print_settings_get_orientation(
17160        settings: *mut GtkPrintSettings,
17161    ) -> GtkPageOrientation;
17162    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
17163    pub fn gtk_print_settings_get_page_ranges(
17164        settings: *mut GtkPrintSettings,
17165        num_ranges: *mut c_int,
17166    ) -> *mut GtkPageRange;
17167    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
17168    pub fn gtk_print_settings_get_paper_height(
17169        settings: *mut GtkPrintSettings,
17170        unit: GtkUnit,
17171    ) -> c_double;
17172    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
17173    pub fn gtk_print_settings_get_paper_width(
17174        settings: *mut GtkPrintSettings,
17175        unit: GtkUnit,
17176    ) -> c_double;
17177    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
17178    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
17179    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
17180    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
17181    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
17182    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
17183    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
17184    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
17185    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
17186    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
17187    pub fn gtk_print_settings_has_key(
17188        settings: *mut GtkPrintSettings,
17189        key: *const c_char,
17190    ) -> gboolean;
17191    pub fn gtk_print_settings_load_file(
17192        settings: *mut GtkPrintSettings,
17193        file_name: *const c_char,
17194        error: *mut *mut glib::GError,
17195    ) -> gboolean;
17196    pub fn gtk_print_settings_load_key_file(
17197        settings: *mut GtkPrintSettings,
17198        key_file: *mut glib::GKeyFile,
17199        group_name: *const c_char,
17200        error: *mut *mut glib::GError,
17201    ) -> gboolean;
17202    pub fn gtk_print_settings_set(
17203        settings: *mut GtkPrintSettings,
17204        key: *const c_char,
17205        value: *const c_char,
17206    );
17207    pub fn gtk_print_settings_set_bool(
17208        settings: *mut GtkPrintSettings,
17209        key: *const c_char,
17210        value: gboolean,
17211    );
17212    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
17213    pub fn gtk_print_settings_set_default_source(
17214        settings: *mut GtkPrintSettings,
17215        default_source: *const c_char,
17216    );
17217    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
17218    pub fn gtk_print_settings_set_double(
17219        settings: *mut GtkPrintSettings,
17220        key: *const c_char,
17221        value: c_double,
17222    );
17223    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
17224    pub fn gtk_print_settings_set_finishings(
17225        settings: *mut GtkPrintSettings,
17226        finishings: *const c_char,
17227    );
17228    pub fn gtk_print_settings_set_int(
17229        settings: *mut GtkPrintSettings,
17230        key: *const c_char,
17231        value: c_int,
17232    );
17233    pub fn gtk_print_settings_set_length(
17234        settings: *mut GtkPrintSettings,
17235        key: *const c_char,
17236        value: c_double,
17237        unit: GtkUnit,
17238    );
17239    pub fn gtk_print_settings_set_media_type(
17240        settings: *mut GtkPrintSettings,
17241        media_type: *const c_char,
17242    );
17243    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
17244    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
17245    pub fn gtk_print_settings_set_number_up_layout(
17246        settings: *mut GtkPrintSettings,
17247        number_up_layout: GtkNumberUpLayout,
17248    );
17249    pub fn gtk_print_settings_set_orientation(
17250        settings: *mut GtkPrintSettings,
17251        orientation: GtkPageOrientation,
17252    );
17253    pub fn gtk_print_settings_set_output_bin(
17254        settings: *mut GtkPrintSettings,
17255        output_bin: *const c_char,
17256    );
17257    pub fn gtk_print_settings_set_page_ranges(
17258        settings: *mut GtkPrintSettings,
17259        page_ranges: *mut GtkPageRange,
17260        num_ranges: c_int,
17261    );
17262    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
17263    pub fn gtk_print_settings_set_paper_height(
17264        settings: *mut GtkPrintSettings,
17265        height: c_double,
17266        unit: GtkUnit,
17267    );
17268    pub fn gtk_print_settings_set_paper_size(
17269        settings: *mut GtkPrintSettings,
17270        paper_size: *mut GtkPaperSize,
17271    );
17272    pub fn gtk_print_settings_set_paper_width(
17273        settings: *mut GtkPrintSettings,
17274        width: c_double,
17275        unit: GtkUnit,
17276    );
17277    pub fn gtk_print_settings_set_print_pages(
17278        settings: *mut GtkPrintSettings,
17279        pages: GtkPrintPages,
17280    );
17281    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
17282    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
17283    pub fn gtk_print_settings_set_quality(
17284        settings: *mut GtkPrintSettings,
17285        quality: GtkPrintQuality,
17286    );
17287    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
17288    pub fn gtk_print_settings_set_resolution_xy(
17289        settings: *mut GtkPrintSettings,
17290        resolution_x: c_int,
17291        resolution_y: c_int,
17292    );
17293    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
17294    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
17295    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
17296    pub fn gtk_print_settings_to_file(
17297        settings: *mut GtkPrintSettings,
17298        file_name: *const c_char,
17299        error: *mut *mut glib::GError,
17300    ) -> gboolean;
17301    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
17302    pub fn gtk_print_settings_to_key_file(
17303        settings: *mut GtkPrintSettings,
17304        key_file: *mut glib::GKeyFile,
17305        group_name: *const c_char,
17306    );
17307    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
17308
17309    //=========================================================================
17310    // GtkPrintUnixDialog
17311    //=========================================================================
17312    pub fn gtk_print_unix_dialog_get_type() -> GType;
17313    pub fn gtk_print_unix_dialog_new(
17314        title: *const c_char,
17315        parent: *mut GtkWindow,
17316    ) -> *mut GtkWidget;
17317    pub fn gtk_print_unix_dialog_add_custom_tab(
17318        dialog: *mut GtkPrintUnixDialog,
17319        child: *mut GtkWidget,
17320        tab_label: *mut GtkWidget,
17321    );
17322    pub fn gtk_print_unix_dialog_get_current_page(dialog: *mut GtkPrintUnixDialog) -> c_int;
17323    pub fn gtk_print_unix_dialog_get_embed_page_setup(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17324    pub fn gtk_print_unix_dialog_get_has_selection(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17325    pub fn gtk_print_unix_dialog_get_manual_capabilities(
17326        dialog: *mut GtkPrintUnixDialog,
17327    ) -> GtkPrintCapabilities;
17328    pub fn gtk_print_unix_dialog_get_page_setup(
17329        dialog: *mut GtkPrintUnixDialog,
17330    ) -> *mut GtkPageSetup;
17331    pub fn gtk_print_unix_dialog_get_page_setup_set(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17332    pub fn gtk_print_unix_dialog_get_selected_printer(
17333        dialog: *mut GtkPrintUnixDialog,
17334    ) -> *mut GtkPrinter;
17335    pub fn gtk_print_unix_dialog_get_settings(
17336        dialog: *mut GtkPrintUnixDialog,
17337    ) -> *mut GtkPrintSettings;
17338    pub fn gtk_print_unix_dialog_get_support_selection(dialog: *mut GtkPrintUnixDialog)
17339        -> gboolean;
17340    pub fn gtk_print_unix_dialog_set_current_page(
17341        dialog: *mut GtkPrintUnixDialog,
17342        current_page: c_int,
17343    );
17344    pub fn gtk_print_unix_dialog_set_embed_page_setup(
17345        dialog: *mut GtkPrintUnixDialog,
17346        embed: gboolean,
17347    );
17348    pub fn gtk_print_unix_dialog_set_has_selection(
17349        dialog: *mut GtkPrintUnixDialog,
17350        has_selection: gboolean,
17351    );
17352    pub fn gtk_print_unix_dialog_set_manual_capabilities(
17353        dialog: *mut GtkPrintUnixDialog,
17354        capabilities: GtkPrintCapabilities,
17355    );
17356    pub fn gtk_print_unix_dialog_set_page_setup(
17357        dialog: *mut GtkPrintUnixDialog,
17358        page_setup: *mut GtkPageSetup,
17359    );
17360    pub fn gtk_print_unix_dialog_set_settings(
17361        dialog: *mut GtkPrintUnixDialog,
17362        settings: *mut GtkPrintSettings,
17363    );
17364    pub fn gtk_print_unix_dialog_set_support_selection(
17365        dialog: *mut GtkPrintUnixDialog,
17366        support_selection: gboolean,
17367    );
17368
17369    //=========================================================================
17370    // GtkPrinter
17371    //=========================================================================
17372    pub fn gtk_printer_get_type() -> GType;
17373    pub fn gtk_printer_new(
17374        name: *const c_char,
17375        backend: *mut GtkPrintBackend,
17376        virtual_: gboolean,
17377    ) -> *mut GtkPrinter;
17378    pub fn gtk_printer_accepts_pdf(printer: *mut GtkPrinter) -> gboolean;
17379    pub fn gtk_printer_accepts_ps(printer: *mut GtkPrinter) -> gboolean;
17380    pub fn gtk_printer_compare(a: *mut GtkPrinter, b: *mut GtkPrinter) -> c_int;
17381    pub fn gtk_printer_get_backend(printer: *mut GtkPrinter) -> *mut GtkPrintBackend;
17382    pub fn gtk_printer_get_capabilities(printer: *mut GtkPrinter) -> GtkPrintCapabilities;
17383    pub fn gtk_printer_get_default_page_size(printer: *mut GtkPrinter) -> *mut GtkPageSetup;
17384    pub fn gtk_printer_get_description(printer: *mut GtkPrinter) -> *const c_char;
17385    pub fn gtk_printer_get_hard_margins(
17386        printer: *mut GtkPrinter,
17387        top: *mut c_double,
17388        bottom: *mut c_double,
17389        left: *mut c_double,
17390        right: *mut c_double,
17391    ) -> gboolean;
17392    pub fn gtk_printer_get_hard_margins_for_paper_size(
17393        printer: *mut GtkPrinter,
17394        paper_size: *mut GtkPaperSize,
17395        top: *mut c_double,
17396        bottom: *mut c_double,
17397        left: *mut c_double,
17398        right: *mut c_double,
17399    ) -> gboolean;
17400    pub fn gtk_printer_get_icon_name(printer: *mut GtkPrinter) -> *const c_char;
17401    pub fn gtk_printer_get_job_count(printer: *mut GtkPrinter) -> c_int;
17402    pub fn gtk_printer_get_location(printer: *mut GtkPrinter) -> *const c_char;
17403    pub fn gtk_printer_get_name(printer: *mut GtkPrinter) -> *const c_char;
17404    pub fn gtk_printer_get_state_message(printer: *mut GtkPrinter) -> *const c_char;
17405    pub fn gtk_printer_has_details(printer: *mut GtkPrinter) -> gboolean;
17406    pub fn gtk_printer_is_accepting_jobs(printer: *mut GtkPrinter) -> gboolean;
17407    pub fn gtk_printer_is_active(printer: *mut GtkPrinter) -> gboolean;
17408    pub fn gtk_printer_is_default(printer: *mut GtkPrinter) -> gboolean;
17409    pub fn gtk_printer_is_paused(printer: *mut GtkPrinter) -> gboolean;
17410    pub fn gtk_printer_is_virtual(printer: *mut GtkPrinter) -> gboolean;
17411    pub fn gtk_printer_list_papers(printer: *mut GtkPrinter) -> *mut glib::GList;
17412    pub fn gtk_printer_request_details(printer: *mut GtkPrinter);
17413
17414    //=========================================================================
17415    // GtkProgressBar
17416    //=========================================================================
17417    pub fn gtk_progress_bar_get_type() -> GType;
17418    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
17419    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
17420    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
17421    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
17422    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
17423    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
17424    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
17425    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
17426    pub fn gtk_progress_bar_set_ellipsize(
17427        pbar: *mut GtkProgressBar,
17428        mode: pango::PangoEllipsizeMode,
17429    );
17430    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
17431    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
17432    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
17433    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
17434    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
17435
17436    //=========================================================================
17437    // GtkPropertyExpression
17438    //=========================================================================
17439    pub fn gtk_property_expression_get_type() -> GType;
17440    pub fn gtk_property_expression_new(
17441        this_type: GType,
17442        expression: *mut GtkExpression,
17443        property_name: *const c_char,
17444    ) -> *mut GtkPropertyExpression;
17445    pub fn gtk_property_expression_new_for_pspec(
17446        expression: *mut GtkExpression,
17447        pspec: *mut gobject::GParamSpec,
17448    ) -> *mut GtkPropertyExpression;
17449    pub fn gtk_property_expression_get_expression(
17450        expression: *mut GtkPropertyExpression,
17451    ) -> *mut GtkExpression;
17452    pub fn gtk_property_expression_get_pspec(
17453        expression: *mut GtkPropertyExpression,
17454    ) -> *mut gobject::GParamSpec;
17455
17456    //=========================================================================
17457    // GtkRange
17458    //=========================================================================
17459    pub fn gtk_range_get_type() -> GType;
17460    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
17461    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
17462    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
17463    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
17464    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
17465    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
17466    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
17467    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
17468    pub fn gtk_range_get_slider_range(
17469        range: *mut GtkRange,
17470        slider_start: *mut c_int,
17471        slider_end: *mut c_int,
17472    );
17473    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
17474    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
17475    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
17476    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
17477    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
17478    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
17479    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
17480    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
17481    pub fn gtk_range_set_restrict_to_fill_level(
17482        range: *mut GtkRange,
17483        restrict_to_fill_level: gboolean,
17484    );
17485    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
17486    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
17487    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
17488    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
17489
17490    //=========================================================================
17491    // GtkRecentManager
17492    //=========================================================================
17493    pub fn gtk_recent_manager_get_type() -> GType;
17494    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
17495    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
17496    pub fn gtk_recent_manager_add_full(
17497        manager: *mut GtkRecentManager,
17498        uri: *const c_char,
17499        recent_data: *const GtkRecentData,
17500    ) -> gboolean;
17501    pub fn gtk_recent_manager_add_item(
17502        manager: *mut GtkRecentManager,
17503        uri: *const c_char,
17504    ) -> gboolean;
17505    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
17506    pub fn gtk_recent_manager_has_item(
17507        manager: *mut GtkRecentManager,
17508        uri: *const c_char,
17509    ) -> gboolean;
17510    pub fn gtk_recent_manager_lookup_item(
17511        manager: *mut GtkRecentManager,
17512        uri: *const c_char,
17513        error: *mut *mut glib::GError,
17514    ) -> *mut GtkRecentInfo;
17515    pub fn gtk_recent_manager_move_item(
17516        manager: *mut GtkRecentManager,
17517        uri: *const c_char,
17518        new_uri: *const c_char,
17519        error: *mut *mut glib::GError,
17520    ) -> gboolean;
17521    pub fn gtk_recent_manager_purge_items(
17522        manager: *mut GtkRecentManager,
17523        error: *mut *mut glib::GError,
17524    ) -> c_int;
17525    pub fn gtk_recent_manager_remove_item(
17526        manager: *mut GtkRecentManager,
17527        uri: *const c_char,
17528        error: *mut *mut glib::GError,
17529    ) -> gboolean;
17530
17531    //=========================================================================
17532    // GtkRevealer
17533    //=========================================================================
17534    pub fn gtk_revealer_get_type() -> GType;
17535    pub fn gtk_revealer_new() -> *mut GtkWidget;
17536    pub fn gtk_revealer_get_child(revealer: *mut GtkRevealer) -> *mut GtkWidget;
17537    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
17538    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
17539    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
17540    pub fn gtk_revealer_get_transition_type(
17541        revealer: *mut GtkRevealer,
17542    ) -> GtkRevealerTransitionType;
17543    pub fn gtk_revealer_set_child(revealer: *mut GtkRevealer, child: *mut GtkWidget);
17544    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
17545    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
17546    pub fn gtk_revealer_set_transition_type(
17547        revealer: *mut GtkRevealer,
17548        transition: GtkRevealerTransitionType,
17549    );
17550
17551    //=========================================================================
17552    // GtkScale
17553    //=========================================================================
17554    pub fn gtk_scale_get_type() -> GType;
17555    pub fn gtk_scale_new(
17556        orientation: GtkOrientation,
17557        adjustment: *mut GtkAdjustment,
17558    ) -> *mut GtkWidget;
17559    pub fn gtk_scale_new_with_range(
17560        orientation: GtkOrientation,
17561        min: c_double,
17562        max: c_double,
17563        step: c_double,
17564    ) -> *mut GtkWidget;
17565    pub fn gtk_scale_add_mark(
17566        scale: *mut GtkScale,
17567        value: c_double,
17568        position: GtkPositionType,
17569        markup: *const c_char,
17570    );
17571    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
17572    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
17573    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
17574    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
17575    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
17576    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
17577    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
17578    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
17579    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
17580    pub fn gtk_scale_set_format_value_func(
17581        scale: *mut GtkScale,
17582        func: GtkScaleFormatValueFunc,
17583        user_data: gpointer,
17584        destroy_notify: glib::GDestroyNotify,
17585    );
17586    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
17587    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
17588
17589    //=========================================================================
17590    // GtkScaleButton
17591    //=========================================================================
17592    pub fn gtk_scale_button_get_type() -> GType;
17593    pub fn gtk_scale_button_new(
17594        min: c_double,
17595        max: c_double,
17596        step: c_double,
17597        icons: *mut *const c_char,
17598    ) -> *mut GtkWidget;
17599    #[cfg(feature = "v4_10")]
17600    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17601    pub fn gtk_scale_button_get_active(button: *mut GtkScaleButton) -> gboolean;
17602    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
17603    #[cfg(feature = "v4_14")]
17604    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17605    pub fn gtk_scale_button_get_has_frame(button: *mut GtkScaleButton) -> gboolean;
17606    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17607    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
17608    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
17609    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
17610    pub fn gtk_scale_button_set_adjustment(
17611        button: *mut GtkScaleButton,
17612        adjustment: *mut GtkAdjustment,
17613    );
17614    #[cfg(feature = "v4_14")]
17615    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17616    pub fn gtk_scale_button_set_has_frame(button: *mut GtkScaleButton, has_frame: gboolean);
17617    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
17618    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
17619
17620    //=========================================================================
17621    // GtkScrollbar
17622    //=========================================================================
17623    pub fn gtk_scrollbar_get_type() -> GType;
17624    pub fn gtk_scrollbar_new(
17625        orientation: GtkOrientation,
17626        adjustment: *mut GtkAdjustment,
17627    ) -> *mut GtkWidget;
17628    pub fn gtk_scrollbar_get_adjustment(self_: *mut GtkScrollbar) -> *mut GtkAdjustment;
17629    pub fn gtk_scrollbar_set_adjustment(self_: *mut GtkScrollbar, adjustment: *mut GtkAdjustment);
17630
17631    //=========================================================================
17632    // GtkScrolledWindow
17633    //=========================================================================
17634    pub fn gtk_scrolled_window_get_type() -> GType;
17635    pub fn gtk_scrolled_window_new() -> *mut GtkWidget;
17636    pub fn gtk_scrolled_window_get_child(scrolled_window: *mut GtkScrolledWindow)
17637        -> *mut GtkWidget;
17638    pub fn gtk_scrolled_window_get_hadjustment(
17639        scrolled_window: *mut GtkScrolledWindow,
17640    ) -> *mut GtkAdjustment;
17641    pub fn gtk_scrolled_window_get_has_frame(scrolled_window: *mut GtkScrolledWindow) -> gboolean;
17642    pub fn gtk_scrolled_window_get_hscrollbar(
17643        scrolled_window: *mut GtkScrolledWindow,
17644    ) -> *mut GtkWidget;
17645    pub fn gtk_scrolled_window_get_kinetic_scrolling(
17646        scrolled_window: *mut GtkScrolledWindow,
17647    ) -> gboolean;
17648    pub fn gtk_scrolled_window_get_max_content_height(
17649        scrolled_window: *mut GtkScrolledWindow,
17650    ) -> c_int;
17651    pub fn gtk_scrolled_window_get_max_content_width(
17652        scrolled_window: *mut GtkScrolledWindow,
17653    ) -> c_int;
17654    pub fn gtk_scrolled_window_get_min_content_height(
17655        scrolled_window: *mut GtkScrolledWindow,
17656    ) -> c_int;
17657    pub fn gtk_scrolled_window_get_min_content_width(
17658        scrolled_window: *mut GtkScrolledWindow,
17659    ) -> c_int;
17660    pub fn gtk_scrolled_window_get_overlay_scrolling(
17661        scrolled_window: *mut GtkScrolledWindow,
17662    ) -> gboolean;
17663    pub fn gtk_scrolled_window_get_placement(
17664        scrolled_window: *mut GtkScrolledWindow,
17665    ) -> GtkCornerType;
17666    pub fn gtk_scrolled_window_get_policy(
17667        scrolled_window: *mut GtkScrolledWindow,
17668        hscrollbar_policy: *mut GtkPolicyType,
17669        vscrollbar_policy: *mut GtkPolicyType,
17670    );
17671    pub fn gtk_scrolled_window_get_propagate_natural_height(
17672        scrolled_window: *mut GtkScrolledWindow,
17673    ) -> gboolean;
17674    pub fn gtk_scrolled_window_get_propagate_natural_width(
17675        scrolled_window: *mut GtkScrolledWindow,
17676    ) -> gboolean;
17677    pub fn gtk_scrolled_window_get_vadjustment(
17678        scrolled_window: *mut GtkScrolledWindow,
17679    ) -> *mut GtkAdjustment;
17680    pub fn gtk_scrolled_window_get_vscrollbar(
17681        scrolled_window: *mut GtkScrolledWindow,
17682    ) -> *mut GtkWidget;
17683    pub fn gtk_scrolled_window_set_child(
17684        scrolled_window: *mut GtkScrolledWindow,
17685        child: *mut GtkWidget,
17686    );
17687    pub fn gtk_scrolled_window_set_hadjustment(
17688        scrolled_window: *mut GtkScrolledWindow,
17689        hadjustment: *mut GtkAdjustment,
17690    );
17691    pub fn gtk_scrolled_window_set_has_frame(
17692        scrolled_window: *mut GtkScrolledWindow,
17693        has_frame: gboolean,
17694    );
17695    pub fn gtk_scrolled_window_set_kinetic_scrolling(
17696        scrolled_window: *mut GtkScrolledWindow,
17697        kinetic_scrolling: gboolean,
17698    );
17699    pub fn gtk_scrolled_window_set_max_content_height(
17700        scrolled_window: *mut GtkScrolledWindow,
17701        height: c_int,
17702    );
17703    pub fn gtk_scrolled_window_set_max_content_width(
17704        scrolled_window: *mut GtkScrolledWindow,
17705        width: c_int,
17706    );
17707    pub fn gtk_scrolled_window_set_min_content_height(
17708        scrolled_window: *mut GtkScrolledWindow,
17709        height: c_int,
17710    );
17711    pub fn gtk_scrolled_window_set_min_content_width(
17712        scrolled_window: *mut GtkScrolledWindow,
17713        width: c_int,
17714    );
17715    pub fn gtk_scrolled_window_set_overlay_scrolling(
17716        scrolled_window: *mut GtkScrolledWindow,
17717        overlay_scrolling: gboolean,
17718    );
17719    pub fn gtk_scrolled_window_set_placement(
17720        scrolled_window: *mut GtkScrolledWindow,
17721        window_placement: GtkCornerType,
17722    );
17723    pub fn gtk_scrolled_window_set_policy(
17724        scrolled_window: *mut GtkScrolledWindow,
17725        hscrollbar_policy: GtkPolicyType,
17726        vscrollbar_policy: GtkPolicyType,
17727    );
17728    pub fn gtk_scrolled_window_set_propagate_natural_height(
17729        scrolled_window: *mut GtkScrolledWindow,
17730        propagate: gboolean,
17731    );
17732    pub fn gtk_scrolled_window_set_propagate_natural_width(
17733        scrolled_window: *mut GtkScrolledWindow,
17734        propagate: gboolean,
17735    );
17736    pub fn gtk_scrolled_window_set_vadjustment(
17737        scrolled_window: *mut GtkScrolledWindow,
17738        vadjustment: *mut GtkAdjustment,
17739    );
17740    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
17741
17742    //=========================================================================
17743    // GtkSearchBar
17744    //=========================================================================
17745    pub fn gtk_search_bar_get_type() -> GType;
17746    pub fn gtk_search_bar_new() -> *mut GtkWidget;
17747    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEditable);
17748    pub fn gtk_search_bar_get_child(bar: *mut GtkSearchBar) -> *mut GtkWidget;
17749    pub fn gtk_search_bar_get_key_capture_widget(bar: *mut GtkSearchBar) -> *mut GtkWidget;
17750    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
17751    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
17752    pub fn gtk_search_bar_set_child(bar: *mut GtkSearchBar, child: *mut GtkWidget);
17753    pub fn gtk_search_bar_set_key_capture_widget(bar: *mut GtkSearchBar, widget: *mut GtkWidget);
17754    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
17755    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
17756
17757    //=========================================================================
17758    // GtkSearchEntry
17759    //=========================================================================
17760    pub fn gtk_search_entry_get_type() -> GType;
17761    pub fn gtk_search_entry_new() -> *mut GtkWidget;
17762    #[cfg(feature = "v4_14")]
17763    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17764    pub fn gtk_search_entry_get_input_hints(entry: *mut GtkSearchEntry) -> GtkInputHints;
17765    #[cfg(feature = "v4_14")]
17766    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17767    pub fn gtk_search_entry_get_input_purpose(entry: *mut GtkSearchEntry) -> GtkInputPurpose;
17768    pub fn gtk_search_entry_get_key_capture_widget(entry: *mut GtkSearchEntry) -> *mut GtkWidget;
17769    #[cfg(feature = "v4_10")]
17770    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17771    pub fn gtk_search_entry_get_placeholder_text(entry: *mut GtkSearchEntry) -> *const c_char;
17772    #[cfg(feature = "v4_8")]
17773    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17774    pub fn gtk_search_entry_get_search_delay(entry: *mut GtkSearchEntry) -> c_uint;
17775    #[cfg(feature = "v4_14")]
17776    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17777    pub fn gtk_search_entry_set_input_hints(entry: *mut GtkSearchEntry, hints: GtkInputHints);
17778    #[cfg(feature = "v4_14")]
17779    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17780    pub fn gtk_search_entry_set_input_purpose(entry: *mut GtkSearchEntry, purpose: GtkInputPurpose);
17781    pub fn gtk_search_entry_set_key_capture_widget(
17782        entry: *mut GtkSearchEntry,
17783        widget: *mut GtkWidget,
17784    );
17785    #[cfg(feature = "v4_10")]
17786    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
17787    pub fn gtk_search_entry_set_placeholder_text(entry: *mut GtkSearchEntry, text: *const c_char);
17788    #[cfg(feature = "v4_8")]
17789    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17790    pub fn gtk_search_entry_set_search_delay(entry: *mut GtkSearchEntry, delay: c_uint);
17791
17792    //=========================================================================
17793    // GtkSelectionFilterModel
17794    //=========================================================================
17795    pub fn gtk_selection_filter_model_get_type() -> GType;
17796    pub fn gtk_selection_filter_model_new(
17797        model: *mut GtkSelectionModel,
17798    ) -> *mut GtkSelectionFilterModel;
17799    pub fn gtk_selection_filter_model_get_model(
17800        self_: *mut GtkSelectionFilterModel,
17801    ) -> *mut GtkSelectionModel;
17802    pub fn gtk_selection_filter_model_set_model(
17803        self_: *mut GtkSelectionFilterModel,
17804        model: *mut GtkSelectionModel,
17805    );
17806
17807    //=========================================================================
17808    // GtkSeparator
17809    //=========================================================================
17810    pub fn gtk_separator_get_type() -> GType;
17811    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
17812
17813    //=========================================================================
17814    // GtkSettings
17815    //=========================================================================
17816    pub fn gtk_settings_get_type() -> GType;
17817    pub fn gtk_settings_get_default() -> *mut GtkSettings;
17818    pub fn gtk_settings_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkSettings;
17819    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
17820
17821    //=========================================================================
17822    // GtkShortcut
17823    //=========================================================================
17824    pub fn gtk_shortcut_get_type() -> GType;
17825    pub fn gtk_shortcut_new(
17826        trigger: *mut GtkShortcutTrigger,
17827        action: *mut GtkShortcutAction,
17828    ) -> *mut GtkShortcut;
17829    pub fn gtk_shortcut_new_with_arguments(
17830        trigger: *mut GtkShortcutTrigger,
17831        action: *mut GtkShortcutAction,
17832        format_string: *const c_char,
17833        ...
17834    ) -> *mut GtkShortcut;
17835    pub fn gtk_shortcut_get_action(self_: *mut GtkShortcut) -> *mut GtkShortcutAction;
17836    pub fn gtk_shortcut_get_arguments(self_: *mut GtkShortcut) -> *mut glib::GVariant;
17837    pub fn gtk_shortcut_get_trigger(self_: *mut GtkShortcut) -> *mut GtkShortcutTrigger;
17838    pub fn gtk_shortcut_set_action(self_: *mut GtkShortcut, action: *mut GtkShortcutAction);
17839    pub fn gtk_shortcut_set_arguments(self_: *mut GtkShortcut, args: *mut glib::GVariant);
17840    pub fn gtk_shortcut_set_trigger(self_: *mut GtkShortcut, trigger: *mut GtkShortcutTrigger);
17841
17842    //=========================================================================
17843    // GtkShortcutAction
17844    //=========================================================================
17845    pub fn gtk_shortcut_action_get_type() -> GType;
17846    pub fn gtk_shortcut_action_parse_string(string: *const c_char) -> *mut GtkShortcutAction;
17847    pub fn gtk_shortcut_action_activate(
17848        self_: *mut GtkShortcutAction,
17849        flags: GtkShortcutActionFlags,
17850        widget: *mut GtkWidget,
17851        args: *mut glib::GVariant,
17852    ) -> gboolean;
17853    pub fn gtk_shortcut_action_print(self_: *mut GtkShortcutAction, string: *mut glib::GString);
17854    pub fn gtk_shortcut_action_to_string(self_: *mut GtkShortcutAction) -> *mut c_char;
17855
17856    //=========================================================================
17857    // GtkShortcutController
17858    //=========================================================================
17859    pub fn gtk_shortcut_controller_get_type() -> GType;
17860    pub fn gtk_shortcut_controller_new() -> *mut GtkEventController;
17861    pub fn gtk_shortcut_controller_new_for_model(
17862        model: *mut gio::GListModel,
17863    ) -> *mut GtkEventController;
17864    pub fn gtk_shortcut_controller_add_shortcut(
17865        self_: *mut GtkShortcutController,
17866        shortcut: *mut GtkShortcut,
17867    );
17868    pub fn gtk_shortcut_controller_get_mnemonics_modifiers(
17869        self_: *mut GtkShortcutController,
17870    ) -> gdk::GdkModifierType;
17871    pub fn gtk_shortcut_controller_get_scope(self_: *mut GtkShortcutController)
17872        -> GtkShortcutScope;
17873    pub fn gtk_shortcut_controller_remove_shortcut(
17874        self_: *mut GtkShortcutController,
17875        shortcut: *mut GtkShortcut,
17876    );
17877    pub fn gtk_shortcut_controller_set_mnemonics_modifiers(
17878        self_: *mut GtkShortcutController,
17879        modifiers: gdk::GdkModifierType,
17880    );
17881    pub fn gtk_shortcut_controller_set_scope(
17882        self_: *mut GtkShortcutController,
17883        scope: GtkShortcutScope,
17884    );
17885
17886    //=========================================================================
17887    // GtkShortcutLabel
17888    //=========================================================================
17889    pub fn gtk_shortcut_label_get_type() -> GType;
17890    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
17891    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
17892    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
17893    pub fn gtk_shortcut_label_set_accelerator(
17894        self_: *mut GtkShortcutLabel,
17895        accelerator: *const c_char,
17896    );
17897    pub fn gtk_shortcut_label_set_disabled_text(
17898        self_: *mut GtkShortcutLabel,
17899        disabled_text: *const c_char,
17900    );
17901
17902    //=========================================================================
17903    // GtkShortcutTrigger
17904    //=========================================================================
17905    pub fn gtk_shortcut_trigger_get_type() -> GType;
17906    pub fn gtk_shortcut_trigger_parse_string(string: *const c_char) -> *mut GtkShortcutTrigger;
17907    pub fn gtk_shortcut_trigger_compare(trigger1: gconstpointer, trigger2: gconstpointer) -> c_int;
17908    pub fn gtk_shortcut_trigger_equal(trigger1: gconstpointer, trigger2: gconstpointer)
17909        -> gboolean;
17910    pub fn gtk_shortcut_trigger_hash(trigger: gconstpointer) -> c_uint;
17911    pub fn gtk_shortcut_trigger_print(self_: *mut GtkShortcutTrigger, string: *mut glib::GString);
17912    pub fn gtk_shortcut_trigger_print_label(
17913        self_: *mut GtkShortcutTrigger,
17914        display: *mut gdk::GdkDisplay,
17915        string: *mut glib::GString,
17916    ) -> gboolean;
17917    pub fn gtk_shortcut_trigger_to_label(
17918        self_: *mut GtkShortcutTrigger,
17919        display: *mut gdk::GdkDisplay,
17920    ) -> *mut c_char;
17921    pub fn gtk_shortcut_trigger_to_string(self_: *mut GtkShortcutTrigger) -> *mut c_char;
17922    pub fn gtk_shortcut_trigger_trigger(
17923        self_: *mut GtkShortcutTrigger,
17924        event: *mut gdk::GdkEvent,
17925        enable_mnemonics: gboolean,
17926    ) -> gdk::GdkKeyMatch;
17927
17928    //=========================================================================
17929    // GtkShortcutsGroup
17930    //=========================================================================
17931    pub fn gtk_shortcuts_group_get_type() -> GType;
17932    #[cfg(feature = "v4_14")]
17933    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17934    pub fn gtk_shortcuts_group_add_shortcut(
17935        self_: *mut GtkShortcutsGroup,
17936        shortcut: *mut GtkShortcutsShortcut,
17937    );
17938
17939    //=========================================================================
17940    // GtkShortcutsSection
17941    //=========================================================================
17942    pub fn gtk_shortcuts_section_get_type() -> GType;
17943    #[cfg(feature = "v4_14")]
17944    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17945    pub fn gtk_shortcuts_section_add_group(
17946        self_: *mut GtkShortcutsSection,
17947        group: *mut GtkShortcutsGroup,
17948    );
17949
17950    //=========================================================================
17951    // GtkShortcutsShortcut
17952    //=========================================================================
17953    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
17954
17955    //=========================================================================
17956    // GtkShortcutsWindow
17957    //=========================================================================
17958    pub fn gtk_shortcuts_window_get_type() -> GType;
17959    #[cfg(feature = "v4_14")]
17960    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17961    pub fn gtk_shortcuts_window_add_section(
17962        self_: *mut GtkShortcutsWindow,
17963        section: *mut GtkShortcutsSection,
17964    );
17965
17966    //=========================================================================
17967    // GtkSignalAction
17968    //=========================================================================
17969    pub fn gtk_signal_action_get_type() -> GType;
17970    pub fn gtk_signal_action_new(signal_name: *const c_char) -> *mut GtkSignalAction;
17971    pub fn gtk_signal_action_get_signal_name(self_: *mut GtkSignalAction) -> *const c_char;
17972
17973    //=========================================================================
17974    // GtkSignalListItemFactory
17975    //=========================================================================
17976    pub fn gtk_signal_list_item_factory_get_type() -> GType;
17977    pub fn gtk_signal_list_item_factory_new() -> *mut GtkListItemFactory;
17978
17979    //=========================================================================
17980    // GtkSingleSelection
17981    //=========================================================================
17982    pub fn gtk_single_selection_get_type() -> GType;
17983    pub fn gtk_single_selection_new(model: *mut gio::GListModel) -> *mut GtkSingleSelection;
17984    pub fn gtk_single_selection_get_autoselect(self_: *mut GtkSingleSelection) -> gboolean;
17985    pub fn gtk_single_selection_get_can_unselect(self_: *mut GtkSingleSelection) -> gboolean;
17986    pub fn gtk_single_selection_get_model(self_: *mut GtkSingleSelection) -> *mut gio::GListModel;
17987    pub fn gtk_single_selection_get_selected(self_: *mut GtkSingleSelection) -> c_uint;
17988    pub fn gtk_single_selection_get_selected_item(
17989        self_: *mut GtkSingleSelection,
17990    ) -> *mut gobject::GObject;
17991    pub fn gtk_single_selection_set_autoselect(
17992        self_: *mut GtkSingleSelection,
17993        autoselect: gboolean,
17994    );
17995    pub fn gtk_single_selection_set_can_unselect(
17996        self_: *mut GtkSingleSelection,
17997        can_unselect: gboolean,
17998    );
17999    pub fn gtk_single_selection_set_model(
18000        self_: *mut GtkSingleSelection,
18001        model: *mut gio::GListModel,
18002    );
18003    pub fn gtk_single_selection_set_selected(self_: *mut GtkSingleSelection, position: c_uint);
18004
18005    //=========================================================================
18006    // GtkSizeGroup
18007    //=========================================================================
18008    pub fn gtk_size_group_get_type() -> GType;
18009    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
18010    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18011    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
18012    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
18013    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18014    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
18015
18016    //=========================================================================
18017    // GtkSliceListModel
18018    //=========================================================================
18019    pub fn gtk_slice_list_model_get_type() -> GType;
18020    pub fn gtk_slice_list_model_new(
18021        model: *mut gio::GListModel,
18022        offset: c_uint,
18023        size: c_uint,
18024    ) -> *mut GtkSliceListModel;
18025    pub fn gtk_slice_list_model_get_model(self_: *mut GtkSliceListModel) -> *mut gio::GListModel;
18026    pub fn gtk_slice_list_model_get_offset(self_: *mut GtkSliceListModel) -> c_uint;
18027    pub fn gtk_slice_list_model_get_size(self_: *mut GtkSliceListModel) -> c_uint;
18028    pub fn gtk_slice_list_model_set_model(
18029        self_: *mut GtkSliceListModel,
18030        model: *mut gio::GListModel,
18031    );
18032    pub fn gtk_slice_list_model_set_offset(self_: *mut GtkSliceListModel, offset: c_uint);
18033    pub fn gtk_slice_list_model_set_size(self_: *mut GtkSliceListModel, size: c_uint);
18034
18035    //=========================================================================
18036    // GtkSnapshot
18037    //=========================================================================
18038    pub fn gtk_snapshot_get_type() -> GType;
18039    pub fn gtk_snapshot_new() -> *mut GtkSnapshot;
18040    pub fn gtk_snapshot_append_border(
18041        snapshot: *mut GtkSnapshot,
18042        outline: *const gsk::GskRoundedRect,
18043        border_width: *const [c_float; 4],
18044        border_color: *const [gdk::GdkRGBA; 4],
18045    );
18046    pub fn gtk_snapshot_append_cairo(
18047        snapshot: *mut GtkSnapshot,
18048        bounds: *const graphene::graphene_rect_t,
18049    ) -> *mut cairo::cairo_t;
18050    pub fn gtk_snapshot_append_color(
18051        snapshot: *mut GtkSnapshot,
18052        color: *const gdk::GdkRGBA,
18053        bounds: *const graphene::graphene_rect_t,
18054    );
18055    pub fn gtk_snapshot_append_conic_gradient(
18056        snapshot: *mut GtkSnapshot,
18057        bounds: *const graphene::graphene_rect_t,
18058        center: *const graphene::graphene_point_t,
18059        rotation: c_float,
18060        stops: *const gsk::GskColorStop,
18061        n_stops: size_t,
18062    );
18063    #[cfg(feature = "v4_14")]
18064    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18065    pub fn gtk_snapshot_append_fill(
18066        snapshot: *mut GtkSnapshot,
18067        path: *mut gsk::GskPath,
18068        fill_rule: gsk::GskFillRule,
18069        color: *const gdk::GdkRGBA,
18070    );
18071    pub fn gtk_snapshot_append_inset_shadow(
18072        snapshot: *mut GtkSnapshot,
18073        outline: *const gsk::GskRoundedRect,
18074        color: *const gdk::GdkRGBA,
18075        dx: c_float,
18076        dy: c_float,
18077        spread: c_float,
18078        blur_radius: c_float,
18079    );
18080    pub fn gtk_snapshot_append_layout(
18081        snapshot: *mut GtkSnapshot,
18082        layout: *mut pango::PangoLayout,
18083        color: *const gdk::GdkRGBA,
18084    );
18085    pub fn gtk_snapshot_append_linear_gradient(
18086        snapshot: *mut GtkSnapshot,
18087        bounds: *const graphene::graphene_rect_t,
18088        start_point: *const graphene::graphene_point_t,
18089        end_point: *const graphene::graphene_point_t,
18090        stops: *const gsk::GskColorStop,
18091        n_stops: size_t,
18092    );
18093    pub fn gtk_snapshot_append_node(snapshot: *mut GtkSnapshot, node: *mut gsk::GskRenderNode);
18094    pub fn gtk_snapshot_append_outset_shadow(
18095        snapshot: *mut GtkSnapshot,
18096        outline: *const gsk::GskRoundedRect,
18097        color: *const gdk::GdkRGBA,
18098        dx: c_float,
18099        dy: c_float,
18100        spread: c_float,
18101        blur_radius: c_float,
18102    );
18103    pub fn gtk_snapshot_append_radial_gradient(
18104        snapshot: *mut GtkSnapshot,
18105        bounds: *const graphene::graphene_rect_t,
18106        center: *const graphene::graphene_point_t,
18107        hradius: c_float,
18108        vradius: c_float,
18109        start: c_float,
18110        end: c_float,
18111        stops: *const gsk::GskColorStop,
18112        n_stops: size_t,
18113    );
18114    pub fn gtk_snapshot_append_repeating_linear_gradient(
18115        snapshot: *mut GtkSnapshot,
18116        bounds: *const graphene::graphene_rect_t,
18117        start_point: *const graphene::graphene_point_t,
18118        end_point: *const graphene::graphene_point_t,
18119        stops: *const gsk::GskColorStop,
18120        n_stops: size_t,
18121    );
18122    pub fn gtk_snapshot_append_repeating_radial_gradient(
18123        snapshot: *mut GtkSnapshot,
18124        bounds: *const graphene::graphene_rect_t,
18125        center: *const graphene::graphene_point_t,
18126        hradius: c_float,
18127        vradius: c_float,
18128        start: c_float,
18129        end: c_float,
18130        stops: *const gsk::GskColorStop,
18131        n_stops: size_t,
18132    );
18133    #[cfg(feature = "v4_10")]
18134    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18135    pub fn gtk_snapshot_append_scaled_texture(
18136        snapshot: *mut GtkSnapshot,
18137        texture: *mut gdk::GdkTexture,
18138        filter: gsk::GskScalingFilter,
18139        bounds: *const graphene::graphene_rect_t,
18140    );
18141    #[cfg(feature = "v4_14")]
18142    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18143    pub fn gtk_snapshot_append_stroke(
18144        snapshot: *mut GtkSnapshot,
18145        path: *mut gsk::GskPath,
18146        stroke: *const gsk::GskStroke,
18147        color: *const gdk::GdkRGBA,
18148    );
18149    pub fn gtk_snapshot_append_texture(
18150        snapshot: *mut GtkSnapshot,
18151        texture: *mut gdk::GdkTexture,
18152        bounds: *const graphene::graphene_rect_t,
18153    );
18154    pub fn gtk_snapshot_free_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18155    pub fn gtk_snapshot_free_to_paintable(
18156        snapshot: *mut GtkSnapshot,
18157        size: *const graphene::graphene_size_t,
18158    ) -> *mut gdk::GdkPaintable;
18159    pub fn gtk_snapshot_gl_shader_pop_texture(snapshot: *mut GtkSnapshot);
18160    pub fn gtk_snapshot_perspective(snapshot: *mut GtkSnapshot, depth: c_float);
18161    pub fn gtk_snapshot_pop(snapshot: *mut GtkSnapshot);
18162    pub fn gtk_snapshot_push_blend(snapshot: *mut GtkSnapshot, blend_mode: gsk::GskBlendMode);
18163    pub fn gtk_snapshot_push_blur(snapshot: *mut GtkSnapshot, radius: c_double);
18164    pub fn gtk_snapshot_push_clip(
18165        snapshot: *mut GtkSnapshot,
18166        bounds: *const graphene::graphene_rect_t,
18167    );
18168    pub fn gtk_snapshot_push_color_matrix(
18169        snapshot: *mut GtkSnapshot,
18170        color_matrix: *const graphene::graphene_matrix_t,
18171        color_offset: *const graphene::graphene_vec4_t,
18172    );
18173    pub fn gtk_snapshot_push_cross_fade(snapshot: *mut GtkSnapshot, progress: c_double);
18174    pub fn gtk_snapshot_push_debug(snapshot: *mut GtkSnapshot, message: *const c_char, ...);
18175    #[cfg(feature = "v4_14")]
18176    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18177    pub fn gtk_snapshot_push_fill(
18178        snapshot: *mut GtkSnapshot,
18179        path: *mut gsk::GskPath,
18180        fill_rule: gsk::GskFillRule,
18181    );
18182    pub fn gtk_snapshot_push_gl_shader(
18183        snapshot: *mut GtkSnapshot,
18184        shader: *mut gsk::GskGLShader,
18185        bounds: *const graphene::graphene_rect_t,
18186        take_args: *mut glib::GBytes,
18187    );
18188    #[cfg(feature = "v4_10")]
18189    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18190    pub fn gtk_snapshot_push_mask(snapshot: *mut GtkSnapshot, mask_mode: gsk::GskMaskMode);
18191    pub fn gtk_snapshot_push_opacity(snapshot: *mut GtkSnapshot, opacity: c_double);
18192    pub fn gtk_snapshot_push_repeat(
18193        snapshot: *mut GtkSnapshot,
18194        bounds: *const graphene::graphene_rect_t,
18195        child_bounds: *const graphene::graphene_rect_t,
18196    );
18197    pub fn gtk_snapshot_push_rounded_clip(
18198        snapshot: *mut GtkSnapshot,
18199        bounds: *const gsk::GskRoundedRect,
18200    );
18201    pub fn gtk_snapshot_push_shadow(
18202        snapshot: *mut GtkSnapshot,
18203        shadow: *const gsk::GskShadow,
18204        n_shadows: size_t,
18205    );
18206    #[cfg(feature = "v4_14")]
18207    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18208    pub fn gtk_snapshot_push_stroke(
18209        snapshot: *mut GtkSnapshot,
18210        path: *mut gsk::GskPath,
18211        stroke: *const gsk::GskStroke,
18212    );
18213    pub fn gtk_snapshot_render_background(
18214        snapshot: *mut GtkSnapshot,
18215        context: *mut GtkStyleContext,
18216        x: c_double,
18217        y: c_double,
18218        width: c_double,
18219        height: c_double,
18220    );
18221    pub fn gtk_snapshot_render_focus(
18222        snapshot: *mut GtkSnapshot,
18223        context: *mut GtkStyleContext,
18224        x: c_double,
18225        y: c_double,
18226        width: c_double,
18227        height: c_double,
18228    );
18229    pub fn gtk_snapshot_render_frame(
18230        snapshot: *mut GtkSnapshot,
18231        context: *mut GtkStyleContext,
18232        x: c_double,
18233        y: c_double,
18234        width: c_double,
18235        height: c_double,
18236    );
18237    pub fn gtk_snapshot_render_insertion_cursor(
18238        snapshot: *mut GtkSnapshot,
18239        context: *mut GtkStyleContext,
18240        x: c_double,
18241        y: c_double,
18242        layout: *mut pango::PangoLayout,
18243        index: c_int,
18244        direction: pango::PangoDirection,
18245    );
18246    pub fn gtk_snapshot_render_layout(
18247        snapshot: *mut GtkSnapshot,
18248        context: *mut GtkStyleContext,
18249        x: c_double,
18250        y: c_double,
18251        layout: *mut pango::PangoLayout,
18252    );
18253    pub fn gtk_snapshot_restore(snapshot: *mut GtkSnapshot);
18254    pub fn gtk_snapshot_rotate(snapshot: *mut GtkSnapshot, angle: c_float);
18255    pub fn gtk_snapshot_rotate_3d(
18256        snapshot: *mut GtkSnapshot,
18257        angle: c_float,
18258        axis: *const graphene::graphene_vec3_t,
18259    );
18260    pub fn gtk_snapshot_save(snapshot: *mut GtkSnapshot);
18261    pub fn gtk_snapshot_scale(snapshot: *mut GtkSnapshot, factor_x: c_float, factor_y: c_float);
18262    pub fn gtk_snapshot_scale_3d(
18263        snapshot: *mut GtkSnapshot,
18264        factor_x: c_float,
18265        factor_y: c_float,
18266        factor_z: c_float,
18267    );
18268    pub fn gtk_snapshot_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18269    pub fn gtk_snapshot_to_paintable(
18270        snapshot: *mut GtkSnapshot,
18271        size: *const graphene::graphene_size_t,
18272    ) -> *mut gdk::GdkPaintable;
18273    pub fn gtk_snapshot_transform(snapshot: *mut GtkSnapshot, transform: *mut gsk::GskTransform);
18274    pub fn gtk_snapshot_transform_matrix(
18275        snapshot: *mut GtkSnapshot,
18276        matrix: *const graphene::graphene_matrix_t,
18277    );
18278    pub fn gtk_snapshot_translate(
18279        snapshot: *mut GtkSnapshot,
18280        point: *const graphene::graphene_point_t,
18281    );
18282    pub fn gtk_snapshot_translate_3d(
18283        snapshot: *mut GtkSnapshot,
18284        point: *const graphene::graphene_point3d_t,
18285    );
18286
18287    //=========================================================================
18288    // GtkSortListModel
18289    //=========================================================================
18290    pub fn gtk_sort_list_model_get_type() -> GType;
18291    pub fn gtk_sort_list_model_new(
18292        model: *mut gio::GListModel,
18293        sorter: *mut GtkSorter,
18294    ) -> *mut GtkSortListModel;
18295    pub fn gtk_sort_list_model_get_incremental(self_: *mut GtkSortListModel) -> gboolean;
18296    pub fn gtk_sort_list_model_get_model(self_: *mut GtkSortListModel) -> *mut gio::GListModel;
18297    pub fn gtk_sort_list_model_get_pending(self_: *mut GtkSortListModel) -> c_uint;
18298    #[cfg(feature = "v4_12")]
18299    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18300    pub fn gtk_sort_list_model_get_section_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18301    pub fn gtk_sort_list_model_get_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18302    pub fn gtk_sort_list_model_set_incremental(self_: *mut GtkSortListModel, incremental: gboolean);
18303    pub fn gtk_sort_list_model_set_model(self_: *mut GtkSortListModel, model: *mut gio::GListModel);
18304    #[cfg(feature = "v4_12")]
18305    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18306    pub fn gtk_sort_list_model_set_section_sorter(
18307        self_: *mut GtkSortListModel,
18308        sorter: *mut GtkSorter,
18309    );
18310    pub fn gtk_sort_list_model_set_sorter(self_: *mut GtkSortListModel, sorter: *mut GtkSorter);
18311
18312    //=========================================================================
18313    // GtkSorter
18314    //=========================================================================
18315    pub fn gtk_sorter_get_type() -> GType;
18316    pub fn gtk_sorter_changed(self_: *mut GtkSorter, change: GtkSorterChange);
18317    pub fn gtk_sorter_compare(
18318        self_: *mut GtkSorter,
18319        item1: *mut gobject::GObject,
18320        item2: *mut gobject::GObject,
18321    ) -> GtkOrdering;
18322    pub fn gtk_sorter_get_order(self_: *mut GtkSorter) -> GtkSorterOrder;
18323
18324    //=========================================================================
18325    // GtkSpinButton
18326    //=========================================================================
18327    pub fn gtk_spin_button_get_type() -> GType;
18328    pub fn gtk_spin_button_new(
18329        adjustment: *mut GtkAdjustment,
18330        climb_rate: c_double,
18331        digits: c_uint,
18332    ) -> *mut GtkWidget;
18333    pub fn gtk_spin_button_new_with_range(
18334        min: c_double,
18335        max: c_double,
18336        step: c_double,
18337    ) -> *mut GtkWidget;
18338    pub fn gtk_spin_button_configure(
18339        spin_button: *mut GtkSpinButton,
18340        adjustment: *mut GtkAdjustment,
18341        climb_rate: c_double,
18342        digits: c_uint,
18343    );
18344    #[cfg(feature = "v4_14")]
18345    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18346    pub fn gtk_spin_button_get_activates_default(spin_button: *mut GtkSpinButton) -> gboolean;
18347    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
18348    pub fn gtk_spin_button_get_climb_rate(spin_button: *mut GtkSpinButton) -> c_double;
18349    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
18350    pub fn gtk_spin_button_get_increments(
18351        spin_button: *mut GtkSpinButton,
18352        step: *mut c_double,
18353        page: *mut c_double,
18354    );
18355    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
18356    pub fn gtk_spin_button_get_range(
18357        spin_button: *mut GtkSpinButton,
18358        min: *mut c_double,
18359        max: *mut c_double,
18360    );
18361    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
18362    pub fn gtk_spin_button_get_update_policy(
18363        spin_button: *mut GtkSpinButton,
18364    ) -> GtkSpinButtonUpdatePolicy;
18365    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
18366    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
18367    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
18368    #[cfg(feature = "v4_14")]
18369    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18370    pub fn gtk_spin_button_set_activates_default(
18371        spin_button: *mut GtkSpinButton,
18372        activates_default: gboolean,
18373    );
18374    pub fn gtk_spin_button_set_adjustment(
18375        spin_button: *mut GtkSpinButton,
18376        adjustment: *mut GtkAdjustment,
18377    );
18378    pub fn gtk_spin_button_set_climb_rate(spin_button: *mut GtkSpinButton, climb_rate: c_double);
18379    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
18380    pub fn gtk_spin_button_set_increments(
18381        spin_button: *mut GtkSpinButton,
18382        step: c_double,
18383        page: c_double,
18384    );
18385    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
18386    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
18387    pub fn gtk_spin_button_set_snap_to_ticks(
18388        spin_button: *mut GtkSpinButton,
18389        snap_to_ticks: gboolean,
18390    );
18391    pub fn gtk_spin_button_set_update_policy(
18392        spin_button: *mut GtkSpinButton,
18393        policy: GtkSpinButtonUpdatePolicy,
18394    );
18395    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
18396    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
18397    pub fn gtk_spin_button_spin(
18398        spin_button: *mut GtkSpinButton,
18399        direction: GtkSpinType,
18400        increment: c_double,
18401    );
18402    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
18403
18404    //=========================================================================
18405    // GtkSpinner
18406    //=========================================================================
18407    pub fn gtk_spinner_get_type() -> GType;
18408    pub fn gtk_spinner_new() -> *mut GtkWidget;
18409    pub fn gtk_spinner_get_spinning(spinner: *mut GtkSpinner) -> gboolean;
18410    pub fn gtk_spinner_set_spinning(spinner: *mut GtkSpinner, spinning: gboolean);
18411    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
18412    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
18413
18414    //=========================================================================
18415    // GtkStack
18416    //=========================================================================
18417    pub fn gtk_stack_get_type() -> GType;
18418    pub fn gtk_stack_new() -> *mut GtkWidget;
18419    pub fn gtk_stack_add_child(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18420    pub fn gtk_stack_add_named(
18421        stack: *mut GtkStack,
18422        child: *mut GtkWidget,
18423        name: *const c_char,
18424    ) -> *mut GtkStackPage;
18425    pub fn gtk_stack_add_titled(
18426        stack: *mut GtkStack,
18427        child: *mut GtkWidget,
18428        name: *const c_char,
18429        title: *const c_char,
18430    ) -> *mut GtkStackPage;
18431    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
18432        -> *mut GtkWidget;
18433    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
18434    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
18435    pub fn gtk_stack_get_page(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18436    pub fn gtk_stack_get_pages(stack: *mut GtkStack) -> *mut GtkSelectionModel;
18437    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
18438    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
18439    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
18440    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
18441    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
18442    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
18443    pub fn gtk_stack_remove(stack: *mut GtkStack, child: *mut GtkWidget);
18444    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
18445    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
18446    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
18447    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
18448    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
18449    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
18450    pub fn gtk_stack_set_visible_child_full(
18451        stack: *mut GtkStack,
18452        name: *const c_char,
18453        transition: GtkStackTransitionType,
18454    );
18455    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
18456
18457    //=========================================================================
18458    // GtkStackPage
18459    //=========================================================================
18460    pub fn gtk_stack_page_get_type() -> GType;
18461    pub fn gtk_stack_page_get_child(self_: *mut GtkStackPage) -> *mut GtkWidget;
18462    pub fn gtk_stack_page_get_icon_name(self_: *mut GtkStackPage) -> *const c_char;
18463    pub fn gtk_stack_page_get_name(self_: *mut GtkStackPage) -> *const c_char;
18464    pub fn gtk_stack_page_get_needs_attention(self_: *mut GtkStackPage) -> gboolean;
18465    pub fn gtk_stack_page_get_title(self_: *mut GtkStackPage) -> *const c_char;
18466    pub fn gtk_stack_page_get_use_underline(self_: *mut GtkStackPage) -> gboolean;
18467    pub fn gtk_stack_page_get_visible(self_: *mut GtkStackPage) -> gboolean;
18468    pub fn gtk_stack_page_set_icon_name(self_: *mut GtkStackPage, setting: *const c_char);
18469    pub fn gtk_stack_page_set_name(self_: *mut GtkStackPage, setting: *const c_char);
18470    pub fn gtk_stack_page_set_needs_attention(self_: *mut GtkStackPage, setting: gboolean);
18471    pub fn gtk_stack_page_set_title(self_: *mut GtkStackPage, setting: *const c_char);
18472    pub fn gtk_stack_page_set_use_underline(self_: *mut GtkStackPage, setting: gboolean);
18473    pub fn gtk_stack_page_set_visible(self_: *mut GtkStackPage, visible: gboolean);
18474
18475    //=========================================================================
18476    // GtkStackSidebar
18477    //=========================================================================
18478    pub fn gtk_stack_sidebar_get_type() -> GType;
18479    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
18480    pub fn gtk_stack_sidebar_get_stack(self_: *mut GtkStackSidebar) -> *mut GtkStack;
18481    pub fn gtk_stack_sidebar_set_stack(self_: *mut GtkStackSidebar, stack: *mut GtkStack);
18482
18483    //=========================================================================
18484    // GtkStackSwitcher
18485    //=========================================================================
18486    pub fn gtk_stack_switcher_get_type() -> GType;
18487    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
18488    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
18489    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
18490
18491    //=========================================================================
18492    // GtkStatusbar
18493    //=========================================================================
18494    pub fn gtk_statusbar_get_type() -> GType;
18495    pub fn gtk_statusbar_new() -> *mut GtkWidget;
18496    pub fn gtk_statusbar_get_context_id(
18497        statusbar: *mut GtkStatusbar,
18498        context_description: *const c_char,
18499    ) -> c_uint;
18500    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
18501    pub fn gtk_statusbar_push(
18502        statusbar: *mut GtkStatusbar,
18503        context_id: c_uint,
18504        text: *const c_char,
18505    ) -> c_uint;
18506    pub fn gtk_statusbar_remove(
18507        statusbar: *mut GtkStatusbar,
18508        context_id: c_uint,
18509        message_id: c_uint,
18510    );
18511    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
18512
18513    //=========================================================================
18514    // GtkStringFilter
18515    //=========================================================================
18516    pub fn gtk_string_filter_get_type() -> GType;
18517    pub fn gtk_string_filter_new(expression: *mut GtkExpression) -> *mut GtkStringFilter;
18518    pub fn gtk_string_filter_get_expression(self_: *mut GtkStringFilter) -> *mut GtkExpression;
18519    pub fn gtk_string_filter_get_ignore_case(self_: *mut GtkStringFilter) -> gboolean;
18520    pub fn gtk_string_filter_get_match_mode(
18521        self_: *mut GtkStringFilter,
18522    ) -> GtkStringFilterMatchMode;
18523    pub fn gtk_string_filter_get_search(self_: *mut GtkStringFilter) -> *const c_char;
18524    pub fn gtk_string_filter_set_expression(
18525        self_: *mut GtkStringFilter,
18526        expression: *mut GtkExpression,
18527    );
18528    pub fn gtk_string_filter_set_ignore_case(self_: *mut GtkStringFilter, ignore_case: gboolean);
18529    pub fn gtk_string_filter_set_match_mode(
18530        self_: *mut GtkStringFilter,
18531        mode: GtkStringFilterMatchMode,
18532    );
18533    pub fn gtk_string_filter_set_search(self_: *mut GtkStringFilter, search: *const c_char);
18534
18535    //=========================================================================
18536    // GtkStringList
18537    //=========================================================================
18538    pub fn gtk_string_list_get_type() -> GType;
18539    pub fn gtk_string_list_new(strings: *const *const c_char) -> *mut GtkStringList;
18540    pub fn gtk_string_list_append(self_: *mut GtkStringList, string: *const c_char);
18541    #[cfg(feature = "v4_18")]
18542    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
18543    pub fn gtk_string_list_find(self_: *mut GtkStringList, string: *const c_char) -> c_uint;
18544    pub fn gtk_string_list_get_string(self_: *mut GtkStringList, position: c_uint)
18545        -> *const c_char;
18546    pub fn gtk_string_list_remove(self_: *mut GtkStringList, position: c_uint);
18547    pub fn gtk_string_list_splice(
18548        self_: *mut GtkStringList,
18549        position: c_uint,
18550        n_removals: c_uint,
18551        additions: *const *const c_char,
18552    );
18553    pub fn gtk_string_list_take(self_: *mut GtkStringList, string: *mut c_char);
18554
18555    //=========================================================================
18556    // GtkStringObject
18557    //=========================================================================
18558    pub fn gtk_string_object_get_type() -> GType;
18559    pub fn gtk_string_object_new(string: *const c_char) -> *mut GtkStringObject;
18560    pub fn gtk_string_object_get_string(self_: *mut GtkStringObject) -> *const c_char;
18561
18562    //=========================================================================
18563    // GtkStringSorter
18564    //=========================================================================
18565    pub fn gtk_string_sorter_get_type() -> GType;
18566    pub fn gtk_string_sorter_new(expression: *mut GtkExpression) -> *mut GtkStringSorter;
18567    #[cfg(feature = "v4_10")]
18568    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18569    pub fn gtk_string_sorter_get_collation(self_: *mut GtkStringSorter) -> GtkCollation;
18570    pub fn gtk_string_sorter_get_expression(self_: *mut GtkStringSorter) -> *mut GtkExpression;
18571    pub fn gtk_string_sorter_get_ignore_case(self_: *mut GtkStringSorter) -> gboolean;
18572    #[cfg(feature = "v4_10")]
18573    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18574    pub fn gtk_string_sorter_set_collation(self_: *mut GtkStringSorter, collation: GtkCollation);
18575    pub fn gtk_string_sorter_set_expression(
18576        self_: *mut GtkStringSorter,
18577        expression: *mut GtkExpression,
18578    );
18579    pub fn gtk_string_sorter_set_ignore_case(self_: *mut GtkStringSorter, ignore_case: gboolean);
18580
18581    //=========================================================================
18582    // GtkStyleContext
18583    //=========================================================================
18584    pub fn gtk_style_context_get_type() -> GType;
18585    pub fn gtk_style_context_add_provider_for_display(
18586        display: *mut gdk::GdkDisplay,
18587        provider: *mut GtkStyleProvider,
18588        priority: c_uint,
18589    );
18590    pub fn gtk_style_context_remove_provider_for_display(
18591        display: *mut gdk::GdkDisplay,
18592        provider: *mut GtkStyleProvider,
18593    );
18594    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
18595    pub fn gtk_style_context_add_provider(
18596        context: *mut GtkStyleContext,
18597        provider: *mut GtkStyleProvider,
18598        priority: c_uint,
18599    );
18600    pub fn gtk_style_context_get_border(context: *mut GtkStyleContext, border: *mut GtkBorder);
18601    pub fn gtk_style_context_get_color(context: *mut GtkStyleContext, color: *mut gdk::GdkRGBA);
18602    pub fn gtk_style_context_get_display(context: *mut GtkStyleContext) -> *mut gdk::GdkDisplay;
18603    pub fn gtk_style_context_get_margin(context: *mut GtkStyleContext, margin: *mut GtkBorder);
18604    pub fn gtk_style_context_get_padding(context: *mut GtkStyleContext, padding: *mut GtkBorder);
18605    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
18606    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
18607    pub fn gtk_style_context_has_class(
18608        context: *mut GtkStyleContext,
18609        class_name: *const c_char,
18610    ) -> gboolean;
18611    pub fn gtk_style_context_lookup_color(
18612        context: *mut GtkStyleContext,
18613        color_name: *const c_char,
18614        color: *mut gdk::GdkRGBA,
18615    ) -> gboolean;
18616    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
18617    pub fn gtk_style_context_remove_provider(
18618        context: *mut GtkStyleContext,
18619        provider: *mut GtkStyleProvider,
18620    );
18621    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
18622    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
18623    pub fn gtk_style_context_set_display(
18624        context: *mut GtkStyleContext,
18625        display: *mut gdk::GdkDisplay,
18626    );
18627    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
18628    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
18629    pub fn gtk_style_context_to_string(
18630        context: *mut GtkStyleContext,
18631        flags: GtkStyleContextPrintFlags,
18632    ) -> *mut c_char;
18633
18634    //=========================================================================
18635    // GtkSwitch
18636    //=========================================================================
18637    pub fn gtk_switch_get_type() -> GType;
18638    pub fn gtk_switch_new() -> *mut GtkWidget;
18639    pub fn gtk_switch_get_active(self_: *mut GtkSwitch) -> gboolean;
18640    pub fn gtk_switch_get_state(self_: *mut GtkSwitch) -> gboolean;
18641    pub fn gtk_switch_set_active(self_: *mut GtkSwitch, is_active: gboolean);
18642    pub fn gtk_switch_set_state(self_: *mut GtkSwitch, state: gboolean);
18643
18644    //=========================================================================
18645    // GtkText
18646    //=========================================================================
18647    pub fn gtk_text_get_type() -> GType;
18648    pub fn gtk_text_new() -> *mut GtkWidget;
18649    pub fn gtk_text_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
18650    #[cfg(feature = "v4_4")]
18651    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
18652    pub fn gtk_text_compute_cursor_extents(
18653        self_: *mut GtkText,
18654        position: size_t,
18655        strong: *mut graphene::graphene_rect_t,
18656        weak: *mut graphene::graphene_rect_t,
18657    );
18658    pub fn gtk_text_get_activates_default(self_: *mut GtkText) -> gboolean;
18659    pub fn gtk_text_get_attributes(self_: *mut GtkText) -> *mut pango::PangoAttrList;
18660    pub fn gtk_text_get_buffer(self_: *mut GtkText) -> *mut GtkEntryBuffer;
18661    pub fn gtk_text_get_enable_emoji_completion(self_: *mut GtkText) -> gboolean;
18662    pub fn gtk_text_get_extra_menu(self_: *mut GtkText) -> *mut gio::GMenuModel;
18663    pub fn gtk_text_get_input_hints(self_: *mut GtkText) -> GtkInputHints;
18664    pub fn gtk_text_get_input_purpose(self_: *mut GtkText) -> GtkInputPurpose;
18665    pub fn gtk_text_get_invisible_char(self_: *mut GtkText) -> u32;
18666    pub fn gtk_text_get_max_length(self_: *mut GtkText) -> c_int;
18667    pub fn gtk_text_get_overwrite_mode(self_: *mut GtkText) -> gboolean;
18668    pub fn gtk_text_get_placeholder_text(self_: *mut GtkText) -> *const c_char;
18669    pub fn gtk_text_get_propagate_text_width(self_: *mut GtkText) -> gboolean;
18670    pub fn gtk_text_get_tabs(self_: *mut GtkText) -> *mut pango::PangoTabArray;
18671    pub fn gtk_text_get_text_length(self_: *mut GtkText) -> u16;
18672    pub fn gtk_text_get_truncate_multiline(self_: *mut GtkText) -> gboolean;
18673    pub fn gtk_text_get_visibility(self_: *mut GtkText) -> gboolean;
18674    pub fn gtk_text_grab_focus_without_selecting(self_: *mut GtkText) -> gboolean;
18675    pub fn gtk_text_set_activates_default(self_: *mut GtkText, activates: gboolean);
18676    pub fn gtk_text_set_attributes(self_: *mut GtkText, attrs: *mut pango::PangoAttrList);
18677    pub fn gtk_text_set_buffer(self_: *mut GtkText, buffer: *mut GtkEntryBuffer);
18678    pub fn gtk_text_set_enable_emoji_completion(
18679        self_: *mut GtkText,
18680        enable_emoji_completion: gboolean,
18681    );
18682    pub fn gtk_text_set_extra_menu(self_: *mut GtkText, model: *mut gio::GMenuModel);
18683    pub fn gtk_text_set_input_hints(self_: *mut GtkText, hints: GtkInputHints);
18684    pub fn gtk_text_set_input_purpose(self_: *mut GtkText, purpose: GtkInputPurpose);
18685    pub fn gtk_text_set_invisible_char(self_: *mut GtkText, ch: u32);
18686    pub fn gtk_text_set_max_length(self_: *mut GtkText, length: c_int);
18687    pub fn gtk_text_set_overwrite_mode(self_: *mut GtkText, overwrite: gboolean);
18688    pub fn gtk_text_set_placeholder_text(self_: *mut GtkText, text: *const c_char);
18689    pub fn gtk_text_set_propagate_text_width(self_: *mut GtkText, propagate_text_width: gboolean);
18690    pub fn gtk_text_set_tabs(self_: *mut GtkText, tabs: *mut pango::PangoTabArray);
18691    pub fn gtk_text_set_truncate_multiline(self_: *mut GtkText, truncate_multiline: gboolean);
18692    pub fn gtk_text_set_visibility(self_: *mut GtkText, visible: gboolean);
18693    pub fn gtk_text_unset_invisible_char(self_: *mut GtkText);
18694
18695    //=========================================================================
18696    // GtkTextBuffer
18697    //=========================================================================
18698    pub fn gtk_text_buffer_get_type() -> GType;
18699    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
18700    #[cfg(feature = "v4_16")]
18701    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
18702    pub fn gtk_text_buffer_add_commit_notify(
18703        buffer: *mut GtkTextBuffer,
18704        flags: GtkTextBufferNotifyFlags,
18705        commit_notify: GtkTextBufferCommitNotify,
18706        user_data: gpointer,
18707        destroy: glib::GDestroyNotify,
18708    ) -> c_uint;
18709    pub fn gtk_text_buffer_add_mark(
18710        buffer: *mut GtkTextBuffer,
18711        mark: *mut GtkTextMark,
18712        where_: *const GtkTextIter,
18713    );
18714    pub fn gtk_text_buffer_add_selection_clipboard(
18715        buffer: *mut GtkTextBuffer,
18716        clipboard: *mut gdk::GdkClipboard,
18717    );
18718    pub fn gtk_text_buffer_apply_tag(
18719        buffer: *mut GtkTextBuffer,
18720        tag: *mut GtkTextTag,
18721        start: *const GtkTextIter,
18722        end: *const GtkTextIter,
18723    );
18724    pub fn gtk_text_buffer_apply_tag_by_name(
18725        buffer: *mut GtkTextBuffer,
18726        name: *const c_char,
18727        start: *const GtkTextIter,
18728        end: *const GtkTextIter,
18729    );
18730    pub fn gtk_text_buffer_backspace(
18731        buffer: *mut GtkTextBuffer,
18732        iter: *mut GtkTextIter,
18733        interactive: gboolean,
18734        default_editable: gboolean,
18735    ) -> gboolean;
18736    pub fn gtk_text_buffer_begin_irreversible_action(buffer: *mut GtkTextBuffer);
18737    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
18738    pub fn gtk_text_buffer_copy_clipboard(
18739        buffer: *mut GtkTextBuffer,
18740        clipboard: *mut gdk::GdkClipboard,
18741    );
18742    pub fn gtk_text_buffer_create_child_anchor(
18743        buffer: *mut GtkTextBuffer,
18744        iter: *mut GtkTextIter,
18745    ) -> *mut GtkTextChildAnchor;
18746    pub fn gtk_text_buffer_create_mark(
18747        buffer: *mut GtkTextBuffer,
18748        mark_name: *const c_char,
18749        where_: *const GtkTextIter,
18750        left_gravity: gboolean,
18751    ) -> *mut GtkTextMark;
18752    pub fn gtk_text_buffer_create_tag(
18753        buffer: *mut GtkTextBuffer,
18754        tag_name: *const c_char,
18755        first_property_name: *const c_char,
18756        ...
18757    ) -> *mut GtkTextTag;
18758    pub fn gtk_text_buffer_cut_clipboard(
18759        buffer: *mut GtkTextBuffer,
18760        clipboard: *mut gdk::GdkClipboard,
18761        default_editable: gboolean,
18762    );
18763    pub fn gtk_text_buffer_delete(
18764        buffer: *mut GtkTextBuffer,
18765        start: *mut GtkTextIter,
18766        end: *mut GtkTextIter,
18767    );
18768    pub fn gtk_text_buffer_delete_interactive(
18769        buffer: *mut GtkTextBuffer,
18770        start_iter: *mut GtkTextIter,
18771        end_iter: *mut GtkTextIter,
18772        default_editable: gboolean,
18773    ) -> gboolean;
18774    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
18775    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
18776    pub fn gtk_text_buffer_delete_selection(
18777        buffer: *mut GtkTextBuffer,
18778        interactive: gboolean,
18779        default_editable: gboolean,
18780    ) -> gboolean;
18781    pub fn gtk_text_buffer_end_irreversible_action(buffer: *mut GtkTextBuffer);
18782    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
18783    pub fn gtk_text_buffer_get_bounds(
18784        buffer: *mut GtkTextBuffer,
18785        start: *mut GtkTextIter,
18786        end: *mut GtkTextIter,
18787    );
18788    pub fn gtk_text_buffer_get_can_redo(buffer: *mut GtkTextBuffer) -> gboolean;
18789    pub fn gtk_text_buffer_get_can_undo(buffer: *mut GtkTextBuffer) -> gboolean;
18790    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
18791    pub fn gtk_text_buffer_get_enable_undo(buffer: *mut GtkTextBuffer) -> gboolean;
18792    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
18793    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
18794    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
18795    pub fn gtk_text_buffer_get_iter_at_child_anchor(
18796        buffer: *mut GtkTextBuffer,
18797        iter: *mut GtkTextIter,
18798        anchor: *mut GtkTextChildAnchor,
18799    );
18800    pub fn gtk_text_buffer_get_iter_at_line(
18801        buffer: *mut GtkTextBuffer,
18802        iter: *mut GtkTextIter,
18803        line_number: c_int,
18804    ) -> gboolean;
18805    pub fn gtk_text_buffer_get_iter_at_line_index(
18806        buffer: *mut GtkTextBuffer,
18807        iter: *mut GtkTextIter,
18808        line_number: c_int,
18809        byte_index: c_int,
18810    ) -> gboolean;
18811    pub fn gtk_text_buffer_get_iter_at_line_offset(
18812        buffer: *mut GtkTextBuffer,
18813        iter: *mut GtkTextIter,
18814        line_number: c_int,
18815        char_offset: c_int,
18816    ) -> gboolean;
18817    pub fn gtk_text_buffer_get_iter_at_mark(
18818        buffer: *mut GtkTextBuffer,
18819        iter: *mut GtkTextIter,
18820        mark: *mut GtkTextMark,
18821    );
18822    pub fn gtk_text_buffer_get_iter_at_offset(
18823        buffer: *mut GtkTextBuffer,
18824        iter: *mut GtkTextIter,
18825        char_offset: c_int,
18826    );
18827    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
18828    pub fn gtk_text_buffer_get_mark(
18829        buffer: *mut GtkTextBuffer,
18830        name: *const c_char,
18831    ) -> *mut GtkTextMark;
18832    pub fn gtk_text_buffer_get_max_undo_levels(buffer: *mut GtkTextBuffer) -> c_uint;
18833    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
18834    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
18835    pub fn gtk_text_buffer_get_selection_bounds(
18836        buffer: *mut GtkTextBuffer,
18837        start: *mut GtkTextIter,
18838        end: *mut GtkTextIter,
18839    ) -> gboolean;
18840    pub fn gtk_text_buffer_get_selection_content(
18841        buffer: *mut GtkTextBuffer,
18842    ) -> *mut gdk::GdkContentProvider;
18843    pub fn gtk_text_buffer_get_slice(
18844        buffer: *mut GtkTextBuffer,
18845        start: *const GtkTextIter,
18846        end: *const GtkTextIter,
18847        include_hidden_chars: gboolean,
18848    ) -> *mut c_char;
18849    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
18850    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
18851    pub fn gtk_text_buffer_get_text(
18852        buffer: *mut GtkTextBuffer,
18853        start: *const GtkTextIter,
18854        end: *const GtkTextIter,
18855        include_hidden_chars: gboolean,
18856    ) -> *mut c_char;
18857    pub fn gtk_text_buffer_insert(
18858        buffer: *mut GtkTextBuffer,
18859        iter: *mut GtkTextIter,
18860        text: *const c_char,
18861        len: c_int,
18862    );
18863    pub fn gtk_text_buffer_insert_at_cursor(
18864        buffer: *mut GtkTextBuffer,
18865        text: *const c_char,
18866        len: c_int,
18867    );
18868    pub fn gtk_text_buffer_insert_child_anchor(
18869        buffer: *mut GtkTextBuffer,
18870        iter: *mut GtkTextIter,
18871        anchor: *mut GtkTextChildAnchor,
18872    );
18873    pub fn gtk_text_buffer_insert_interactive(
18874        buffer: *mut GtkTextBuffer,
18875        iter: *mut GtkTextIter,
18876        text: *const c_char,
18877        len: c_int,
18878        default_editable: gboolean,
18879    ) -> gboolean;
18880    pub fn gtk_text_buffer_insert_interactive_at_cursor(
18881        buffer: *mut GtkTextBuffer,
18882        text: *const c_char,
18883        len: c_int,
18884        default_editable: gboolean,
18885    ) -> gboolean;
18886    pub fn gtk_text_buffer_insert_markup(
18887        buffer: *mut GtkTextBuffer,
18888        iter: *mut GtkTextIter,
18889        markup: *const c_char,
18890        len: c_int,
18891    );
18892    pub fn gtk_text_buffer_insert_paintable(
18893        buffer: *mut GtkTextBuffer,
18894        iter: *mut GtkTextIter,
18895        paintable: *mut gdk::GdkPaintable,
18896    );
18897    pub fn gtk_text_buffer_insert_range(
18898        buffer: *mut GtkTextBuffer,
18899        iter: *mut GtkTextIter,
18900        start: *const GtkTextIter,
18901        end: *const GtkTextIter,
18902    );
18903    pub fn gtk_text_buffer_insert_range_interactive(
18904        buffer: *mut GtkTextBuffer,
18905        iter: *mut GtkTextIter,
18906        start: *const GtkTextIter,
18907        end: *const GtkTextIter,
18908        default_editable: gboolean,
18909    ) -> gboolean;
18910    pub fn gtk_text_buffer_insert_with_tags(
18911        buffer: *mut GtkTextBuffer,
18912        iter: *mut GtkTextIter,
18913        text: *const c_char,
18914        len: c_int,
18915        first_tag: *mut GtkTextTag,
18916        ...
18917    );
18918    pub fn gtk_text_buffer_insert_with_tags_by_name(
18919        buffer: *mut GtkTextBuffer,
18920        iter: *mut GtkTextIter,
18921        text: *const c_char,
18922        len: c_int,
18923        first_tag_name: *const c_char,
18924        ...
18925    );
18926    pub fn gtk_text_buffer_move_mark(
18927        buffer: *mut GtkTextBuffer,
18928        mark: *mut GtkTextMark,
18929        where_: *const GtkTextIter,
18930    );
18931    pub fn gtk_text_buffer_move_mark_by_name(
18932        buffer: *mut GtkTextBuffer,
18933        name: *const c_char,
18934        where_: *const GtkTextIter,
18935    );
18936    pub fn gtk_text_buffer_paste_clipboard(
18937        buffer: *mut GtkTextBuffer,
18938        clipboard: *mut gdk::GdkClipboard,
18939        override_location: *mut GtkTextIter,
18940        default_editable: gboolean,
18941    );
18942    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
18943    pub fn gtk_text_buffer_redo(buffer: *mut GtkTextBuffer);
18944    pub fn gtk_text_buffer_remove_all_tags(
18945        buffer: *mut GtkTextBuffer,
18946        start: *const GtkTextIter,
18947        end: *const GtkTextIter,
18948    );
18949    #[cfg(feature = "v4_16")]
18950    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
18951    pub fn gtk_text_buffer_remove_commit_notify(
18952        buffer: *mut GtkTextBuffer,
18953        commit_notify_handler: c_uint,
18954    );
18955    pub fn gtk_text_buffer_remove_selection_clipboard(
18956        buffer: *mut GtkTextBuffer,
18957        clipboard: *mut gdk::GdkClipboard,
18958    );
18959    pub fn gtk_text_buffer_remove_tag(
18960        buffer: *mut GtkTextBuffer,
18961        tag: *mut GtkTextTag,
18962        start: *const GtkTextIter,
18963        end: *const GtkTextIter,
18964    );
18965    pub fn gtk_text_buffer_remove_tag_by_name(
18966        buffer: *mut GtkTextBuffer,
18967        name: *const c_char,
18968        start: *const GtkTextIter,
18969        end: *const GtkTextIter,
18970    );
18971    pub fn gtk_text_buffer_select_range(
18972        buffer: *mut GtkTextBuffer,
18973        ins: *const GtkTextIter,
18974        bound: *const GtkTextIter,
18975    );
18976    pub fn gtk_text_buffer_set_enable_undo(buffer: *mut GtkTextBuffer, enable_undo: gboolean);
18977    pub fn gtk_text_buffer_set_max_undo_levels(buffer: *mut GtkTextBuffer, max_undo_levels: c_uint);
18978    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
18979    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
18980    pub fn gtk_text_buffer_undo(buffer: *mut GtkTextBuffer);
18981
18982    //=========================================================================
18983    // GtkTextChildAnchor
18984    //=========================================================================
18985    pub fn gtk_text_child_anchor_get_type() -> GType;
18986    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
18987    #[cfg(feature = "v4_6")]
18988    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
18989    pub fn gtk_text_child_anchor_new_with_replacement(
18990        character: *const c_char,
18991    ) -> *mut GtkTextChildAnchor;
18992    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
18993    pub fn gtk_text_child_anchor_get_widgets(
18994        anchor: *mut GtkTextChildAnchor,
18995        out_len: *mut c_uint,
18996    ) -> *mut *mut GtkWidget;
18997
18998    //=========================================================================
18999    // GtkTextMark
19000    //=========================================================================
19001    pub fn gtk_text_mark_get_type() -> GType;
19002    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
19003    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
19004    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
19005    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
19006    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
19007    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
19008    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
19009
19010    //=========================================================================
19011    // GtkTextTag
19012    //=========================================================================
19013    pub fn gtk_text_tag_get_type() -> GType;
19014    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
19015    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
19016    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
19017    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
19018
19019    //=========================================================================
19020    // GtkTextTagTable
19021    //=========================================================================
19022    pub fn gtk_text_tag_table_get_type() -> GType;
19023    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
19024    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
19025    pub fn gtk_text_tag_table_foreach(
19026        table: *mut GtkTextTagTable,
19027        func: GtkTextTagTableForeach,
19028        data: gpointer,
19029    );
19030    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
19031    pub fn gtk_text_tag_table_lookup(
19032        table: *mut GtkTextTagTable,
19033        name: *const c_char,
19034    ) -> *mut GtkTextTag;
19035    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
19036
19037    //=========================================================================
19038    // GtkTextView
19039    //=========================================================================
19040    pub fn gtk_text_view_get_type() -> GType;
19041    pub fn gtk_text_view_new() -> *mut GtkWidget;
19042    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
19043    pub fn gtk_text_view_add_child_at_anchor(
19044        text_view: *mut GtkTextView,
19045        child: *mut GtkWidget,
19046        anchor: *mut GtkTextChildAnchor,
19047    );
19048    pub fn gtk_text_view_add_overlay(
19049        text_view: *mut GtkTextView,
19050        child: *mut GtkWidget,
19051        xpos: c_int,
19052        ypos: c_int,
19053    );
19054    pub fn gtk_text_view_backward_display_line(
19055        text_view: *mut GtkTextView,
19056        iter: *mut GtkTextIter,
19057    ) -> gboolean;
19058    pub fn gtk_text_view_backward_display_line_start(
19059        text_view: *mut GtkTextView,
19060        iter: *mut GtkTextIter,
19061    ) -> gboolean;
19062    pub fn gtk_text_view_buffer_to_window_coords(
19063        text_view: *mut GtkTextView,
19064        win: GtkTextWindowType,
19065        buffer_x: c_int,
19066        buffer_y: c_int,
19067        window_x: *mut c_int,
19068        window_y: *mut c_int,
19069    );
19070    pub fn gtk_text_view_forward_display_line(
19071        text_view: *mut GtkTextView,
19072        iter: *mut GtkTextIter,
19073    ) -> gboolean;
19074    pub fn gtk_text_view_forward_display_line_end(
19075        text_view: *mut GtkTextView,
19076        iter: *mut GtkTextIter,
19077    ) -> gboolean;
19078    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
19079    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
19080    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
19081    pub fn gtk_text_view_get_cursor_locations(
19082        text_view: *mut GtkTextView,
19083        iter: *const GtkTextIter,
19084        strong: *mut gdk::GdkRectangle,
19085        weak: *mut gdk::GdkRectangle,
19086    );
19087    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
19088    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
19089    pub fn gtk_text_view_get_extra_menu(text_view: *mut GtkTextView) -> *mut gio::GMenuModel;
19090    pub fn gtk_text_view_get_gutter(
19091        text_view: *mut GtkTextView,
19092        win: GtkTextWindowType,
19093    ) -> *mut GtkWidget;
19094    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
19095    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
19096    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
19097    pub fn gtk_text_view_get_iter_at_location(
19098        text_view: *mut GtkTextView,
19099        iter: *mut GtkTextIter,
19100        x: c_int,
19101        y: c_int,
19102    ) -> gboolean;
19103    pub fn gtk_text_view_get_iter_at_position(
19104        text_view: *mut GtkTextView,
19105        iter: *mut GtkTextIter,
19106        trailing: *mut c_int,
19107        x: c_int,
19108        y: c_int,
19109    ) -> gboolean;
19110    pub fn gtk_text_view_get_iter_location(
19111        text_view: *mut GtkTextView,
19112        iter: *const GtkTextIter,
19113        location: *mut gdk::GdkRectangle,
19114    );
19115    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
19116    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
19117    pub fn gtk_text_view_get_line_at_y(
19118        text_view: *mut GtkTextView,
19119        target_iter: *mut GtkTextIter,
19120        y: c_int,
19121        line_top: *mut c_int,
19122    );
19123    pub fn gtk_text_view_get_line_yrange(
19124        text_view: *mut GtkTextView,
19125        iter: *const GtkTextIter,
19126        y: *mut c_int,
19127        height: *mut c_int,
19128    );
19129    #[cfg(feature = "v4_4")]
19130    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19131    pub fn gtk_text_view_get_ltr_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19132    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
19133    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
19134    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
19135    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
19136    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
19137    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
19138    #[cfg(feature = "v4_4")]
19139    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19140    pub fn gtk_text_view_get_rtl_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19141    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
19142    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
19143    #[cfg(feature = "v4_18")]
19144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
19145    pub fn gtk_text_view_get_visible_offset(
19146        text_view: *mut GtkTextView,
19147        x_offset: *mut c_double,
19148        y_offset: *mut c_double,
19149    );
19150    pub fn gtk_text_view_get_visible_rect(
19151        text_view: *mut GtkTextView,
19152        visible_rect: *mut gdk::GdkRectangle,
19153    );
19154    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
19155    pub fn gtk_text_view_im_context_filter_keypress(
19156        text_view: *mut GtkTextView,
19157        event: *mut gdk::GdkEvent,
19158    ) -> gboolean;
19159    pub fn gtk_text_view_move_mark_onscreen(
19160        text_view: *mut GtkTextView,
19161        mark: *mut GtkTextMark,
19162    ) -> gboolean;
19163    pub fn gtk_text_view_move_overlay(
19164        text_view: *mut GtkTextView,
19165        child: *mut GtkWidget,
19166        xpos: c_int,
19167        ypos: c_int,
19168    );
19169    pub fn gtk_text_view_move_visually(
19170        text_view: *mut GtkTextView,
19171        iter: *mut GtkTextIter,
19172        count: c_int,
19173    ) -> gboolean;
19174    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
19175    pub fn gtk_text_view_remove(text_view: *mut GtkTextView, child: *mut GtkWidget);
19176    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
19177    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
19178    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
19179    pub fn gtk_text_view_scroll_to_iter(
19180        text_view: *mut GtkTextView,
19181        iter: *mut GtkTextIter,
19182        within_margin: c_double,
19183        use_align: gboolean,
19184        xalign: c_double,
19185        yalign: c_double,
19186    ) -> gboolean;
19187    pub fn gtk_text_view_scroll_to_mark(
19188        text_view: *mut GtkTextView,
19189        mark: *mut GtkTextMark,
19190        within_margin: c_double,
19191        use_align: gboolean,
19192        xalign: c_double,
19193        yalign: c_double,
19194    );
19195    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
19196    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
19197    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
19198    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
19199    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
19200    pub fn gtk_text_view_set_extra_menu(text_view: *mut GtkTextView, model: *mut gio::GMenuModel);
19201    pub fn gtk_text_view_set_gutter(
19202        text_view: *mut GtkTextView,
19203        win: GtkTextWindowType,
19204        widget: *mut GtkWidget,
19205    );
19206    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
19207    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
19208    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
19209    pub fn gtk_text_view_set_justification(
19210        text_view: *mut GtkTextView,
19211        justification: GtkJustification,
19212    );
19213    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
19214    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
19215    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
19216    pub fn gtk_text_view_set_pixels_above_lines(
19217        text_view: *mut GtkTextView,
19218        pixels_above_lines: c_int,
19219    );
19220    pub fn gtk_text_view_set_pixels_below_lines(
19221        text_view: *mut GtkTextView,
19222        pixels_below_lines: c_int,
19223    );
19224    pub fn gtk_text_view_set_pixels_inside_wrap(
19225        text_view: *mut GtkTextView,
19226        pixels_inside_wrap: c_int,
19227    );
19228    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
19229    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
19230    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
19231    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
19232    pub fn gtk_text_view_starts_display_line(
19233        text_view: *mut GtkTextView,
19234        iter: *const GtkTextIter,
19235    ) -> gboolean;
19236    pub fn gtk_text_view_window_to_buffer_coords(
19237        text_view: *mut GtkTextView,
19238        win: GtkTextWindowType,
19239        window_x: c_int,
19240        window_y: c_int,
19241        buffer_x: *mut c_int,
19242        buffer_y: *mut c_int,
19243    );
19244
19245    //=========================================================================
19246    // GtkToggleButton
19247    //=========================================================================
19248    pub fn gtk_toggle_button_get_type() -> GType;
19249    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
19250    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19251    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19252    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
19253    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
19254    pub fn gtk_toggle_button_set_group(
19255        toggle_button: *mut GtkToggleButton,
19256        group: *mut GtkToggleButton,
19257    );
19258    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
19259
19260    //=========================================================================
19261    // GtkTooltip
19262    //=========================================================================
19263    pub fn gtk_tooltip_get_type() -> GType;
19264    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
19265    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, paintable: *mut gdk::GdkPaintable);
19266    pub fn gtk_tooltip_set_icon_from_gicon(tooltip: *mut GtkTooltip, gicon: *mut gio::GIcon);
19267    pub fn gtk_tooltip_set_icon_from_icon_name(tooltip: *mut GtkTooltip, icon_name: *const c_char);
19268    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
19269    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
19270    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
19271
19272    //=========================================================================
19273    // GtkTreeExpander
19274    //=========================================================================
19275    pub fn gtk_tree_expander_get_type() -> GType;
19276    pub fn gtk_tree_expander_new() -> *mut GtkWidget;
19277    pub fn gtk_tree_expander_get_child(self_: *mut GtkTreeExpander) -> *mut GtkWidget;
19278    #[cfg(feature = "v4_10")]
19279    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19280    pub fn gtk_tree_expander_get_hide_expander(self_: *mut GtkTreeExpander) -> gboolean;
19281    #[cfg(feature = "v4_10")]
19282    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19283    pub fn gtk_tree_expander_get_indent_for_depth(self_: *mut GtkTreeExpander) -> gboolean;
19284    #[cfg(feature = "v4_6")]
19285    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19286    pub fn gtk_tree_expander_get_indent_for_icon(self_: *mut GtkTreeExpander) -> gboolean;
19287    pub fn gtk_tree_expander_get_item(self_: *mut GtkTreeExpander) -> *mut gobject::GObject;
19288    pub fn gtk_tree_expander_get_list_row(self_: *mut GtkTreeExpander) -> *mut GtkTreeListRow;
19289    pub fn gtk_tree_expander_set_child(self_: *mut GtkTreeExpander, child: *mut GtkWidget);
19290    #[cfg(feature = "v4_10")]
19291    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19292    pub fn gtk_tree_expander_set_hide_expander(
19293        self_: *mut GtkTreeExpander,
19294        hide_expander: gboolean,
19295    );
19296    #[cfg(feature = "v4_10")]
19297    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19298    pub fn gtk_tree_expander_set_indent_for_depth(
19299        self_: *mut GtkTreeExpander,
19300        indent_for_depth: gboolean,
19301    );
19302    #[cfg(feature = "v4_6")]
19303    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19304    pub fn gtk_tree_expander_set_indent_for_icon(
19305        self_: *mut GtkTreeExpander,
19306        indent_for_icon: gboolean,
19307    );
19308    pub fn gtk_tree_expander_set_list_row(
19309        self_: *mut GtkTreeExpander,
19310        list_row: *mut GtkTreeListRow,
19311    );
19312
19313    //=========================================================================
19314    // GtkTreeListModel
19315    //=========================================================================
19316    pub fn gtk_tree_list_model_get_type() -> GType;
19317    pub fn gtk_tree_list_model_new(
19318        root: *mut gio::GListModel,
19319        passthrough: gboolean,
19320        autoexpand: gboolean,
19321        create_func: GtkTreeListModelCreateModelFunc,
19322        user_data: gpointer,
19323        user_destroy: glib::GDestroyNotify,
19324    ) -> *mut GtkTreeListModel;
19325    pub fn gtk_tree_list_model_get_autoexpand(self_: *mut GtkTreeListModel) -> gboolean;
19326    pub fn gtk_tree_list_model_get_child_row(
19327        self_: *mut GtkTreeListModel,
19328        position: c_uint,
19329    ) -> *mut GtkTreeListRow;
19330    pub fn gtk_tree_list_model_get_model(self_: *mut GtkTreeListModel) -> *mut gio::GListModel;
19331    pub fn gtk_tree_list_model_get_passthrough(self_: *mut GtkTreeListModel) -> gboolean;
19332    pub fn gtk_tree_list_model_get_row(
19333        self_: *mut GtkTreeListModel,
19334        position: c_uint,
19335    ) -> *mut GtkTreeListRow;
19336    pub fn gtk_tree_list_model_set_autoexpand(self_: *mut GtkTreeListModel, autoexpand: gboolean);
19337
19338    //=========================================================================
19339    // GtkTreeListRow
19340    //=========================================================================
19341    pub fn gtk_tree_list_row_get_type() -> GType;
19342    pub fn gtk_tree_list_row_get_child_row(
19343        self_: *mut GtkTreeListRow,
19344        position: c_uint,
19345    ) -> *mut GtkTreeListRow;
19346    pub fn gtk_tree_list_row_get_children(self_: *mut GtkTreeListRow) -> *mut gio::GListModel;
19347    pub fn gtk_tree_list_row_get_depth(self_: *mut GtkTreeListRow) -> c_uint;
19348    pub fn gtk_tree_list_row_get_expanded(self_: *mut GtkTreeListRow) -> gboolean;
19349    pub fn gtk_tree_list_row_get_item(self_: *mut GtkTreeListRow) -> *mut gobject::GObject;
19350    pub fn gtk_tree_list_row_get_parent(self_: *mut GtkTreeListRow) -> *mut GtkTreeListRow;
19351    pub fn gtk_tree_list_row_get_position(self_: *mut GtkTreeListRow) -> c_uint;
19352    pub fn gtk_tree_list_row_is_expandable(self_: *mut GtkTreeListRow) -> gboolean;
19353    pub fn gtk_tree_list_row_set_expanded(self_: *mut GtkTreeListRow, expanded: gboolean);
19354
19355    //=========================================================================
19356    // GtkTreeListRowSorter
19357    //=========================================================================
19358    pub fn gtk_tree_list_row_sorter_get_type() -> GType;
19359    pub fn gtk_tree_list_row_sorter_new(sorter: *mut GtkSorter) -> *mut GtkTreeListRowSorter;
19360    pub fn gtk_tree_list_row_sorter_get_sorter(self_: *mut GtkTreeListRowSorter) -> *mut GtkSorter;
19361    pub fn gtk_tree_list_row_sorter_set_sorter(
19362        self_: *mut GtkTreeListRowSorter,
19363        sorter: *mut GtkSorter,
19364    );
19365
19366    //=========================================================================
19367    // GtkTreeModelFilter
19368    //=========================================================================
19369    pub fn gtk_tree_model_filter_get_type() -> GType;
19370    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
19371    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
19372        filter: *mut GtkTreeModelFilter,
19373        filter_iter: *mut GtkTreeIter,
19374        child_iter: *mut GtkTreeIter,
19375    ) -> gboolean;
19376    pub fn gtk_tree_model_filter_convert_child_path_to_path(
19377        filter: *mut GtkTreeModelFilter,
19378        child_path: *mut GtkTreePath,
19379    ) -> *mut GtkTreePath;
19380    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
19381        filter: *mut GtkTreeModelFilter,
19382        child_iter: *mut GtkTreeIter,
19383        filter_iter: *mut GtkTreeIter,
19384    );
19385    pub fn gtk_tree_model_filter_convert_path_to_child_path(
19386        filter: *mut GtkTreeModelFilter,
19387        filter_path: *mut GtkTreePath,
19388    ) -> *mut GtkTreePath;
19389    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
19390    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
19391    pub fn gtk_tree_model_filter_set_modify_func(
19392        filter: *mut GtkTreeModelFilter,
19393        n_columns: c_int,
19394        types: *mut GType,
19395        func: GtkTreeModelFilterModifyFunc,
19396        data: gpointer,
19397        destroy: glib::GDestroyNotify,
19398    );
19399    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
19400    pub fn gtk_tree_model_filter_set_visible_func(
19401        filter: *mut GtkTreeModelFilter,
19402        func: GtkTreeModelFilterVisibleFunc,
19403        data: gpointer,
19404        destroy: glib::GDestroyNotify,
19405    );
19406
19407    //=========================================================================
19408    // GtkTreeModelSort
19409    //=========================================================================
19410    pub fn gtk_tree_model_sort_get_type() -> GType;
19411    pub fn gtk_tree_model_sort_new_with_model(
19412        child_model: *mut GtkTreeModel,
19413    ) -> *mut GtkTreeModelSort;
19414    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
19415    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
19416        tree_model_sort: *mut GtkTreeModelSort,
19417        sort_iter: *mut GtkTreeIter,
19418        child_iter: *mut GtkTreeIter,
19419    ) -> gboolean;
19420    pub fn gtk_tree_model_sort_convert_child_path_to_path(
19421        tree_model_sort: *mut GtkTreeModelSort,
19422        child_path: *mut GtkTreePath,
19423    ) -> *mut GtkTreePath;
19424    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
19425        tree_model_sort: *mut GtkTreeModelSort,
19426        child_iter: *mut GtkTreeIter,
19427        sorted_iter: *mut GtkTreeIter,
19428    );
19429    pub fn gtk_tree_model_sort_convert_path_to_child_path(
19430        tree_model_sort: *mut GtkTreeModelSort,
19431        sorted_path: *mut GtkTreePath,
19432    ) -> *mut GtkTreePath;
19433    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
19434    pub fn gtk_tree_model_sort_iter_is_valid(
19435        tree_model_sort: *mut GtkTreeModelSort,
19436        iter: *mut GtkTreeIter,
19437    ) -> gboolean;
19438    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
19439
19440    //=========================================================================
19441    // GtkTreeSelection
19442    //=========================================================================
19443    pub fn gtk_tree_selection_get_type() -> GType;
19444    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
19445    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
19446    pub fn gtk_tree_selection_get_select_function(
19447        selection: *mut GtkTreeSelection,
19448    ) -> GtkTreeSelectionFunc;
19449    pub fn gtk_tree_selection_get_selected(
19450        selection: *mut GtkTreeSelection,
19451        model: *mut *mut GtkTreeModel,
19452        iter: *mut GtkTreeIter,
19453    ) -> gboolean;
19454    pub fn gtk_tree_selection_get_selected_rows(
19455        selection: *mut GtkTreeSelection,
19456        model: *mut *mut GtkTreeModel,
19457    ) -> *mut glib::GList;
19458    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
19459    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
19460    pub fn gtk_tree_selection_iter_is_selected(
19461        selection: *mut GtkTreeSelection,
19462        iter: *mut GtkTreeIter,
19463    ) -> gboolean;
19464    pub fn gtk_tree_selection_path_is_selected(
19465        selection: *mut GtkTreeSelection,
19466        path: *mut GtkTreePath,
19467    ) -> gboolean;
19468    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
19469    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
19470    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
19471    pub fn gtk_tree_selection_select_range(
19472        selection: *mut GtkTreeSelection,
19473        start_path: *mut GtkTreePath,
19474        end_path: *mut GtkTreePath,
19475    );
19476    pub fn gtk_tree_selection_selected_foreach(
19477        selection: *mut GtkTreeSelection,
19478        func: GtkTreeSelectionForeachFunc,
19479        data: gpointer,
19480    );
19481    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
19482    pub fn gtk_tree_selection_set_select_function(
19483        selection: *mut GtkTreeSelection,
19484        func: GtkTreeSelectionFunc,
19485        data: gpointer,
19486        destroy: glib::GDestroyNotify,
19487    );
19488    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
19489    pub fn gtk_tree_selection_unselect_iter(
19490        selection: *mut GtkTreeSelection,
19491        iter: *mut GtkTreeIter,
19492    );
19493    pub fn gtk_tree_selection_unselect_path(
19494        selection: *mut GtkTreeSelection,
19495        path: *mut GtkTreePath,
19496    );
19497    pub fn gtk_tree_selection_unselect_range(
19498        selection: *mut GtkTreeSelection,
19499        start_path: *mut GtkTreePath,
19500        end_path: *mut GtkTreePath,
19501    );
19502
19503    //=========================================================================
19504    // GtkTreeStore
19505    //=========================================================================
19506    pub fn gtk_tree_store_get_type() -> GType;
19507    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
19508    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
19509    pub fn gtk_tree_store_append(
19510        tree_store: *mut GtkTreeStore,
19511        iter: *mut GtkTreeIter,
19512        parent: *mut GtkTreeIter,
19513    );
19514    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
19515    pub fn gtk_tree_store_insert(
19516        tree_store: *mut GtkTreeStore,
19517        iter: *mut GtkTreeIter,
19518        parent: *mut GtkTreeIter,
19519        position: c_int,
19520    );
19521    pub fn gtk_tree_store_insert_after(
19522        tree_store: *mut GtkTreeStore,
19523        iter: *mut GtkTreeIter,
19524        parent: *mut GtkTreeIter,
19525        sibling: *mut GtkTreeIter,
19526    );
19527    pub fn gtk_tree_store_insert_before(
19528        tree_store: *mut GtkTreeStore,
19529        iter: *mut GtkTreeIter,
19530        parent: *mut GtkTreeIter,
19531        sibling: *mut GtkTreeIter,
19532    );
19533    pub fn gtk_tree_store_insert_with_values(
19534        tree_store: *mut GtkTreeStore,
19535        iter: *mut GtkTreeIter,
19536        parent: *mut GtkTreeIter,
19537        position: c_int,
19538        ...
19539    );
19540    pub fn gtk_tree_store_insert_with_valuesv(
19541        tree_store: *mut GtkTreeStore,
19542        iter: *mut GtkTreeIter,
19543        parent: *mut GtkTreeIter,
19544        position: c_int,
19545        columns: *mut c_int,
19546        values: *mut gobject::GValue,
19547        n_values: c_int,
19548    );
19549    pub fn gtk_tree_store_is_ancestor(
19550        tree_store: *mut GtkTreeStore,
19551        iter: *mut GtkTreeIter,
19552        descendant: *mut GtkTreeIter,
19553    ) -> gboolean;
19554    pub fn gtk_tree_store_iter_depth(
19555        tree_store: *mut GtkTreeStore,
19556        iter: *mut GtkTreeIter,
19557    ) -> c_int;
19558    pub fn gtk_tree_store_iter_is_valid(
19559        tree_store: *mut GtkTreeStore,
19560        iter: *mut GtkTreeIter,
19561    ) -> gboolean;
19562    pub fn gtk_tree_store_move_after(
19563        tree_store: *mut GtkTreeStore,
19564        iter: *mut GtkTreeIter,
19565        position: *mut GtkTreeIter,
19566    );
19567    pub fn gtk_tree_store_move_before(
19568        tree_store: *mut GtkTreeStore,
19569        iter: *mut GtkTreeIter,
19570        position: *mut GtkTreeIter,
19571    );
19572    pub fn gtk_tree_store_prepend(
19573        tree_store: *mut GtkTreeStore,
19574        iter: *mut GtkTreeIter,
19575        parent: *mut GtkTreeIter,
19576    );
19577    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
19578        -> gboolean;
19579    pub fn gtk_tree_store_reorder(
19580        tree_store: *mut GtkTreeStore,
19581        parent: *mut GtkTreeIter,
19582        new_order: *mut c_int,
19583    );
19584    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
19585    pub fn gtk_tree_store_set_column_types(
19586        tree_store: *mut GtkTreeStore,
19587        n_columns: c_int,
19588        types: *mut GType,
19589    );
19590    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
19591    pub fn gtk_tree_store_set_value(
19592        tree_store: *mut GtkTreeStore,
19593        iter: *mut GtkTreeIter,
19594        column: c_int,
19595        value: *mut gobject::GValue,
19596    );
19597    pub fn gtk_tree_store_set_valuesv(
19598        tree_store: *mut GtkTreeStore,
19599        iter: *mut GtkTreeIter,
19600        columns: *mut c_int,
19601        values: *mut gobject::GValue,
19602        n_values: c_int,
19603    );
19604    pub fn gtk_tree_store_swap(
19605        tree_store: *mut GtkTreeStore,
19606        a: *mut GtkTreeIter,
19607        b: *mut GtkTreeIter,
19608    );
19609
19610    //=========================================================================
19611    // GtkTreeView
19612    //=========================================================================
19613    pub fn gtk_tree_view_get_type() -> GType;
19614    pub fn gtk_tree_view_new() -> *mut GtkWidget;
19615    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
19616    pub fn gtk_tree_view_append_column(
19617        tree_view: *mut GtkTreeView,
19618        column: *mut GtkTreeViewColumn,
19619    ) -> c_int;
19620    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
19621    pub fn gtk_tree_view_collapse_row(
19622        tree_view: *mut GtkTreeView,
19623        path: *mut GtkTreePath,
19624    ) -> gboolean;
19625    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
19626    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
19627        tree_view: *mut GtkTreeView,
19628        bx: c_int,
19629        by: c_int,
19630        tx: *mut c_int,
19631        ty: *mut c_int,
19632    );
19633    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
19634        tree_view: *mut GtkTreeView,
19635        bx: c_int,
19636        by: c_int,
19637        wx: *mut c_int,
19638        wy: *mut c_int,
19639    );
19640    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
19641        tree_view: *mut GtkTreeView,
19642        tx: c_int,
19643        ty: c_int,
19644        bx: *mut c_int,
19645        by: *mut c_int,
19646    );
19647    pub fn gtk_tree_view_convert_tree_to_widget_coords(
19648        tree_view: *mut GtkTreeView,
19649        tx: c_int,
19650        ty: c_int,
19651        wx: *mut c_int,
19652        wy: *mut c_int,
19653    );
19654    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
19655        tree_view: *mut GtkTreeView,
19656        wx: c_int,
19657        wy: c_int,
19658        bx: *mut c_int,
19659        by: *mut c_int,
19660    );
19661    pub fn gtk_tree_view_convert_widget_to_tree_coords(
19662        tree_view: *mut GtkTreeView,
19663        wx: c_int,
19664        wy: c_int,
19665        tx: *mut c_int,
19666        ty: *mut c_int,
19667    );
19668    pub fn gtk_tree_view_create_row_drag_icon(
19669        tree_view: *mut GtkTreeView,
19670        path: *mut GtkTreePath,
19671    ) -> *mut gdk::GdkPaintable;
19672    pub fn gtk_tree_view_enable_model_drag_dest(
19673        tree_view: *mut GtkTreeView,
19674        formats: *mut gdk::GdkContentFormats,
19675        actions: gdk::GdkDragAction,
19676    );
19677    pub fn gtk_tree_view_enable_model_drag_source(
19678        tree_view: *mut GtkTreeView,
19679        start_button_mask: gdk::GdkModifierType,
19680        formats: *mut gdk::GdkContentFormats,
19681        actions: gdk::GdkDragAction,
19682    );
19683    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
19684    pub fn gtk_tree_view_expand_row(
19685        tree_view: *mut GtkTreeView,
19686        path: *mut GtkTreePath,
19687        open_all: gboolean,
19688    ) -> gboolean;
19689    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
19690    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
19691    pub fn gtk_tree_view_get_background_area(
19692        tree_view: *mut GtkTreeView,
19693        path: *mut GtkTreePath,
19694        column: *mut GtkTreeViewColumn,
19695        rect: *mut gdk::GdkRectangle,
19696    );
19697    pub fn gtk_tree_view_get_cell_area(
19698        tree_view: *mut GtkTreeView,
19699        path: *mut GtkTreePath,
19700        column: *mut GtkTreeViewColumn,
19701        rect: *mut gdk::GdkRectangle,
19702    );
19703    pub fn gtk_tree_view_get_column(
19704        tree_view: *mut GtkTreeView,
19705        n: c_int,
19706    ) -> *mut GtkTreeViewColumn;
19707    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
19708    pub fn gtk_tree_view_get_cursor(
19709        tree_view: *mut GtkTreeView,
19710        path: *mut *mut GtkTreePath,
19711        focus_column: *mut *mut GtkTreeViewColumn,
19712    );
19713    pub fn gtk_tree_view_get_dest_row_at_pos(
19714        tree_view: *mut GtkTreeView,
19715        drag_x: c_int,
19716        drag_y: c_int,
19717        path: *mut *mut GtkTreePath,
19718        pos: *mut GtkTreeViewDropPosition,
19719    ) -> gboolean;
19720    pub fn gtk_tree_view_get_drag_dest_row(
19721        tree_view: *mut GtkTreeView,
19722        path: *mut *mut GtkTreePath,
19723        pos: *mut GtkTreeViewDropPosition,
19724    );
19725    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
19726    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
19727    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
19728        -> *mut GtkTreeViewColumn;
19729    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
19730    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
19731    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
19732    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
19733    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
19734    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
19735    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
19736    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
19737    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
19738    pub fn gtk_tree_view_get_path_at_pos(
19739        tree_view: *mut GtkTreeView,
19740        x: c_int,
19741        y: c_int,
19742        path: *mut *mut GtkTreePath,
19743        column: *mut *mut GtkTreeViewColumn,
19744        cell_x: *mut c_int,
19745        cell_y: *mut c_int,
19746    ) -> gboolean;
19747    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
19748    pub fn gtk_tree_view_get_row_separator_func(
19749        tree_view: *mut GtkTreeView,
19750    ) -> GtkTreeViewRowSeparatorFunc;
19751    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
19752    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
19753    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEditable;
19754    pub fn gtk_tree_view_get_search_equal_func(
19755        tree_view: *mut GtkTreeView,
19756    ) -> GtkTreeViewSearchEqualFunc;
19757    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
19758    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
19759    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
19760    pub fn gtk_tree_view_get_tooltip_context(
19761        tree_view: *mut GtkTreeView,
19762        x: c_int,
19763        y: c_int,
19764        keyboard_tip: gboolean,
19765        model: *mut *mut GtkTreeModel,
19766        path: *mut *mut GtkTreePath,
19767        iter: *mut GtkTreeIter,
19768    ) -> gboolean;
19769    pub fn gtk_tree_view_get_visible_range(
19770        tree_view: *mut GtkTreeView,
19771        start_path: *mut *mut GtkTreePath,
19772        end_path: *mut *mut GtkTreePath,
19773    ) -> gboolean;
19774    pub fn gtk_tree_view_get_visible_rect(
19775        tree_view: *mut GtkTreeView,
19776        visible_rect: *mut gdk::GdkRectangle,
19777    );
19778    pub fn gtk_tree_view_insert_column(
19779        tree_view: *mut GtkTreeView,
19780        column: *mut GtkTreeViewColumn,
19781        position: c_int,
19782    ) -> c_int;
19783    pub fn gtk_tree_view_insert_column_with_attributes(
19784        tree_view: *mut GtkTreeView,
19785        position: c_int,
19786        title: *const c_char,
19787        cell: *mut GtkCellRenderer,
19788        ...
19789    ) -> c_int;
19790    pub fn gtk_tree_view_insert_column_with_data_func(
19791        tree_view: *mut GtkTreeView,
19792        position: c_int,
19793        title: *const c_char,
19794        cell: *mut GtkCellRenderer,
19795        func: GtkTreeCellDataFunc,
19796        data: gpointer,
19797        dnotify: glib::GDestroyNotify,
19798    ) -> c_int;
19799    pub fn gtk_tree_view_is_blank_at_pos(
19800        tree_view: *mut GtkTreeView,
19801        x: c_int,
19802        y: c_int,
19803        path: *mut *mut GtkTreePath,
19804        column: *mut *mut GtkTreeViewColumn,
19805        cell_x: *mut c_int,
19806        cell_y: *mut c_int,
19807    ) -> gboolean;
19808    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
19809    pub fn gtk_tree_view_map_expanded_rows(
19810        tree_view: *mut GtkTreeView,
19811        func: GtkTreeViewMappingFunc,
19812        data: gpointer,
19813    );
19814    pub fn gtk_tree_view_move_column_after(
19815        tree_view: *mut GtkTreeView,
19816        column: *mut GtkTreeViewColumn,
19817        base_column: *mut GtkTreeViewColumn,
19818    );
19819    pub fn gtk_tree_view_remove_column(
19820        tree_view: *mut GtkTreeView,
19821        column: *mut GtkTreeViewColumn,
19822    ) -> c_int;
19823    pub fn gtk_tree_view_row_activated(
19824        tree_view: *mut GtkTreeView,
19825        path: *mut GtkTreePath,
19826        column: *mut GtkTreeViewColumn,
19827    );
19828    pub fn gtk_tree_view_row_expanded(
19829        tree_view: *mut GtkTreeView,
19830        path: *mut GtkTreePath,
19831    ) -> gboolean;
19832    pub fn gtk_tree_view_scroll_to_cell(
19833        tree_view: *mut GtkTreeView,
19834        path: *mut GtkTreePath,
19835        column: *mut GtkTreeViewColumn,
19836        use_align: gboolean,
19837        row_align: c_float,
19838        col_align: c_float,
19839    );
19840    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
19841    pub fn gtk_tree_view_set_activate_on_single_click(
19842        tree_view: *mut GtkTreeView,
19843        single: gboolean,
19844    );
19845    pub fn gtk_tree_view_set_column_drag_function(
19846        tree_view: *mut GtkTreeView,
19847        func: GtkTreeViewColumnDropFunc,
19848        user_data: gpointer,
19849        destroy: glib::GDestroyNotify,
19850    );
19851    pub fn gtk_tree_view_set_cursor(
19852        tree_view: *mut GtkTreeView,
19853        path: *mut GtkTreePath,
19854        focus_column: *mut GtkTreeViewColumn,
19855        start_editing: gboolean,
19856    );
19857    pub fn gtk_tree_view_set_cursor_on_cell(
19858        tree_view: *mut GtkTreeView,
19859        path: *mut GtkTreePath,
19860        focus_column: *mut GtkTreeViewColumn,
19861        focus_cell: *mut GtkCellRenderer,
19862        start_editing: gboolean,
19863    );
19864    pub fn gtk_tree_view_set_drag_dest_row(
19865        tree_view: *mut GtkTreeView,
19866        path: *mut GtkTreePath,
19867        pos: GtkTreeViewDropPosition,
19868    );
19869    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
19870    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
19871    pub fn gtk_tree_view_set_expander_column(
19872        tree_view: *mut GtkTreeView,
19873        column: *mut GtkTreeViewColumn,
19874    );
19875    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
19876    pub fn gtk_tree_view_set_grid_lines(
19877        tree_view: *mut GtkTreeView,
19878        grid_lines: GtkTreeViewGridLines,
19879    );
19880    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
19881    pub fn gtk_tree_view_set_headers_visible(
19882        tree_view: *mut GtkTreeView,
19883        headers_visible: gboolean,
19884    );
19885    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
19886    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
19887    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
19888    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
19889    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
19890    pub fn gtk_tree_view_set_row_separator_func(
19891        tree_view: *mut GtkTreeView,
19892        func: GtkTreeViewRowSeparatorFunc,
19893        data: gpointer,
19894        destroy: glib::GDestroyNotify,
19895    );
19896    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
19897    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
19898    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEditable);
19899    pub fn gtk_tree_view_set_search_equal_func(
19900        tree_view: *mut GtkTreeView,
19901        search_equal_func: GtkTreeViewSearchEqualFunc,
19902        search_user_data: gpointer,
19903        search_destroy: glib::GDestroyNotify,
19904    );
19905    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
19906    pub fn gtk_tree_view_set_tooltip_cell(
19907        tree_view: *mut GtkTreeView,
19908        tooltip: *mut GtkTooltip,
19909        path: *mut GtkTreePath,
19910        column: *mut GtkTreeViewColumn,
19911        cell: *mut GtkCellRenderer,
19912    );
19913    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
19914    pub fn gtk_tree_view_set_tooltip_row(
19915        tree_view: *mut GtkTreeView,
19916        tooltip: *mut GtkTooltip,
19917        path: *mut GtkTreePath,
19918    );
19919    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
19920    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
19921
19922    //=========================================================================
19923    // GtkTreeViewColumn
19924    //=========================================================================
19925    pub fn gtk_tree_view_column_get_type() -> GType;
19926    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
19927    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
19928    pub fn gtk_tree_view_column_new_with_attributes(
19929        title: *const c_char,
19930        cell: *mut GtkCellRenderer,
19931        ...
19932    ) -> *mut GtkTreeViewColumn;
19933    pub fn gtk_tree_view_column_add_attribute(
19934        tree_column: *mut GtkTreeViewColumn,
19935        cell_renderer: *mut GtkCellRenderer,
19936        attribute: *const c_char,
19937        column: c_int,
19938    );
19939    pub fn gtk_tree_view_column_cell_get_position(
19940        tree_column: *mut GtkTreeViewColumn,
19941        cell_renderer: *mut GtkCellRenderer,
19942        x_offset: *mut c_int,
19943        width: *mut c_int,
19944    ) -> gboolean;
19945    pub fn gtk_tree_view_column_cell_get_size(
19946        tree_column: *mut GtkTreeViewColumn,
19947        x_offset: *mut c_int,
19948        y_offset: *mut c_int,
19949        width: *mut c_int,
19950        height: *mut c_int,
19951    );
19952    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19953    pub fn gtk_tree_view_column_cell_set_cell_data(
19954        tree_column: *mut GtkTreeViewColumn,
19955        tree_model: *mut GtkTreeModel,
19956        iter: *mut GtkTreeIter,
19957        is_expander: gboolean,
19958        is_expanded: gboolean,
19959    );
19960    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
19961    pub fn gtk_tree_view_column_clear_attributes(
19962        tree_column: *mut GtkTreeViewColumn,
19963        cell_renderer: *mut GtkCellRenderer,
19964    );
19965    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
19966    pub fn gtk_tree_view_column_focus_cell(
19967        tree_column: *mut GtkTreeViewColumn,
19968        cell: *mut GtkCellRenderer,
19969    );
19970    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
19971    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
19972    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19973    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19974    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
19975    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
19976    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
19977    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19978    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19979    pub fn gtk_tree_view_column_get_sizing(
19980        tree_column: *mut GtkTreeViewColumn,
19981    ) -> GtkTreeViewColumnSizing;
19982    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
19983    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
19984        -> gboolean;
19985    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
19986    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
19987    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
19988    pub fn gtk_tree_view_column_get_tree_view(
19989        tree_column: *mut GtkTreeViewColumn,
19990    ) -> *mut GtkWidget;
19991    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
19992    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
19993    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
19994    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
19995    pub fn gtk_tree_view_column_pack_end(
19996        tree_column: *mut GtkTreeViewColumn,
19997        cell: *mut GtkCellRenderer,
19998        expand: gboolean,
19999    );
20000    pub fn gtk_tree_view_column_pack_start(
20001        tree_column: *mut GtkTreeViewColumn,
20002        cell: *mut GtkCellRenderer,
20003        expand: gboolean,
20004    );
20005    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
20006    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
20007    pub fn gtk_tree_view_column_set_attributes(
20008        tree_column: *mut GtkTreeViewColumn,
20009        cell_renderer: *mut GtkCellRenderer,
20010        ...
20011    );
20012    pub fn gtk_tree_view_column_set_cell_data_func(
20013        tree_column: *mut GtkTreeViewColumn,
20014        cell_renderer: *mut GtkCellRenderer,
20015        func: GtkTreeCellDataFunc,
20016        func_data: gpointer,
20017        destroy: glib::GDestroyNotify,
20018    );
20019    pub fn gtk_tree_view_column_set_clickable(
20020        tree_column: *mut GtkTreeViewColumn,
20021        clickable: gboolean,
20022    );
20023    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
20024    pub fn gtk_tree_view_column_set_fixed_width(
20025        tree_column: *mut GtkTreeViewColumn,
20026        fixed_width: c_int,
20027    );
20028    pub fn gtk_tree_view_column_set_max_width(
20029        tree_column: *mut GtkTreeViewColumn,
20030        max_width: c_int,
20031    );
20032    pub fn gtk_tree_view_column_set_min_width(
20033        tree_column: *mut GtkTreeViewColumn,
20034        min_width: c_int,
20035    );
20036    pub fn gtk_tree_view_column_set_reorderable(
20037        tree_column: *mut GtkTreeViewColumn,
20038        reorderable: gboolean,
20039    );
20040    pub fn gtk_tree_view_column_set_resizable(
20041        tree_column: *mut GtkTreeViewColumn,
20042        resizable: gboolean,
20043    );
20044    pub fn gtk_tree_view_column_set_sizing(
20045        tree_column: *mut GtkTreeViewColumn,
20046        type_: GtkTreeViewColumnSizing,
20047    );
20048    pub fn gtk_tree_view_column_set_sort_column_id(
20049        tree_column: *mut GtkTreeViewColumn,
20050        sort_column_id: c_int,
20051    );
20052    pub fn gtk_tree_view_column_set_sort_indicator(
20053        tree_column: *mut GtkTreeViewColumn,
20054        setting: gboolean,
20055    );
20056    pub fn gtk_tree_view_column_set_sort_order(
20057        tree_column: *mut GtkTreeViewColumn,
20058        order: GtkSortType,
20059    );
20060    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
20061    pub fn gtk_tree_view_column_set_title(
20062        tree_column: *mut GtkTreeViewColumn,
20063        title: *const c_char,
20064    );
20065    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
20066    pub fn gtk_tree_view_column_set_widget(
20067        tree_column: *mut GtkTreeViewColumn,
20068        widget: *mut GtkWidget,
20069    );
20070
20071    //=========================================================================
20072    // GtkUriLauncher
20073    //=========================================================================
20074    #[cfg(feature = "v4_10")]
20075    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20076    pub fn gtk_uri_launcher_get_type() -> GType;
20077    #[cfg(feature = "v4_10")]
20078    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20079    pub fn gtk_uri_launcher_new(uri: *const c_char) -> *mut GtkUriLauncher;
20080    #[cfg(feature = "v4_20")]
20081    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20082    pub fn gtk_uri_launcher_can_launch(
20083        self_: *mut GtkUriLauncher,
20084        parent: *mut GtkWindow,
20085    ) -> gboolean;
20086    #[cfg(feature = "v4_10")]
20087    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20088    pub fn gtk_uri_launcher_get_uri(self_: *mut GtkUriLauncher) -> *const c_char;
20089    #[cfg(feature = "v4_10")]
20090    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20091    pub fn gtk_uri_launcher_launch(
20092        self_: *mut GtkUriLauncher,
20093        parent: *mut GtkWindow,
20094        cancellable: *mut gio::GCancellable,
20095        callback: gio::GAsyncReadyCallback,
20096        user_data: gpointer,
20097    );
20098    #[cfg(feature = "v4_10")]
20099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20100    pub fn gtk_uri_launcher_launch_finish(
20101        self_: *mut GtkUriLauncher,
20102        result: *mut gio::GAsyncResult,
20103        error: *mut *mut glib::GError,
20104    ) -> gboolean;
20105    #[cfg(feature = "v4_10")]
20106    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20107    pub fn gtk_uri_launcher_set_uri(self_: *mut GtkUriLauncher, uri: *const c_char);
20108
20109    //=========================================================================
20110    // GtkVideo
20111    //=========================================================================
20112    pub fn gtk_video_get_type() -> GType;
20113    pub fn gtk_video_new() -> *mut GtkWidget;
20114    pub fn gtk_video_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
20115    pub fn gtk_video_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
20116    pub fn gtk_video_new_for_media_stream(stream: *mut GtkMediaStream) -> *mut GtkWidget;
20117    pub fn gtk_video_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
20118    pub fn gtk_video_get_autoplay(self_: *mut GtkVideo) -> gboolean;
20119    pub fn gtk_video_get_file(self_: *mut GtkVideo) -> *mut gio::GFile;
20120    #[cfg(feature = "v4_14")]
20121    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20122    pub fn gtk_video_get_graphics_offload(self_: *mut GtkVideo) -> GtkGraphicsOffloadEnabled;
20123    pub fn gtk_video_get_loop(self_: *mut GtkVideo) -> gboolean;
20124    pub fn gtk_video_get_media_stream(self_: *mut GtkVideo) -> *mut GtkMediaStream;
20125    pub fn gtk_video_set_autoplay(self_: *mut GtkVideo, autoplay: gboolean);
20126    pub fn gtk_video_set_file(self_: *mut GtkVideo, file: *mut gio::GFile);
20127    pub fn gtk_video_set_filename(self_: *mut GtkVideo, filename: *const c_char);
20128    #[cfg(feature = "v4_14")]
20129    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20130    pub fn gtk_video_set_graphics_offload(self_: *mut GtkVideo, enabled: GtkGraphicsOffloadEnabled);
20131    pub fn gtk_video_set_loop(self_: *mut GtkVideo, loop_: gboolean);
20132    pub fn gtk_video_set_media_stream(self_: *mut GtkVideo, stream: *mut GtkMediaStream);
20133    pub fn gtk_video_set_resource(self_: *mut GtkVideo, resource_path: *const c_char);
20134
20135    //=========================================================================
20136    // GtkViewport
20137    //=========================================================================
20138    pub fn gtk_viewport_get_type() -> GType;
20139    pub fn gtk_viewport_new(
20140        hadjustment: *mut GtkAdjustment,
20141        vadjustment: *mut GtkAdjustment,
20142    ) -> *mut GtkWidget;
20143    pub fn gtk_viewport_get_child(viewport: *mut GtkViewport) -> *mut GtkWidget;
20144    pub fn gtk_viewport_get_scroll_to_focus(viewport: *mut GtkViewport) -> gboolean;
20145    #[cfg(feature = "v4_12")]
20146    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20147    pub fn gtk_viewport_scroll_to(
20148        viewport: *mut GtkViewport,
20149        descendant: *mut GtkWidget,
20150        scroll: *mut GtkScrollInfo,
20151    );
20152    pub fn gtk_viewport_set_child(viewport: *mut GtkViewport, child: *mut GtkWidget);
20153    pub fn gtk_viewport_set_scroll_to_focus(viewport: *mut GtkViewport, scroll_to_focus: gboolean);
20154
20155    //=========================================================================
20156    // GtkVolumeButton
20157    //=========================================================================
20158    pub fn gtk_volume_button_get_type() -> GType;
20159    pub fn gtk_volume_button_new() -> *mut GtkWidget;
20160
20161    //=========================================================================
20162    // GtkWidget
20163    //=========================================================================
20164    pub fn gtk_widget_get_type() -> GType;
20165    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
20166    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
20167    pub fn gtk_widget_action_set_enabled(
20168        widget: *mut GtkWidget,
20169        action_name: *const c_char,
20170        enabled: gboolean,
20171    );
20172    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
20173    pub fn gtk_widget_activate_action(
20174        widget: *mut GtkWidget,
20175        name: *const c_char,
20176        format_string: *const c_char,
20177        ...
20178    ) -> gboolean;
20179    pub fn gtk_widget_activate_action_variant(
20180        widget: *mut GtkWidget,
20181        name: *const c_char,
20182        args: *mut glib::GVariant,
20183    ) -> gboolean;
20184    pub fn gtk_widget_activate_default(widget: *mut GtkWidget);
20185    pub fn gtk_widget_add_controller(widget: *mut GtkWidget, controller: *mut GtkEventController);
20186    pub fn gtk_widget_add_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20187    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20188    pub fn gtk_widget_add_tick_callback(
20189        widget: *mut GtkWidget,
20190        callback: GtkTickCallback,
20191        user_data: gpointer,
20192        notify: glib::GDestroyNotify,
20193    ) -> c_uint;
20194    pub fn gtk_widget_allocate(
20195        widget: *mut GtkWidget,
20196        width: c_int,
20197        height: c_int,
20198        baseline: c_int,
20199        transform: *mut gsk::GskTransform,
20200    );
20201    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
20202    pub fn gtk_widget_compute_bounds(
20203        widget: *mut GtkWidget,
20204        target: *mut GtkWidget,
20205        out_bounds: *mut graphene::graphene_rect_t,
20206    ) -> gboolean;
20207    pub fn gtk_widget_compute_expand(
20208        widget: *mut GtkWidget,
20209        orientation: GtkOrientation,
20210    ) -> gboolean;
20211    pub fn gtk_widget_compute_point(
20212        widget: *mut GtkWidget,
20213        target: *mut GtkWidget,
20214        point: *const graphene::graphene_point_t,
20215        out_point: *mut graphene::graphene_point_t,
20216    ) -> gboolean;
20217    pub fn gtk_widget_compute_transform(
20218        widget: *mut GtkWidget,
20219        target: *mut GtkWidget,
20220        out_transform: *mut graphene::graphene_matrix_t,
20221    ) -> gboolean;
20222    pub fn gtk_widget_contains(widget: *mut GtkWidget, x: c_double, y: c_double) -> gboolean;
20223    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20224    pub fn gtk_widget_create_pango_layout(
20225        widget: *mut GtkWidget,
20226        text: *const c_char,
20227    ) -> *mut pango::PangoLayout;
20228    #[cfg(feature = "v4_8")]
20229    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
20230    pub fn gtk_widget_dispose_template(widget: *mut GtkWidget, widget_type: GType);
20231    pub fn gtk_drag_check_threshold(
20232        widget: *mut GtkWidget,
20233        start_x: c_int,
20234        start_y: c_int,
20235        current_x: c_int,
20236        current_y: c_int,
20237    ) -> gboolean;
20238    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
20239    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
20240    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
20241    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
20242    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
20243    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
20244    #[cfg(feature = "v4_12")]
20245    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20246    pub fn gtk_widget_get_baseline(widget: *mut GtkWidget) -> c_int;
20247    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
20248    pub fn gtk_widget_get_can_target(widget: *mut GtkWidget) -> gboolean;
20249    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
20250    pub fn gtk_widget_get_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20251    #[cfg(feature = "v4_10")]
20252    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20253    pub fn gtk_widget_get_color(widget: *mut GtkWidget, color: *mut gdk::GdkRGBA);
20254    pub fn gtk_widget_get_css_classes(widget: *mut GtkWidget) -> *mut *mut c_char;
20255    pub fn gtk_widget_get_css_name(self_: *mut GtkWidget) -> *const c_char;
20256    pub fn gtk_widget_get_cursor(widget: *mut GtkWidget) -> *mut gdk::GdkCursor;
20257    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
20258    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
20259    pub fn gtk_widget_get_first_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20260    pub fn gtk_widget_get_focus_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20261    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
20262    pub fn gtk_widget_get_focusable(widget: *mut GtkWidget) -> gboolean;
20263    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
20264    pub fn gtk_widget_get_font_options(
20265        widget: *mut GtkWidget,
20266    ) -> *const cairo::cairo_font_options_t;
20267    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
20268    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
20269    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
20270    pub fn gtk_widget_get_height(widget: *mut GtkWidget) -> c_int;
20271    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
20272    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
20273    pub fn gtk_widget_get_last_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20274    pub fn gtk_widget_get_layout_manager(widget: *mut GtkWidget) -> *mut GtkLayoutManager;
20275    #[cfg(feature = "v4_18")]
20276    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20277    pub fn gtk_widget_get_limit_events(widget: *mut GtkWidget) -> gboolean;
20278    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
20279    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
20280    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
20281    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
20282    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
20283    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
20284    pub fn gtk_widget_get_native(widget: *mut GtkWidget) -> *mut GtkNative;
20285    pub fn gtk_widget_get_next_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20286    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
20287    pub fn gtk_widget_get_overflow(widget: *mut GtkWidget) -> GtkOverflow;
20288    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20289    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
20290    pub fn gtk_widget_get_preferred_size(
20291        widget: *mut GtkWidget,
20292        minimum_size: *mut GtkRequisition,
20293        natural_size: *mut GtkRequisition,
20294    );
20295    pub fn gtk_widget_get_prev_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20296    pub fn gtk_widget_get_primary_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20297    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
20298    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
20299    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
20300    pub fn gtk_widget_get_root(widget: *mut GtkWidget) -> *mut GtkRoot;
20301    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
20302    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
20303    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
20304    pub fn gtk_widget_get_size(widget: *mut GtkWidget, orientation: GtkOrientation) -> c_int;
20305    pub fn gtk_widget_get_size_request(
20306        widget: *mut GtkWidget,
20307        width: *mut c_int,
20308        height: *mut c_int,
20309    );
20310    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
20311    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
20312    pub fn gtk_widget_get_template_child(
20313        widget: *mut GtkWidget,
20314        widget_type: GType,
20315        name: *const c_char,
20316    ) -> *mut gobject::GObject;
20317    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *const c_char;
20318    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *const c_char;
20319    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
20320    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
20321    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
20322    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
20323    pub fn gtk_widget_get_width(widget: *mut GtkWidget) -> c_int;
20324    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget) -> gboolean;
20325    pub fn gtk_widget_has_css_class(widget: *mut GtkWidget, css_class: *const c_char) -> gboolean;
20326    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
20327    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
20328    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
20329    pub fn gtk_widget_hide(widget: *mut GtkWidget);
20330    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
20331    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
20332    pub fn gtk_widget_insert_action_group(
20333        widget: *mut GtkWidget,
20334        name: *const c_char,
20335        group: *mut gio::GActionGroup,
20336    );
20337    pub fn gtk_widget_insert_after(
20338        widget: *mut GtkWidget,
20339        parent: *mut GtkWidget,
20340        previous_sibling: *mut GtkWidget,
20341    );
20342    pub fn gtk_widget_insert_before(
20343        widget: *mut GtkWidget,
20344        parent: *mut GtkWidget,
20345        next_sibling: *mut GtkWidget,
20346    );
20347    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
20348    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
20349    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
20350    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
20351    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
20352    pub fn gtk_widget_keynav_failed(
20353        widget: *mut GtkWidget,
20354        direction: GtkDirectionType,
20355    ) -> gboolean;
20356    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
20357    pub fn gtk_widget_map(widget: *mut GtkWidget);
20358    pub fn gtk_widget_measure(
20359        widget: *mut GtkWidget,
20360        orientation: GtkOrientation,
20361        for_size: c_int,
20362        minimum: *mut c_int,
20363        natural: *mut c_int,
20364        minimum_baseline: *mut c_int,
20365        natural_baseline: *mut c_int,
20366    );
20367    pub fn gtk_widget_mnemonic_activate(
20368        widget: *mut GtkWidget,
20369        group_cycling: gboolean,
20370    ) -> gboolean;
20371    pub fn gtk_widget_observe_children(widget: *mut GtkWidget) -> *mut gio::GListModel;
20372    pub fn gtk_widget_observe_controllers(widget: *mut GtkWidget) -> *mut gio::GListModel;
20373    pub fn gtk_widget_pick(
20374        widget: *mut GtkWidget,
20375        x: c_double,
20376        y: c_double,
20377        flags: GtkPickFlags,
20378    ) -> *mut GtkWidget;
20379    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
20380    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
20381    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
20382    pub fn gtk_widget_realize(widget: *mut GtkWidget);
20383    pub fn gtk_widget_remove_controller(
20384        widget: *mut GtkWidget,
20385        controller: *mut GtkEventController,
20386    );
20387    pub fn gtk_widget_remove_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20388    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20389    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
20390    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
20391    pub fn gtk_widget_set_can_target(widget: *mut GtkWidget, can_target: gboolean);
20392    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, child_visible: gboolean);
20393    pub fn gtk_widget_set_css_classes(widget: *mut GtkWidget, classes: *mut *const c_char);
20394    pub fn gtk_widget_set_cursor(widget: *mut GtkWidget, cursor: *mut gdk::GdkCursor);
20395    pub fn gtk_widget_set_cursor_from_name(widget: *mut GtkWidget, name: *const c_char);
20396    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
20397    pub fn gtk_widget_set_focus_child(widget: *mut GtkWidget, child: *mut GtkWidget);
20398    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
20399    pub fn gtk_widget_set_focusable(widget: *mut GtkWidget, focusable: gboolean);
20400    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
20401    pub fn gtk_widget_set_font_options(
20402        widget: *mut GtkWidget,
20403        options: *const cairo::cairo_font_options_t,
20404    );
20405    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
20406    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
20407    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
20408    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
20409    pub fn gtk_widget_set_layout_manager(
20410        widget: *mut GtkWidget,
20411        layout_manager: *mut GtkLayoutManager,
20412    );
20413    #[cfg(feature = "v4_18")]
20414    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20415    pub fn gtk_widget_set_limit_events(widget: *mut GtkWidget, limit_events: gboolean);
20416    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
20417    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
20418    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
20419    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
20420    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
20421    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
20422    pub fn gtk_widget_set_overflow(widget: *mut GtkWidget, overflow: GtkOverflow);
20423    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
20424    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
20425    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
20426    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
20427    pub fn gtk_widget_set_state_flags(
20428        widget: *mut GtkWidget,
20429        flags: GtkStateFlags,
20430        clear: gboolean,
20431    );
20432    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
20433    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
20434    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
20435    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
20436    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
20437    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
20438    pub fn gtk_widget_should_layout(widget: *mut GtkWidget) -> gboolean;
20439    pub fn gtk_widget_show(widget: *mut GtkWidget);
20440    pub fn gtk_widget_size_allocate(
20441        widget: *mut GtkWidget,
20442        allocation: *const GtkAllocation,
20443        baseline: c_int,
20444    );
20445    pub fn gtk_widget_snapshot_child(
20446        widget: *mut GtkWidget,
20447        child: *mut GtkWidget,
20448        snapshot: *mut GtkSnapshot,
20449    );
20450    pub fn gtk_widget_translate_coordinates(
20451        src_widget: *mut GtkWidget,
20452        dest_widget: *mut GtkWidget,
20453        src_x: c_double,
20454        src_y: c_double,
20455        dest_x: *mut c_double,
20456        dest_y: *mut c_double,
20457    ) -> gboolean;
20458    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
20459    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
20460    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
20461    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
20462    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
20463
20464    //=========================================================================
20465    // GtkWidgetPaintable
20466    //=========================================================================
20467    pub fn gtk_widget_paintable_get_type() -> GType;
20468    pub fn gtk_widget_paintable_new(widget: *mut GtkWidget) -> *mut GtkWidgetPaintable;
20469    pub fn gtk_widget_paintable_get_widget(self_: *mut GtkWidgetPaintable) -> *mut GtkWidget;
20470    pub fn gtk_widget_paintable_set_widget(self_: *mut GtkWidgetPaintable, widget: *mut GtkWidget);
20471
20472    //=========================================================================
20473    // GtkWindow
20474    //=========================================================================
20475    pub fn gtk_window_get_type() -> GType;
20476    pub fn gtk_window_new() -> *mut GtkWidget;
20477    pub fn gtk_window_get_default_icon_name() -> *const c_char;
20478    pub fn gtk_window_get_toplevels() -> *mut gio::GListModel;
20479    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
20480    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
20481    pub fn gtk_window_set_default_icon_name(name: *const c_char);
20482    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
20483    pub fn gtk_window_close(window: *mut GtkWindow);
20484    pub fn gtk_window_destroy(window: *mut GtkWindow);
20485    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
20486    pub fn gtk_window_fullscreen_on_monitor(window: *mut GtkWindow, monitor: *mut gdk::GdkMonitor);
20487    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
20488    pub fn gtk_window_get_child(window: *mut GtkWindow) -> *mut GtkWidget;
20489    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
20490    pub fn gtk_window_get_default_size(
20491        window: *mut GtkWindow,
20492        width: *mut c_int,
20493        height: *mut c_int,
20494    );
20495    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
20496    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
20497    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
20498    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
20499    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
20500    #[cfg(feature = "v4_20")]
20501    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20502    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> GtkWindowGravity;
20503    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
20504    #[cfg(feature = "v4_2")]
20505    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20506    pub fn gtk_window_get_handle_menubar_accel(window: *mut GtkWindow) -> gboolean;
20507    pub fn gtk_window_get_hide_on_close(window: *mut GtkWindow) -> gboolean;
20508    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
20509    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
20510    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
20511    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
20512    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
20513    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
20514    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
20515    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
20516    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
20517    pub fn gtk_window_is_fullscreen(window: *mut GtkWindow) -> gboolean;
20518    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
20519    #[cfg(feature = "v4_12")]
20520    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20521    pub fn gtk_window_is_suspended(window: *mut GtkWindow) -> gboolean;
20522    pub fn gtk_window_maximize(window: *mut GtkWindow);
20523    pub fn gtk_window_minimize(window: *mut GtkWindow);
20524    pub fn gtk_window_present(window: *mut GtkWindow);
20525    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
20526    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
20527    pub fn gtk_window_set_child(window: *mut GtkWindow, child: *mut GtkWidget);
20528    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
20529    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
20530    pub fn gtk_window_set_default_widget(window: *mut GtkWindow, default_widget: *mut GtkWidget);
20531    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
20532    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
20533    pub fn gtk_window_set_display(window: *mut GtkWindow, display: *mut gdk::GdkDisplay);
20534    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
20535    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
20536    #[cfg(feature = "v4_20")]
20537    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20538    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: GtkWindowGravity);
20539    #[cfg(feature = "v4_2")]
20540    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20541    pub fn gtk_window_set_handle_menubar_accel(
20542        window: *mut GtkWindow,
20543        handle_menubar_accel: gboolean,
20544    );
20545    pub fn gtk_window_set_hide_on_close(window: *mut GtkWindow, setting: gboolean);
20546    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
20547    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
20548    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
20549    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
20550    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
20551    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
20552    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
20553    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
20554    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
20555    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
20556    pub fn gtk_window_unminimize(window: *mut GtkWindow);
20557
20558    //=========================================================================
20559    // GtkWindowControls
20560    //=========================================================================
20561    pub fn gtk_window_controls_get_type() -> GType;
20562    pub fn gtk_window_controls_new(side: GtkPackType) -> *mut GtkWidget;
20563    pub fn gtk_window_controls_get_decoration_layout(
20564        self_: *mut GtkWindowControls,
20565    ) -> *const c_char;
20566    pub fn gtk_window_controls_get_empty(self_: *mut GtkWindowControls) -> gboolean;
20567    pub fn gtk_window_controls_get_side(self_: *mut GtkWindowControls) -> GtkPackType;
20568    #[cfg(feature = "v4_18")]
20569    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20570    pub fn gtk_window_controls_get_use_native_controls(self_: *mut GtkWindowControls) -> gboolean;
20571    pub fn gtk_window_controls_set_decoration_layout(
20572        self_: *mut GtkWindowControls,
20573        layout: *const c_char,
20574    );
20575    pub fn gtk_window_controls_set_side(self_: *mut GtkWindowControls, side: GtkPackType);
20576    #[cfg(feature = "v4_18")]
20577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20578    pub fn gtk_window_controls_set_use_native_controls(
20579        self_: *mut GtkWindowControls,
20580        setting: gboolean,
20581    );
20582
20583    //=========================================================================
20584    // GtkWindowGroup
20585    //=========================================================================
20586    pub fn gtk_window_group_get_type() -> GType;
20587    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
20588    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
20589    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
20590    pub fn gtk_window_group_remove_window(
20591        window_group: *mut GtkWindowGroup,
20592        window: *mut GtkWindow,
20593    );
20594
20595    //=========================================================================
20596    // GtkWindowHandle
20597    //=========================================================================
20598    pub fn gtk_window_handle_get_type() -> GType;
20599    pub fn gtk_window_handle_new() -> *mut GtkWidget;
20600    pub fn gtk_window_handle_get_child(self_: *mut GtkWindowHandle) -> *mut GtkWidget;
20601    pub fn gtk_window_handle_set_child(self_: *mut GtkWindowHandle, child: *mut GtkWidget);
20602
20603    //=========================================================================
20604    // GtkAccessible
20605    //=========================================================================
20606    pub fn gtk_accessible_get_type() -> GType;
20607    #[cfg(feature = "v4_14")]
20608    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20609    pub fn gtk_accessible_announce(
20610        self_: *mut GtkAccessible,
20611        message: *const c_char,
20612        priority: GtkAccessibleAnnouncementPriority,
20613    );
20614    #[cfg(feature = "v4_10")]
20615    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20616    pub fn gtk_accessible_get_accessible_parent(self_: *mut GtkAccessible) -> *mut GtkAccessible;
20617    pub fn gtk_accessible_get_accessible_role(self_: *mut GtkAccessible) -> GtkAccessibleRole;
20618    #[cfg(feature = "v4_10")]
20619    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20620    pub fn gtk_accessible_get_at_context(self_: *mut GtkAccessible) -> *mut GtkATContext;
20621    #[cfg(feature = "v4_10")]
20622    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20623    pub fn gtk_accessible_get_bounds(
20624        self_: *mut GtkAccessible,
20625        x: *mut c_int,
20626        y: *mut c_int,
20627        width: *mut c_int,
20628        height: *mut c_int,
20629    ) -> gboolean;
20630    #[cfg(feature = "v4_10")]
20631    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20632    pub fn gtk_accessible_get_first_accessible_child(
20633        self_: *mut GtkAccessible,
20634    ) -> *mut GtkAccessible;
20635    #[cfg(feature = "v4_10")]
20636    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20637    pub fn gtk_accessible_get_next_accessible_sibling(
20638        self_: *mut GtkAccessible,
20639    ) -> *mut GtkAccessible;
20640    #[cfg(feature = "v4_10")]
20641    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20642    pub fn gtk_accessible_get_platform_state(
20643        self_: *mut GtkAccessible,
20644        state: GtkAccessiblePlatformState,
20645    ) -> gboolean;
20646    pub fn gtk_accessible_reset_property(
20647        self_: *mut GtkAccessible,
20648        property: GtkAccessibleProperty,
20649    );
20650    pub fn gtk_accessible_reset_relation(
20651        self_: *mut GtkAccessible,
20652        relation: GtkAccessibleRelation,
20653    );
20654    pub fn gtk_accessible_reset_state(self_: *mut GtkAccessible, state: GtkAccessibleState);
20655    #[cfg(feature = "v4_10")]
20656    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20657    pub fn gtk_accessible_set_accessible_parent(
20658        self_: *mut GtkAccessible,
20659        parent: *mut GtkAccessible,
20660        next_sibling: *mut GtkAccessible,
20661    );
20662    #[cfg(feature = "v4_10")]
20663    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20664    pub fn gtk_accessible_update_next_accessible_sibling(
20665        self_: *mut GtkAccessible,
20666        new_sibling: *mut GtkAccessible,
20667    );
20668    #[cfg(feature = "v4_18")]
20669    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20670    pub fn gtk_accessible_update_platform_state(
20671        self_: *mut GtkAccessible,
20672        state: GtkAccessiblePlatformState,
20673    );
20674    pub fn gtk_accessible_update_property(
20675        self_: *mut GtkAccessible,
20676        first_property: GtkAccessibleProperty,
20677        ...
20678    );
20679    pub fn gtk_accessible_update_property_value(
20680        self_: *mut GtkAccessible,
20681        n_properties: c_int,
20682        properties: *mut GtkAccessibleProperty,
20683        values: *const gobject::GValue,
20684    );
20685    pub fn gtk_accessible_update_relation(
20686        self_: *mut GtkAccessible,
20687        first_relation: GtkAccessibleRelation,
20688        ...
20689    );
20690    pub fn gtk_accessible_update_relation_value(
20691        self_: *mut GtkAccessible,
20692        n_relations: c_int,
20693        relations: *mut GtkAccessibleRelation,
20694        values: *const gobject::GValue,
20695    );
20696    pub fn gtk_accessible_update_state(
20697        self_: *mut GtkAccessible,
20698        first_state: GtkAccessibleState,
20699        ...
20700    );
20701    pub fn gtk_accessible_update_state_value(
20702        self_: *mut GtkAccessible,
20703        n_states: c_int,
20704        states: *mut GtkAccessibleState,
20705        values: *const gobject::GValue,
20706    );
20707
20708    //=========================================================================
20709    // GtkAccessibleRange
20710    //=========================================================================
20711    #[cfg(feature = "v4_10")]
20712    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20713    pub fn gtk_accessible_range_get_type() -> GType;
20714
20715    //=========================================================================
20716    // GtkAccessibleText
20717    //=========================================================================
20718    #[cfg(feature = "v4_14")]
20719    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20720    pub fn gtk_accessible_text_get_type() -> GType;
20721    #[cfg(feature = "v4_14")]
20722    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20723    pub fn gtk_accessible_text_update_caret_position(self_: *mut GtkAccessibleText);
20724    #[cfg(feature = "v4_14")]
20725    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20726    pub fn gtk_accessible_text_update_contents(
20727        self_: *mut GtkAccessibleText,
20728        change: GtkAccessibleTextContentChange,
20729        start: c_uint,
20730        end: c_uint,
20731    );
20732    #[cfg(feature = "v4_14")]
20733    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20734    pub fn gtk_accessible_text_update_selection_bound(self_: *mut GtkAccessibleText);
20735
20736    //=========================================================================
20737    // GtkActionable
20738    //=========================================================================
20739    pub fn gtk_actionable_get_type() -> GType;
20740    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
20741    pub fn gtk_actionable_get_action_target_value(
20742        actionable: *mut GtkActionable,
20743    ) -> *mut glib::GVariant;
20744    pub fn gtk_actionable_set_action_name(
20745        actionable: *mut GtkActionable,
20746        action_name: *const c_char,
20747    );
20748    pub fn gtk_actionable_set_action_target(
20749        actionable: *mut GtkActionable,
20750        format_string: *const c_char,
20751        ...
20752    );
20753    pub fn gtk_actionable_set_action_target_value(
20754        actionable: *mut GtkActionable,
20755        target_value: *mut glib::GVariant,
20756    );
20757    pub fn gtk_actionable_set_detailed_action_name(
20758        actionable: *mut GtkActionable,
20759        detailed_action_name: *const c_char,
20760    );
20761
20762    //=========================================================================
20763    // GtkAppChooser
20764    //=========================================================================
20765    pub fn gtk_app_chooser_get_type() -> GType;
20766    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
20767    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
20768    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
20769
20770    //=========================================================================
20771    // GtkBuildable
20772    //=========================================================================
20773    pub fn gtk_buildable_get_type() -> GType;
20774    pub fn gtk_buildable_get_buildable_id(buildable: *mut GtkBuildable) -> *const c_char;
20775
20776    //=========================================================================
20777    // GtkBuilderScope
20778    //=========================================================================
20779    pub fn gtk_builder_scope_get_type() -> GType;
20780
20781    //=========================================================================
20782    // GtkCellEditable
20783    //=========================================================================
20784    pub fn gtk_cell_editable_get_type() -> GType;
20785    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
20786    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
20787    pub fn gtk_cell_editable_start_editing(
20788        cell_editable: *mut GtkCellEditable,
20789        event: *mut gdk::GdkEvent,
20790    );
20791
20792    //=========================================================================
20793    // GtkCellLayout
20794    //=========================================================================
20795    pub fn gtk_cell_layout_get_type() -> GType;
20796    pub fn gtk_cell_layout_add_attribute(
20797        cell_layout: *mut GtkCellLayout,
20798        cell: *mut GtkCellRenderer,
20799        attribute: *const c_char,
20800        column: c_int,
20801    );
20802    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
20803    pub fn gtk_cell_layout_clear_attributes(
20804        cell_layout: *mut GtkCellLayout,
20805        cell: *mut GtkCellRenderer,
20806    );
20807    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
20808    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
20809    pub fn gtk_cell_layout_pack_end(
20810        cell_layout: *mut GtkCellLayout,
20811        cell: *mut GtkCellRenderer,
20812        expand: gboolean,
20813    );
20814    pub fn gtk_cell_layout_pack_start(
20815        cell_layout: *mut GtkCellLayout,
20816        cell: *mut GtkCellRenderer,
20817        expand: gboolean,
20818    );
20819    pub fn gtk_cell_layout_reorder(
20820        cell_layout: *mut GtkCellLayout,
20821        cell: *mut GtkCellRenderer,
20822        position: c_int,
20823    );
20824    pub fn gtk_cell_layout_set_attributes(
20825        cell_layout: *mut GtkCellLayout,
20826        cell: *mut GtkCellRenderer,
20827        ...
20828    );
20829    pub fn gtk_cell_layout_set_cell_data_func(
20830        cell_layout: *mut GtkCellLayout,
20831        cell: *mut GtkCellRenderer,
20832        func: GtkCellLayoutDataFunc,
20833        func_data: gpointer,
20834        destroy: glib::GDestroyNotify,
20835    );
20836
20837    //=========================================================================
20838    // GtkColorChooser
20839    //=========================================================================
20840    pub fn gtk_color_chooser_get_type() -> GType;
20841    pub fn gtk_color_chooser_add_palette(
20842        chooser: *mut GtkColorChooser,
20843        orientation: GtkOrientation,
20844        colors_per_line: c_int,
20845        n_colors: c_int,
20846        colors: *mut gdk::GdkRGBA,
20847    );
20848    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
20849    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
20850    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
20851    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
20852
20853    //=========================================================================
20854    // GtkConstraintTarget
20855    //=========================================================================
20856    pub fn gtk_constraint_target_get_type() -> GType;
20857
20858    //=========================================================================
20859    // GtkEditable
20860    //=========================================================================
20861    pub fn gtk_editable_get_type() -> GType;
20862    pub fn gtk_editable_delegate_get_property(
20863        object: *mut gobject::GObject,
20864        prop_id: c_uint,
20865        value: *mut gobject::GValue,
20866        pspec: *mut gobject::GParamSpec,
20867    ) -> gboolean;
20868    pub fn gtk_editable_delegate_set_property(
20869        object: *mut gobject::GObject,
20870        prop_id: c_uint,
20871        value: *const gobject::GValue,
20872        pspec: *mut gobject::GParamSpec,
20873    ) -> gboolean;
20874    pub fn gtk_editable_install_properties(
20875        object_class: *mut gobject::GObjectClass,
20876        first_prop: c_uint,
20877    ) -> c_uint;
20878    #[cfg(feature = "v4_10")]
20879    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20880    pub fn gtk_editable_delegate_get_accessible_platform_state(
20881        editable: *mut GtkEditable,
20882        state: GtkAccessiblePlatformState,
20883    ) -> gboolean;
20884    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
20885    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
20886    pub fn gtk_editable_finish_delegate(editable: *mut GtkEditable);
20887    pub fn gtk_editable_get_alignment(editable: *mut GtkEditable) -> c_float;
20888    pub fn gtk_editable_get_chars(
20889        editable: *mut GtkEditable,
20890        start_pos: c_int,
20891        end_pos: c_int,
20892    ) -> *mut c_char;
20893    pub fn gtk_editable_get_delegate(editable: *mut GtkEditable) -> *mut GtkEditable;
20894    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
20895    pub fn gtk_editable_get_enable_undo(editable: *mut GtkEditable) -> gboolean;
20896    pub fn gtk_editable_get_max_width_chars(editable: *mut GtkEditable) -> c_int;
20897    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
20898    pub fn gtk_editable_get_selection_bounds(
20899        editable: *mut GtkEditable,
20900        start_pos: *mut c_int,
20901        end_pos: *mut c_int,
20902    ) -> gboolean;
20903    pub fn gtk_editable_get_text(editable: *mut GtkEditable) -> *const c_char;
20904    pub fn gtk_editable_get_width_chars(editable: *mut GtkEditable) -> c_int;
20905    pub fn gtk_editable_init_delegate(editable: *mut GtkEditable);
20906    pub fn gtk_editable_insert_text(
20907        editable: *mut GtkEditable,
20908        text: *const c_char,
20909        length: c_int,
20910        position: *mut c_int,
20911    );
20912    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
20913    pub fn gtk_editable_set_alignment(editable: *mut GtkEditable, xalign: c_float);
20914    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
20915    pub fn gtk_editable_set_enable_undo(editable: *mut GtkEditable, enable_undo: gboolean);
20916    pub fn gtk_editable_set_max_width_chars(editable: *mut GtkEditable, n_chars: c_int);
20917    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
20918    pub fn gtk_editable_set_text(editable: *mut GtkEditable, text: *const c_char);
20919    pub fn gtk_editable_set_width_chars(editable: *mut GtkEditable, n_chars: c_int);
20920
20921    //=========================================================================
20922    // GtkFileChooser
20923    //=========================================================================
20924    pub fn gtk_file_chooser_get_type() -> GType;
20925    pub fn gtk_file_chooser_add_choice(
20926        chooser: *mut GtkFileChooser,
20927        id: *const c_char,
20928        label: *const c_char,
20929        options: *mut *const c_char,
20930        option_labels: *mut *const c_char,
20931    );
20932    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
20933    pub fn gtk_file_chooser_add_shortcut_folder(
20934        chooser: *mut GtkFileChooser,
20935        folder: *mut gio::GFile,
20936        error: *mut *mut glib::GError,
20937    ) -> gboolean;
20938    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
20939    pub fn gtk_file_chooser_get_choice(
20940        chooser: *mut GtkFileChooser,
20941        id: *const c_char,
20942    ) -> *const c_char;
20943    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
20944    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
20945    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
20946    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
20947    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
20948    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
20949    pub fn gtk_file_chooser_get_filters(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
20950    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
20951    pub fn gtk_file_chooser_get_shortcut_folders(
20952        chooser: *mut GtkFileChooser,
20953    ) -> *mut gio::GListModel;
20954    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
20955    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
20956    pub fn gtk_file_chooser_remove_shortcut_folder(
20957        chooser: *mut GtkFileChooser,
20958        folder: *mut gio::GFile,
20959        error: *mut *mut glib::GError,
20960    ) -> gboolean;
20961    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
20962    pub fn gtk_file_chooser_set_choice(
20963        chooser: *mut GtkFileChooser,
20964        id: *const c_char,
20965        option: *const c_char,
20966    );
20967    pub fn gtk_file_chooser_set_create_folders(
20968        chooser: *mut GtkFileChooser,
20969        create_folders: gboolean,
20970    );
20971    pub fn gtk_file_chooser_set_current_folder(
20972        chooser: *mut GtkFileChooser,
20973        file: *mut gio::GFile,
20974        error: *mut *mut glib::GError,
20975    ) -> gboolean;
20976    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
20977    pub fn gtk_file_chooser_set_file(
20978        chooser: *mut GtkFileChooser,
20979        file: *mut gio::GFile,
20980        error: *mut *mut glib::GError,
20981    ) -> gboolean;
20982    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
20983    pub fn gtk_file_chooser_set_select_multiple(
20984        chooser: *mut GtkFileChooser,
20985        select_multiple: gboolean,
20986    );
20987
20988    //=========================================================================
20989    // GtkFontChooser
20990    //=========================================================================
20991    pub fn gtk_font_chooser_get_type() -> GType;
20992    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
20993    pub fn gtk_font_chooser_get_font_desc(
20994        fontchooser: *mut GtkFontChooser,
20995    ) -> *mut pango::PangoFontDescription;
20996    pub fn gtk_font_chooser_get_font_face(
20997        fontchooser: *mut GtkFontChooser,
20998    ) -> *mut pango::PangoFontFace;
20999    pub fn gtk_font_chooser_get_font_family(
21000        fontchooser: *mut GtkFontChooser,
21001    ) -> *mut pango::PangoFontFamily;
21002    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21003    pub fn gtk_font_chooser_get_font_map(
21004        fontchooser: *mut GtkFontChooser,
21005    ) -> *mut pango::PangoFontMap;
21006    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
21007    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21008    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
21009    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21010    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
21011    pub fn gtk_font_chooser_set_filter_func(
21012        fontchooser: *mut GtkFontChooser,
21013        filter: GtkFontFilterFunc,
21014        user_data: gpointer,
21015        destroy: glib::GDestroyNotify,
21016    );
21017    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
21018    pub fn gtk_font_chooser_set_font_desc(
21019        fontchooser: *mut GtkFontChooser,
21020        font_desc: *const pango::PangoFontDescription,
21021    );
21022    pub fn gtk_font_chooser_set_font_map(
21023        fontchooser: *mut GtkFontChooser,
21024        fontmap: *mut pango::PangoFontMap,
21025    );
21026    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
21027    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
21028    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
21029    pub fn gtk_font_chooser_set_show_preview_entry(
21030        fontchooser: *mut GtkFontChooser,
21031        show_preview_entry: gboolean,
21032    );
21033
21034    //=========================================================================
21035    // GtkNative
21036    //=========================================================================
21037    pub fn gtk_native_get_type() -> GType;
21038    pub fn gtk_native_get_for_surface(surface: *mut gdk::GdkSurface) -> *mut GtkNative;
21039    pub fn gtk_native_get_renderer(self_: *mut GtkNative) -> *mut gsk::GskRenderer;
21040    pub fn gtk_native_get_surface(self_: *mut GtkNative) -> *mut gdk::GdkSurface;
21041    pub fn gtk_native_get_surface_transform(
21042        self_: *mut GtkNative,
21043        x: *mut c_double,
21044        y: *mut c_double,
21045    );
21046    pub fn gtk_native_realize(self_: *mut GtkNative);
21047    pub fn gtk_native_unrealize(self_: *mut GtkNative);
21048
21049    //=========================================================================
21050    // GtkOrientable
21051    //=========================================================================
21052    pub fn gtk_orientable_get_type() -> GType;
21053    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
21054    pub fn gtk_orientable_set_orientation(
21055        orientable: *mut GtkOrientable,
21056        orientation: GtkOrientation,
21057    );
21058
21059    //=========================================================================
21060    // GtkPrintOperationPreview
21061    //=========================================================================
21062    pub fn gtk_print_operation_preview_get_type() -> GType;
21063    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
21064    pub fn gtk_print_operation_preview_is_selected(
21065        preview: *mut GtkPrintOperationPreview,
21066        page_nr: c_int,
21067    ) -> gboolean;
21068    pub fn gtk_print_operation_preview_render_page(
21069        preview: *mut GtkPrintOperationPreview,
21070        page_nr: c_int,
21071    );
21072
21073    //=========================================================================
21074    // GtkRoot
21075    //=========================================================================
21076    pub fn gtk_root_get_type() -> GType;
21077    pub fn gtk_root_get_display(self_: *mut GtkRoot) -> *mut gdk::GdkDisplay;
21078    pub fn gtk_root_get_focus(self_: *mut GtkRoot) -> *mut GtkWidget;
21079    pub fn gtk_root_set_focus(self_: *mut GtkRoot, focus: *mut GtkWidget);
21080
21081    //=========================================================================
21082    // GtkScrollable
21083    //=========================================================================
21084    pub fn gtk_scrollable_get_type() -> GType;
21085    pub fn gtk_scrollable_get_border(
21086        scrollable: *mut GtkScrollable,
21087        border: *mut GtkBorder,
21088    ) -> gboolean;
21089    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21090    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
21091        -> GtkScrollablePolicy;
21092    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21093    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
21094        -> GtkScrollablePolicy;
21095    pub fn gtk_scrollable_set_hadjustment(
21096        scrollable: *mut GtkScrollable,
21097        hadjustment: *mut GtkAdjustment,
21098    );
21099    pub fn gtk_scrollable_set_hscroll_policy(
21100        scrollable: *mut GtkScrollable,
21101        policy: GtkScrollablePolicy,
21102    );
21103    pub fn gtk_scrollable_set_vadjustment(
21104        scrollable: *mut GtkScrollable,
21105        vadjustment: *mut GtkAdjustment,
21106    );
21107    pub fn gtk_scrollable_set_vscroll_policy(
21108        scrollable: *mut GtkScrollable,
21109        policy: GtkScrollablePolicy,
21110    );
21111
21112    //=========================================================================
21113    // GtkSectionModel
21114    //=========================================================================
21115    #[cfg(feature = "v4_12")]
21116    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21117    pub fn gtk_section_model_get_type() -> GType;
21118    #[cfg(feature = "v4_12")]
21119    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21120    pub fn gtk_section_model_get_section(
21121        self_: *mut GtkSectionModel,
21122        position: c_uint,
21123        out_start: *mut c_uint,
21124        out_end: *mut c_uint,
21125    );
21126    #[cfg(feature = "v4_12")]
21127    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21128    pub fn gtk_section_model_sections_changed(
21129        self_: *mut GtkSectionModel,
21130        position: c_uint,
21131        n_items: c_uint,
21132    );
21133
21134    //=========================================================================
21135    // GtkSelectionModel
21136    //=========================================================================
21137    pub fn gtk_selection_model_get_type() -> GType;
21138    pub fn gtk_selection_model_get_selection(model: *mut GtkSelectionModel) -> *mut GtkBitset;
21139    pub fn gtk_selection_model_get_selection_in_range(
21140        model: *mut GtkSelectionModel,
21141        position: c_uint,
21142        n_items: c_uint,
21143    ) -> *mut GtkBitset;
21144    pub fn gtk_selection_model_is_selected(
21145        model: *mut GtkSelectionModel,
21146        position: c_uint,
21147    ) -> gboolean;
21148    pub fn gtk_selection_model_select_all(model: *mut GtkSelectionModel) -> gboolean;
21149    pub fn gtk_selection_model_select_item(
21150        model: *mut GtkSelectionModel,
21151        position: c_uint,
21152        unselect_rest: gboolean,
21153    ) -> gboolean;
21154    pub fn gtk_selection_model_select_range(
21155        model: *mut GtkSelectionModel,
21156        position: c_uint,
21157        n_items: c_uint,
21158        unselect_rest: gboolean,
21159    ) -> gboolean;
21160    pub fn gtk_selection_model_selection_changed(
21161        model: *mut GtkSelectionModel,
21162        position: c_uint,
21163        n_items: c_uint,
21164    );
21165    pub fn gtk_selection_model_set_selection(
21166        model: *mut GtkSelectionModel,
21167        selected: *mut GtkBitset,
21168        mask: *mut GtkBitset,
21169    ) -> gboolean;
21170    pub fn gtk_selection_model_unselect_all(model: *mut GtkSelectionModel) -> gboolean;
21171    pub fn gtk_selection_model_unselect_item(
21172        model: *mut GtkSelectionModel,
21173        position: c_uint,
21174    ) -> gboolean;
21175    pub fn gtk_selection_model_unselect_range(
21176        model: *mut GtkSelectionModel,
21177        position: c_uint,
21178        n_items: c_uint,
21179    ) -> gboolean;
21180
21181    //=========================================================================
21182    // GtkShortcutManager
21183    //=========================================================================
21184    pub fn gtk_shortcut_manager_get_type() -> GType;
21185
21186    //=========================================================================
21187    // GtkStyleProvider
21188    //=========================================================================
21189    pub fn gtk_style_provider_get_type() -> GType;
21190
21191    //=========================================================================
21192    // GtkSymbolicPaintable
21193    //=========================================================================
21194    #[cfg(feature = "v4_6")]
21195    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21196    pub fn gtk_symbolic_paintable_get_type() -> GType;
21197    #[cfg(feature = "v4_6")]
21198    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21199    pub fn gtk_symbolic_paintable_snapshot_symbolic(
21200        paintable: *mut GtkSymbolicPaintable,
21201        snapshot: *mut gdk::GdkSnapshot,
21202        width: c_double,
21203        height: c_double,
21204        colors: *const gdk::GdkRGBA,
21205        n_colors: size_t,
21206    );
21207
21208    //=========================================================================
21209    // GtkTreeDragDest
21210    //=========================================================================
21211    pub fn gtk_tree_drag_dest_get_type() -> GType;
21212    pub fn gtk_tree_drag_dest_drag_data_received(
21213        drag_dest: *mut GtkTreeDragDest,
21214        dest: *mut GtkTreePath,
21215        value: *const gobject::GValue,
21216    ) -> gboolean;
21217    pub fn gtk_tree_drag_dest_row_drop_possible(
21218        drag_dest: *mut GtkTreeDragDest,
21219        dest_path: *mut GtkTreePath,
21220        value: *const gobject::GValue,
21221    ) -> gboolean;
21222
21223    //=========================================================================
21224    // GtkTreeDragSource
21225    //=========================================================================
21226    pub fn gtk_tree_drag_source_get_type() -> GType;
21227    pub fn gtk_tree_drag_source_drag_data_delete(
21228        drag_source: *mut GtkTreeDragSource,
21229        path: *mut GtkTreePath,
21230    ) -> gboolean;
21231    pub fn gtk_tree_drag_source_drag_data_get(
21232        drag_source: *mut GtkTreeDragSource,
21233        path: *mut GtkTreePath,
21234    ) -> *mut gdk::GdkContentProvider;
21235    pub fn gtk_tree_drag_source_row_draggable(
21236        drag_source: *mut GtkTreeDragSource,
21237        path: *mut GtkTreePath,
21238    ) -> gboolean;
21239
21240    //=========================================================================
21241    // GtkTreeModel
21242    //=========================================================================
21243    pub fn gtk_tree_model_get_type() -> GType;
21244    pub fn gtk_tree_model_filter_new(
21245        child_model: *mut GtkTreeModel,
21246        root: *mut GtkTreePath,
21247    ) -> *mut GtkTreeModel;
21248    pub fn gtk_tree_model_foreach(
21249        model: *mut GtkTreeModel,
21250        func: GtkTreeModelForeachFunc,
21251        user_data: gpointer,
21252    );
21253    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
21254    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
21255    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
21256    pub fn gtk_tree_model_get_iter(
21257        tree_model: *mut GtkTreeModel,
21258        iter: *mut GtkTreeIter,
21259        path: *mut GtkTreePath,
21260    ) -> gboolean;
21261    pub fn gtk_tree_model_get_iter_first(
21262        tree_model: *mut GtkTreeModel,
21263        iter: *mut GtkTreeIter,
21264    ) -> gboolean;
21265    pub fn gtk_tree_model_get_iter_from_string(
21266        tree_model: *mut GtkTreeModel,
21267        iter: *mut GtkTreeIter,
21268        path_string: *const c_char,
21269    ) -> gboolean;
21270    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
21271    pub fn gtk_tree_model_get_path(
21272        tree_model: *mut GtkTreeModel,
21273        iter: *mut GtkTreeIter,
21274    ) -> *mut GtkTreePath;
21275    pub fn gtk_tree_model_get_string_from_iter(
21276        tree_model: *mut GtkTreeModel,
21277        iter: *mut GtkTreeIter,
21278    ) -> *mut c_char;
21279    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21280    pub fn gtk_tree_model_get_value(
21281        tree_model: *mut GtkTreeModel,
21282        iter: *mut GtkTreeIter,
21283        column: c_int,
21284        value: *mut gobject::GValue,
21285    );
21286    pub fn gtk_tree_model_iter_children(
21287        tree_model: *mut GtkTreeModel,
21288        iter: *mut GtkTreeIter,
21289        parent: *mut GtkTreeIter,
21290    ) -> gboolean;
21291    pub fn gtk_tree_model_iter_has_child(
21292        tree_model: *mut GtkTreeModel,
21293        iter: *mut GtkTreeIter,
21294    ) -> gboolean;
21295    pub fn gtk_tree_model_iter_n_children(
21296        tree_model: *mut GtkTreeModel,
21297        iter: *mut GtkTreeIter,
21298    ) -> c_int;
21299    pub fn gtk_tree_model_iter_next(
21300        tree_model: *mut GtkTreeModel,
21301        iter: *mut GtkTreeIter,
21302    ) -> gboolean;
21303    pub fn gtk_tree_model_iter_nth_child(
21304        tree_model: *mut GtkTreeModel,
21305        iter: *mut GtkTreeIter,
21306        parent: *mut GtkTreeIter,
21307        n: c_int,
21308    ) -> gboolean;
21309    pub fn gtk_tree_model_iter_parent(
21310        tree_model: *mut GtkTreeModel,
21311        iter: *mut GtkTreeIter,
21312        child: *mut GtkTreeIter,
21313    ) -> gboolean;
21314    pub fn gtk_tree_model_iter_previous(
21315        tree_model: *mut GtkTreeModel,
21316        iter: *mut GtkTreeIter,
21317    ) -> gboolean;
21318    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21319    pub fn gtk_tree_model_row_changed(
21320        tree_model: *mut GtkTreeModel,
21321        path: *mut GtkTreePath,
21322        iter: *mut GtkTreeIter,
21323    );
21324    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
21325    pub fn gtk_tree_model_row_has_child_toggled(
21326        tree_model: *mut GtkTreeModel,
21327        path: *mut GtkTreePath,
21328        iter: *mut GtkTreeIter,
21329    );
21330    pub fn gtk_tree_model_row_inserted(
21331        tree_model: *mut GtkTreeModel,
21332        path: *mut GtkTreePath,
21333        iter: *mut GtkTreeIter,
21334    );
21335    pub fn gtk_tree_model_rows_reordered(
21336        tree_model: *mut GtkTreeModel,
21337        path: *mut GtkTreePath,
21338        iter: *mut GtkTreeIter,
21339        new_order: *mut c_int,
21340    );
21341    pub fn gtk_tree_model_rows_reordered_with_length(
21342        tree_model: *mut GtkTreeModel,
21343        path: *mut GtkTreePath,
21344        iter: *mut GtkTreeIter,
21345        new_order: *mut c_int,
21346        length: c_int,
21347    );
21348    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21349
21350    //=========================================================================
21351    // GtkTreeSortable
21352    //=========================================================================
21353    pub fn gtk_tree_sortable_get_type() -> GType;
21354    pub fn gtk_tree_sortable_get_sort_column_id(
21355        sortable: *mut GtkTreeSortable,
21356        sort_column_id: *mut c_int,
21357        order: *mut GtkSortType,
21358    ) -> gboolean;
21359    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
21360    pub fn gtk_tree_sortable_set_default_sort_func(
21361        sortable: *mut GtkTreeSortable,
21362        sort_func: GtkTreeIterCompareFunc,
21363        user_data: gpointer,
21364        destroy: glib::GDestroyNotify,
21365    );
21366    pub fn gtk_tree_sortable_set_sort_column_id(
21367        sortable: *mut GtkTreeSortable,
21368        sort_column_id: c_int,
21369        order: GtkSortType,
21370    );
21371    pub fn gtk_tree_sortable_set_sort_func(
21372        sortable: *mut GtkTreeSortable,
21373        sort_column_id: c_int,
21374        sort_func: GtkTreeIterCompareFunc,
21375        user_data: gpointer,
21376        destroy: glib::GDestroyNotify,
21377    );
21378    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
21379
21380    //=========================================================================
21381    // Other functions
21382    //=========================================================================
21383    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
21384    pub fn gtk_accelerator_get_label(
21385        accelerator_key: c_uint,
21386        accelerator_mods: gdk::GdkModifierType,
21387    ) -> *mut c_char;
21388    pub fn gtk_accelerator_get_label_with_keycode(
21389        display: *mut gdk::GdkDisplay,
21390        accelerator_key: c_uint,
21391        keycode: c_uint,
21392        accelerator_mods: gdk::GdkModifierType,
21393    ) -> *mut c_char;
21394    pub fn gtk_accelerator_name(
21395        accelerator_key: c_uint,
21396        accelerator_mods: gdk::GdkModifierType,
21397    ) -> *mut c_char;
21398    pub fn gtk_accelerator_name_with_keycode(
21399        display: *mut gdk::GdkDisplay,
21400        accelerator_key: c_uint,
21401        keycode: c_uint,
21402        accelerator_mods: gdk::GdkModifierType,
21403    ) -> *mut c_char;
21404    pub fn gtk_accelerator_parse(
21405        accelerator: *const c_char,
21406        accelerator_key: *mut c_uint,
21407        accelerator_mods: *mut gdk::GdkModifierType,
21408    ) -> gboolean;
21409    pub fn gtk_accelerator_parse_with_keycode(
21410        accelerator: *const c_char,
21411        display: *mut gdk::GdkDisplay,
21412        accelerator_key: *mut c_uint,
21413        accelerator_codes: *mut *mut c_uint,
21414        accelerator_mods: *mut gdk::GdkModifierType,
21415    ) -> gboolean;
21416    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
21417    pub fn gtk_check_version(
21418        required_major: c_uint,
21419        required_minor: c_uint,
21420        required_micro: c_uint,
21421    ) -> *const c_char;
21422    pub fn gtk_css_parser_error_quark() -> glib::GQuark;
21423    pub fn gtk_css_parser_warning_quark() -> glib::GQuark;
21424    #[cfg(feature = "v4_18")]
21425    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21426    pub fn gtk_disable_portals();
21427    pub fn gtk_disable_setlocale();
21428    pub fn gtk_distribute_natural_allocation(
21429        extra_space: c_int,
21430        n_requested_sizes: c_uint,
21431        sizes: *mut GtkRequestedSize,
21432    ) -> c_int;
21433    pub fn gtk_enumerate_printers(
21434        func: GtkPrinterFunc,
21435        data: gpointer,
21436        destroy: glib::GDestroyNotify,
21437        wait: gboolean,
21438    );
21439    pub fn gtk_get_binary_age() -> c_uint;
21440    pub fn gtk_get_debug_flags() -> GtkDebugFlags;
21441    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
21442    pub fn gtk_get_interface_age() -> c_uint;
21443    pub fn gtk_get_locale_direction() -> GtkTextDirection;
21444    pub fn gtk_get_major_version() -> c_uint;
21445    pub fn gtk_get_micro_version() -> c_uint;
21446    pub fn gtk_get_minor_version() -> c_uint;
21447    pub fn gtk_hsv_to_rgb(
21448        h: c_float,
21449        s: c_float,
21450        v: c_float,
21451        r: *mut c_float,
21452        g: *mut c_float,
21453        b: *mut c_float,
21454    );
21455    pub fn gtk_init();
21456    pub fn gtk_init_check() -> gboolean;
21457    pub fn gtk_is_initialized() -> gboolean;
21458    pub fn gtk_param_spec_expression(
21459        name: *const c_char,
21460        nick: *const c_char,
21461        blurb: *const c_char,
21462        flags: gobject::GParamFlags,
21463    ) -> *mut gobject::GParamSpec;
21464    pub fn gtk_print_run_page_setup_dialog(
21465        parent: *mut GtkWindow,
21466        page_setup: *mut GtkPageSetup,
21467        settings: *mut GtkPrintSettings,
21468    ) -> *mut GtkPageSetup;
21469    pub fn gtk_print_run_page_setup_dialog_async(
21470        parent: *mut GtkWindow,
21471        page_setup: *mut GtkPageSetup,
21472        settings: *mut GtkPrintSettings,
21473        done_cb: GtkPageSetupDoneFunc,
21474        data: gpointer,
21475    );
21476    pub fn gtk_render_activity(
21477        context: *mut GtkStyleContext,
21478        cr: *mut cairo::cairo_t,
21479        x: c_double,
21480        y: c_double,
21481        width: c_double,
21482        height: c_double,
21483    );
21484    pub fn gtk_render_arrow(
21485        context: *mut GtkStyleContext,
21486        cr: *mut cairo::cairo_t,
21487        angle: c_double,
21488        x: c_double,
21489        y: c_double,
21490        size: c_double,
21491    );
21492    pub fn gtk_render_background(
21493        context: *mut GtkStyleContext,
21494        cr: *mut cairo::cairo_t,
21495        x: c_double,
21496        y: c_double,
21497        width: c_double,
21498        height: c_double,
21499    );
21500    pub fn gtk_render_check(
21501        context: *mut GtkStyleContext,
21502        cr: *mut cairo::cairo_t,
21503        x: c_double,
21504        y: c_double,
21505        width: c_double,
21506        height: c_double,
21507    );
21508    pub fn gtk_render_expander(
21509        context: *mut GtkStyleContext,
21510        cr: *mut cairo::cairo_t,
21511        x: c_double,
21512        y: c_double,
21513        width: c_double,
21514        height: c_double,
21515    );
21516    pub fn gtk_render_focus(
21517        context: *mut GtkStyleContext,
21518        cr: *mut cairo::cairo_t,
21519        x: c_double,
21520        y: c_double,
21521        width: c_double,
21522        height: c_double,
21523    );
21524    pub fn gtk_render_frame(
21525        context: *mut GtkStyleContext,
21526        cr: *mut cairo::cairo_t,
21527        x: c_double,
21528        y: c_double,
21529        width: c_double,
21530        height: c_double,
21531    );
21532    pub fn gtk_render_handle(
21533        context: *mut GtkStyleContext,
21534        cr: *mut cairo::cairo_t,
21535        x: c_double,
21536        y: c_double,
21537        width: c_double,
21538        height: c_double,
21539    );
21540    pub fn gtk_render_icon(
21541        context: *mut GtkStyleContext,
21542        cr: *mut cairo::cairo_t,
21543        texture: *mut gdk::GdkTexture,
21544        x: c_double,
21545        y: c_double,
21546    );
21547    pub fn gtk_render_layout(
21548        context: *mut GtkStyleContext,
21549        cr: *mut cairo::cairo_t,
21550        x: c_double,
21551        y: c_double,
21552        layout: *mut pango::PangoLayout,
21553    );
21554    pub fn gtk_render_line(
21555        context: *mut GtkStyleContext,
21556        cr: *mut cairo::cairo_t,
21557        x0: c_double,
21558        y0: c_double,
21559        x1: c_double,
21560        y1: c_double,
21561    );
21562    pub fn gtk_render_option(
21563        context: *mut GtkStyleContext,
21564        cr: *mut cairo::cairo_t,
21565        x: c_double,
21566        y: c_double,
21567        width: c_double,
21568        height: c_double,
21569    );
21570    pub fn gtk_rgb_to_hsv(
21571        r: c_float,
21572        g: c_float,
21573        b: c_float,
21574        h: *mut c_float,
21575        s: *mut c_float,
21576        v: *mut c_float,
21577    );
21578    pub fn gtk_set_debug_flags(flags: GtkDebugFlags);
21579    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
21580    pub fn gtk_show_uri(parent: *mut GtkWindow, uri: *const c_char, timestamp: u32);
21581    pub fn gtk_show_uri_full(
21582        parent: *mut GtkWindow,
21583        uri: *const c_char,
21584        timestamp: u32,
21585        cancellable: *mut gio::GCancellable,
21586        callback: gio::GAsyncReadyCallback,
21587        user_data: gpointer,
21588    );
21589    pub fn gtk_show_uri_full_finish(
21590        parent: *mut GtkWindow,
21591        result: *mut gio::GAsyncResult,
21592        error: *mut *mut glib::GError,
21593    ) -> gboolean;
21594    pub fn gtk_test_accessible_assertion_message_role(
21595        domain: *const c_char,
21596        file: *const c_char,
21597        line: c_int,
21598        func: *const c_char,
21599        expr: *const c_char,
21600        accessible: *mut GtkAccessible,
21601        expected_role: GtkAccessibleRole,
21602        actual_role: GtkAccessibleRole,
21603    );
21604    pub fn gtk_test_accessible_check_property(
21605        accessible: *mut GtkAccessible,
21606        property: GtkAccessibleProperty,
21607        ...
21608    ) -> *mut c_char;
21609    pub fn gtk_test_accessible_check_relation(
21610        accessible: *mut GtkAccessible,
21611        relation: GtkAccessibleRelation,
21612        ...
21613    ) -> *mut c_char;
21614    pub fn gtk_test_accessible_check_state(
21615        accessible: *mut GtkAccessible,
21616        state: GtkAccessibleState,
21617        ...
21618    ) -> *mut c_char;
21619    pub fn gtk_test_accessible_has_property(
21620        accessible: *mut GtkAccessible,
21621        property: GtkAccessibleProperty,
21622    ) -> gboolean;
21623    pub fn gtk_test_accessible_has_relation(
21624        accessible: *mut GtkAccessible,
21625        relation: GtkAccessibleRelation,
21626    ) -> gboolean;
21627    pub fn gtk_test_accessible_has_role(
21628        accessible: *mut GtkAccessible,
21629        role: GtkAccessibleRole,
21630    ) -> gboolean;
21631    pub fn gtk_test_accessible_has_state(
21632        accessible: *mut GtkAccessible,
21633        state: GtkAccessibleState,
21634    ) -> gboolean;
21635    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
21636    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
21637    pub fn gtk_test_register_all_types();
21638    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
21639    pub fn gtk_tree_create_row_drag_content(
21640        tree_model: *mut GtkTreeModel,
21641        path: *mut GtkTreePath,
21642    ) -> *mut gdk::GdkContentProvider;
21643    pub fn gtk_tree_get_row_drag_data(
21644        value: *const gobject::GValue,
21645        tree_model: *mut *mut GtkTreeModel,
21646        path: *mut *mut GtkTreePath,
21647    ) -> gboolean;
21648    pub fn gtk_value_dup_expression(value: *const gobject::GValue) -> *mut GtkExpression;
21649    pub fn gtk_value_get_expression(value: *const gobject::GValue) -> *mut GtkExpression;
21650    pub fn gtk_value_set_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
21651    pub fn gtk_value_take_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
21652
21653}