Skip to main content

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 gdk_pixbuf_sys as gdk_pixbuf;
16use gdk4_sys as gdk;
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#[allow(unused_imports)]
25use libc::{FILE, intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t};
26#[cfg(unix)]
27#[allow(unused_imports)]
28use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
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::{GType, gboolean, gconstpointer, gpointer};
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#[cfg(feature = "v4_20")]
463#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
464pub const GTK_FILTER_CHANGE_DIFFERENT_REWATCH: GtkFilterChange = 3;
465#[cfg(feature = "v4_20")]
466#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
467pub const GTK_FILTER_CHANGE_LESS_STRICT_REWATCH: GtkFilterChange = 4;
468#[cfg(feature = "v4_20")]
469#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
470pub const GTK_FILTER_CHANGE_MORE_STRICT_REWATCH: GtkFilterChange = 5;
471
472pub type GtkFilterMatch = c_int;
473pub const GTK_FILTER_MATCH_SOME: GtkFilterMatch = 0;
474pub const GTK_FILTER_MATCH_NONE: GtkFilterMatch = 1;
475pub const GTK_FILTER_MATCH_ALL: GtkFilterMatch = 2;
476
477pub type GtkFontLevel = c_int;
478pub const GTK_FONT_LEVEL_FAMILY: GtkFontLevel = 0;
479pub const GTK_FONT_LEVEL_FACE: GtkFontLevel = 1;
480pub const GTK_FONT_LEVEL_FONT: GtkFontLevel = 2;
481pub const GTK_FONT_LEVEL_FEATURES: GtkFontLevel = 3;
482
483pub type GtkFontRendering = c_int;
484pub const GTK_FONT_RENDERING_AUTOMATIC: GtkFontRendering = 0;
485pub const GTK_FONT_RENDERING_MANUAL: GtkFontRendering = 1;
486
487pub type GtkGraphicsOffloadEnabled = c_int;
488pub const GTK_GRAPHICS_OFFLOAD_ENABLED: GtkGraphicsOffloadEnabled = 0;
489pub const GTK_GRAPHICS_OFFLOAD_DISABLED: GtkGraphicsOffloadEnabled = 1;
490
491pub type GtkIconSize = c_int;
492pub const GTK_ICON_SIZE_INHERIT: GtkIconSize = 0;
493pub const GTK_ICON_SIZE_NORMAL: GtkIconSize = 1;
494pub const GTK_ICON_SIZE_LARGE: GtkIconSize = 2;
495
496pub type GtkIconThemeError = c_int;
497pub const GTK_ICON_THEME_NOT_FOUND: GtkIconThemeError = 0;
498pub const GTK_ICON_THEME_FAILED: GtkIconThemeError = 1;
499
500pub type GtkIconViewDropPosition = c_int;
501pub const GTK_ICON_VIEW_NO_DROP: GtkIconViewDropPosition = 0;
502pub const GTK_ICON_VIEW_DROP_INTO: GtkIconViewDropPosition = 1;
503pub const GTK_ICON_VIEW_DROP_LEFT: GtkIconViewDropPosition = 2;
504pub const GTK_ICON_VIEW_DROP_RIGHT: GtkIconViewDropPosition = 3;
505pub const GTK_ICON_VIEW_DROP_ABOVE: GtkIconViewDropPosition = 4;
506pub const GTK_ICON_VIEW_DROP_BELOW: GtkIconViewDropPosition = 5;
507
508pub type GtkImageType = c_int;
509pub const GTK_IMAGE_EMPTY: GtkImageType = 0;
510pub const GTK_IMAGE_ICON_NAME: GtkImageType = 1;
511pub const GTK_IMAGE_GICON: GtkImageType = 2;
512pub const GTK_IMAGE_PAINTABLE: GtkImageType = 3;
513
514pub type GtkInputPurpose = c_int;
515pub const GTK_INPUT_PURPOSE_FREE_FORM: GtkInputPurpose = 0;
516pub const GTK_INPUT_PURPOSE_ALPHA: GtkInputPurpose = 1;
517pub const GTK_INPUT_PURPOSE_DIGITS: GtkInputPurpose = 2;
518pub const GTK_INPUT_PURPOSE_NUMBER: GtkInputPurpose = 3;
519pub const GTK_INPUT_PURPOSE_PHONE: GtkInputPurpose = 4;
520pub const GTK_INPUT_PURPOSE_URL: GtkInputPurpose = 5;
521pub const GTK_INPUT_PURPOSE_EMAIL: GtkInputPurpose = 6;
522pub const GTK_INPUT_PURPOSE_NAME: GtkInputPurpose = 7;
523pub const GTK_INPUT_PURPOSE_PASSWORD: GtkInputPurpose = 8;
524pub const GTK_INPUT_PURPOSE_PIN: GtkInputPurpose = 9;
525pub const GTK_INPUT_PURPOSE_TERMINAL: GtkInputPurpose = 10;
526
527pub type GtkInscriptionOverflow = c_int;
528pub const GTK_INSCRIPTION_OVERFLOW_CLIP: GtkInscriptionOverflow = 0;
529pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_START: GtkInscriptionOverflow = 1;
530pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_MIDDLE: GtkInscriptionOverflow = 2;
531pub const GTK_INSCRIPTION_OVERFLOW_ELLIPSIZE_END: GtkInscriptionOverflow = 3;
532
533pub type GtkInterfaceColorScheme = c_int;
534pub const GTK_INTERFACE_COLOR_SCHEME_UNSUPPORTED: GtkInterfaceColorScheme = 0;
535pub const GTK_INTERFACE_COLOR_SCHEME_DEFAULT: GtkInterfaceColorScheme = 1;
536pub const GTK_INTERFACE_COLOR_SCHEME_DARK: GtkInterfaceColorScheme = 2;
537pub const GTK_INTERFACE_COLOR_SCHEME_LIGHT: GtkInterfaceColorScheme = 3;
538
539pub type GtkInterfaceContrast = c_int;
540pub const GTK_INTERFACE_CONTRAST_UNSUPPORTED: GtkInterfaceContrast = 0;
541pub const GTK_INTERFACE_CONTRAST_NO_PREFERENCE: GtkInterfaceContrast = 1;
542pub const GTK_INTERFACE_CONTRAST_MORE: GtkInterfaceContrast = 2;
543pub const GTK_INTERFACE_CONTRAST_LESS: GtkInterfaceContrast = 3;
544
545pub type GtkJustification = c_int;
546pub const GTK_JUSTIFY_LEFT: GtkJustification = 0;
547pub const GTK_JUSTIFY_RIGHT: GtkJustification = 1;
548pub const GTK_JUSTIFY_CENTER: GtkJustification = 2;
549pub const GTK_JUSTIFY_FILL: GtkJustification = 3;
550
551pub type GtkLevelBarMode = c_int;
552pub const GTK_LEVEL_BAR_MODE_CONTINUOUS: GtkLevelBarMode = 0;
553pub const GTK_LEVEL_BAR_MODE_DISCRETE: GtkLevelBarMode = 1;
554
555pub type GtkLicense = c_int;
556pub const GTK_LICENSE_UNKNOWN: GtkLicense = 0;
557pub const GTK_LICENSE_CUSTOM: GtkLicense = 1;
558pub const GTK_LICENSE_GPL_2_0: GtkLicense = 2;
559pub const GTK_LICENSE_GPL_3_0: GtkLicense = 3;
560pub const GTK_LICENSE_LGPL_2_1: GtkLicense = 4;
561pub const GTK_LICENSE_LGPL_3_0: GtkLicense = 5;
562pub const GTK_LICENSE_BSD: GtkLicense = 6;
563pub const GTK_LICENSE_MIT_X11: GtkLicense = 7;
564pub const GTK_LICENSE_ARTISTIC: GtkLicense = 8;
565pub const GTK_LICENSE_GPL_2_0_ONLY: GtkLicense = 9;
566pub const GTK_LICENSE_GPL_3_0_ONLY: GtkLicense = 10;
567pub const GTK_LICENSE_LGPL_2_1_ONLY: GtkLicense = 11;
568pub const GTK_LICENSE_LGPL_3_0_ONLY: GtkLicense = 12;
569pub const GTK_LICENSE_AGPL_3_0: GtkLicense = 13;
570pub const GTK_LICENSE_AGPL_3_0_ONLY: GtkLicense = 14;
571pub const GTK_LICENSE_BSD_3: GtkLicense = 15;
572pub const GTK_LICENSE_APACHE_2_0: GtkLicense = 16;
573pub const GTK_LICENSE_MPL_2_0: GtkLicense = 17;
574pub const GTK_LICENSE_0BSD: GtkLicense = 18;
575
576pub type GtkListTabBehavior = c_int;
577pub const GTK_LIST_TAB_ALL: GtkListTabBehavior = 0;
578pub const GTK_LIST_TAB_ITEM: GtkListTabBehavior = 1;
579pub const GTK_LIST_TAB_CELL: GtkListTabBehavior = 2;
580
581pub type GtkMessageType = c_int;
582pub const GTK_MESSAGE_INFO: GtkMessageType = 0;
583pub const GTK_MESSAGE_WARNING: GtkMessageType = 1;
584pub const GTK_MESSAGE_QUESTION: GtkMessageType = 2;
585pub const GTK_MESSAGE_ERROR: GtkMessageType = 3;
586pub const GTK_MESSAGE_OTHER: GtkMessageType = 4;
587
588pub type GtkMovementStep = c_int;
589pub const GTK_MOVEMENT_LOGICAL_POSITIONS: GtkMovementStep = 0;
590pub const GTK_MOVEMENT_VISUAL_POSITIONS: GtkMovementStep = 1;
591pub const GTK_MOVEMENT_WORDS: GtkMovementStep = 2;
592pub const GTK_MOVEMENT_DISPLAY_LINES: GtkMovementStep = 3;
593pub const GTK_MOVEMENT_DISPLAY_LINE_ENDS: GtkMovementStep = 4;
594pub const GTK_MOVEMENT_PARAGRAPHS: GtkMovementStep = 5;
595pub const GTK_MOVEMENT_PARAGRAPH_ENDS: GtkMovementStep = 6;
596pub const GTK_MOVEMENT_PAGES: GtkMovementStep = 7;
597pub const GTK_MOVEMENT_BUFFER_ENDS: GtkMovementStep = 8;
598pub const GTK_MOVEMENT_HORIZONTAL_PAGES: GtkMovementStep = 9;
599
600pub type GtkNaturalWrapMode = c_int;
601pub const GTK_NATURAL_WRAP_INHERIT: GtkNaturalWrapMode = 0;
602pub const GTK_NATURAL_WRAP_NONE: GtkNaturalWrapMode = 1;
603pub const GTK_NATURAL_WRAP_WORD: GtkNaturalWrapMode = 2;
604
605pub type GtkNotebookTab = c_int;
606pub const GTK_NOTEBOOK_TAB_FIRST: GtkNotebookTab = 0;
607pub const GTK_NOTEBOOK_TAB_LAST: GtkNotebookTab = 1;
608
609pub type GtkNumberUpLayout = c_int;
610pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM: GtkNumberUpLayout = 0;
611pub const GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP: GtkNumberUpLayout = 1;
612pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM: GtkNumberUpLayout = 2;
613pub const GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP: GtkNumberUpLayout = 3;
614pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT: GtkNumberUpLayout = 4;
615pub const GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT: GtkNumberUpLayout = 5;
616pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT: GtkNumberUpLayout = 6;
617pub const GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT: GtkNumberUpLayout = 7;
618
619pub type GtkOrdering = c_int;
620pub const GTK_ORDERING_SMALLER: GtkOrdering = -1;
621pub const GTK_ORDERING_EQUAL: GtkOrdering = 0;
622pub const GTK_ORDERING_LARGER: GtkOrdering = 1;
623
624pub type GtkOrientation = c_int;
625pub const GTK_ORIENTATION_HORIZONTAL: GtkOrientation = 0;
626pub const GTK_ORIENTATION_VERTICAL: GtkOrientation = 1;
627
628pub type GtkOverflow = c_int;
629pub const GTK_OVERFLOW_VISIBLE: GtkOverflow = 0;
630pub const GTK_OVERFLOW_HIDDEN: GtkOverflow = 1;
631
632pub type GtkPackType = c_int;
633pub const GTK_PACK_START: GtkPackType = 0;
634pub const GTK_PACK_END: GtkPackType = 1;
635
636pub type GtkPadActionType = c_int;
637pub const GTK_PAD_ACTION_BUTTON: GtkPadActionType = 0;
638pub const GTK_PAD_ACTION_RING: GtkPadActionType = 1;
639pub const GTK_PAD_ACTION_STRIP: GtkPadActionType = 2;
640pub const GTK_PAD_ACTION_DIAL: GtkPadActionType = 3;
641
642pub type GtkPageOrientation = c_int;
643pub const GTK_PAGE_ORIENTATION_PORTRAIT: GtkPageOrientation = 0;
644pub const GTK_PAGE_ORIENTATION_LANDSCAPE: GtkPageOrientation = 1;
645pub const GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT: GtkPageOrientation = 2;
646pub const GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE: GtkPageOrientation = 3;
647
648pub type GtkPageSet = c_int;
649pub const GTK_PAGE_SET_ALL: GtkPageSet = 0;
650pub const GTK_PAGE_SET_EVEN: GtkPageSet = 1;
651pub const GTK_PAGE_SET_ODD: GtkPageSet = 2;
652
653pub type GtkPanDirection = c_int;
654pub const GTK_PAN_DIRECTION_LEFT: GtkPanDirection = 0;
655pub const GTK_PAN_DIRECTION_RIGHT: GtkPanDirection = 1;
656pub const GTK_PAN_DIRECTION_UP: GtkPanDirection = 2;
657pub const GTK_PAN_DIRECTION_DOWN: GtkPanDirection = 3;
658
659pub type GtkPolicyType = c_int;
660pub const GTK_POLICY_ALWAYS: GtkPolicyType = 0;
661pub const GTK_POLICY_AUTOMATIC: GtkPolicyType = 1;
662pub const GTK_POLICY_NEVER: GtkPolicyType = 2;
663pub const GTK_POLICY_EXTERNAL: GtkPolicyType = 3;
664
665pub type GtkPositionType = c_int;
666pub const GTK_POS_LEFT: GtkPositionType = 0;
667pub const GTK_POS_RIGHT: GtkPositionType = 1;
668pub const GTK_POS_TOP: GtkPositionType = 2;
669pub const GTK_POS_BOTTOM: GtkPositionType = 3;
670
671pub type GtkPrintDuplex = c_int;
672pub const GTK_PRINT_DUPLEX_SIMPLEX: GtkPrintDuplex = 0;
673pub const GTK_PRINT_DUPLEX_HORIZONTAL: GtkPrintDuplex = 1;
674pub const GTK_PRINT_DUPLEX_VERTICAL: GtkPrintDuplex = 2;
675
676pub type GtkPrintError = c_int;
677pub const GTK_PRINT_ERROR_GENERAL: GtkPrintError = 0;
678pub const GTK_PRINT_ERROR_INTERNAL_ERROR: GtkPrintError = 1;
679pub const GTK_PRINT_ERROR_NOMEM: GtkPrintError = 2;
680pub const GTK_PRINT_ERROR_INVALID_FILE: GtkPrintError = 3;
681
682pub type GtkPrintOperationAction = c_int;
683pub const GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG: GtkPrintOperationAction = 0;
684pub const GTK_PRINT_OPERATION_ACTION_PRINT: GtkPrintOperationAction = 1;
685pub const GTK_PRINT_OPERATION_ACTION_PREVIEW: GtkPrintOperationAction = 2;
686pub const GTK_PRINT_OPERATION_ACTION_EXPORT: GtkPrintOperationAction = 3;
687
688pub type GtkPrintOperationResult = c_int;
689pub const GTK_PRINT_OPERATION_RESULT_ERROR: GtkPrintOperationResult = 0;
690pub const GTK_PRINT_OPERATION_RESULT_APPLY: GtkPrintOperationResult = 1;
691pub const GTK_PRINT_OPERATION_RESULT_CANCEL: GtkPrintOperationResult = 2;
692pub const GTK_PRINT_OPERATION_RESULT_IN_PROGRESS: GtkPrintOperationResult = 3;
693
694pub type GtkPrintPages = c_int;
695pub const GTK_PRINT_PAGES_ALL: GtkPrintPages = 0;
696pub const GTK_PRINT_PAGES_CURRENT: GtkPrintPages = 1;
697pub const GTK_PRINT_PAGES_RANGES: GtkPrintPages = 2;
698pub const GTK_PRINT_PAGES_SELECTION: GtkPrintPages = 3;
699
700pub type GtkPrintQuality = c_int;
701pub const GTK_PRINT_QUALITY_LOW: GtkPrintQuality = 0;
702pub const GTK_PRINT_QUALITY_NORMAL: GtkPrintQuality = 1;
703pub const GTK_PRINT_QUALITY_HIGH: GtkPrintQuality = 2;
704pub const GTK_PRINT_QUALITY_DRAFT: GtkPrintQuality = 3;
705
706pub type GtkPrintStatus = c_int;
707pub const GTK_PRINT_STATUS_INITIAL: GtkPrintStatus = 0;
708pub const GTK_PRINT_STATUS_PREPARING: GtkPrintStatus = 1;
709pub const GTK_PRINT_STATUS_GENERATING_DATA: GtkPrintStatus = 2;
710pub const GTK_PRINT_STATUS_SENDING_DATA: GtkPrintStatus = 3;
711pub const GTK_PRINT_STATUS_PENDING: GtkPrintStatus = 4;
712pub const GTK_PRINT_STATUS_PENDING_ISSUE: GtkPrintStatus = 5;
713pub const GTK_PRINT_STATUS_PRINTING: GtkPrintStatus = 6;
714pub const GTK_PRINT_STATUS_FINISHED: GtkPrintStatus = 7;
715pub const GTK_PRINT_STATUS_FINISHED_ABORTED: GtkPrintStatus = 8;
716
717pub type GtkPropagationLimit = c_int;
718pub const GTK_LIMIT_NONE: GtkPropagationLimit = 0;
719pub const GTK_LIMIT_SAME_NATIVE: GtkPropagationLimit = 1;
720
721pub type GtkPropagationPhase = c_int;
722pub const GTK_PHASE_NONE: GtkPropagationPhase = 0;
723pub const GTK_PHASE_CAPTURE: GtkPropagationPhase = 1;
724pub const GTK_PHASE_BUBBLE: GtkPropagationPhase = 2;
725pub const GTK_PHASE_TARGET: GtkPropagationPhase = 3;
726
727pub type GtkRecentManagerError = c_int;
728pub const GTK_RECENT_MANAGER_ERROR_NOT_FOUND: GtkRecentManagerError = 0;
729pub const GTK_RECENT_MANAGER_ERROR_INVALID_URI: GtkRecentManagerError = 1;
730pub const GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING: GtkRecentManagerError = 2;
731pub const GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED: GtkRecentManagerError = 3;
732pub const GTK_RECENT_MANAGER_ERROR_READ: GtkRecentManagerError = 4;
733pub const GTK_RECENT_MANAGER_ERROR_WRITE: GtkRecentManagerError = 5;
734pub const GTK_RECENT_MANAGER_ERROR_UNKNOWN: GtkRecentManagerError = 6;
735
736pub type GtkReducedMotion = c_int;
737pub const GTK_REDUCED_MOTION_NO_PREFERENCE: GtkReducedMotion = 0;
738pub const GTK_REDUCED_MOTION_REDUCE: GtkReducedMotion = 1;
739
740pub type GtkResponseType = c_int;
741pub const GTK_RESPONSE_NONE: GtkResponseType = -1;
742pub const GTK_RESPONSE_REJECT: GtkResponseType = -2;
743pub const GTK_RESPONSE_ACCEPT: GtkResponseType = -3;
744pub const GTK_RESPONSE_DELETE_EVENT: GtkResponseType = -4;
745pub const GTK_RESPONSE_OK: GtkResponseType = -5;
746pub const GTK_RESPONSE_CANCEL: GtkResponseType = -6;
747pub const GTK_RESPONSE_CLOSE: GtkResponseType = -7;
748pub const GTK_RESPONSE_YES: GtkResponseType = -8;
749pub const GTK_RESPONSE_NO: GtkResponseType = -9;
750pub const GTK_RESPONSE_APPLY: GtkResponseType = -10;
751pub const GTK_RESPONSE_HELP: GtkResponseType = -11;
752
753pub type GtkRestoreReason = c_int;
754pub const GTK_RESTORE_REASON_PRISTINE: GtkRestoreReason = 0;
755pub const GTK_RESTORE_REASON_LAUNCH: GtkRestoreReason = 1;
756pub const GTK_RESTORE_REASON_RECOVER: GtkRestoreReason = 2;
757pub const GTK_RESTORE_REASON_RESTORE: GtkRestoreReason = 3;
758
759pub type GtkRevealerTransitionType = c_int;
760pub const GTK_REVEALER_TRANSITION_TYPE_NONE: GtkRevealerTransitionType = 0;
761pub const GTK_REVEALER_TRANSITION_TYPE_CROSSFADE: GtkRevealerTransitionType = 1;
762pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT: GtkRevealerTransitionType = 2;
763pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT: GtkRevealerTransitionType = 3;
764pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP: GtkRevealerTransitionType = 4;
765pub const GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN: GtkRevealerTransitionType = 5;
766pub const GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT: GtkRevealerTransitionType = 6;
767pub const GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT: GtkRevealerTransitionType = 7;
768pub const GTK_REVEALER_TRANSITION_TYPE_SWING_UP: GtkRevealerTransitionType = 8;
769pub const GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN: GtkRevealerTransitionType = 9;
770#[cfg(feature = "v4_22")]
771#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
772pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_RIGHT: GtkRevealerTransitionType = 10;
773#[cfg(feature = "v4_22")]
774#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
775pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_LEFT: GtkRevealerTransitionType = 11;
776#[cfg(feature = "v4_22")]
777#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
778pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_UP: GtkRevealerTransitionType = 12;
779#[cfg(feature = "v4_22")]
780#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
781pub const GTK_REVEALER_TRANSITION_TYPE_FADE_SLIDE_DOWN: GtkRevealerTransitionType = 13;
782
783pub type GtkScrollStep = c_int;
784pub const GTK_SCROLL_STEPS: GtkScrollStep = 0;
785pub const GTK_SCROLL_PAGES: GtkScrollStep = 1;
786pub const GTK_SCROLL_ENDS: GtkScrollStep = 2;
787pub const GTK_SCROLL_HORIZONTAL_STEPS: GtkScrollStep = 3;
788pub const GTK_SCROLL_HORIZONTAL_PAGES: GtkScrollStep = 4;
789pub const GTK_SCROLL_HORIZONTAL_ENDS: GtkScrollStep = 5;
790
791pub type GtkScrollType = c_int;
792pub const GTK_SCROLL_NONE: GtkScrollType = 0;
793pub const GTK_SCROLL_JUMP: GtkScrollType = 1;
794pub const GTK_SCROLL_STEP_BACKWARD: GtkScrollType = 2;
795pub const GTK_SCROLL_STEP_FORWARD: GtkScrollType = 3;
796pub const GTK_SCROLL_PAGE_BACKWARD: GtkScrollType = 4;
797pub const GTK_SCROLL_PAGE_FORWARD: GtkScrollType = 5;
798pub const GTK_SCROLL_STEP_UP: GtkScrollType = 6;
799pub const GTK_SCROLL_STEP_DOWN: GtkScrollType = 7;
800pub const GTK_SCROLL_PAGE_UP: GtkScrollType = 8;
801pub const GTK_SCROLL_PAGE_DOWN: GtkScrollType = 9;
802pub const GTK_SCROLL_STEP_LEFT: GtkScrollType = 10;
803pub const GTK_SCROLL_STEP_RIGHT: GtkScrollType = 11;
804pub const GTK_SCROLL_PAGE_LEFT: GtkScrollType = 12;
805pub const GTK_SCROLL_PAGE_RIGHT: GtkScrollType = 13;
806pub const GTK_SCROLL_START: GtkScrollType = 14;
807pub const GTK_SCROLL_END: GtkScrollType = 15;
808
809pub type GtkScrollablePolicy = c_int;
810pub const GTK_SCROLL_MINIMUM: GtkScrollablePolicy = 0;
811pub const GTK_SCROLL_NATURAL: GtkScrollablePolicy = 1;
812
813pub type GtkSelectionMode = c_int;
814pub const GTK_SELECTION_NONE: GtkSelectionMode = 0;
815pub const GTK_SELECTION_SINGLE: GtkSelectionMode = 1;
816pub const GTK_SELECTION_BROWSE: GtkSelectionMode = 2;
817pub const GTK_SELECTION_MULTIPLE: GtkSelectionMode = 3;
818
819pub type GtkSensitivityType = c_int;
820pub const GTK_SENSITIVITY_AUTO: GtkSensitivityType = 0;
821pub const GTK_SENSITIVITY_ON: GtkSensitivityType = 1;
822pub const GTK_SENSITIVITY_OFF: GtkSensitivityType = 2;
823
824pub type GtkShortcutScope = c_int;
825pub const GTK_SHORTCUT_SCOPE_LOCAL: GtkShortcutScope = 0;
826pub const GTK_SHORTCUT_SCOPE_MANAGED: GtkShortcutScope = 1;
827pub const GTK_SHORTCUT_SCOPE_GLOBAL: GtkShortcutScope = 2;
828
829pub type GtkShortcutType = c_int;
830pub const GTK_SHORTCUT_ACCELERATOR: GtkShortcutType = 0;
831pub const GTK_SHORTCUT_GESTURE_PINCH: GtkShortcutType = 1;
832pub const GTK_SHORTCUT_GESTURE_STRETCH: GtkShortcutType = 2;
833pub const GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE: GtkShortcutType = 3;
834pub const GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE: GtkShortcutType = 4;
835pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT: GtkShortcutType = 5;
836pub const GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT: GtkShortcutType = 6;
837pub const GTK_SHORTCUT_GESTURE: GtkShortcutType = 7;
838pub const GTK_SHORTCUT_GESTURE_SWIPE_LEFT: GtkShortcutType = 8;
839pub const GTK_SHORTCUT_GESTURE_SWIPE_RIGHT: GtkShortcutType = 9;
840
841pub type GtkSizeGroupMode = c_int;
842pub const GTK_SIZE_GROUP_NONE: GtkSizeGroupMode = 0;
843pub const GTK_SIZE_GROUP_HORIZONTAL: GtkSizeGroupMode = 1;
844pub const GTK_SIZE_GROUP_VERTICAL: GtkSizeGroupMode = 2;
845pub const GTK_SIZE_GROUP_BOTH: GtkSizeGroupMode = 3;
846
847pub type GtkSizeRequestMode = c_int;
848pub const GTK_SIZE_REQUEST_HEIGHT_FOR_WIDTH: GtkSizeRequestMode = 0;
849pub const GTK_SIZE_REQUEST_WIDTH_FOR_HEIGHT: GtkSizeRequestMode = 1;
850pub const GTK_SIZE_REQUEST_CONSTANT_SIZE: GtkSizeRequestMode = 2;
851
852pub type GtkSortType = c_int;
853pub const GTK_SORT_ASCENDING: GtkSortType = 0;
854pub const GTK_SORT_DESCENDING: GtkSortType = 1;
855
856pub type GtkSorterChange = c_int;
857pub const GTK_SORTER_CHANGE_DIFFERENT: GtkSorterChange = 0;
858pub const GTK_SORTER_CHANGE_INVERTED: GtkSorterChange = 1;
859pub const GTK_SORTER_CHANGE_LESS_STRICT: GtkSorterChange = 2;
860pub const GTK_SORTER_CHANGE_MORE_STRICT: GtkSorterChange = 3;
861
862pub type GtkSorterOrder = c_int;
863pub const GTK_SORTER_ORDER_PARTIAL: GtkSorterOrder = 0;
864pub const GTK_SORTER_ORDER_NONE: GtkSorterOrder = 1;
865pub const GTK_SORTER_ORDER_TOTAL: GtkSorterOrder = 2;
866
867pub type GtkSpinButtonUpdatePolicy = c_int;
868pub const GTK_UPDATE_ALWAYS: GtkSpinButtonUpdatePolicy = 0;
869pub const GTK_UPDATE_IF_VALID: GtkSpinButtonUpdatePolicy = 1;
870
871pub type GtkSpinType = c_int;
872pub const GTK_SPIN_STEP_FORWARD: GtkSpinType = 0;
873pub const GTK_SPIN_STEP_BACKWARD: GtkSpinType = 1;
874pub const GTK_SPIN_PAGE_FORWARD: GtkSpinType = 2;
875pub const GTK_SPIN_PAGE_BACKWARD: GtkSpinType = 3;
876pub const GTK_SPIN_HOME: GtkSpinType = 4;
877pub const GTK_SPIN_END: GtkSpinType = 5;
878pub const GTK_SPIN_USER_DEFINED: GtkSpinType = 6;
879
880pub type GtkStackTransitionType = c_int;
881pub const GTK_STACK_TRANSITION_TYPE_NONE: GtkStackTransitionType = 0;
882pub const GTK_STACK_TRANSITION_TYPE_CROSSFADE: GtkStackTransitionType = 1;
883pub const GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT: GtkStackTransitionType = 2;
884pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT: GtkStackTransitionType = 3;
885pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP: GtkStackTransitionType = 4;
886pub const GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN: GtkStackTransitionType = 5;
887pub const GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT: GtkStackTransitionType = 6;
888pub const GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN: GtkStackTransitionType = 7;
889pub const GTK_STACK_TRANSITION_TYPE_OVER_UP: GtkStackTransitionType = 8;
890pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN: GtkStackTransitionType = 9;
891pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT: GtkStackTransitionType = 10;
892pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT: GtkStackTransitionType = 11;
893pub const GTK_STACK_TRANSITION_TYPE_UNDER_UP: GtkStackTransitionType = 12;
894pub const GTK_STACK_TRANSITION_TYPE_UNDER_DOWN: GtkStackTransitionType = 13;
895pub const GTK_STACK_TRANSITION_TYPE_UNDER_LEFT: GtkStackTransitionType = 14;
896pub const GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT: GtkStackTransitionType = 15;
897pub const GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN: GtkStackTransitionType = 16;
898pub const GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP: GtkStackTransitionType = 17;
899pub const GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT: GtkStackTransitionType = 18;
900pub const GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT: GtkStackTransitionType = 19;
901pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT: GtkStackTransitionType = 20;
902pub const GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT: GtkStackTransitionType = 21;
903pub const GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT: GtkStackTransitionType = 22;
904
905pub type GtkStringFilterMatchMode = c_int;
906pub const GTK_STRING_FILTER_MATCH_MODE_EXACT: GtkStringFilterMatchMode = 0;
907pub const GTK_STRING_FILTER_MATCH_MODE_SUBSTRING: GtkStringFilterMatchMode = 1;
908pub const GTK_STRING_FILTER_MATCH_MODE_PREFIX: GtkStringFilterMatchMode = 2;
909
910pub type GtkSvgError = c_int;
911pub const GTK_SVG_ERROR_INVALID_SYNTAX: GtkSvgError = 0;
912pub const GTK_SVG_ERROR_INVALID_ELEMENT: GtkSvgError = 1;
913pub const GTK_SVG_ERROR_INVALID_ATTRIBUTE: GtkSvgError = 2;
914pub const GTK_SVG_ERROR_MISSING_ATTRIBUTE: GtkSvgError = 3;
915pub const GTK_SVG_ERROR_INVALID_REFERENCE: GtkSvgError = 4;
916pub const GTK_SVG_ERROR_FAILED_UPDATE: GtkSvgError = 5;
917pub const GTK_SVG_ERROR_FAILED_RENDERING: GtkSvgError = 6;
918
919pub type GtkSymbolicColor = c_int;
920pub const GTK_SYMBOLIC_COLOR_FOREGROUND: GtkSymbolicColor = 0;
921pub const GTK_SYMBOLIC_COLOR_ERROR: GtkSymbolicColor = 1;
922pub const GTK_SYMBOLIC_COLOR_WARNING: GtkSymbolicColor = 2;
923pub const GTK_SYMBOLIC_COLOR_SUCCESS: GtkSymbolicColor = 3;
924#[cfg(feature = "v4_22")]
925#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
926pub const GTK_SYMBOLIC_COLOR_ACCENT: GtkSymbolicColor = 4;
927
928pub type GtkSystemSetting = c_int;
929pub const GTK_SYSTEM_SETTING_DPI: GtkSystemSetting = 0;
930pub const GTK_SYSTEM_SETTING_FONT_NAME: GtkSystemSetting = 1;
931pub const GTK_SYSTEM_SETTING_FONT_CONFIG: GtkSystemSetting = 2;
932pub const GTK_SYSTEM_SETTING_DISPLAY: GtkSystemSetting = 3;
933pub const GTK_SYSTEM_SETTING_ICON_THEME: GtkSystemSetting = 4;
934
935pub type GtkTextDirection = c_int;
936pub const GTK_TEXT_DIR_NONE: GtkTextDirection = 0;
937pub const GTK_TEXT_DIR_LTR: GtkTextDirection = 1;
938pub const GTK_TEXT_DIR_RTL: GtkTextDirection = 2;
939
940pub type GtkTextExtendSelection = c_int;
941pub const GTK_TEXT_EXTEND_SELECTION_WORD: GtkTextExtendSelection = 0;
942pub const GTK_TEXT_EXTEND_SELECTION_LINE: GtkTextExtendSelection = 1;
943
944pub type GtkTextViewLayer = c_int;
945pub const GTK_TEXT_VIEW_LAYER_BELOW_TEXT: GtkTextViewLayer = 0;
946pub const GTK_TEXT_VIEW_LAYER_ABOVE_TEXT: GtkTextViewLayer = 1;
947
948pub type GtkTextWindowType = c_int;
949pub const GTK_TEXT_WINDOW_WIDGET: GtkTextWindowType = 1;
950pub const GTK_TEXT_WINDOW_TEXT: GtkTextWindowType = 2;
951pub const GTK_TEXT_WINDOW_LEFT: GtkTextWindowType = 3;
952pub const GTK_TEXT_WINDOW_RIGHT: GtkTextWindowType = 4;
953pub const GTK_TEXT_WINDOW_TOP: GtkTextWindowType = 5;
954pub const GTK_TEXT_WINDOW_BOTTOM: GtkTextWindowType = 6;
955
956pub type GtkTreeViewColumnSizing = c_int;
957pub const GTK_TREE_VIEW_COLUMN_GROW_ONLY: GtkTreeViewColumnSizing = 0;
958pub const GTK_TREE_VIEW_COLUMN_AUTOSIZE: GtkTreeViewColumnSizing = 1;
959pub const GTK_TREE_VIEW_COLUMN_FIXED: GtkTreeViewColumnSizing = 2;
960
961pub type GtkTreeViewDropPosition = c_int;
962pub const GTK_TREE_VIEW_DROP_BEFORE: GtkTreeViewDropPosition = 0;
963pub const GTK_TREE_VIEW_DROP_AFTER: GtkTreeViewDropPosition = 1;
964pub const GTK_TREE_VIEW_DROP_INTO_OR_BEFORE: GtkTreeViewDropPosition = 2;
965pub const GTK_TREE_VIEW_DROP_INTO_OR_AFTER: GtkTreeViewDropPosition = 3;
966
967pub type GtkTreeViewGridLines = c_int;
968pub const GTK_TREE_VIEW_GRID_LINES_NONE: GtkTreeViewGridLines = 0;
969pub const GTK_TREE_VIEW_GRID_LINES_HORIZONTAL: GtkTreeViewGridLines = 1;
970pub const GTK_TREE_VIEW_GRID_LINES_VERTICAL: GtkTreeViewGridLines = 2;
971pub const GTK_TREE_VIEW_GRID_LINES_BOTH: GtkTreeViewGridLines = 3;
972
973pub type GtkUnit = c_int;
974pub const GTK_UNIT_NONE: GtkUnit = 0;
975pub const GTK_UNIT_POINTS: GtkUnit = 1;
976pub const GTK_UNIT_INCH: GtkUnit = 2;
977pub const GTK_UNIT_MM: GtkUnit = 3;
978
979pub type GtkWindowGravity = c_int;
980pub const GTK_WINDOW_GRAVITY_TOP_LEFT: GtkWindowGravity = 0;
981pub const GTK_WINDOW_GRAVITY_TOP: GtkWindowGravity = 1;
982pub const GTK_WINDOW_GRAVITY_TOP_RIGHT: GtkWindowGravity = 2;
983pub const GTK_WINDOW_GRAVITY_LEFT: GtkWindowGravity = 3;
984pub const GTK_WINDOW_GRAVITY_CENTER: GtkWindowGravity = 4;
985pub const GTK_WINDOW_GRAVITY_RIGHT: GtkWindowGravity = 5;
986pub const GTK_WINDOW_GRAVITY_BOTTOM_LEFT: GtkWindowGravity = 6;
987pub const GTK_WINDOW_GRAVITY_BOTTOM: GtkWindowGravity = 7;
988pub const GTK_WINDOW_GRAVITY_BOTTOM_RIGHT: GtkWindowGravity = 8;
989pub const GTK_WINDOW_GRAVITY_TOP_START: GtkWindowGravity = 9;
990pub const GTK_WINDOW_GRAVITY_TOP_END: GtkWindowGravity = 10;
991pub const GTK_WINDOW_GRAVITY_START: GtkWindowGravity = 11;
992pub const GTK_WINDOW_GRAVITY_END: GtkWindowGravity = 12;
993pub const GTK_WINDOW_GRAVITY_BOTTOM_START: GtkWindowGravity = 13;
994pub const GTK_WINDOW_GRAVITY_BOTTOM_END: GtkWindowGravity = 14;
995
996pub type GtkWrapMode = c_int;
997pub const GTK_WRAP_NONE: GtkWrapMode = 0;
998pub const GTK_WRAP_CHAR: GtkWrapMode = 1;
999pub const GTK_WRAP_WORD: GtkWrapMode = 2;
1000pub const GTK_WRAP_WORD_CHAR: GtkWrapMode = 3;
1001
1002// Constants
1003pub const GTK_ACCESSIBLE_ATTRIBUTE_BACKGROUND: &[u8] = b"bg-color\0";
1004pub const GTK_ACCESSIBLE_ATTRIBUTE_FAMILY: &[u8] = b"family-name\0";
1005pub const GTK_ACCESSIBLE_ATTRIBUTE_FOREGROUND: &[u8] = b"fg-color\0";
1006pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE: &[u8] = b"overline\0";
1007pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_NONE: &[u8] = b"none\0";
1008pub const GTK_ACCESSIBLE_ATTRIBUTE_OVERLINE_SINGLE: &[u8] = b"single\0";
1009pub const GTK_ACCESSIBLE_ATTRIBUTE_SIZE: &[u8] = b"size\0";
1010pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH: &[u8] = b"stretch\0";
1011pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_CONDENSED: &[u8] = b"condensed\0";
1012pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXPANDED: &[u8] = b"expanded\0";
1013pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_CONDENSED: &[u8] = b"extra_condensed\0";
1014pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_EXTRA_EXPANDED: &[u8] = b"extra_expanded\0";
1015pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_NORMAL: &[u8] = b"normal\0";
1016pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_CONDENSED: &[u8] = b"semi_condensed\0";
1017pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_SEMI_EXPANDED: &[u8] = b"semi_expanded\0";
1018pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_CONDENSED: &[u8] = b"ultra_condensed\0";
1019pub const GTK_ACCESSIBLE_ATTRIBUTE_STRETCH_ULTRA_EXPANDED: &[u8] = b"ultra_expanded\0";
1020pub const GTK_ACCESSIBLE_ATTRIBUTE_STRIKETHROUGH: &[u8] = b"strikethrough\0";
1021pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE: &[u8] = b"style\0";
1022pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_ITALIC: &[u8] = b"italic\0";
1023pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_NORMAL: &[u8] = b"normal\0";
1024pub const GTK_ACCESSIBLE_ATTRIBUTE_STYLE_OBLIQUE: &[u8] = b"oblique\0";
1025pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE: &[u8] = b"underline\0";
1026pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_DOUBLE: &[u8] = b"double\0";
1027pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_ERROR: &[u8] = b"error\0";
1028pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_NONE: &[u8] = b"none\0";
1029pub const GTK_ACCESSIBLE_ATTRIBUTE_UNDERLINE_SINGLE: &[u8] = b"single\0";
1030pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT: &[u8] = b"variant\0";
1031pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_PETITE_CAPS: &[u8] = b"all-petite-caps\0";
1032pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_ALL_SMALL_CAPS: &[u8] = b"all-small-caps\0";
1033pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_PETITE_CAPS: &[u8] = b"petite-caps\0";
1034pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_SMALL_CAPS: &[u8] = b"small-caps\0";
1035pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_TITLE_CAPS: &[u8] = b"title-caps\0";
1036pub const GTK_ACCESSIBLE_ATTRIBUTE_VARIANT_UNICASE: &[u8] = b"unicase\0";
1037pub const GTK_ACCESSIBLE_ATTRIBUTE_WEIGHT: &[u8] = b"weight\0";
1038pub const GTK_ACCESSIBLE_VALUE_UNDEFINED: c_int = -1;
1039pub const GTK_IM_MODULE_EXTENSION_POINT_NAME: &[u8] = b"gtk-im-module\0";
1040pub const GTK_INPUT_ERROR: c_int = -1;
1041pub const GTK_INVALID_LIST_POSITION: c_uint = 4294967295;
1042pub const GTK_LEVEL_BAR_OFFSET_FULL: &[u8] = b"full\0";
1043pub const GTK_LEVEL_BAR_OFFSET_HIGH: &[u8] = b"high\0";
1044pub const GTK_LEVEL_BAR_OFFSET_LOW: &[u8] = b"low\0";
1045pub const GTK_MAX_COMPOSE_LEN: c_int = 7;
1046pub const GTK_MEDIA_FILE_EXTENSION_POINT_NAME: &[u8] = b"gtk-media-file\0";
1047pub const GTK_PAPER_NAME_A3: &[u8] = b"iso_a3\0";
1048pub const GTK_PAPER_NAME_A4: &[u8] = b"iso_a4\0";
1049pub const GTK_PAPER_NAME_A5: &[u8] = b"iso_a5\0";
1050pub const GTK_PAPER_NAME_B5: &[u8] = b"iso_b5\0";
1051pub const GTK_PAPER_NAME_EXECUTIVE: &[u8] = b"na_executive\0";
1052pub const GTK_PAPER_NAME_LEGAL: &[u8] = b"na_legal\0";
1053pub const GTK_PAPER_NAME_LETTER: &[u8] = b"na_letter\0";
1054pub const GTK_PRINT_SETTINGS_COLLATE: &[u8] = b"collate\0";
1055pub const GTK_PRINT_SETTINGS_DEFAULT_SOURCE: &[u8] = b"default-source\0";
1056pub const GTK_PRINT_SETTINGS_DITHER: &[u8] = b"dither\0";
1057pub const GTK_PRINT_SETTINGS_DUPLEX: &[u8] = b"duplex\0";
1058pub const GTK_PRINT_SETTINGS_FINISHINGS: &[u8] = b"finishings\0";
1059pub const GTK_PRINT_SETTINGS_MEDIA_TYPE: &[u8] = b"media-type\0";
1060pub const GTK_PRINT_SETTINGS_NUMBER_UP: &[u8] = b"number-up\0";
1061pub const GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT: &[u8] = b"number-up-layout\0";
1062pub const GTK_PRINT_SETTINGS_N_COPIES: &[u8] = b"n-copies\0";
1063pub const GTK_PRINT_SETTINGS_ORIENTATION: &[u8] = b"orientation\0";
1064pub const GTK_PRINT_SETTINGS_OUTPUT_BASENAME: &[u8] = b"output-basename\0";
1065pub const GTK_PRINT_SETTINGS_OUTPUT_BIN: &[u8] = b"output-bin\0";
1066pub const GTK_PRINT_SETTINGS_OUTPUT_DIR: &[u8] = b"output-dir\0";
1067pub const GTK_PRINT_SETTINGS_OUTPUT_FILE_FORMAT: &[u8] = b"output-file-format\0";
1068pub const GTK_PRINT_SETTINGS_OUTPUT_URI: &[u8] = b"output-uri\0";
1069pub const GTK_PRINT_SETTINGS_PAGE_RANGES: &[u8] = b"page-ranges\0";
1070pub const GTK_PRINT_SETTINGS_PAGE_SET: &[u8] = b"page-set\0";
1071pub const GTK_PRINT_SETTINGS_PAPER_FORMAT: &[u8] = b"paper-format\0";
1072pub const GTK_PRINT_SETTINGS_PAPER_HEIGHT: &[u8] = b"paper-height\0";
1073pub const GTK_PRINT_SETTINGS_PAPER_WIDTH: &[u8] = b"paper-width\0";
1074pub const GTK_PRINT_SETTINGS_PRINTER: &[u8] = b"printer\0";
1075pub const GTK_PRINT_SETTINGS_PRINTER_LPI: &[u8] = b"printer-lpi\0";
1076pub const GTK_PRINT_SETTINGS_PRINT_PAGES: &[u8] = b"print-pages\0";
1077pub const GTK_PRINT_SETTINGS_QUALITY: &[u8] = b"quality\0";
1078pub const GTK_PRINT_SETTINGS_RESOLUTION: &[u8] = b"resolution\0";
1079pub const GTK_PRINT_SETTINGS_RESOLUTION_X: &[u8] = b"resolution-x\0";
1080pub const GTK_PRINT_SETTINGS_RESOLUTION_Y: &[u8] = b"resolution-y\0";
1081pub const GTK_PRINT_SETTINGS_REVERSE: &[u8] = b"reverse\0";
1082pub const GTK_PRINT_SETTINGS_SCALE: &[u8] = b"scale\0";
1083pub const GTK_PRINT_SETTINGS_USE_COLOR: &[u8] = b"use-color\0";
1084pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_EXTRA: &[u8] = b"win32-driver-extra\0";
1085pub const GTK_PRINT_SETTINGS_WIN32_DRIVER_VERSION: &[u8] = b"win32-driver-version\0";
1086pub const GTK_PRIORITY_RESIZE: c_int = 110;
1087pub const GTK_STYLE_PROVIDER_PRIORITY_APPLICATION: c_int = 600;
1088pub const GTK_STYLE_PROVIDER_PRIORITY_FALLBACK: c_int = 1;
1089pub const GTK_STYLE_PROVIDER_PRIORITY_SETTINGS: c_int = 400;
1090pub const GTK_STYLE_PROVIDER_PRIORITY_THEME: c_int = 200;
1091pub const GTK_STYLE_PROVIDER_PRIORITY_USER: c_int = 800;
1092pub const GTK_SVG_ALL_FEATURES: c_int = 15;
1093pub const GTK_TEXT_VIEW_PRIORITY_VALIDATE: c_int = 125;
1094pub const GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID: c_int = -1;
1095pub const GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID: c_int = -2;
1096
1097// Flags
1098pub type GtkApplicationInhibitFlags = c_uint;
1099pub const GTK_APPLICATION_INHIBIT_LOGOUT: GtkApplicationInhibitFlags = 1;
1100pub const GTK_APPLICATION_INHIBIT_SWITCH: GtkApplicationInhibitFlags = 2;
1101pub const GTK_APPLICATION_INHIBIT_SUSPEND: GtkApplicationInhibitFlags = 4;
1102pub const GTK_APPLICATION_INHIBIT_IDLE: GtkApplicationInhibitFlags = 8;
1103
1104pub type GtkBuilderClosureFlags = c_uint;
1105pub const GTK_BUILDER_CLOSURE_SWAPPED: GtkBuilderClosureFlags = 1;
1106
1107pub type GtkCellRendererState = c_uint;
1108pub const GTK_CELL_RENDERER_SELECTED: GtkCellRendererState = 1;
1109pub const GTK_CELL_RENDERER_PRELIT: GtkCellRendererState = 2;
1110pub const GTK_CELL_RENDERER_INSENSITIVE: GtkCellRendererState = 4;
1111pub const GTK_CELL_RENDERER_SORTED: GtkCellRendererState = 8;
1112pub const GTK_CELL_RENDERER_FOCUSED: GtkCellRendererState = 16;
1113pub const GTK_CELL_RENDERER_EXPANDABLE: GtkCellRendererState = 32;
1114pub const GTK_CELL_RENDERER_EXPANDED: GtkCellRendererState = 64;
1115
1116pub type GtkDebugFlags = c_uint;
1117pub const GTK_DEBUG_TEXT: GtkDebugFlags = 1;
1118pub const GTK_DEBUG_TREE: GtkDebugFlags = 2;
1119pub const GTK_DEBUG_KEYBINDINGS: GtkDebugFlags = 4;
1120pub const GTK_DEBUG_MODULES: GtkDebugFlags = 8;
1121pub const GTK_DEBUG_GEOMETRY: GtkDebugFlags = 16;
1122pub const GTK_DEBUG_ICONTHEME: GtkDebugFlags = 32;
1123pub const GTK_DEBUG_PRINTING: GtkDebugFlags = 64;
1124pub const GTK_DEBUG_BUILDER_TRACE: GtkDebugFlags = 128;
1125pub const GTK_DEBUG_SIZE_REQUEST: GtkDebugFlags = 256;
1126pub const GTK_DEBUG_NO_CSS_CACHE: GtkDebugFlags = 512;
1127pub const GTK_DEBUG_INTERACTIVE: GtkDebugFlags = 1024;
1128#[cfg(feature = "v4_20")]
1129#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1130pub const GTK_DEBUG_TOUCHSCREEN: GtkDebugFlags = 2048;
1131pub const GTK_DEBUG_ACTIONS: GtkDebugFlags = 4096;
1132pub const GTK_DEBUG_LAYOUT: GtkDebugFlags = 8192;
1133pub const GTK_DEBUG_SNAPSHOT: GtkDebugFlags = 16384;
1134pub const GTK_DEBUG_CONSTRAINTS: GtkDebugFlags = 32768;
1135pub const GTK_DEBUG_BUILDER_OBJECTS: GtkDebugFlags = 65536;
1136pub const GTK_DEBUG_A11Y: GtkDebugFlags = 131072;
1137#[cfg(feature = "v4_2")]
1138#[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
1139pub const GTK_DEBUG_ICONFALLBACK: GtkDebugFlags = 262144;
1140#[cfg(feature = "v4_8")]
1141#[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
1142pub const GTK_DEBUG_INVERT_TEXT_DIR: GtkDebugFlags = 524288;
1143#[cfg(feature = "v4_16")]
1144#[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
1145pub const GTK_DEBUG_CSS: GtkDebugFlags = 1048576;
1146#[cfg(feature = "v4_18")]
1147#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1148pub const GTK_DEBUG_BUILDER: GtkDebugFlags = 2097152;
1149#[cfg(feature = "v4_22")]
1150#[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
1151pub const GTK_DEBUG_SESSION: GtkDebugFlags = 4194304;
1152
1153pub type GtkDialogFlags = c_uint;
1154pub const GTK_DIALOG_MODAL: GtkDialogFlags = 1;
1155pub const GTK_DIALOG_DESTROY_WITH_PARENT: GtkDialogFlags = 2;
1156pub const GTK_DIALOG_USE_HEADER_BAR: GtkDialogFlags = 4;
1157
1158pub type GtkEventControllerScrollFlags = c_uint;
1159pub const GTK_EVENT_CONTROLLER_SCROLL_NONE: GtkEventControllerScrollFlags = 0;
1160pub const GTK_EVENT_CONTROLLER_SCROLL_VERTICAL: GtkEventControllerScrollFlags = 1;
1161pub const GTK_EVENT_CONTROLLER_SCROLL_HORIZONTAL: GtkEventControllerScrollFlags = 2;
1162pub const GTK_EVENT_CONTROLLER_SCROLL_DISCRETE: GtkEventControllerScrollFlags = 4;
1163pub const GTK_EVENT_CONTROLLER_SCROLL_KINETIC: GtkEventControllerScrollFlags = 8;
1164#[cfg(feature = "v4_20")]
1165#[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
1166pub const GTK_EVENT_CONTROLLER_SCROLL_PHYSICAL_DIRECTION: GtkEventControllerScrollFlags = 16;
1167pub const GTK_EVENT_CONTROLLER_SCROLL_BOTH_AXES: GtkEventControllerScrollFlags = 3;
1168
1169pub type GtkFontChooserLevel = c_uint;
1170pub const GTK_FONT_CHOOSER_LEVEL_FAMILY: GtkFontChooserLevel = 0;
1171pub const GTK_FONT_CHOOSER_LEVEL_STYLE: GtkFontChooserLevel = 1;
1172pub const GTK_FONT_CHOOSER_LEVEL_SIZE: GtkFontChooserLevel = 2;
1173pub const GTK_FONT_CHOOSER_LEVEL_VARIATIONS: GtkFontChooserLevel = 4;
1174pub const GTK_FONT_CHOOSER_LEVEL_FEATURES: GtkFontChooserLevel = 8;
1175
1176pub type GtkIconLookupFlags = c_uint;
1177#[cfg(feature = "v4_18")]
1178#[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
1179pub const GTK_ICON_LOOKUP_NONE: GtkIconLookupFlags = 0;
1180pub const GTK_ICON_LOOKUP_FORCE_REGULAR: GtkIconLookupFlags = 1;
1181pub const GTK_ICON_LOOKUP_FORCE_SYMBOLIC: GtkIconLookupFlags = 2;
1182pub const GTK_ICON_LOOKUP_PRELOAD: GtkIconLookupFlags = 4;
1183
1184pub type GtkInputHints = c_uint;
1185pub const GTK_INPUT_HINT_NONE: GtkInputHints = 0;
1186pub const GTK_INPUT_HINT_SPELLCHECK: GtkInputHints = 1;
1187pub const GTK_INPUT_HINT_NO_SPELLCHECK: GtkInputHints = 2;
1188pub const GTK_INPUT_HINT_WORD_COMPLETION: GtkInputHints = 4;
1189pub const GTK_INPUT_HINT_LOWERCASE: GtkInputHints = 8;
1190pub const GTK_INPUT_HINT_UPPERCASE_CHARS: GtkInputHints = 16;
1191pub const GTK_INPUT_HINT_UPPERCASE_WORDS: GtkInputHints = 32;
1192pub const GTK_INPUT_HINT_UPPERCASE_SENTENCES: GtkInputHints = 64;
1193pub const GTK_INPUT_HINT_INHIBIT_OSK: GtkInputHints = 128;
1194pub const GTK_INPUT_HINT_VERTICAL_WRITING: GtkInputHints = 256;
1195pub const GTK_INPUT_HINT_EMOJI: GtkInputHints = 512;
1196pub const GTK_INPUT_HINT_NO_EMOJI: GtkInputHints = 1024;
1197pub const GTK_INPUT_HINT_PRIVATE: GtkInputHints = 2048;
1198
1199pub type GtkListScrollFlags = c_uint;
1200pub const GTK_LIST_SCROLL_NONE: GtkListScrollFlags = 0;
1201pub const GTK_LIST_SCROLL_FOCUS: GtkListScrollFlags = 1;
1202pub const GTK_LIST_SCROLL_SELECT: GtkListScrollFlags = 2;
1203
1204pub type GtkPickFlags = c_uint;
1205pub const GTK_PICK_DEFAULT: GtkPickFlags = 0;
1206pub const GTK_PICK_INSENSITIVE: GtkPickFlags = 1;
1207pub const GTK_PICK_NON_TARGETABLE: GtkPickFlags = 2;
1208
1209pub type GtkPopoverMenuFlags = c_uint;
1210#[cfg(feature = "v4_14")]
1211#[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
1212pub const GTK_POPOVER_MENU_SLIDING: GtkPopoverMenuFlags = 0;
1213pub const GTK_POPOVER_MENU_NESTED: GtkPopoverMenuFlags = 1;
1214
1215pub type GtkPrintCapabilities = c_uint;
1216pub const GTK_PRINT_CAPABILITY_PAGE_SET: GtkPrintCapabilities = 1;
1217pub const GTK_PRINT_CAPABILITY_COPIES: GtkPrintCapabilities = 2;
1218pub const GTK_PRINT_CAPABILITY_COLLATE: GtkPrintCapabilities = 4;
1219pub const GTK_PRINT_CAPABILITY_REVERSE: GtkPrintCapabilities = 8;
1220pub const GTK_PRINT_CAPABILITY_SCALE: GtkPrintCapabilities = 16;
1221pub const GTK_PRINT_CAPABILITY_GENERATE_PDF: GtkPrintCapabilities = 32;
1222pub const GTK_PRINT_CAPABILITY_GENERATE_PS: GtkPrintCapabilities = 64;
1223pub const GTK_PRINT_CAPABILITY_PREVIEW: GtkPrintCapabilities = 128;
1224pub const GTK_PRINT_CAPABILITY_NUMBER_UP: GtkPrintCapabilities = 256;
1225pub const GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: GtkPrintCapabilities = 512;
1226
1227pub type GtkShortcutActionFlags = c_uint;
1228pub const GTK_SHORTCUT_ACTION_EXCLUSIVE: GtkShortcutActionFlags = 1;
1229
1230pub type GtkStateFlags = c_uint;
1231pub const GTK_STATE_FLAG_NORMAL: GtkStateFlags = 0;
1232pub const GTK_STATE_FLAG_ACTIVE: GtkStateFlags = 1;
1233pub const GTK_STATE_FLAG_PRELIGHT: GtkStateFlags = 2;
1234pub const GTK_STATE_FLAG_SELECTED: GtkStateFlags = 4;
1235pub const GTK_STATE_FLAG_INSENSITIVE: GtkStateFlags = 8;
1236pub const GTK_STATE_FLAG_INCONSISTENT: GtkStateFlags = 16;
1237pub const GTK_STATE_FLAG_FOCUSED: GtkStateFlags = 32;
1238pub const GTK_STATE_FLAG_BACKDROP: GtkStateFlags = 64;
1239pub const GTK_STATE_FLAG_DIR_LTR: GtkStateFlags = 128;
1240pub const GTK_STATE_FLAG_DIR_RTL: GtkStateFlags = 256;
1241pub const GTK_STATE_FLAG_LINK: GtkStateFlags = 512;
1242pub const GTK_STATE_FLAG_VISITED: GtkStateFlags = 1024;
1243pub const GTK_STATE_FLAG_CHECKED: GtkStateFlags = 2048;
1244pub const GTK_STATE_FLAG_DROP_ACTIVE: GtkStateFlags = 4096;
1245pub const GTK_STATE_FLAG_FOCUS_VISIBLE: GtkStateFlags = 8192;
1246pub const GTK_STATE_FLAG_FOCUS_WITHIN: GtkStateFlags = 16384;
1247
1248pub type GtkStyleContextPrintFlags = c_uint;
1249pub const GTK_STYLE_CONTEXT_PRINT_NONE: GtkStyleContextPrintFlags = 0;
1250pub const GTK_STYLE_CONTEXT_PRINT_RECURSE: GtkStyleContextPrintFlags = 1;
1251pub const GTK_STYLE_CONTEXT_PRINT_SHOW_STYLE: GtkStyleContextPrintFlags = 2;
1252pub const GTK_STYLE_CONTEXT_PRINT_SHOW_CHANGE: GtkStyleContextPrintFlags = 4;
1253
1254pub type GtkSvgFeatures = c_uint;
1255pub const GTK_SVG_ANIMATIONS: GtkSvgFeatures = 1;
1256pub const GTK_SVG_SYSTEM_RESOURCES: GtkSvgFeatures = 2;
1257pub const GTK_SVG_EXTERNAL_RESOURCES: GtkSvgFeatures = 4;
1258pub const GTK_SVG_EXTENSIONS: GtkSvgFeatures = 8;
1259
1260pub type GtkTextBufferNotifyFlags = c_uint;
1261pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_INSERT: GtkTextBufferNotifyFlags = 1;
1262pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_INSERT: GtkTextBufferNotifyFlags = 2;
1263pub const GTK_TEXT_BUFFER_NOTIFY_BEFORE_DELETE: GtkTextBufferNotifyFlags = 4;
1264pub const GTK_TEXT_BUFFER_NOTIFY_AFTER_DELETE: GtkTextBufferNotifyFlags = 8;
1265
1266pub type GtkTextSearchFlags = c_uint;
1267pub const GTK_TEXT_SEARCH_VISIBLE_ONLY: GtkTextSearchFlags = 1;
1268pub const GTK_TEXT_SEARCH_TEXT_ONLY: GtkTextSearchFlags = 2;
1269pub const GTK_TEXT_SEARCH_CASE_INSENSITIVE: GtkTextSearchFlags = 4;
1270
1271pub type GtkTreeModelFlags = c_uint;
1272pub const GTK_TREE_MODEL_ITERS_PERSIST: GtkTreeModelFlags = 1;
1273pub const GTK_TREE_MODEL_LIST_ONLY: GtkTreeModelFlags = 2;
1274
1275// Callbacks
1276pub type GtkAssistantPageFunc = Option<unsafe extern "C" fn(c_int, gpointer) -> c_int>;
1277pub type GtkCellAllocCallback = Option<
1278    unsafe extern "C" fn(
1279        *mut GtkCellRenderer,
1280        *const gdk::GdkRectangle,
1281        *const gdk::GdkRectangle,
1282        gpointer,
1283    ) -> gboolean,
1284>;
1285pub type GtkCellCallback = Option<unsafe extern "C" fn(*mut GtkCellRenderer, gpointer) -> gboolean>;
1286pub type GtkCellLayoutDataFunc = Option<
1287    unsafe extern "C" fn(
1288        *mut GtkCellLayout,
1289        *mut GtkCellRenderer,
1290        *mut GtkTreeModel,
1291        *mut GtkTreeIter,
1292        gpointer,
1293    ),
1294>;
1295pub type GtkCustomAllocateFunc = Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>;
1296pub type GtkCustomFilterFunc =
1297    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> gboolean>;
1298pub type GtkCustomMeasureFunc = Option<
1299    unsafe extern "C" fn(
1300        *mut GtkWidget,
1301        GtkOrientation,
1302        c_int,
1303        *mut c_int,
1304        *mut c_int,
1305        *mut c_int,
1306        *mut c_int,
1307    ),
1308>;
1309pub type GtkCustomRequestModeFunc =
1310    Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>;
1311pub type GtkDrawingAreaDrawFunc =
1312    Option<unsafe extern "C" fn(*mut GtkDrawingArea, *mut cairo::cairo_t, c_int, c_int, gpointer)>;
1313pub type GtkEntryCompletionMatchFunc = Option<
1314    unsafe extern "C" fn(
1315        *mut GtkEntryCompletion,
1316        *const c_char,
1317        *mut GtkTreeIter,
1318        gpointer,
1319    ) -> gboolean,
1320>;
1321pub type GtkExpressionNotify = Option<unsafe extern "C" fn(gpointer)>;
1322pub type GtkFlowBoxCreateWidgetFunc =
1323    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1324pub type GtkFlowBoxFilterFunc =
1325    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, gpointer) -> gboolean>;
1326pub type GtkFlowBoxForeachFunc =
1327    Option<unsafe extern "C" fn(*mut GtkFlowBox, *mut GtkFlowBoxChild, gpointer)>;
1328pub type GtkFlowBoxSortFunc =
1329    Option<unsafe extern "C" fn(*mut GtkFlowBoxChild, *mut GtkFlowBoxChild, gpointer) -> c_int>;
1330pub type GtkFontFilterFunc = Option<
1331    unsafe extern "C" fn(
1332        *const pango::PangoFontFamily,
1333        *const pango::PangoFontFace,
1334        gpointer,
1335    ) -> gboolean,
1336>;
1337pub type GtkIconViewForeachFunc =
1338    Option<unsafe extern "C" fn(*mut GtkIconView, *mut GtkTreePath, gpointer)>;
1339pub type GtkListBoxCreateWidgetFunc =
1340    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut GtkWidget>;
1341pub type GtkListBoxFilterFunc =
1342    Option<unsafe extern "C" fn(*mut GtkListBoxRow, gpointer) -> gboolean>;
1343pub type GtkListBoxForeachFunc =
1344    Option<unsafe extern "C" fn(*mut GtkListBox, *mut GtkListBoxRow, gpointer)>;
1345pub type GtkListBoxSortFunc =
1346    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer) -> c_int>;
1347pub type GtkListBoxUpdateHeaderFunc =
1348    Option<unsafe extern "C" fn(*mut GtkListBoxRow, *mut GtkListBoxRow, gpointer)>;
1349pub type GtkMapListModelMapFunc =
1350    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gobject::GObject>;
1351pub type GtkMenuButtonCreatePopupFunc = Option<unsafe extern "C" fn(*mut GtkMenuButton, gpointer)>;
1352pub type GtkPageSetupDoneFunc = Option<unsafe extern "C" fn(*mut GtkPageSetup, gpointer)>;
1353pub type GtkPrintJobCompleteFunc =
1354    Option<unsafe extern "C" fn(*mut GtkPrintJob, gpointer, *const glib::GError)>;
1355pub type GtkPrintSettingsFunc =
1356    Option<unsafe extern "C" fn(*const c_char, *const c_char, gpointer)>;
1357pub type GtkPrinterFunc = Option<unsafe extern "C" fn(*mut GtkPrinter, gpointer) -> gboolean>;
1358pub type GtkScaleFormatValueFunc =
1359    Option<unsafe extern "C" fn(*mut GtkScale, c_double, gpointer) -> *mut c_char>;
1360pub type GtkShortcutFunc =
1361    Option<unsafe extern "C" fn(*mut GtkWidget, *mut glib::GVariant, gpointer) -> gboolean>;
1362pub type GtkTextBufferCommitNotify = Option<
1363    unsafe extern "C" fn(*mut GtkTextBuffer, GtkTextBufferNotifyFlags, c_uint, c_uint, gpointer),
1364>;
1365pub type GtkTextCharPredicate = Option<unsafe extern "C" fn(u32, gpointer) -> gboolean>;
1366pub type GtkTextTagTableForeach = Option<unsafe extern "C" fn(*mut GtkTextTag, gpointer)>;
1367pub type GtkTickCallback =
1368    Option<unsafe extern "C" fn(*mut GtkWidget, *mut gdk::GdkFrameClock, gpointer) -> gboolean>;
1369pub type GtkTreeCellDataFunc = Option<
1370    unsafe extern "C" fn(
1371        *mut GtkTreeViewColumn,
1372        *mut GtkCellRenderer,
1373        *mut GtkTreeModel,
1374        *mut GtkTreeIter,
1375        gpointer,
1376    ),
1377>;
1378pub type GtkTreeIterCompareFunc = Option<
1379    unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter, gpointer) -> c_int,
1380>;
1381pub type GtkTreeListModelCreateModelFunc =
1382    Option<unsafe extern "C" fn(*mut gobject::GObject, gpointer) -> *mut gio::GListModel>;
1383pub type GtkTreeModelFilterModifyFunc = Option<
1384    unsafe extern "C" fn(
1385        *mut GtkTreeModel,
1386        *mut GtkTreeIter,
1387        *mut gobject::GValue,
1388        c_int,
1389        gpointer,
1390    ),
1391>;
1392pub type GtkTreeModelFilterVisibleFunc =
1393    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1394pub type GtkTreeModelForeachFunc = Option<
1395    unsafe extern "C" fn(
1396        *mut GtkTreeModel,
1397        *mut GtkTreePath,
1398        *mut GtkTreeIter,
1399        gpointer,
1400    ) -> gboolean,
1401>;
1402pub type GtkTreeSelectionForeachFunc =
1403    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, gpointer)>;
1404pub type GtkTreeSelectionFunc = Option<
1405    unsafe extern "C" fn(
1406        *mut GtkTreeSelection,
1407        *mut GtkTreeModel,
1408        *mut GtkTreePath,
1409        gboolean,
1410        gpointer,
1411    ) -> gboolean,
1412>;
1413pub type GtkTreeViewColumnDropFunc = Option<
1414    unsafe extern "C" fn(
1415        *mut GtkTreeView,
1416        *mut GtkTreeViewColumn,
1417        *mut GtkTreeViewColumn,
1418        *mut GtkTreeViewColumn,
1419        gpointer,
1420    ) -> gboolean,
1421>;
1422pub type GtkTreeViewMappingFunc =
1423    Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, gpointer)>;
1424pub type GtkTreeViewRowSeparatorFunc =
1425    Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, gpointer) -> gboolean>;
1426pub type GtkTreeViewSearchEqualFunc = Option<
1427    unsafe extern "C" fn(
1428        *mut GtkTreeModel,
1429        c_int,
1430        *const c_char,
1431        *mut GtkTreeIter,
1432        gpointer,
1433    ) -> gboolean,
1434>;
1435pub type GtkWidgetActionActivateFunc =
1436    Option<unsafe extern "C" fn(*mut GtkWidget, *const c_char, *mut glib::GVariant)>;
1437
1438// Records
1439#[repr(C)]
1440#[allow(dead_code)]
1441pub struct _GtkATContextClass {
1442    _data: [u8; 0],
1443    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1444}
1445
1446pub type GtkATContextClass = _GtkATContextClass;
1447
1448#[derive(Copy, Clone)]
1449#[repr(C)]
1450pub struct GtkAccessibleHyperlinkClass {
1451    pub parent_class: gobject::GObjectClass,
1452}
1453
1454impl ::std::fmt::Debug for GtkAccessibleHyperlinkClass {
1455    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1456        f.debug_struct(&format!("GtkAccessibleHyperlinkClass @ {self:p}"))
1457            .field("parent_class", &self.parent_class)
1458            .finish()
1459    }
1460}
1461
1462#[derive(Copy, Clone)]
1463#[repr(C)]
1464pub struct GtkAccessibleHypertextInterface {
1465    pub g_iface: gobject::GTypeInterface,
1466    pub get_n_links: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext) -> c_uint>,
1467    pub get_link: Option<
1468        unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> *mut GtkAccessibleHyperlink,
1469    >,
1470    pub get_link_at: Option<unsafe extern "C" fn(*mut GtkAccessibleHypertext, c_uint) -> c_uint>,
1471}
1472
1473impl ::std::fmt::Debug for GtkAccessibleHypertextInterface {
1474    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1475        f.debug_struct(&format!("GtkAccessibleHypertextInterface @ {self:p}"))
1476            .field("get_n_links", &self.get_n_links)
1477            .field("get_link", &self.get_link)
1478            .field("get_link_at", &self.get_link_at)
1479            .finish()
1480    }
1481}
1482
1483#[derive(Copy, Clone)]
1484#[repr(C)]
1485pub struct GtkAccessibleInterface {
1486    pub g_iface: gobject::GTypeInterface,
1487    pub get_at_context: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkATContext>,
1488    pub get_platform_state:
1489        Option<unsafe extern "C" fn(*mut GtkAccessible, GtkAccessiblePlatformState) -> gboolean>,
1490    pub get_accessible_parent:
1491        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1492    pub get_first_accessible_child:
1493        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1494    pub get_next_accessible_sibling:
1495        Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut GtkAccessible>,
1496    pub get_bounds: Option<
1497        unsafe extern "C" fn(
1498            *mut GtkAccessible,
1499            *mut c_int,
1500            *mut c_int,
1501            *mut c_int,
1502            *mut c_int,
1503        ) -> gboolean,
1504    >,
1505    pub get_accessible_id: Option<unsafe extern "C" fn(*mut GtkAccessible) -> *mut c_char>,
1506}
1507
1508impl ::std::fmt::Debug for GtkAccessibleInterface {
1509    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1510        f.debug_struct(&format!("GtkAccessibleInterface @ {self:p}"))
1511            .field("g_iface", &self.g_iface)
1512            .field("get_at_context", &self.get_at_context)
1513            .field("get_platform_state", &self.get_platform_state)
1514            .field("get_accessible_parent", &self.get_accessible_parent)
1515            .field(
1516                "get_first_accessible_child",
1517                &self.get_first_accessible_child,
1518            )
1519            .field(
1520                "get_next_accessible_sibling",
1521                &self.get_next_accessible_sibling,
1522            )
1523            .field("get_bounds", &self.get_bounds)
1524            .field("get_accessible_id", &self.get_accessible_id)
1525            .finish()
1526    }
1527}
1528
1529#[repr(C)]
1530#[allow(dead_code)]
1531pub struct GtkAccessibleList {
1532    _data: [u8; 0],
1533    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1534}
1535
1536impl ::std::fmt::Debug for GtkAccessibleList {
1537    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1538        f.debug_struct(&format!("GtkAccessibleList @ {self:p}"))
1539            .finish()
1540    }
1541}
1542
1543#[derive(Copy, Clone)]
1544#[repr(C)]
1545pub struct GtkAccessibleRangeInterface {
1546    pub g_iface: gobject::GTypeInterface,
1547    pub set_current_value:
1548        Option<unsafe extern "C" fn(*mut GtkAccessibleRange, c_double) -> gboolean>,
1549}
1550
1551impl ::std::fmt::Debug for GtkAccessibleRangeInterface {
1552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1553        f.debug_struct(&format!("GtkAccessibleRangeInterface @ {self:p}"))
1554            .field("g_iface", &self.g_iface)
1555            .field("set_current_value", &self.set_current_value)
1556            .finish()
1557    }
1558}
1559
1560#[derive(Copy, Clone)]
1561#[repr(C)]
1562pub struct GtkAccessibleTextInterface {
1563    pub g_iface: gobject::GTypeInterface,
1564    pub get_contents:
1565        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint, c_uint) -> *mut glib::GBytes>,
1566    pub get_contents_at: Option<
1567        unsafe extern "C" fn(
1568            *mut GtkAccessibleText,
1569            c_uint,
1570            GtkAccessibleTextGranularity,
1571            *mut c_uint,
1572            *mut c_uint,
1573        ) -> *mut glib::GBytes,
1574    >,
1575    pub get_caret_position: Option<unsafe extern "C" fn(*mut GtkAccessibleText) -> c_uint>,
1576    pub get_selection: Option<
1577        unsafe extern "C" fn(
1578            *mut GtkAccessibleText,
1579            *mut size_t,
1580            *mut *mut GtkAccessibleTextRange,
1581        ) -> gboolean,
1582    >,
1583    pub get_attributes: Option<
1584        unsafe extern "C" fn(
1585            *mut GtkAccessibleText,
1586            c_uint,
1587            *mut size_t,
1588            *mut *mut GtkAccessibleTextRange,
1589            *mut *mut *mut c_char,
1590            *mut *mut *mut c_char,
1591        ) -> gboolean,
1592    >,
1593    pub get_default_attributes: Option<
1594        unsafe extern "C" fn(*mut GtkAccessibleText, *mut *mut *mut c_char, *mut *mut *mut c_char),
1595    >,
1596    pub get_extents: Option<
1597        unsafe extern "C" fn(
1598            *mut GtkAccessibleText,
1599            c_uint,
1600            c_uint,
1601            *mut graphene::graphene_rect_t,
1602        ) -> gboolean,
1603    >,
1604    pub get_offset: Option<
1605        unsafe extern "C" fn(
1606            *mut GtkAccessibleText,
1607            *const graphene::graphene_point_t,
1608            *mut c_uint,
1609        ) -> gboolean,
1610    >,
1611    pub set_caret_position:
1612        Option<unsafe extern "C" fn(*mut GtkAccessibleText, c_uint) -> gboolean>,
1613    pub set_selection: Option<
1614        unsafe extern "C" fn(
1615            *mut GtkAccessibleText,
1616            size_t,
1617            *mut GtkAccessibleTextRange,
1618        ) -> gboolean,
1619    >,
1620}
1621
1622impl ::std::fmt::Debug for GtkAccessibleTextInterface {
1623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1624        f.debug_struct(&format!("GtkAccessibleTextInterface @ {self:p}"))
1625            .field("get_contents", &self.get_contents)
1626            .field("get_contents_at", &self.get_contents_at)
1627            .field("get_caret_position", &self.get_caret_position)
1628            .field("get_selection", &self.get_selection)
1629            .field("get_attributes", &self.get_attributes)
1630            .field("get_default_attributes", &self.get_default_attributes)
1631            .field("get_extents", &self.get_extents)
1632            .field("get_offset", &self.get_offset)
1633            .field("set_caret_position", &self.set_caret_position)
1634            .field("set_selection", &self.set_selection)
1635            .finish()
1636    }
1637}
1638
1639#[derive(Copy, Clone)]
1640#[repr(C)]
1641pub struct GtkAccessibleTextRange {
1642    pub start: size_t,
1643    pub length: size_t,
1644}
1645
1646impl ::std::fmt::Debug for GtkAccessibleTextRange {
1647    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1648        f.debug_struct(&format!("GtkAccessibleTextRange @ {self:p}"))
1649            .field("start", &self.start)
1650            .field("length", &self.length)
1651            .finish()
1652    }
1653}
1654
1655#[derive(Copy, Clone)]
1656#[repr(C)]
1657pub struct GtkActionableInterface {
1658    pub g_iface: gobject::GTypeInterface,
1659    pub get_action_name: Option<unsafe extern "C" fn(*mut GtkActionable) -> *const c_char>,
1660    pub set_action_name: Option<unsafe extern "C" fn(*mut GtkActionable, *const c_char)>,
1661    pub get_action_target_value:
1662        Option<unsafe extern "C" fn(*mut GtkActionable) -> *mut glib::GVariant>,
1663    pub set_action_target_value:
1664        Option<unsafe extern "C" fn(*mut GtkActionable, *mut glib::GVariant)>,
1665}
1666
1667impl ::std::fmt::Debug for GtkActionableInterface {
1668    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1669        f.debug_struct(&format!("GtkActionableInterface @ {self:p}"))
1670            .field("get_action_name", &self.get_action_name)
1671            .field("set_action_name", &self.set_action_name)
1672            .field("get_action_target_value", &self.get_action_target_value)
1673            .field("set_action_target_value", &self.set_action_target_value)
1674            .finish()
1675    }
1676}
1677
1678#[repr(C)]
1679#[allow(dead_code)]
1680pub struct _GtkActivateActionClass {
1681    _data: [u8; 0],
1682    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1683}
1684
1685pub type GtkActivateActionClass = _GtkActivateActionClass;
1686
1687#[derive(Copy, Clone)]
1688#[repr(C)]
1689pub struct GtkAdjustmentClass {
1690    pub parent_class: gobject::GInitiallyUnownedClass,
1691    pub changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1692    pub value_changed: Option<unsafe extern "C" fn(*mut GtkAdjustment)>,
1693    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
1694    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
1695    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
1696    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
1697}
1698
1699impl ::std::fmt::Debug for GtkAdjustmentClass {
1700    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1701        f.debug_struct(&format!("GtkAdjustmentClass @ {self:p}"))
1702            .field("parent_class", &self.parent_class)
1703            .field("changed", &self.changed)
1704            .field("value_changed", &self.value_changed)
1705            .field("_gtk_reserved1", &self._gtk_reserved1)
1706            .field("_gtk_reserved2", &self._gtk_reserved2)
1707            .field("_gtk_reserved3", &self._gtk_reserved3)
1708            .field("_gtk_reserved4", &self._gtk_reserved4)
1709            .finish()
1710    }
1711}
1712
1713#[derive(Copy, Clone)]
1714#[repr(C)]
1715pub struct GtkAlertDialogClass {
1716    pub parent_class: gobject::GObjectClass,
1717}
1718
1719impl ::std::fmt::Debug for GtkAlertDialogClass {
1720    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1721        f.debug_struct(&format!("GtkAlertDialogClass @ {self:p}"))
1722            .field("parent_class", &self.parent_class)
1723            .finish()
1724    }
1725}
1726
1727#[repr(C)]
1728#[allow(dead_code)]
1729pub struct _GtkAlternativeTriggerClass {
1730    _data: [u8; 0],
1731    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1732}
1733
1734pub type GtkAlternativeTriggerClass = _GtkAlternativeTriggerClass;
1735
1736#[repr(C)]
1737#[allow(dead_code)]
1738pub struct _GtkAnyFilterClass {
1739    _data: [u8; 0],
1740    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1741}
1742
1743pub type GtkAnyFilterClass = _GtkAnyFilterClass;
1744
1745#[derive(Copy, Clone)]
1746#[repr(C)]
1747pub struct GtkApplicationClass {
1748    pub parent_class: gio::GApplicationClass,
1749    pub window_added: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1750    pub window_removed: Option<unsafe extern "C" fn(*mut GtkApplication, *mut GtkWindow)>,
1751    pub save_state:
1752        Option<unsafe extern "C" fn(*mut GtkApplication, *mut glib::GVariantDict) -> gboolean>,
1753    pub restore_state: Option<
1754        unsafe extern "C" fn(
1755            *mut GtkApplication,
1756            GtkRestoreReason,
1757            *mut glib::GVariant,
1758        ) -> gboolean,
1759    >,
1760    pub restore_window:
1761        Option<unsafe extern "C" fn(*mut GtkApplication, GtkRestoreReason, *mut glib::GVariant)>,
1762    pub padding: [gpointer; 5],
1763}
1764
1765impl ::std::fmt::Debug for GtkApplicationClass {
1766    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1767        f.debug_struct(&format!("GtkApplicationClass @ {self:p}"))
1768            .field("parent_class", &self.parent_class)
1769            .field("window_added", &self.window_added)
1770            .field("window_removed", &self.window_removed)
1771            .field("save_state", &self.save_state)
1772            .field("restore_state", &self.restore_state)
1773            .field("restore_window", &self.restore_window)
1774            .finish()
1775    }
1776}
1777
1778#[derive(Copy, Clone)]
1779#[repr(C)]
1780pub struct GtkApplicationWindowClass {
1781    pub parent_class: GtkWindowClass,
1782    pub save_state: Option<
1783        unsafe extern "C" fn(*mut GtkApplicationWindow, *mut glib::GVariantDict) -> gboolean,
1784    >,
1785    pub padding: [gpointer; 7],
1786}
1787
1788impl ::std::fmt::Debug for GtkApplicationWindowClass {
1789    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1790        f.debug_struct(&format!("GtkApplicationWindowClass @ {self:p}"))
1791            .field("parent_class", &self.parent_class)
1792            .field("save_state", &self.save_state)
1793            .finish()
1794    }
1795}
1796
1797#[derive(Copy, Clone)]
1798#[repr(C)]
1799pub struct GtkBinLayoutClass {
1800    pub parent_class: GtkLayoutManagerClass,
1801}
1802
1803impl ::std::fmt::Debug for GtkBinLayoutClass {
1804    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1805        f.debug_struct(&format!("GtkBinLayoutClass @ {self:p}"))
1806            .field("parent_class", &self.parent_class)
1807            .finish()
1808    }
1809}
1810
1811#[repr(C)]
1812#[allow(dead_code)]
1813pub struct GtkBitset {
1814    _data: [u8; 0],
1815    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
1816}
1817
1818impl ::std::fmt::Debug for GtkBitset {
1819    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1820        f.debug_struct(&format!("GtkBitset @ {self:p}")).finish()
1821    }
1822}
1823
1824#[derive(Copy, Clone)]
1825#[repr(C)]
1826pub struct GtkBitsetIter {
1827    pub private_data: [gpointer; 10],
1828}
1829
1830impl ::std::fmt::Debug for GtkBitsetIter {
1831    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1832        f.debug_struct(&format!("GtkBitsetIter @ {self:p}"))
1833            .finish()
1834    }
1835}
1836
1837#[derive(Copy, Clone)]
1838#[repr(C)]
1839pub struct GtkBookmarkListClass {
1840    pub parent_class: gobject::GObjectClass,
1841}
1842
1843impl ::std::fmt::Debug for GtkBookmarkListClass {
1844    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1845        f.debug_struct(&format!("GtkBookmarkListClass @ {self:p}"))
1846            .field("parent_class", &self.parent_class)
1847            .finish()
1848    }
1849}
1850
1851#[derive(Copy, Clone)]
1852#[repr(C)]
1853pub struct GtkBoolFilterClass {
1854    pub parent_class: GtkFilterClass,
1855}
1856
1857impl ::std::fmt::Debug for GtkBoolFilterClass {
1858    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1859        f.debug_struct(&format!("GtkBoolFilterClass @ {self:p}"))
1860            .field("parent_class", &self.parent_class)
1861            .finish()
1862    }
1863}
1864
1865#[derive(Copy, Clone)]
1866#[repr(C)]
1867pub struct GtkBorder {
1868    pub left: i16,
1869    pub right: i16,
1870    pub top: i16,
1871    pub bottom: i16,
1872}
1873
1874impl ::std::fmt::Debug for GtkBorder {
1875    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1876        f.debug_struct(&format!("GtkBorder @ {self:p}"))
1877            .field("left", &self.left)
1878            .field("right", &self.right)
1879            .field("top", &self.top)
1880            .field("bottom", &self.bottom)
1881            .finish()
1882    }
1883}
1884
1885#[derive(Copy, Clone)]
1886#[repr(C)]
1887pub struct GtkBoxClass {
1888    pub parent_class: GtkWidgetClass,
1889    pub padding: [gpointer; 8],
1890}
1891
1892impl ::std::fmt::Debug for GtkBoxClass {
1893    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1894        f.debug_struct(&format!("GtkBoxClass @ {self:p}"))
1895            .field("parent_class", &self.parent_class)
1896            .finish()
1897    }
1898}
1899
1900#[derive(Copy, Clone)]
1901#[repr(C)]
1902pub struct GtkBoxLayoutClass {
1903    pub parent_class: GtkLayoutManagerClass,
1904}
1905
1906impl ::std::fmt::Debug for GtkBoxLayoutClass {
1907    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1908        f.debug_struct(&format!("GtkBoxLayoutClass @ {self:p}"))
1909            .field("parent_class", &self.parent_class)
1910            .finish()
1911    }
1912}
1913
1914#[derive(Copy, Clone)]
1915#[repr(C)]
1916pub struct GtkBuildableIface {
1917    pub g_iface: gobject::GTypeInterface,
1918    pub set_id: Option<unsafe extern "C" fn(*mut GtkBuildable, *const c_char)>,
1919    pub get_id: Option<unsafe extern "C" fn(*mut GtkBuildable) -> *const c_char>,
1920    pub add_child: Option<
1921        unsafe extern "C" fn(
1922            *mut GtkBuildable,
1923            *mut GtkBuilder,
1924            *mut gobject::GObject,
1925            *const c_char,
1926        ),
1927    >,
1928    pub set_buildable_property: Option<
1929        unsafe extern "C" fn(
1930            *mut GtkBuildable,
1931            *mut GtkBuilder,
1932            *const c_char,
1933            *const gobject::GValue,
1934        ),
1935    >,
1936    pub construct_child: Option<
1937        unsafe extern "C" fn(
1938            *mut GtkBuildable,
1939            *mut GtkBuilder,
1940            *const c_char,
1941        ) -> *mut gobject::GObject,
1942    >,
1943    pub custom_tag_start: Option<
1944        unsafe extern "C" fn(
1945            *mut GtkBuildable,
1946            *mut GtkBuilder,
1947            *mut gobject::GObject,
1948            *const c_char,
1949            *mut GtkBuildableParser,
1950            *mut gpointer,
1951        ) -> gboolean,
1952    >,
1953    pub custom_tag_end: Option<
1954        unsafe extern "C" fn(
1955            *mut GtkBuildable,
1956            *mut GtkBuilder,
1957            *mut gobject::GObject,
1958            *const c_char,
1959            gpointer,
1960        ),
1961    >,
1962    pub custom_finished: Option<
1963        unsafe extern "C" fn(
1964            *mut GtkBuildable,
1965            *mut GtkBuilder,
1966            *mut gobject::GObject,
1967            *const c_char,
1968            gpointer,
1969        ),
1970    >,
1971    pub parser_finished: Option<unsafe extern "C" fn(*mut GtkBuildable, *mut GtkBuilder)>,
1972    pub get_internal_child: Option<
1973        unsafe extern "C" fn(
1974            *mut GtkBuildable,
1975            *mut GtkBuilder,
1976            *const c_char,
1977        ) -> *mut gobject::GObject,
1978    >,
1979}
1980
1981impl ::std::fmt::Debug for GtkBuildableIface {
1982    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
1983        f.debug_struct(&format!("GtkBuildableIface @ {self:p}"))
1984            .field("g_iface", &self.g_iface)
1985            .field("set_id", &self.set_id)
1986            .field("get_id", &self.get_id)
1987            .field("add_child", &self.add_child)
1988            .field("set_buildable_property", &self.set_buildable_property)
1989            .field("construct_child", &self.construct_child)
1990            .field("custom_tag_start", &self.custom_tag_start)
1991            .field("custom_tag_end", &self.custom_tag_end)
1992            .field("custom_finished", &self.custom_finished)
1993            .field("parser_finished", &self.parser_finished)
1994            .field("get_internal_child", &self.get_internal_child)
1995            .finish()
1996    }
1997}
1998
1999#[repr(C)]
2000#[allow(dead_code)]
2001pub struct _GtkBuildableParseContext {
2002    _data: [u8; 0],
2003    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2004}
2005
2006pub type GtkBuildableParseContext = _GtkBuildableParseContext;
2007
2008#[derive(Copy, Clone)]
2009#[repr(C)]
2010pub struct GtkBuildableParser {
2011    pub start_element: Option<
2012        unsafe extern "C" fn(
2013            *mut GtkBuildableParseContext,
2014            *const c_char,
2015            *mut *const c_char,
2016            *mut *const c_char,
2017            gpointer,
2018            *mut *mut glib::GError,
2019        ),
2020    >,
2021    pub end_element: Option<
2022        unsafe extern "C" fn(
2023            *mut GtkBuildableParseContext,
2024            *const c_char,
2025            gpointer,
2026            *mut *mut glib::GError,
2027        ),
2028    >,
2029    pub text: Option<
2030        unsafe extern "C" fn(
2031            *mut GtkBuildableParseContext,
2032            *const c_char,
2033            size_t,
2034            gpointer,
2035            *mut *mut glib::GError,
2036        ),
2037    >,
2038    pub error:
2039        Option<unsafe extern "C" fn(*mut GtkBuildableParseContext, *mut glib::GError, gpointer)>,
2040    pub padding: [gpointer; 4],
2041}
2042
2043impl ::std::fmt::Debug for GtkBuildableParser {
2044    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2045        f.debug_struct(&format!("GtkBuildableParser @ {self:p}"))
2046            .field("start_element", &self.start_element)
2047            .field("end_element", &self.end_element)
2048            .field("text", &self.text)
2049            .field("error", &self.error)
2050            .finish()
2051    }
2052}
2053
2054#[derive(Copy, Clone)]
2055#[repr(C)]
2056pub struct GtkBuilderCScopeClass {
2057    pub parent_class: gobject::GObjectClass,
2058}
2059
2060impl ::std::fmt::Debug for GtkBuilderCScopeClass {
2061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2062        f.debug_struct(&format!("GtkBuilderCScopeClass @ {self:p}"))
2063            .field("parent_class", &self.parent_class)
2064            .finish()
2065    }
2066}
2067
2068#[repr(C)]
2069#[allow(dead_code)]
2070pub struct _GtkBuilderClass {
2071    _data: [u8; 0],
2072    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2073}
2074
2075pub type GtkBuilderClass = _GtkBuilderClass;
2076
2077#[repr(C)]
2078#[allow(dead_code)]
2079pub struct _GtkBuilderListItemFactoryClass {
2080    _data: [u8; 0],
2081    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2082}
2083
2084pub type GtkBuilderListItemFactoryClass = _GtkBuilderListItemFactoryClass;
2085
2086#[derive(Copy, Clone)]
2087#[repr(C)]
2088pub struct GtkBuilderScopeInterface {
2089    pub g_iface: gobject::GTypeInterface,
2090    pub get_type_from_name:
2091        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2092    pub get_type_from_function:
2093        Option<unsafe extern "C" fn(*mut GtkBuilderScope, *mut GtkBuilder, *const c_char) -> GType>,
2094    pub create_closure: Option<
2095        unsafe extern "C" fn(
2096            *mut GtkBuilderScope,
2097            *mut GtkBuilder,
2098            *const c_char,
2099            GtkBuilderClosureFlags,
2100            *mut gobject::GObject,
2101            *mut *mut glib::GError,
2102        ) -> *mut gobject::GClosure,
2103    >,
2104}
2105
2106impl ::std::fmt::Debug for GtkBuilderScopeInterface {
2107    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2108        f.debug_struct(&format!("GtkBuilderScopeInterface @ {self:p}"))
2109            .field("get_type_from_name", &self.get_type_from_name)
2110            .field("get_type_from_function", &self.get_type_from_function)
2111            .field("create_closure", &self.create_closure)
2112            .finish()
2113    }
2114}
2115
2116#[derive(Copy, Clone)]
2117#[repr(C)]
2118pub struct GtkButtonClass {
2119    pub parent_class: GtkWidgetClass,
2120    pub clicked: Option<unsafe extern "C" fn(*mut GtkButton)>,
2121    pub activate: Option<unsafe extern "C" fn(*mut GtkButton)>,
2122    pub padding: [gpointer; 8],
2123}
2124
2125impl ::std::fmt::Debug for GtkButtonClass {
2126    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2127        f.debug_struct(&format!("GtkButtonClass @ {self:p}"))
2128            .field("parent_class", &self.parent_class)
2129            .field("clicked", &self.clicked)
2130            .field("activate", &self.activate)
2131            .finish()
2132    }
2133}
2134
2135#[repr(C)]
2136#[allow(dead_code)]
2137pub struct _GtkButtonPrivate {
2138    _data: [u8; 0],
2139    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2140}
2141
2142pub type GtkButtonPrivate = _GtkButtonPrivate;
2143
2144#[repr(C)]
2145#[allow(dead_code)]
2146pub struct _GtkCallbackActionClass {
2147    _data: [u8; 0],
2148    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2149}
2150
2151pub type GtkCallbackActionClass = _GtkCallbackActionClass;
2152
2153#[derive(Copy, Clone)]
2154#[repr(C)]
2155pub struct GtkCellAreaClass {
2156    pub parent_class: gobject::GInitiallyUnownedClass,
2157    pub add: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2158    pub remove: Option<unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellRenderer)>,
2159    pub foreach: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkCellCallback, gpointer)>,
2160    pub foreach_alloc: Option<
2161        unsafe extern "C" fn(
2162            *mut GtkCellArea,
2163            *mut GtkCellAreaContext,
2164            *mut GtkWidget,
2165            *const gdk::GdkRectangle,
2166            *const gdk::GdkRectangle,
2167            GtkCellAllocCallback,
2168            gpointer,
2169        ),
2170    >,
2171    pub event: Option<
2172        unsafe extern "C" fn(
2173            *mut GtkCellArea,
2174            *mut GtkCellAreaContext,
2175            *mut GtkWidget,
2176            *mut gdk::GdkEvent,
2177            *const gdk::GdkRectangle,
2178            GtkCellRendererState,
2179        ) -> c_int,
2180    >,
2181    pub snapshot: Option<
2182        unsafe extern "C" fn(
2183            *mut GtkCellArea,
2184            *mut GtkCellAreaContext,
2185            *mut GtkWidget,
2186            *mut GtkSnapshot,
2187            *const gdk::GdkRectangle,
2188            *const gdk::GdkRectangle,
2189            GtkCellRendererState,
2190            gboolean,
2191        ),
2192    >,
2193    pub apply_attributes: Option<
2194        unsafe extern "C" fn(
2195            *mut GtkCellArea,
2196            *mut GtkTreeModel,
2197            *mut GtkTreeIter,
2198            gboolean,
2199            gboolean,
2200        ),
2201    >,
2202    pub create_context: Option<unsafe extern "C" fn(*mut GtkCellArea) -> *mut GtkCellAreaContext>,
2203    pub copy_context: Option<
2204        unsafe extern "C" fn(*mut GtkCellArea, *mut GtkCellAreaContext) -> *mut GtkCellAreaContext,
2205    >,
2206    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellArea) -> GtkSizeRequestMode>,
2207    pub get_preferred_width: Option<
2208        unsafe extern "C" fn(
2209            *mut GtkCellArea,
2210            *mut GtkCellAreaContext,
2211            *mut GtkWidget,
2212            *mut c_int,
2213            *mut c_int,
2214        ),
2215    >,
2216    pub get_preferred_height_for_width: Option<
2217        unsafe extern "C" fn(
2218            *mut GtkCellArea,
2219            *mut GtkCellAreaContext,
2220            *mut GtkWidget,
2221            c_int,
2222            *mut c_int,
2223            *mut c_int,
2224        ),
2225    >,
2226    pub get_preferred_height: Option<
2227        unsafe extern "C" fn(
2228            *mut GtkCellArea,
2229            *mut GtkCellAreaContext,
2230            *mut GtkWidget,
2231            *mut c_int,
2232            *mut c_int,
2233        ),
2234    >,
2235    pub get_preferred_width_for_height: Option<
2236        unsafe extern "C" fn(
2237            *mut GtkCellArea,
2238            *mut GtkCellAreaContext,
2239            *mut GtkWidget,
2240            c_int,
2241            *mut c_int,
2242            *mut c_int,
2243        ),
2244    >,
2245    pub set_cell_property: Option<
2246        unsafe extern "C" fn(
2247            *mut GtkCellArea,
2248            *mut GtkCellRenderer,
2249            c_uint,
2250            *mut gobject::GValue,
2251            *mut gobject::GParamSpec,
2252        ),
2253    >,
2254    pub get_cell_property: Option<
2255        unsafe extern "C" fn(
2256            *mut GtkCellArea,
2257            *mut GtkCellRenderer,
2258            c_uint,
2259            *mut gobject::GValue,
2260            *mut gobject::GParamSpec,
2261        ),
2262    >,
2263    pub focus: Option<unsafe extern "C" fn(*mut GtkCellArea, GtkDirectionType) -> gboolean>,
2264    pub is_activatable: Option<unsafe extern "C" fn(*mut GtkCellArea) -> gboolean>,
2265    pub activate: Option<
2266        unsafe extern "C" fn(
2267            *mut GtkCellArea,
2268            *mut GtkCellAreaContext,
2269            *mut GtkWidget,
2270            *const gdk::GdkRectangle,
2271            GtkCellRendererState,
2272            gboolean,
2273        ) -> gboolean,
2274    >,
2275    pub padding: [gpointer; 8],
2276}
2277
2278impl ::std::fmt::Debug for GtkCellAreaClass {
2279    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2280        f.debug_struct(&format!("GtkCellAreaClass @ {self:p}"))
2281            .field("add", &self.add)
2282            .field("remove", &self.remove)
2283            .field("foreach", &self.foreach)
2284            .field("foreach_alloc", &self.foreach_alloc)
2285            .field("event", &self.event)
2286            .field("snapshot", &self.snapshot)
2287            .field("apply_attributes", &self.apply_attributes)
2288            .field("create_context", &self.create_context)
2289            .field("copy_context", &self.copy_context)
2290            .field("get_request_mode", &self.get_request_mode)
2291            .field("get_preferred_width", &self.get_preferred_width)
2292            .field(
2293                "get_preferred_height_for_width",
2294                &self.get_preferred_height_for_width,
2295            )
2296            .field("get_preferred_height", &self.get_preferred_height)
2297            .field(
2298                "get_preferred_width_for_height",
2299                &self.get_preferred_width_for_height,
2300            )
2301            .field("set_cell_property", &self.set_cell_property)
2302            .field("get_cell_property", &self.get_cell_property)
2303            .field("focus", &self.focus)
2304            .field("is_activatable", &self.is_activatable)
2305            .field("activate", &self.activate)
2306            .finish()
2307    }
2308}
2309
2310#[derive(Copy, Clone)]
2311#[repr(C)]
2312pub struct GtkCellAreaContextClass {
2313    pub parent_class: gobject::GObjectClass,
2314    pub allocate: Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, c_int)>,
2315    pub reset: Option<unsafe extern "C" fn(*mut GtkCellAreaContext)>,
2316    pub get_preferred_height_for_width:
2317        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2318    pub get_preferred_width_for_height:
2319        Option<unsafe extern "C" fn(*mut GtkCellAreaContext, c_int, *mut c_int, *mut c_int)>,
2320    pub padding: [gpointer; 8],
2321}
2322
2323impl ::std::fmt::Debug for GtkCellAreaContextClass {
2324    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2325        f.debug_struct(&format!("GtkCellAreaContextClass @ {self:p}"))
2326            .field("allocate", &self.allocate)
2327            .field("reset", &self.reset)
2328            .field(
2329                "get_preferred_height_for_width",
2330                &self.get_preferred_height_for_width,
2331            )
2332            .field(
2333                "get_preferred_width_for_height",
2334                &self.get_preferred_width_for_height,
2335            )
2336            .finish()
2337    }
2338}
2339
2340#[repr(C)]
2341#[allow(dead_code)]
2342pub struct _GtkCellAreaContextPrivate {
2343    _data: [u8; 0],
2344    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2345}
2346
2347pub type GtkCellAreaContextPrivate = _GtkCellAreaContextPrivate;
2348
2349#[derive(Copy, Clone)]
2350#[repr(C)]
2351pub struct GtkCellEditableIface {
2352    pub g_iface: gobject::GTypeInterface,
2353    pub editing_done: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2354    pub remove_widget: Option<unsafe extern "C" fn(*mut GtkCellEditable)>,
2355    pub start_editing: Option<unsafe extern "C" fn(*mut GtkCellEditable, *mut gdk::GdkEvent)>,
2356}
2357
2358impl ::std::fmt::Debug for GtkCellEditableIface {
2359    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2360        f.debug_struct(&format!("GtkCellEditableIface @ {self:p}"))
2361            .field("editing_done", &self.editing_done)
2362            .field("remove_widget", &self.remove_widget)
2363            .field("start_editing", &self.start_editing)
2364            .finish()
2365    }
2366}
2367
2368#[derive(Copy, Clone)]
2369#[repr(C)]
2370pub struct GtkCellLayoutIface {
2371    pub g_iface: gobject::GTypeInterface,
2372    pub pack_start:
2373        Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2374    pub pack_end: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, gboolean)>,
2375    pub clear: Option<unsafe extern "C" fn(*mut GtkCellLayout)>,
2376    pub add_attribute: Option<
2377        unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, *const c_char, c_int),
2378    >,
2379    pub set_cell_data_func: Option<
2380        unsafe extern "C" fn(
2381            *mut GtkCellLayout,
2382            *mut GtkCellRenderer,
2383            GtkCellLayoutDataFunc,
2384            gpointer,
2385            glib::GDestroyNotify,
2386        ),
2387    >,
2388    pub clear_attributes: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer)>,
2389    pub reorder: Option<unsafe extern "C" fn(*mut GtkCellLayout, *mut GtkCellRenderer, c_int)>,
2390    pub get_cells: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut glib::GList>,
2391    pub get_area: Option<unsafe extern "C" fn(*mut GtkCellLayout) -> *mut GtkCellArea>,
2392}
2393
2394impl ::std::fmt::Debug for GtkCellLayoutIface {
2395    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2396        f.debug_struct(&format!("GtkCellLayoutIface @ {self:p}"))
2397            .field("pack_start", &self.pack_start)
2398            .field("pack_end", &self.pack_end)
2399            .field("clear", &self.clear)
2400            .field("add_attribute", &self.add_attribute)
2401            .field("set_cell_data_func", &self.set_cell_data_func)
2402            .field("clear_attributes", &self.clear_attributes)
2403            .field("reorder", &self.reorder)
2404            .field("get_cells", &self.get_cells)
2405            .field("get_area", &self.get_area)
2406            .finish()
2407    }
2408}
2409
2410#[derive(Copy, Clone)]
2411#[repr(C)]
2412pub struct GtkCellRendererClass {
2413    pub parent_class: gobject::GInitiallyUnownedClass,
2414    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkCellRenderer) -> GtkSizeRequestMode>,
2415    pub get_preferred_width:
2416        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2417    pub get_preferred_height_for_width: Option<
2418        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2419    >,
2420    pub get_preferred_height:
2421        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, *mut c_int, *mut c_int)>,
2422    pub get_preferred_width_for_height: Option<
2423        unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkWidget, c_int, *mut c_int, *mut c_int),
2424    >,
2425    pub get_aligned_area: Option<
2426        unsafe extern "C" fn(
2427            *mut GtkCellRenderer,
2428            *mut GtkWidget,
2429            GtkCellRendererState,
2430            *const gdk::GdkRectangle,
2431            *mut gdk::GdkRectangle,
2432        ),
2433    >,
2434    pub snapshot: Option<
2435        unsafe extern "C" fn(
2436            *mut GtkCellRenderer,
2437            *mut GtkSnapshot,
2438            *mut GtkWidget,
2439            *const gdk::GdkRectangle,
2440            *const gdk::GdkRectangle,
2441            GtkCellRendererState,
2442        ),
2443    >,
2444    pub activate: Option<
2445        unsafe extern "C" fn(
2446            *mut GtkCellRenderer,
2447            *mut gdk::GdkEvent,
2448            *mut GtkWidget,
2449            *const c_char,
2450            *const gdk::GdkRectangle,
2451            *const gdk::GdkRectangle,
2452            GtkCellRendererState,
2453        ) -> gboolean,
2454    >,
2455    pub start_editing: Option<
2456        unsafe extern "C" fn(
2457            *mut GtkCellRenderer,
2458            *mut gdk::GdkEvent,
2459            *mut GtkWidget,
2460            *const c_char,
2461            *const gdk::GdkRectangle,
2462            *const gdk::GdkRectangle,
2463            GtkCellRendererState,
2464        ) -> *mut GtkCellEditable,
2465    >,
2466    pub editing_canceled: Option<unsafe extern "C" fn(*mut GtkCellRenderer)>,
2467    pub editing_started:
2468        Option<unsafe extern "C" fn(*mut GtkCellRenderer, *mut GtkCellEditable, *const c_char)>,
2469    pub padding: [gpointer; 8],
2470}
2471
2472impl ::std::fmt::Debug for GtkCellRendererClass {
2473    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2474        f.debug_struct(&format!("GtkCellRendererClass @ {self:p}"))
2475            .field("get_request_mode", &self.get_request_mode)
2476            .field("get_preferred_width", &self.get_preferred_width)
2477            .field(
2478                "get_preferred_height_for_width",
2479                &self.get_preferred_height_for_width,
2480            )
2481            .field("get_preferred_height", &self.get_preferred_height)
2482            .field(
2483                "get_preferred_width_for_height",
2484                &self.get_preferred_width_for_height,
2485            )
2486            .field("get_aligned_area", &self.get_aligned_area)
2487            .field("snapshot", &self.snapshot)
2488            .field("activate", &self.activate)
2489            .field("start_editing", &self.start_editing)
2490            .field("editing_canceled", &self.editing_canceled)
2491            .field("editing_started", &self.editing_started)
2492            .finish()
2493    }
2494}
2495
2496#[repr(C)]
2497#[allow(dead_code)]
2498pub struct _GtkCellRendererClassPrivate {
2499    _data: [u8; 0],
2500    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2501}
2502
2503pub type GtkCellRendererClassPrivate = _GtkCellRendererClassPrivate;
2504
2505#[repr(C)]
2506#[allow(dead_code)]
2507pub struct _GtkCellRendererPrivate {
2508    _data: [u8; 0],
2509    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2510}
2511
2512pub type GtkCellRendererPrivate = _GtkCellRendererPrivate;
2513
2514#[derive(Copy, Clone)]
2515#[repr(C)]
2516pub struct GtkCellRendererTextClass {
2517    pub parent_class: GtkCellRendererClass,
2518    pub edited:
2519        Option<unsafe extern "C" fn(*mut GtkCellRendererText, *const c_char, *const c_char)>,
2520    pub padding: [gpointer; 8],
2521}
2522
2523impl ::std::fmt::Debug for GtkCellRendererTextClass {
2524    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2525        f.debug_struct(&format!("GtkCellRendererTextClass @ {self:p}"))
2526            .field("parent_class", &self.parent_class)
2527            .field("edited", &self.edited)
2528            .finish()
2529    }
2530}
2531
2532#[repr(C)]
2533#[allow(dead_code)]
2534pub struct _GtkCenterBoxClass {
2535    _data: [u8; 0],
2536    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2537}
2538
2539pub type GtkCenterBoxClass = _GtkCenterBoxClass;
2540
2541#[derive(Copy, Clone)]
2542#[repr(C)]
2543pub struct GtkCenterLayoutClass {
2544    pub parent_class: GtkLayoutManagerClass,
2545}
2546
2547impl ::std::fmt::Debug for GtkCenterLayoutClass {
2548    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2549        f.debug_struct(&format!("GtkCenterLayoutClass @ {self:p}"))
2550            .field("parent_class", &self.parent_class)
2551            .finish()
2552    }
2553}
2554
2555#[derive(Copy, Clone)]
2556#[repr(C)]
2557pub struct GtkCheckButtonClass {
2558    pub parent_class: GtkWidgetClass,
2559    pub toggled: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2560    pub activate: Option<unsafe extern "C" fn(*mut GtkCheckButton)>,
2561    pub padding: [gpointer; 7],
2562}
2563
2564impl ::std::fmt::Debug for GtkCheckButtonClass {
2565    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2566        f.debug_struct(&format!("GtkCheckButtonClass @ {self:p}"))
2567            .field("parent_class", &self.parent_class)
2568            .field("toggled", &self.toggled)
2569            .field("activate", &self.activate)
2570            .finish()
2571    }
2572}
2573
2574#[derive(Copy, Clone)]
2575#[repr(C)]
2576pub struct GtkColorChooserInterface {
2577    pub base_interface: gobject::GTypeInterface,
2578    pub get_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2579    pub set_rgba: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2580    pub add_palette: Option<
2581        unsafe extern "C" fn(*mut GtkColorChooser, GtkOrientation, c_int, c_int, *mut gdk::GdkRGBA),
2582    >,
2583    pub color_activated: Option<unsafe extern "C" fn(*mut GtkColorChooser, *const gdk::GdkRGBA)>,
2584    pub padding: [gpointer; 12],
2585}
2586
2587impl ::std::fmt::Debug for GtkColorChooserInterface {
2588    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2589        f.debug_struct(&format!("GtkColorChooserInterface @ {self:p}"))
2590            .field("base_interface", &self.base_interface)
2591            .field("get_rgba", &self.get_rgba)
2592            .field("set_rgba", &self.set_rgba)
2593            .field("add_palette", &self.add_palette)
2594            .field("color_activated", &self.color_activated)
2595            .finish()
2596    }
2597}
2598
2599#[derive(Copy, Clone)]
2600#[repr(C)]
2601pub struct GtkColorDialogButtonClass {
2602    pub parent_class: GtkWidgetClass,
2603}
2604
2605impl ::std::fmt::Debug for GtkColorDialogButtonClass {
2606    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2607        f.debug_struct(&format!("GtkColorDialogButtonClass @ {self:p}"))
2608            .field("parent_class", &self.parent_class)
2609            .finish()
2610    }
2611}
2612
2613#[derive(Copy, Clone)]
2614#[repr(C)]
2615pub struct GtkColorDialogClass {
2616    pub parent_class: gobject::GObjectClass,
2617}
2618
2619impl ::std::fmt::Debug for GtkColorDialogClass {
2620    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2621        f.debug_struct(&format!("GtkColorDialogClass @ {self:p}"))
2622            .field("parent_class", &self.parent_class)
2623            .finish()
2624    }
2625}
2626
2627#[repr(C)]
2628#[allow(dead_code)]
2629pub struct _GtkColumnViewCellClass {
2630    _data: [u8; 0],
2631    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2632}
2633
2634pub type GtkColumnViewCellClass = _GtkColumnViewCellClass;
2635
2636#[repr(C)]
2637#[allow(dead_code)]
2638pub struct _GtkColumnViewClass {
2639    _data: [u8; 0],
2640    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2641}
2642
2643pub type GtkColumnViewClass = _GtkColumnViewClass;
2644
2645#[repr(C)]
2646#[allow(dead_code)]
2647pub struct _GtkColumnViewColumnClass {
2648    _data: [u8; 0],
2649    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2650}
2651
2652pub type GtkColumnViewColumnClass = _GtkColumnViewColumnClass;
2653
2654#[repr(C)]
2655#[allow(dead_code)]
2656pub struct _GtkColumnViewRowClass {
2657    _data: [u8; 0],
2658    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2659}
2660
2661pub type GtkColumnViewRowClass = _GtkColumnViewRowClass;
2662
2663#[derive(Copy, Clone)]
2664#[repr(C)]
2665pub struct GtkColumnViewSorterClass {
2666    pub parent_class: GtkSorterClass,
2667}
2668
2669impl ::std::fmt::Debug for GtkColumnViewSorterClass {
2670    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2671        f.debug_struct(&format!("GtkColumnViewSorterClass @ {self:p}"))
2672            .field("parent_class", &self.parent_class)
2673            .finish()
2674    }
2675}
2676
2677#[derive(Copy, Clone)]
2678#[repr(C)]
2679pub struct GtkComboBoxClass {
2680    pub parent_class: GtkWidgetClass,
2681    pub changed: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2682    pub format_entry_text:
2683        Option<unsafe extern "C" fn(*mut GtkComboBox, *const c_char) -> *mut c_char>,
2684    pub activate: Option<unsafe extern "C" fn(*mut GtkComboBox)>,
2685    pub padding: [gpointer; 7],
2686}
2687
2688impl ::std::fmt::Debug for GtkComboBoxClass {
2689    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2690        f.debug_struct(&format!("GtkComboBoxClass @ {self:p}"))
2691            .field("parent_class", &self.parent_class)
2692            .field("changed", &self.changed)
2693            .field("format_entry_text", &self.format_entry_text)
2694            .field("activate", &self.activate)
2695            .finish()
2696    }
2697}
2698
2699#[derive(Copy, Clone)]
2700#[repr(C)]
2701pub struct GtkConstraintClass {
2702    pub parent_class: gobject::GObjectClass,
2703}
2704
2705impl ::std::fmt::Debug for GtkConstraintClass {
2706    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2707        f.debug_struct(&format!("GtkConstraintClass @ {self:p}"))
2708            .field("parent_class", &self.parent_class)
2709            .finish()
2710    }
2711}
2712
2713#[derive(Copy, Clone)]
2714#[repr(C)]
2715pub struct GtkConstraintGuideClass {
2716    pub parent_class: gobject::GObjectClass,
2717}
2718
2719impl ::std::fmt::Debug for GtkConstraintGuideClass {
2720    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2721        f.debug_struct(&format!("GtkConstraintGuideClass @ {self:p}"))
2722            .field("parent_class", &self.parent_class)
2723            .finish()
2724    }
2725}
2726
2727#[derive(Copy, Clone)]
2728#[repr(C)]
2729pub struct GtkConstraintLayoutChildClass {
2730    pub parent_class: GtkLayoutChildClass,
2731}
2732
2733impl ::std::fmt::Debug for GtkConstraintLayoutChildClass {
2734    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2735        f.debug_struct(&format!("GtkConstraintLayoutChildClass @ {self:p}"))
2736            .field("parent_class", &self.parent_class)
2737            .finish()
2738    }
2739}
2740
2741#[derive(Copy, Clone)]
2742#[repr(C)]
2743pub struct GtkConstraintLayoutClass {
2744    pub parent_class: GtkLayoutManagerClass,
2745}
2746
2747impl ::std::fmt::Debug for GtkConstraintLayoutClass {
2748    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2749        f.debug_struct(&format!("GtkConstraintLayoutClass @ {self:p}"))
2750            .field("parent_class", &self.parent_class)
2751            .finish()
2752    }
2753}
2754
2755#[repr(C)]
2756#[allow(dead_code)]
2757pub struct _GtkConstraintTargetInterface {
2758    _data: [u8; 0],
2759    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2760}
2761
2762pub type GtkConstraintTargetInterface = _GtkConstraintTargetInterface;
2763
2764#[derive(Copy, Clone)]
2765#[repr(C)]
2766pub struct GtkCssLocation {
2767    pub bytes: size_t,
2768    pub chars: size_t,
2769    pub lines: size_t,
2770    pub line_bytes: size_t,
2771    pub line_chars: size_t,
2772}
2773
2774impl ::std::fmt::Debug for GtkCssLocation {
2775    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2776        f.debug_struct(&format!("GtkCssLocation @ {self:p}"))
2777            .field("bytes", &self.bytes)
2778            .field("chars", &self.chars)
2779            .field("lines", &self.lines)
2780            .field("line_bytes", &self.line_bytes)
2781            .field("line_chars", &self.line_chars)
2782            .finish()
2783    }
2784}
2785
2786#[repr(C)]
2787#[allow(dead_code)]
2788pub struct _GtkCssProviderClass {
2789    _data: [u8; 0],
2790    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2791}
2792
2793pub type GtkCssProviderClass = _GtkCssProviderClass;
2794
2795#[repr(C)]
2796#[allow(dead_code)]
2797pub struct _GtkCssProviderPrivate {
2798    _data: [u8; 0],
2799    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2800}
2801
2802pub type GtkCssProviderPrivate = _GtkCssProviderPrivate;
2803
2804#[repr(C)]
2805#[allow(dead_code)]
2806pub struct GtkCssSection {
2807    _data: [u8; 0],
2808    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2809}
2810
2811impl ::std::fmt::Debug for GtkCssSection {
2812    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2813        f.debug_struct(&format!("GtkCssSection @ {self:p}"))
2814            .finish()
2815    }
2816}
2817
2818#[repr(C)]
2819#[allow(dead_code)]
2820pub struct _GtkCssStyleChange {
2821    _data: [u8; 0],
2822    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2823}
2824
2825pub type GtkCssStyleChange = _GtkCssStyleChange;
2826
2827#[derive(Copy, Clone)]
2828#[repr(C)]
2829pub struct GtkCustomFilterClass {
2830    pub parent_class: GtkFilterClass,
2831}
2832
2833impl ::std::fmt::Debug for GtkCustomFilterClass {
2834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2835        f.debug_struct(&format!("GtkCustomFilterClass @ {self:p}"))
2836            .field("parent_class", &self.parent_class)
2837            .finish()
2838    }
2839}
2840
2841#[derive(Copy, Clone)]
2842#[repr(C)]
2843pub struct GtkCustomLayoutClass {
2844    pub parent_class: GtkLayoutManagerClass,
2845}
2846
2847impl ::std::fmt::Debug for GtkCustomLayoutClass {
2848    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2849        f.debug_struct(&format!("GtkCustomLayoutClass @ {self:p}"))
2850            .field("parent_class", &self.parent_class)
2851            .finish()
2852    }
2853}
2854
2855#[derive(Copy, Clone)]
2856#[repr(C)]
2857pub struct GtkCustomSorterClass {
2858    pub parent_class: GtkSorterClass,
2859}
2860
2861impl ::std::fmt::Debug for GtkCustomSorterClass {
2862    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2863        f.debug_struct(&format!("GtkCustomSorterClass @ {self:p}"))
2864            .field("parent_class", &self.parent_class)
2865            .finish()
2866    }
2867}
2868
2869#[derive(Copy, Clone)]
2870#[repr(C)]
2871pub struct GtkDialogClass {
2872    pub parent_class: GtkWindowClass,
2873    pub response: Option<unsafe extern "C" fn(*mut GtkDialog, GtkResponseType)>,
2874    pub close: Option<unsafe extern "C" fn(*mut GtkDialog)>,
2875    pub padding: [gpointer; 8],
2876}
2877
2878impl ::std::fmt::Debug for GtkDialogClass {
2879    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2880        f.debug_struct(&format!("GtkDialogClass @ {self:p}"))
2881            .field("parent_class", &self.parent_class)
2882            .field("response", &self.response)
2883            .field("close", &self.close)
2884            .finish()
2885    }
2886}
2887
2888#[derive(Copy, Clone)]
2889#[repr(C)]
2890pub struct GtkDirectoryListClass {
2891    pub parent_class: gobject::GObjectClass,
2892}
2893
2894impl ::std::fmt::Debug for GtkDirectoryListClass {
2895    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2896        f.debug_struct(&format!("GtkDirectoryListClass @ {self:p}"))
2897            .field("parent_class", &self.parent_class)
2898            .finish()
2899    }
2900}
2901
2902#[derive(Copy, Clone)]
2903#[repr(C)]
2904pub struct GtkDragIconClass {
2905    pub parent_class: GtkWidgetClass,
2906}
2907
2908impl ::std::fmt::Debug for GtkDragIconClass {
2909    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2910        f.debug_struct(&format!("GtkDragIconClass @ {self:p}"))
2911            .field("parent_class", &self.parent_class)
2912            .finish()
2913    }
2914}
2915
2916#[repr(C)]
2917#[allow(dead_code)]
2918pub struct _GtkDragSourceClass {
2919    _data: [u8; 0],
2920    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2921}
2922
2923pub type GtkDragSourceClass = _GtkDragSourceClass;
2924
2925#[derive(Copy, Clone)]
2926#[repr(C)]
2927pub struct GtkDrawingAreaClass {
2928    pub parent_class: GtkWidgetClass,
2929    pub resize: Option<unsafe extern "C" fn(*mut GtkDrawingArea, c_int, c_int)>,
2930    pub padding: [gpointer; 8],
2931}
2932
2933impl ::std::fmt::Debug for GtkDrawingAreaClass {
2934    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2935        f.debug_struct(&format!("GtkDrawingAreaClass @ {self:p}"))
2936            .field("parent_class", &self.parent_class)
2937            .field("resize", &self.resize)
2938            .finish()
2939    }
2940}
2941
2942#[repr(C)]
2943#[allow(dead_code)]
2944pub struct _GtkDropControllerMotionClass {
2945    _data: [u8; 0],
2946    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2947}
2948
2949pub type GtkDropControllerMotionClass = _GtkDropControllerMotionClass;
2950
2951#[derive(Copy, Clone)]
2952#[repr(C)]
2953pub struct GtkDropDownClass {
2954    pub parent_class: GtkWidgetClass,
2955}
2956
2957impl ::std::fmt::Debug for GtkDropDownClass {
2958    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
2959        f.debug_struct(&format!("GtkDropDownClass @ {self:p}"))
2960            .field("parent_class", &self.parent_class)
2961            .finish()
2962    }
2963}
2964
2965#[repr(C)]
2966#[allow(dead_code)]
2967pub struct _GtkDropTargetAsyncClass {
2968    _data: [u8; 0],
2969    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2970}
2971
2972pub type GtkDropTargetAsyncClass = _GtkDropTargetAsyncClass;
2973
2974#[repr(C)]
2975#[allow(dead_code)]
2976pub struct _GtkDropTargetClass {
2977    _data: [u8; 0],
2978    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
2979}
2980
2981pub type GtkDropTargetClass = _GtkDropTargetClass;
2982
2983#[derive(Copy, Clone)]
2984#[repr(C)]
2985pub struct GtkEditableInterface {
2986    pub base_iface: gobject::GTypeInterface,
2987    pub insert_text:
2988        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2989    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2990    pub changed: Option<unsafe extern "C" fn(*mut GtkEditable)>,
2991    pub get_text: Option<unsafe extern "C" fn(*mut GtkEditable) -> *const c_char>,
2992    pub do_insert_text:
2993        Option<unsafe extern "C" fn(*mut GtkEditable, *const c_char, c_int, *mut c_int)>,
2994    pub do_delete_text: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2995    pub get_selection_bounds:
2996        Option<unsafe extern "C" fn(*mut GtkEditable, *mut c_int, *mut c_int) -> gboolean>,
2997    pub set_selection_bounds: Option<unsafe extern "C" fn(*mut GtkEditable, c_int, c_int)>,
2998    pub get_delegate: Option<unsafe extern "C" fn(*mut GtkEditable) -> *mut GtkEditable>,
2999}
3000
3001impl ::std::fmt::Debug for GtkEditableInterface {
3002    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3003        f.debug_struct(&format!("GtkEditableInterface @ {self:p}"))
3004            .field("base_iface", &self.base_iface)
3005            .field("insert_text", &self.insert_text)
3006            .field("delete_text", &self.delete_text)
3007            .field("changed", &self.changed)
3008            .field("get_text", &self.get_text)
3009            .field("do_insert_text", &self.do_insert_text)
3010            .field("do_delete_text", &self.do_delete_text)
3011            .field("get_selection_bounds", &self.get_selection_bounds)
3012            .field("set_selection_bounds", &self.set_selection_bounds)
3013            .field("get_delegate", &self.get_delegate)
3014            .finish()
3015    }
3016}
3017
3018#[derive(Copy, Clone)]
3019#[repr(C)]
3020pub struct GtkEditableLabelClass {
3021    pub parent_class: GtkWidgetClass,
3022}
3023
3024impl ::std::fmt::Debug for GtkEditableLabelClass {
3025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3026        f.debug_struct(&format!("GtkEditableLabelClass @ {self:p}"))
3027            .field("parent_class", &self.parent_class)
3028            .finish()
3029    }
3030}
3031
3032#[repr(C)]
3033#[allow(dead_code)]
3034pub struct _GtkEmojiChooserClass {
3035    _data: [u8; 0],
3036    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3037}
3038
3039pub type GtkEmojiChooserClass = _GtkEmojiChooserClass;
3040
3041#[derive(Copy, Clone)]
3042#[repr(C)]
3043pub struct GtkEntryBufferClass {
3044    pub parent_class: gobject::GObjectClass,
3045    pub inserted_text:
3046        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint)>,
3047    pub deleted_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint)>,
3048    pub get_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, *mut size_t) -> *const c_char>,
3049    pub get_length: Option<unsafe extern "C" fn(*mut GtkEntryBuffer) -> c_uint>,
3050    pub insert_text:
3051        Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, *const c_char, c_uint) -> c_uint>,
3052    pub delete_text: Option<unsafe extern "C" fn(*mut GtkEntryBuffer, c_uint, c_uint) -> c_uint>,
3053    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3054    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3055    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3056    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3057    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3058    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3059    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3060    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3061}
3062
3063impl ::std::fmt::Debug for GtkEntryBufferClass {
3064    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3065        f.debug_struct(&format!("GtkEntryBufferClass @ {self:p}"))
3066            .field("parent_class", &self.parent_class)
3067            .field("inserted_text", &self.inserted_text)
3068            .field("deleted_text", &self.deleted_text)
3069            .field("get_text", &self.get_text)
3070            .field("get_length", &self.get_length)
3071            .field("insert_text", &self.insert_text)
3072            .field("delete_text", &self.delete_text)
3073            .field("_gtk_reserved1", &self._gtk_reserved1)
3074            .field("_gtk_reserved2", &self._gtk_reserved2)
3075            .field("_gtk_reserved3", &self._gtk_reserved3)
3076            .field("_gtk_reserved4", &self._gtk_reserved4)
3077            .field("_gtk_reserved5", &self._gtk_reserved5)
3078            .field("_gtk_reserved6", &self._gtk_reserved6)
3079            .field("_gtk_reserved7", &self._gtk_reserved7)
3080            .field("_gtk_reserved8", &self._gtk_reserved8)
3081            .finish()
3082    }
3083}
3084
3085#[derive(Copy, Clone)]
3086#[repr(C)]
3087pub struct GtkEntryClass {
3088    pub parent_class: GtkWidgetClass,
3089    pub activate: Option<unsafe extern "C" fn(*mut GtkEntry)>,
3090    pub padding: [gpointer; 8],
3091}
3092
3093impl ::std::fmt::Debug for GtkEntryClass {
3094    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3095        f.debug_struct(&format!("GtkEntryClass @ {self:p}"))
3096            .field("parent_class", &self.parent_class)
3097            .field("activate", &self.activate)
3098            .finish()
3099    }
3100}
3101
3102#[repr(C)]
3103#[allow(dead_code)]
3104pub struct _GtkEventControllerClass {
3105    _data: [u8; 0],
3106    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3107}
3108
3109pub type GtkEventControllerClass = _GtkEventControllerClass;
3110
3111#[repr(C)]
3112#[allow(dead_code)]
3113pub struct _GtkEventControllerFocusClass {
3114    _data: [u8; 0],
3115    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3116}
3117
3118pub type GtkEventControllerFocusClass = _GtkEventControllerFocusClass;
3119
3120#[repr(C)]
3121#[allow(dead_code)]
3122pub struct _GtkEventControllerKeyClass {
3123    _data: [u8; 0],
3124    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3125}
3126
3127pub type GtkEventControllerKeyClass = _GtkEventControllerKeyClass;
3128
3129#[repr(C)]
3130#[allow(dead_code)]
3131pub struct _GtkEventControllerLegacyClass {
3132    _data: [u8; 0],
3133    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3134}
3135
3136pub type GtkEventControllerLegacyClass = _GtkEventControllerLegacyClass;
3137
3138#[repr(C)]
3139#[allow(dead_code)]
3140pub struct _GtkEventControllerMotionClass {
3141    _data: [u8; 0],
3142    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3143}
3144
3145pub type GtkEventControllerMotionClass = _GtkEventControllerMotionClass;
3146
3147#[repr(C)]
3148#[allow(dead_code)]
3149pub struct _GtkEventControllerScrollClass {
3150    _data: [u8; 0],
3151    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3152}
3153
3154pub type GtkEventControllerScrollClass = _GtkEventControllerScrollClass;
3155
3156#[repr(C)]
3157#[allow(dead_code)]
3158pub struct _GtkEveryFilterClass {
3159    _data: [u8; 0],
3160    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3161}
3162
3163pub type GtkEveryFilterClass = _GtkEveryFilterClass;
3164
3165#[repr(C)]
3166#[allow(dead_code)]
3167pub struct GtkExpressionWatch {
3168    _data: [u8; 0],
3169    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3170}
3171
3172impl ::std::fmt::Debug for GtkExpressionWatch {
3173    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3174        f.debug_struct(&format!("GtkExpressionWatch @ {self:p}"))
3175            .finish()
3176    }
3177}
3178
3179#[derive(Copy, Clone)]
3180#[repr(C)]
3181pub struct GtkFileChooserNativeClass {
3182    pub parent_class: GtkNativeDialogClass,
3183}
3184
3185impl ::std::fmt::Debug for GtkFileChooserNativeClass {
3186    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3187        f.debug_struct(&format!("GtkFileChooserNativeClass @ {self:p}"))
3188            .field("parent_class", &self.parent_class)
3189            .finish()
3190    }
3191}
3192
3193#[derive(Copy, Clone)]
3194#[repr(C)]
3195pub struct GtkFileDialogClass {
3196    pub parent_class: gobject::GObjectClass,
3197}
3198
3199impl ::std::fmt::Debug for GtkFileDialogClass {
3200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3201        f.debug_struct(&format!("GtkFileDialogClass @ {self:p}"))
3202            .field("parent_class", &self.parent_class)
3203            .finish()
3204    }
3205}
3206
3207#[derive(Copy, Clone)]
3208#[repr(C)]
3209pub struct GtkFileLauncherClass {
3210    pub parent_class: gobject::GObjectClass,
3211}
3212
3213impl ::std::fmt::Debug for GtkFileLauncherClass {
3214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3215        f.debug_struct(&format!("GtkFileLauncherClass @ {self:p}"))
3216            .field("parent_class", &self.parent_class)
3217            .finish()
3218    }
3219}
3220
3221#[derive(Copy, Clone)]
3222#[repr(C)]
3223pub struct GtkFilterClass {
3224    pub parent_class: gobject::GObjectClass,
3225    pub match_: Option<unsafe extern "C" fn(*mut GtkFilter, *mut gobject::GObject) -> gboolean>,
3226    pub get_strictness: Option<unsafe extern "C" fn(*mut GtkFilter) -> GtkFilterMatch>,
3227    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3228    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3229    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3230    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3231    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3232    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3233    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3234    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3235}
3236
3237impl ::std::fmt::Debug for GtkFilterClass {
3238    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3239        f.debug_struct(&format!("GtkFilterClass @ {self:p}"))
3240            .field("parent_class", &self.parent_class)
3241            .field("match_", &self.match_)
3242            .field("get_strictness", &self.get_strictness)
3243            .field("_gtk_reserved1", &self._gtk_reserved1)
3244            .field("_gtk_reserved2", &self._gtk_reserved2)
3245            .field("_gtk_reserved3", &self._gtk_reserved3)
3246            .field("_gtk_reserved4", &self._gtk_reserved4)
3247            .field("_gtk_reserved5", &self._gtk_reserved5)
3248            .field("_gtk_reserved6", &self._gtk_reserved6)
3249            .field("_gtk_reserved7", &self._gtk_reserved7)
3250            .field("_gtk_reserved8", &self._gtk_reserved8)
3251            .finish()
3252    }
3253}
3254
3255#[derive(Copy, Clone)]
3256#[repr(C)]
3257pub struct GtkFilterListModelClass {
3258    pub parent_class: gobject::GObjectClass,
3259}
3260
3261impl ::std::fmt::Debug for GtkFilterListModelClass {
3262    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3263        f.debug_struct(&format!("GtkFilterListModelClass @ {self:p}"))
3264            .field("parent_class", &self.parent_class)
3265            .finish()
3266    }
3267}
3268
3269#[derive(Copy, Clone)]
3270#[repr(C)]
3271pub struct GtkFixedClass {
3272    pub parent_class: GtkWidgetClass,
3273    pub padding: [gpointer; 8],
3274}
3275
3276impl ::std::fmt::Debug for GtkFixedClass {
3277    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3278        f.debug_struct(&format!("GtkFixedClass @ {self:p}"))
3279            .field("parent_class", &self.parent_class)
3280            .finish()
3281    }
3282}
3283
3284#[derive(Copy, Clone)]
3285#[repr(C)]
3286pub struct GtkFixedLayoutChildClass {
3287    pub parent_class: GtkLayoutChildClass,
3288}
3289
3290impl ::std::fmt::Debug for GtkFixedLayoutChildClass {
3291    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3292        f.debug_struct(&format!("GtkFixedLayoutChildClass @ {self:p}"))
3293            .field("parent_class", &self.parent_class)
3294            .finish()
3295    }
3296}
3297
3298#[derive(Copy, Clone)]
3299#[repr(C)]
3300pub struct GtkFixedLayoutClass {
3301    pub parent_class: GtkLayoutManagerClass,
3302}
3303
3304impl ::std::fmt::Debug for GtkFixedLayoutClass {
3305    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3306        f.debug_struct(&format!("GtkFixedLayoutClass @ {self:p}"))
3307            .field("parent_class", &self.parent_class)
3308            .finish()
3309    }
3310}
3311
3312#[derive(Copy, Clone)]
3313#[repr(C)]
3314pub struct GtkFlattenListModelClass {
3315    pub parent_class: gobject::GObjectClass,
3316}
3317
3318impl ::std::fmt::Debug for GtkFlattenListModelClass {
3319    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3320        f.debug_struct(&format!("GtkFlattenListModelClass @ {self:p}"))
3321            .field("parent_class", &self.parent_class)
3322            .finish()
3323    }
3324}
3325
3326#[derive(Copy, Clone)]
3327#[repr(C)]
3328pub struct GtkFlowBoxChildClass {
3329    pub parent_class: GtkWidgetClass,
3330    pub activate: Option<unsafe extern "C" fn(*mut GtkFlowBoxChild)>,
3331    pub padding: [gpointer; 8],
3332}
3333
3334impl ::std::fmt::Debug for GtkFlowBoxChildClass {
3335    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3336        f.debug_struct(&format!("GtkFlowBoxChildClass @ {self:p}"))
3337            .field("activate", &self.activate)
3338            .finish()
3339    }
3340}
3341
3342#[derive(Copy, Clone)]
3343#[repr(C)]
3344pub struct GtkFontChooserIface {
3345    pub base_iface: gobject::GTypeInterface,
3346    pub get_font_family:
3347        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFamily>,
3348    pub get_font_face:
3349        Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontFace>,
3350    pub get_font_size: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> c_int>,
3351    pub set_filter_func: Option<
3352        unsafe extern "C" fn(
3353            *mut GtkFontChooser,
3354            GtkFontFilterFunc,
3355            gpointer,
3356            glib::GDestroyNotify,
3357        ),
3358    >,
3359    pub font_activated: Option<unsafe extern "C" fn(*mut GtkFontChooser, *const c_char)>,
3360    pub set_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser, *mut pango::PangoFontMap)>,
3361    pub get_font_map: Option<unsafe extern "C" fn(*mut GtkFontChooser) -> *mut pango::PangoFontMap>,
3362    pub padding: [gpointer; 10],
3363}
3364
3365impl ::std::fmt::Debug for GtkFontChooserIface {
3366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3367        f.debug_struct(&format!("GtkFontChooserIface @ {self:p}"))
3368            .field("base_iface", &self.base_iface)
3369            .field("get_font_family", &self.get_font_family)
3370            .field("get_font_face", &self.get_font_face)
3371            .field("get_font_size", &self.get_font_size)
3372            .field("set_filter_func", &self.set_filter_func)
3373            .field("font_activated", &self.font_activated)
3374            .field("set_font_map", &self.set_font_map)
3375            .field("get_font_map", &self.get_font_map)
3376            .finish()
3377    }
3378}
3379
3380#[derive(Copy, Clone)]
3381#[repr(C)]
3382pub struct GtkFontDialogButtonClass {
3383    pub parent_class: GtkWidgetClass,
3384}
3385
3386impl ::std::fmt::Debug for GtkFontDialogButtonClass {
3387    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3388        f.debug_struct(&format!("GtkFontDialogButtonClass @ {self:p}"))
3389            .field("parent_class", &self.parent_class)
3390            .finish()
3391    }
3392}
3393
3394#[derive(Copy, Clone)]
3395#[repr(C)]
3396pub struct GtkFontDialogClass {
3397    pub parent_class: gobject::GObjectClass,
3398}
3399
3400impl ::std::fmt::Debug for GtkFontDialogClass {
3401    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3402        f.debug_struct(&format!("GtkFontDialogClass @ {self:p}"))
3403            .field("parent_class", &self.parent_class)
3404            .finish()
3405    }
3406}
3407
3408#[derive(Copy, Clone)]
3409#[repr(C)]
3410pub struct GtkFrameClass {
3411    pub parent_class: GtkWidgetClass,
3412    pub compute_child_allocation: Option<unsafe extern "C" fn(*mut GtkFrame, *mut GtkAllocation)>,
3413    pub padding: [gpointer; 8],
3414}
3415
3416impl ::std::fmt::Debug for GtkFrameClass {
3417    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3418        f.debug_struct(&format!("GtkFrameClass @ {self:p}"))
3419            .field("parent_class", &self.parent_class)
3420            .field("compute_child_allocation", &self.compute_child_allocation)
3421            .finish()
3422    }
3423}
3424
3425#[derive(Copy, Clone)]
3426#[repr(C)]
3427pub struct GtkGLAreaClass {
3428    pub parent_class: GtkWidgetClass,
3429    pub render: Option<unsafe extern "C" fn(*mut GtkGLArea, *mut gdk::GdkGLContext) -> gboolean>,
3430    pub resize: Option<unsafe extern "C" fn(*mut GtkGLArea, c_int, c_int)>,
3431    pub create_context: Option<unsafe extern "C" fn(*mut GtkGLArea) -> *mut gdk::GdkGLContext>,
3432    pub _padding: [gpointer; 8],
3433}
3434
3435impl ::std::fmt::Debug for GtkGLAreaClass {
3436    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3437        f.debug_struct(&format!("GtkGLAreaClass @ {self:p}"))
3438            .field("render", &self.render)
3439            .field("resize", &self.resize)
3440            .field("create_context", &self.create_context)
3441            .finish()
3442    }
3443}
3444
3445#[repr(C)]
3446#[allow(dead_code)]
3447pub struct _GtkGestureClass {
3448    _data: [u8; 0],
3449    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3450}
3451
3452pub type GtkGestureClass = _GtkGestureClass;
3453
3454#[repr(C)]
3455#[allow(dead_code)]
3456pub struct _GtkGestureClickClass {
3457    _data: [u8; 0],
3458    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3459}
3460
3461pub type GtkGestureClickClass = _GtkGestureClickClass;
3462
3463#[repr(C)]
3464#[allow(dead_code)]
3465pub struct _GtkGestureDragClass {
3466    _data: [u8; 0],
3467    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3468}
3469
3470pub type GtkGestureDragClass = _GtkGestureDragClass;
3471
3472#[repr(C)]
3473#[allow(dead_code)]
3474pub struct _GtkGestureLongPressClass {
3475    _data: [u8; 0],
3476    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3477}
3478
3479pub type GtkGestureLongPressClass = _GtkGestureLongPressClass;
3480
3481#[repr(C)]
3482#[allow(dead_code)]
3483pub struct _GtkGesturePanClass {
3484    _data: [u8; 0],
3485    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3486}
3487
3488pub type GtkGesturePanClass = _GtkGesturePanClass;
3489
3490#[repr(C)]
3491#[allow(dead_code)]
3492pub struct _GtkGestureRotateClass {
3493    _data: [u8; 0],
3494    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3495}
3496
3497pub type GtkGestureRotateClass = _GtkGestureRotateClass;
3498
3499#[repr(C)]
3500#[allow(dead_code)]
3501pub struct _GtkGestureSingleClass {
3502    _data: [u8; 0],
3503    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3504}
3505
3506pub type GtkGestureSingleClass = _GtkGestureSingleClass;
3507
3508#[repr(C)]
3509#[allow(dead_code)]
3510pub struct _GtkGestureStylusClass {
3511    _data: [u8; 0],
3512    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3513}
3514
3515pub type GtkGestureStylusClass = _GtkGestureStylusClass;
3516
3517#[repr(C)]
3518#[allow(dead_code)]
3519pub struct _GtkGestureSwipeClass {
3520    _data: [u8; 0],
3521    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3522}
3523
3524pub type GtkGestureSwipeClass = _GtkGestureSwipeClass;
3525
3526#[repr(C)]
3527#[allow(dead_code)]
3528pub struct _GtkGestureZoomClass {
3529    _data: [u8; 0],
3530    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3531}
3532
3533pub type GtkGestureZoomClass = _GtkGestureZoomClass;
3534
3535#[derive(Copy, Clone)]
3536#[repr(C)]
3537pub struct GtkGraphicsOffloadClass {
3538    pub parent_class: GtkWidgetClass,
3539}
3540
3541impl ::std::fmt::Debug for GtkGraphicsOffloadClass {
3542    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3543        f.debug_struct(&format!("GtkGraphicsOffloadClass @ {self:p}"))
3544            .field("parent_class", &self.parent_class)
3545            .finish()
3546    }
3547}
3548
3549#[derive(Copy, Clone)]
3550#[repr(C)]
3551pub struct GtkGridClass {
3552    pub parent_class: GtkWidgetClass,
3553    pub padding: [gpointer; 8],
3554}
3555
3556impl ::std::fmt::Debug for GtkGridClass {
3557    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3558        f.debug_struct(&format!("GtkGridClass @ {self:p}"))
3559            .field("parent_class", &self.parent_class)
3560            .finish()
3561    }
3562}
3563
3564#[derive(Copy, Clone)]
3565#[repr(C)]
3566pub struct GtkGridLayoutChildClass {
3567    pub parent_class: GtkLayoutChildClass,
3568}
3569
3570impl ::std::fmt::Debug for GtkGridLayoutChildClass {
3571    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3572        f.debug_struct(&format!("GtkGridLayoutChildClass @ {self:p}"))
3573            .field("parent_class", &self.parent_class)
3574            .finish()
3575    }
3576}
3577
3578#[derive(Copy, Clone)]
3579#[repr(C)]
3580pub struct GtkGridLayoutClass {
3581    pub parent_class: GtkLayoutManagerClass,
3582}
3583
3584impl ::std::fmt::Debug for GtkGridLayoutClass {
3585    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3586        f.debug_struct(&format!("GtkGridLayoutClass @ {self:p}"))
3587            .field("parent_class", &self.parent_class)
3588            .finish()
3589    }
3590}
3591
3592#[repr(C)]
3593#[allow(dead_code)]
3594pub struct _GtkGridViewClass {
3595    _data: [u8; 0],
3596    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3597}
3598
3599pub type GtkGridViewClass = _GtkGridViewClass;
3600
3601#[derive(Copy, Clone)]
3602#[repr(C)]
3603pub struct GtkIMContextClass {
3604    pub parent_class: gobject::GObjectClass,
3605    pub preedit_start: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3606    pub preedit_end: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3607    pub preedit_changed: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3608    pub commit: Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char)>,
3609    pub retrieve_surrounding: Option<unsafe extern "C" fn(*mut GtkIMContext) -> gboolean>,
3610    pub delete_surrounding:
3611        Option<unsafe extern "C" fn(*mut GtkIMContext, c_int, c_int) -> gboolean>,
3612    pub set_client_widget: Option<unsafe extern "C" fn(*mut GtkIMContext, *mut GtkWidget)>,
3613    pub get_preedit_string: Option<
3614        unsafe extern "C" fn(
3615            *mut GtkIMContext,
3616            *mut *mut c_char,
3617            *mut *mut pango::PangoAttrList,
3618            *mut c_int,
3619        ),
3620    >,
3621    pub filter_keypress:
3622        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3623    pub focus_in: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3624    pub focus_out: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3625    pub reset: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3626    pub set_cursor_location:
3627        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkRectangle)>,
3628    pub set_use_preedit: Option<unsafe extern "C" fn(*mut GtkIMContext, gboolean)>,
3629    pub set_surrounding:
3630        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int)>,
3631    pub get_surrounding:
3632        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut *mut c_char, *mut c_int) -> gboolean>,
3633    pub set_surrounding_with_selection:
3634        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char, c_int, c_int, c_int)>,
3635    pub get_surrounding_with_selection: Option<
3636        unsafe extern "C" fn(
3637            *mut GtkIMContext,
3638            *mut *mut c_char,
3639            *mut c_int,
3640            *mut c_int,
3641        ) -> gboolean,
3642    >,
3643    pub activate_osk: Option<unsafe extern "C" fn(*mut GtkIMContext)>,
3644    pub activate_osk_with_event:
3645        Option<unsafe extern "C" fn(*mut GtkIMContext, *mut gdk::GdkEvent) -> gboolean>,
3646    pub invalid_composition:
3647        Option<unsafe extern "C" fn(*mut GtkIMContext, *const c_char) -> gboolean>,
3648    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3649    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3650}
3651
3652impl ::std::fmt::Debug for GtkIMContextClass {
3653    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3654        f.debug_struct(&format!("GtkIMContextClass @ {self:p}"))
3655            .field("preedit_start", &self.preedit_start)
3656            .field("preedit_end", &self.preedit_end)
3657            .field("preedit_changed", &self.preedit_changed)
3658            .field("commit", &self.commit)
3659            .field("retrieve_surrounding", &self.retrieve_surrounding)
3660            .field("delete_surrounding", &self.delete_surrounding)
3661            .field("set_client_widget", &self.set_client_widget)
3662            .field("get_preedit_string", &self.get_preedit_string)
3663            .field("filter_keypress", &self.filter_keypress)
3664            .field("focus_in", &self.focus_in)
3665            .field("focus_out", &self.focus_out)
3666            .field("reset", &self.reset)
3667            .field("set_cursor_location", &self.set_cursor_location)
3668            .field("set_use_preedit", &self.set_use_preedit)
3669            .field("set_surrounding", &self.set_surrounding)
3670            .field("get_surrounding", &self.get_surrounding)
3671            .field(
3672                "set_surrounding_with_selection",
3673                &self.set_surrounding_with_selection,
3674            )
3675            .field(
3676                "get_surrounding_with_selection",
3677                &self.get_surrounding_with_selection,
3678            )
3679            .field("activate_osk", &self.activate_osk)
3680            .field("activate_osk_with_event", &self.activate_osk_with_event)
3681            .field("invalid_composition", &self.invalid_composition)
3682            .field("_gtk_reserved3", &self._gtk_reserved3)
3683            .field("_gtk_reserved4", &self._gtk_reserved4)
3684            .finish()
3685    }
3686}
3687
3688#[derive(Copy, Clone)]
3689#[repr(C)]
3690pub struct GtkIMContextSimpleClass {
3691    pub parent_class: GtkIMContextClass,
3692}
3693
3694impl ::std::fmt::Debug for GtkIMContextSimpleClass {
3695    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3696        f.debug_struct(&format!("GtkIMContextSimpleClass @ {self:p}"))
3697            .field("parent_class", &self.parent_class)
3698            .finish()
3699    }
3700}
3701
3702#[repr(C)]
3703#[allow(dead_code)]
3704pub struct _GtkIMContextSimplePrivate {
3705    _data: [u8; 0],
3706    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3707}
3708
3709pub type GtkIMContextSimplePrivate = _GtkIMContextSimplePrivate;
3710
3711#[derive(Copy, Clone)]
3712#[repr(C)]
3713pub struct GtkIMMulticontextClass {
3714    pub parent_class: GtkIMContextClass,
3715    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3716    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3717    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3718    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3719}
3720
3721impl ::std::fmt::Debug for GtkIMMulticontextClass {
3722    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3723        f.debug_struct(&format!("GtkIMMulticontextClass @ {self:p}"))
3724            .field("parent_class", &self.parent_class)
3725            .field("_gtk_reserved1", &self._gtk_reserved1)
3726            .field("_gtk_reserved2", &self._gtk_reserved2)
3727            .field("_gtk_reserved3", &self._gtk_reserved3)
3728            .field("_gtk_reserved4", &self._gtk_reserved4)
3729            .finish()
3730    }
3731}
3732
3733#[repr(C)]
3734#[allow(dead_code)]
3735pub struct _GtkIMMulticontextPrivate {
3736    _data: [u8; 0],
3737    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3738}
3739
3740pub type GtkIMMulticontextPrivate = _GtkIMMulticontextPrivate;
3741
3742#[derive(Copy, Clone)]
3743#[repr(C)]
3744pub struct GtkIconPaintableClass {
3745    pub parent_class: gobject::GObjectClass,
3746}
3747
3748impl ::std::fmt::Debug for GtkIconPaintableClass {
3749    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3750        f.debug_struct(&format!("GtkIconPaintableClass @ {self:p}"))
3751            .field("parent_class", &self.parent_class)
3752            .finish()
3753    }
3754}
3755
3756#[derive(Copy, Clone)]
3757#[repr(C)]
3758pub struct GtkInscriptionClass {
3759    pub parent_class: GtkWidgetClass,
3760}
3761
3762impl ::std::fmt::Debug for GtkInscriptionClass {
3763    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3764        f.debug_struct(&format!("GtkInscriptionClass @ {self:p}"))
3765            .field("parent_class", &self.parent_class)
3766            .finish()
3767    }
3768}
3769
3770#[repr(C)]
3771#[allow(dead_code)]
3772pub struct _GtkKeyvalTriggerClass {
3773    _data: [u8; 0],
3774    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3775}
3776
3777pub type GtkKeyvalTriggerClass = _GtkKeyvalTriggerClass;
3778
3779#[derive(Copy, Clone)]
3780#[repr(C)]
3781pub struct GtkLayoutChildClass {
3782    pub parent_class: gobject::GObjectClass,
3783}
3784
3785impl ::std::fmt::Debug for GtkLayoutChildClass {
3786    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3787        f.debug_struct(&format!("GtkLayoutChildClass @ {self:p}"))
3788            .finish()
3789    }
3790}
3791
3792#[derive(Copy, Clone)]
3793#[repr(C)]
3794pub struct GtkLayoutManagerClass {
3795    pub parent_class: gobject::GObjectClass,
3796    pub get_request_mode:
3797        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget) -> GtkSizeRequestMode>,
3798    pub measure: Option<
3799        unsafe extern "C" fn(
3800            *mut GtkLayoutManager,
3801            *mut GtkWidget,
3802            GtkOrientation,
3803            c_int,
3804            *mut c_int,
3805            *mut c_int,
3806            *mut c_int,
3807            *mut c_int,
3808        ),
3809    >,
3810    pub allocate:
3811        Option<unsafe extern "C" fn(*mut GtkLayoutManager, *mut GtkWidget, c_int, c_int, c_int)>,
3812    pub layout_child_type: GType,
3813    pub create_layout_child: Option<
3814        unsafe extern "C" fn(
3815            *mut GtkLayoutManager,
3816            *mut GtkWidget,
3817            *mut GtkWidget,
3818        ) -> *mut GtkLayoutChild,
3819    >,
3820    pub root: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3821    pub unroot: Option<unsafe extern "C" fn(*mut GtkLayoutManager)>,
3822    pub _padding: [gpointer; 16],
3823}
3824
3825impl ::std::fmt::Debug for GtkLayoutManagerClass {
3826    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3827        f.debug_struct(&format!("GtkLayoutManagerClass @ {self:p}"))
3828            .field("get_request_mode", &self.get_request_mode)
3829            .field("measure", &self.measure)
3830            .field("allocate", &self.allocate)
3831            .field("layout_child_type", &self.layout_child_type)
3832            .field("create_layout_child", &self.create_layout_child)
3833            .field("root", &self.root)
3834            .field("unroot", &self.unroot)
3835            .finish()
3836    }
3837}
3838
3839#[repr(C)]
3840#[allow(dead_code)]
3841pub struct _GtkListBaseClass {
3842    _data: [u8; 0],
3843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3844}
3845
3846pub type GtkListBaseClass = _GtkListBaseClass;
3847
3848#[derive(Copy, Clone)]
3849#[repr(C)]
3850pub struct GtkListBoxRowClass {
3851    pub parent_class: GtkWidgetClass,
3852    pub activate: Option<unsafe extern "C" fn(*mut GtkListBoxRow)>,
3853    pub padding: [gpointer; 8],
3854}
3855
3856impl ::std::fmt::Debug for GtkListBoxRowClass {
3857    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3858        f.debug_struct(&format!("GtkListBoxRowClass @ {self:p}"))
3859            .field("parent_class", &self.parent_class)
3860            .field("activate", &self.activate)
3861            .finish()
3862    }
3863}
3864
3865#[repr(C)]
3866#[allow(dead_code)]
3867pub struct _GtkListHeaderClass {
3868    _data: [u8; 0],
3869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3870}
3871
3872pub type GtkListHeaderClass = _GtkListHeaderClass;
3873
3874#[repr(C)]
3875#[allow(dead_code)]
3876pub struct _GtkListItemClass {
3877    _data: [u8; 0],
3878    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3879}
3880
3881pub type GtkListItemClass = _GtkListItemClass;
3882
3883#[repr(C)]
3884#[allow(dead_code)]
3885pub struct _GtkListItemFactoryClass {
3886    _data: [u8; 0],
3887    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3888}
3889
3890pub type GtkListItemFactoryClass = _GtkListItemFactoryClass;
3891
3892#[derive(Copy, Clone)]
3893#[repr(C)]
3894pub struct GtkListStoreClass {
3895    pub parent_class: gobject::GObjectClass,
3896    pub padding: [gpointer; 8],
3897}
3898
3899impl ::std::fmt::Debug for GtkListStoreClass {
3900    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3901        f.debug_struct(&format!("GtkListStoreClass @ {self:p}"))
3902            .field("parent_class", &self.parent_class)
3903            .finish()
3904    }
3905}
3906
3907#[repr(C)]
3908#[allow(dead_code)]
3909pub struct _GtkListStorePrivate {
3910    _data: [u8; 0],
3911    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3912}
3913
3914pub type GtkListStorePrivate = _GtkListStorePrivate;
3915
3916#[repr(C)]
3917#[allow(dead_code)]
3918pub struct _GtkListViewClass {
3919    _data: [u8; 0],
3920    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
3921}
3922
3923pub type GtkListViewClass = _GtkListViewClass;
3924
3925#[derive(Copy, Clone)]
3926#[repr(C)]
3927pub struct GtkMapListModelClass {
3928    pub parent_class: gobject::GObjectClass,
3929}
3930
3931impl ::std::fmt::Debug for GtkMapListModelClass {
3932    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3933        f.debug_struct(&format!("GtkMapListModelClass @ {self:p}"))
3934            .field("parent_class", &self.parent_class)
3935            .finish()
3936    }
3937}
3938
3939#[derive(Copy, Clone)]
3940#[repr(C)]
3941pub struct GtkMediaControlsClass {
3942    pub parent_class: GtkWidgetClass,
3943}
3944
3945impl ::std::fmt::Debug for GtkMediaControlsClass {
3946    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3947        f.debug_struct(&format!("GtkMediaControlsClass @ {self:p}"))
3948            .field("parent_class", &self.parent_class)
3949            .finish()
3950    }
3951}
3952
3953#[derive(Copy, Clone)]
3954#[repr(C)]
3955pub struct GtkMediaFileClass {
3956    pub parent_class: GtkMediaStreamClass,
3957    pub open: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3958    pub close: Option<unsafe extern "C" fn(*mut GtkMediaFile)>,
3959    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3960    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3961    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3962    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3963}
3964
3965impl ::std::fmt::Debug for GtkMediaFileClass {
3966    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
3967        f.debug_struct(&format!("GtkMediaFileClass @ {self:p}"))
3968            .field("parent_class", &self.parent_class)
3969            .field("open", &self.open)
3970            .field("close", &self.close)
3971            .field("_gtk_reserved1", &self._gtk_reserved1)
3972            .field("_gtk_reserved2", &self._gtk_reserved2)
3973            .field("_gtk_reserved3", &self._gtk_reserved3)
3974            .field("_gtk_reserved4", &self._gtk_reserved4)
3975            .finish()
3976    }
3977}
3978
3979#[derive(Copy, Clone)]
3980#[repr(C)]
3981pub struct GtkMediaStreamClass {
3982    pub parent_class: gobject::GObjectClass,
3983    pub play: Option<unsafe extern "C" fn(*mut GtkMediaStream) -> gboolean>,
3984    pub pause: Option<unsafe extern "C" fn(*mut GtkMediaStream)>,
3985    pub seek: Option<unsafe extern "C" fn(*mut GtkMediaStream, i64)>,
3986    pub update_audio: Option<unsafe extern "C" fn(*mut GtkMediaStream, gboolean, c_double)>,
3987    pub realize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3988    pub unrealize: Option<unsafe extern "C" fn(*mut GtkMediaStream, *mut gdk::GdkSurface)>,
3989    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
3990    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
3991    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
3992    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
3993    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
3994    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
3995    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
3996    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
3997}
3998
3999impl ::std::fmt::Debug for GtkMediaStreamClass {
4000    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4001        f.debug_struct(&format!("GtkMediaStreamClass @ {self:p}"))
4002            .field("parent_class", &self.parent_class)
4003            .field("play", &self.play)
4004            .field("pause", &self.pause)
4005            .field("seek", &self.seek)
4006            .field("update_audio", &self.update_audio)
4007            .field("realize", &self.realize)
4008            .field("unrealize", &self.unrealize)
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            .field("_gtk_reserved5", &self._gtk_reserved5)
4014            .field("_gtk_reserved6", &self._gtk_reserved6)
4015            .field("_gtk_reserved7", &self._gtk_reserved7)
4016            .field("_gtk_reserved8", &self._gtk_reserved8)
4017            .finish()
4018    }
4019}
4020
4021#[repr(C)]
4022#[allow(dead_code)]
4023pub struct _GtkMessageDialogClass {
4024    _data: [u8; 0],
4025    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4026}
4027
4028pub type GtkMessageDialogClass = _GtkMessageDialogClass;
4029
4030#[repr(C)]
4031#[allow(dead_code)]
4032pub struct _GtkMnemonicActionClass {
4033    _data: [u8; 0],
4034    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4035}
4036
4037pub type GtkMnemonicActionClass = _GtkMnemonicActionClass;
4038
4039#[repr(C)]
4040#[allow(dead_code)]
4041pub struct _GtkMnemonicTriggerClass {
4042    _data: [u8; 0],
4043    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4044}
4045
4046pub type GtkMnemonicTriggerClass = _GtkMnemonicTriggerClass;
4047
4048#[derive(Copy, Clone)]
4049#[repr(C)]
4050pub struct GtkMountOperationClass {
4051    pub parent_class: gio::GMountOperationClass,
4052    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4053    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4054    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4055    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4056}
4057
4058impl ::std::fmt::Debug for GtkMountOperationClass {
4059    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4060        f.debug_struct(&format!("GtkMountOperationClass @ {self:p}"))
4061            .field("parent_class", &self.parent_class)
4062            .field("_gtk_reserved1", &self._gtk_reserved1)
4063            .field("_gtk_reserved2", &self._gtk_reserved2)
4064            .field("_gtk_reserved3", &self._gtk_reserved3)
4065            .field("_gtk_reserved4", &self._gtk_reserved4)
4066            .finish()
4067    }
4068}
4069
4070#[repr(C)]
4071#[allow(dead_code)]
4072pub struct _GtkMountOperationPrivate {
4073    _data: [u8; 0],
4074    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4075}
4076
4077pub type GtkMountOperationPrivate = _GtkMountOperationPrivate;
4078
4079#[repr(C)]
4080#[allow(dead_code)]
4081pub struct _GtkMultiFilterClass {
4082    _data: [u8; 0],
4083    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4084}
4085
4086pub type GtkMultiFilterClass = _GtkMultiFilterClass;
4087
4088#[derive(Copy, Clone)]
4089#[repr(C)]
4090pub struct GtkMultiSelectionClass {
4091    pub parent_class: gobject::GObjectClass,
4092}
4093
4094impl ::std::fmt::Debug for GtkMultiSelectionClass {
4095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4096        f.debug_struct(&format!("GtkMultiSelectionClass @ {self:p}"))
4097            .field("parent_class", &self.parent_class)
4098            .finish()
4099    }
4100}
4101
4102#[derive(Copy, Clone)]
4103#[repr(C)]
4104pub struct GtkMultiSorterClass {
4105    pub parent_class: GtkSorterClass,
4106}
4107
4108impl ::std::fmt::Debug for GtkMultiSorterClass {
4109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4110        f.debug_struct(&format!("GtkMultiSorterClass @ {self:p}"))
4111            .field("parent_class", &self.parent_class)
4112            .finish()
4113    }
4114}
4115
4116#[repr(C)]
4117#[allow(dead_code)]
4118pub struct _GtkNamedActionClass {
4119    _data: [u8; 0],
4120    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4121}
4122
4123pub type GtkNamedActionClass = _GtkNamedActionClass;
4124
4125#[derive(Copy, Clone)]
4126#[repr(C)]
4127pub struct GtkNativeDialogClass {
4128    pub parent_class: gobject::GObjectClass,
4129    pub response: Option<unsafe extern "C" fn(*mut GtkNativeDialog, GtkResponseType)>,
4130    pub show: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4131    pub hide: Option<unsafe extern "C" fn(*mut GtkNativeDialog)>,
4132    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4133    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4134    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4135    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4136}
4137
4138impl ::std::fmt::Debug for GtkNativeDialogClass {
4139    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4140        f.debug_struct(&format!("GtkNativeDialogClass @ {self:p}"))
4141            .field("response", &self.response)
4142            .field("show", &self.show)
4143            .field("hide", &self.hide)
4144            .field("_gtk_reserved1", &self._gtk_reserved1)
4145            .field("_gtk_reserved2", &self._gtk_reserved2)
4146            .field("_gtk_reserved3", &self._gtk_reserved3)
4147            .field("_gtk_reserved4", &self._gtk_reserved4)
4148            .finish()
4149    }
4150}
4151
4152#[repr(C)]
4153#[allow(dead_code)]
4154pub struct _GtkNativeInterface {
4155    _data: [u8; 0],
4156    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4157}
4158
4159pub type GtkNativeInterface = _GtkNativeInterface;
4160
4161#[repr(C)]
4162#[allow(dead_code)]
4163pub struct _GtkNeverTriggerClass {
4164    _data: [u8; 0],
4165    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4166}
4167
4168pub type GtkNeverTriggerClass = _GtkNeverTriggerClass;
4169
4170#[derive(Copy, Clone)]
4171#[repr(C)]
4172pub struct GtkNoSelectionClass {
4173    pub parent_class: gobject::GObjectClass,
4174}
4175
4176impl ::std::fmt::Debug for GtkNoSelectionClass {
4177    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4178        f.debug_struct(&format!("GtkNoSelectionClass @ {self:p}"))
4179            .field("parent_class", &self.parent_class)
4180            .finish()
4181    }
4182}
4183
4184#[repr(C)]
4185#[allow(dead_code)]
4186pub struct _GtkNothingActionClass {
4187    _data: [u8; 0],
4188    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4189}
4190
4191pub type GtkNothingActionClass = _GtkNothingActionClass;
4192
4193#[derive(Copy, Clone)]
4194#[repr(C)]
4195pub struct GtkNumericSorterClass {
4196    pub parent_class: GtkSorterClass,
4197}
4198
4199impl ::std::fmt::Debug for GtkNumericSorterClass {
4200    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4201        f.debug_struct(&format!("GtkNumericSorterClass @ {self:p}"))
4202            .field("parent_class", &self.parent_class)
4203            .finish()
4204    }
4205}
4206
4207#[derive(Copy, Clone)]
4208#[repr(C)]
4209pub struct GtkOrientableIface {
4210    pub base_iface: gobject::GTypeInterface,
4211}
4212
4213impl ::std::fmt::Debug for GtkOrientableIface {
4214    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4215        f.debug_struct(&format!("GtkOrientableIface @ {self:p}"))
4216            .field("base_iface", &self.base_iface)
4217            .finish()
4218    }
4219}
4220
4221#[derive(Copy, Clone)]
4222#[repr(C)]
4223pub struct GtkOverlayLayoutChildClass {
4224    pub parent_class: GtkLayoutChildClass,
4225}
4226
4227impl ::std::fmt::Debug for GtkOverlayLayoutChildClass {
4228    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4229        f.debug_struct(&format!("GtkOverlayLayoutChildClass @ {self:p}"))
4230            .field("parent_class", &self.parent_class)
4231            .finish()
4232    }
4233}
4234
4235#[derive(Copy, Clone)]
4236#[repr(C)]
4237pub struct GtkOverlayLayoutClass {
4238    pub parent_class: GtkLayoutManagerClass,
4239}
4240
4241impl ::std::fmt::Debug for GtkOverlayLayoutClass {
4242    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4243        f.debug_struct(&format!("GtkOverlayLayoutClass @ {self:p}"))
4244            .field("parent_class", &self.parent_class)
4245            .finish()
4246    }
4247}
4248
4249#[derive(Copy, Clone)]
4250#[repr(C)]
4251pub struct GtkPadActionEntry {
4252    pub type_: GtkPadActionType,
4253    pub index: c_int,
4254    pub mode: c_int,
4255    pub label: *const c_char,
4256    pub action_name: *const c_char,
4257}
4258
4259impl ::std::fmt::Debug for GtkPadActionEntry {
4260    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4261        f.debug_struct(&format!("GtkPadActionEntry @ {self:p}"))
4262            .field("type_", &self.type_)
4263            .field("index", &self.index)
4264            .field("mode", &self.mode)
4265            .field("label", &self.label)
4266            .field("action_name", &self.action_name)
4267            .finish()
4268    }
4269}
4270
4271#[repr(C)]
4272#[allow(dead_code)]
4273pub struct _GtkPadControllerClass {
4274    _data: [u8; 0],
4275    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4276}
4277
4278pub type GtkPadControllerClass = _GtkPadControllerClass;
4279
4280#[derive(Copy, Clone)]
4281#[repr(C)]
4282pub struct GtkPageRange {
4283    pub start: c_int,
4284    pub end: c_int,
4285}
4286
4287impl ::std::fmt::Debug for GtkPageRange {
4288    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4289        f.debug_struct(&format!("GtkPageRange @ {self:p}"))
4290            .field("start", &self.start)
4291            .field("end", &self.end)
4292            .finish()
4293    }
4294}
4295
4296#[repr(C)]
4297#[allow(dead_code)]
4298pub struct GtkPaperSize {
4299    _data: [u8; 0],
4300    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4301}
4302
4303impl ::std::fmt::Debug for GtkPaperSize {
4304    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4305        f.debug_struct(&format!("GtkPaperSize @ {self:p}")).finish()
4306    }
4307}
4308
4309#[derive(Copy, Clone)]
4310#[repr(C)]
4311pub struct GtkPasswordEntryBufferClass {
4312    pub parent_class: GtkEntryBufferClass,
4313}
4314
4315impl ::std::fmt::Debug for GtkPasswordEntryBufferClass {
4316    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4317        f.debug_struct(&format!("GtkPasswordEntryBufferClass @ {self:p}"))
4318            .field("parent_class", &self.parent_class)
4319            .finish()
4320    }
4321}
4322
4323#[repr(C)]
4324#[allow(dead_code)]
4325pub struct _GtkPasswordEntryClass {
4326    _data: [u8; 0],
4327    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4328}
4329
4330pub type GtkPasswordEntryClass = _GtkPasswordEntryClass;
4331
4332#[derive(Copy, Clone)]
4333#[repr(C)]
4334pub struct GtkPictureClass {
4335    pub parent_class: GtkWidgetClass,
4336}
4337
4338impl ::std::fmt::Debug for GtkPictureClass {
4339    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4340        f.debug_struct(&format!("GtkPictureClass @ {self:p}"))
4341            .field("parent_class", &self.parent_class)
4342            .finish()
4343    }
4344}
4345
4346#[derive(Copy, Clone)]
4347#[repr(C)]
4348pub struct GtkPopoverBinClass {
4349    pub parent_class: GtkWidgetClass,
4350}
4351
4352impl ::std::fmt::Debug for GtkPopoverBinClass {
4353    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4354        f.debug_struct(&format!("GtkPopoverBinClass @ {self:p}"))
4355            .field("parent_class", &self.parent_class)
4356            .finish()
4357    }
4358}
4359
4360#[derive(Copy, Clone)]
4361#[repr(C)]
4362pub struct GtkPopoverClass {
4363    pub parent_class: GtkWidgetClass,
4364    pub closed: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4365    pub activate_default: Option<unsafe extern "C" fn(*mut GtkPopover)>,
4366    pub reserved: [gpointer; 8],
4367}
4368
4369impl ::std::fmt::Debug for GtkPopoverClass {
4370    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4371        f.debug_struct(&format!("GtkPopoverClass @ {self:p}"))
4372            .field("parent_class", &self.parent_class)
4373            .field("closed", &self.closed)
4374            .field("activate_default", &self.activate_default)
4375            .finish()
4376    }
4377}
4378
4379#[repr(C)]
4380#[allow(dead_code)]
4381pub struct _GtkPrintBackend {
4382    _data: [u8; 0],
4383    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4384}
4385
4386pub type GtkPrintBackend = _GtkPrintBackend;
4387
4388#[derive(Copy, Clone)]
4389#[repr(C)]
4390pub struct GtkPrintDialogClass {
4391    pub parent_class: gobject::GObjectClass,
4392}
4393
4394impl ::std::fmt::Debug for GtkPrintDialogClass {
4395    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4396        f.debug_struct(&format!("GtkPrintDialogClass @ {self:p}"))
4397            .field("parent_class", &self.parent_class)
4398            .finish()
4399    }
4400}
4401
4402#[derive(Copy, Clone)]
4403#[repr(C)]
4404pub struct GtkPrintOperationClass {
4405    pub parent_class: gobject::GObjectClass,
4406    pub done: Option<unsafe extern "C" fn(*mut GtkPrintOperation, GtkPrintOperationResult)>,
4407    pub begin_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4408    pub paginate:
4409        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext) -> gboolean>,
4410    pub request_page_setup: Option<
4411        unsafe extern "C" fn(
4412            *mut GtkPrintOperation,
4413            *mut GtkPrintContext,
4414            c_int,
4415            *mut GtkPageSetup,
4416        ),
4417    >,
4418    pub draw_page:
4419        Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext, c_int)>,
4420    pub end_print: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkPrintContext)>,
4421    pub status_changed: Option<unsafe extern "C" fn(*mut GtkPrintOperation)>,
4422    pub create_custom_widget:
4423        Option<unsafe extern "C" fn(*mut GtkPrintOperation) -> *mut GtkWidget>,
4424    pub custom_widget_apply: Option<unsafe extern "C" fn(*mut GtkPrintOperation, *mut GtkWidget)>,
4425    pub preview: Option<
4426        unsafe extern "C" fn(
4427            *mut GtkPrintOperation,
4428            *mut GtkPrintOperationPreview,
4429            *mut GtkPrintContext,
4430            *mut GtkWindow,
4431        ) -> gboolean,
4432    >,
4433    pub update_custom_widget: Option<
4434        unsafe extern "C" fn(
4435            *mut GtkPrintOperation,
4436            *mut GtkWidget,
4437            *mut GtkPageSetup,
4438            *mut GtkPrintSettings,
4439        ),
4440    >,
4441    pub padding: [gpointer; 8],
4442}
4443
4444impl ::std::fmt::Debug for GtkPrintOperationClass {
4445    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4446        f.debug_struct(&format!("GtkPrintOperationClass @ {self:p}"))
4447            .field("parent_class", &self.parent_class)
4448            .field("done", &self.done)
4449            .field("begin_print", &self.begin_print)
4450            .field("paginate", &self.paginate)
4451            .field("request_page_setup", &self.request_page_setup)
4452            .field("draw_page", &self.draw_page)
4453            .field("end_print", &self.end_print)
4454            .field("status_changed", &self.status_changed)
4455            .field("create_custom_widget", &self.create_custom_widget)
4456            .field("custom_widget_apply", &self.custom_widget_apply)
4457            .field("preview", &self.preview)
4458            .field("update_custom_widget", &self.update_custom_widget)
4459            .finish()
4460    }
4461}
4462
4463#[derive(Copy, Clone)]
4464#[repr(C)]
4465pub struct GtkPrintOperationPreviewIface {
4466    pub g_iface: gobject::GTypeInterface,
4467    pub ready: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, *mut GtkPrintContext)>,
4468    pub got_page_size: Option<
4469        unsafe extern "C" fn(
4470            *mut GtkPrintOperationPreview,
4471            *mut GtkPrintContext,
4472            *mut GtkPageSetup,
4473        ),
4474    >,
4475    pub render_page: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int)>,
4476    pub is_selected: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview, c_int) -> gboolean>,
4477    pub end_preview: Option<unsafe extern "C" fn(*mut GtkPrintOperationPreview)>,
4478    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4479    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4480    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4481    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4482    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4483    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4484    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4485    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4486}
4487
4488impl ::std::fmt::Debug for GtkPrintOperationPreviewIface {
4489    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4490        f.debug_struct(&format!("GtkPrintOperationPreviewIface @ {self:p}"))
4491            .field("g_iface", &self.g_iface)
4492            .field("ready", &self.ready)
4493            .field("got_page_size", &self.got_page_size)
4494            .field("render_page", &self.render_page)
4495            .field("is_selected", &self.is_selected)
4496            .field("end_preview", &self.end_preview)
4497            .field("_gtk_reserved1", &self._gtk_reserved1)
4498            .field("_gtk_reserved2", &self._gtk_reserved2)
4499            .field("_gtk_reserved3", &self._gtk_reserved3)
4500            .field("_gtk_reserved4", &self._gtk_reserved4)
4501            .field("_gtk_reserved5", &self._gtk_reserved5)
4502            .field("_gtk_reserved6", &self._gtk_reserved6)
4503            .field("_gtk_reserved7", &self._gtk_reserved7)
4504            .field("_gtk_reserved8", &self._gtk_reserved8)
4505            .finish()
4506    }
4507}
4508
4509#[repr(C)]
4510#[allow(dead_code)]
4511pub struct _GtkPrintOperationPrivate {
4512    _data: [u8; 0],
4513    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4514}
4515
4516pub type GtkPrintOperationPrivate = _GtkPrintOperationPrivate;
4517
4518#[repr(C)]
4519#[allow(dead_code)]
4520pub struct GtkPrintSetup {
4521    _data: [u8; 0],
4522    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4523}
4524
4525impl ::std::fmt::Debug for GtkPrintSetup {
4526    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4527        f.debug_struct(&format!("GtkPrintSetup @ {self:p}"))
4528            .finish()
4529    }
4530}
4531
4532#[derive(Copy, Clone)]
4533#[repr(C)]
4534pub struct GtkRangeClass {
4535    pub parent_class: GtkWidgetClass,
4536    pub value_changed: Option<unsafe extern "C" fn(*mut GtkRange)>,
4537    pub adjust_bounds: Option<unsafe extern "C" fn(*mut GtkRange, c_double)>,
4538    pub move_slider: Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType)>,
4539    pub get_range_border: Option<unsafe extern "C" fn(*mut GtkRange, *mut GtkBorder)>,
4540    pub change_value:
4541        Option<unsafe extern "C" fn(*mut GtkRange, GtkScrollType, c_double) -> gboolean>,
4542    pub padding: [gpointer; 8],
4543}
4544
4545impl ::std::fmt::Debug for GtkRangeClass {
4546    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4547        f.debug_struct(&format!("GtkRangeClass @ {self:p}"))
4548            .field("parent_class", &self.parent_class)
4549            .field("value_changed", &self.value_changed)
4550            .field("adjust_bounds", &self.adjust_bounds)
4551            .field("move_slider", &self.move_slider)
4552            .field("get_range_border", &self.get_range_border)
4553            .field("change_value", &self.change_value)
4554            .finish()
4555    }
4556}
4557
4558#[derive(Copy, Clone)]
4559#[repr(C)]
4560pub struct GtkRecentData {
4561    pub display_name: *mut c_char,
4562    pub description: *mut c_char,
4563    pub mime_type: *mut c_char,
4564    pub app_name: *mut c_char,
4565    pub app_exec: *mut c_char,
4566    pub groups: *mut *mut c_char,
4567    pub is_private: gboolean,
4568}
4569
4570impl ::std::fmt::Debug for GtkRecentData {
4571    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4572        f.debug_struct(&format!("GtkRecentData @ {self:p}"))
4573            .field("display_name", &self.display_name)
4574            .field("description", &self.description)
4575            .field("mime_type", &self.mime_type)
4576            .field("app_name", &self.app_name)
4577            .field("app_exec", &self.app_exec)
4578            .field("groups", &self.groups)
4579            .field("is_private", &self.is_private)
4580            .finish()
4581    }
4582}
4583
4584#[repr(C)]
4585#[allow(dead_code)]
4586pub struct GtkRecentInfo {
4587    _data: [u8; 0],
4588    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4589}
4590
4591impl ::std::fmt::Debug for GtkRecentInfo {
4592    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4593        f.debug_struct(&format!("GtkRecentInfo @ {self:p}"))
4594            .finish()
4595    }
4596}
4597
4598#[derive(Copy, Clone)]
4599#[repr(C)]
4600pub struct GtkRecentManagerClass {
4601    pub parent_class: gobject::GObjectClass,
4602    pub changed: Option<unsafe extern "C" fn(*mut GtkRecentManager)>,
4603    pub _gtk_recent1: Option<unsafe extern "C" fn()>,
4604    pub _gtk_recent2: Option<unsafe extern "C" fn()>,
4605    pub _gtk_recent3: Option<unsafe extern "C" fn()>,
4606    pub _gtk_recent4: Option<unsafe extern "C" fn()>,
4607}
4608
4609impl ::std::fmt::Debug for GtkRecentManagerClass {
4610    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4611        f.debug_struct(&format!("GtkRecentManagerClass @ {self:p}"))
4612            .field("changed", &self.changed)
4613            .field("_gtk_recent1", &self._gtk_recent1)
4614            .field("_gtk_recent2", &self._gtk_recent2)
4615            .field("_gtk_recent3", &self._gtk_recent3)
4616            .field("_gtk_recent4", &self._gtk_recent4)
4617            .finish()
4618    }
4619}
4620
4621#[repr(C)]
4622#[allow(dead_code)]
4623pub struct _GtkRecentManagerPrivate {
4624    _data: [u8; 0],
4625    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4626}
4627
4628pub type GtkRecentManagerPrivate = _GtkRecentManagerPrivate;
4629
4630#[derive(Copy, Clone)]
4631#[repr(C)]
4632pub struct GtkRequestedSize {
4633    pub data: gpointer,
4634    pub minimum_size: c_int,
4635    pub natural_size: c_int,
4636}
4637
4638impl ::std::fmt::Debug for GtkRequestedSize {
4639    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4640        f.debug_struct(&format!("GtkRequestedSize @ {self:p}"))
4641            .field("data", &self.data)
4642            .field("minimum_size", &self.minimum_size)
4643            .field("natural_size", &self.natural_size)
4644            .finish()
4645    }
4646}
4647
4648#[derive(Copy, Clone)]
4649#[repr(C)]
4650pub struct GtkRequisition {
4651    pub width: c_int,
4652    pub height: c_int,
4653}
4654
4655impl ::std::fmt::Debug for GtkRequisition {
4656    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4657        f.debug_struct(&format!("GtkRequisition @ {self:p}"))
4658            .field("width", &self.width)
4659            .field("height", &self.height)
4660            .finish()
4661    }
4662}
4663
4664#[repr(C)]
4665#[allow(dead_code)]
4666pub struct _GtkRootInterface {
4667    _data: [u8; 0],
4668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4669}
4670
4671pub type GtkRootInterface = _GtkRootInterface;
4672
4673#[derive(Copy, Clone)]
4674#[repr(C)]
4675pub struct GtkScaleButtonClass {
4676    pub parent_class: GtkWidgetClass,
4677    pub value_changed: Option<unsafe extern "C" fn(*mut GtkScaleButton, c_double)>,
4678    pub padding: [gpointer; 8],
4679}
4680
4681impl ::std::fmt::Debug for GtkScaleButtonClass {
4682    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4683        f.debug_struct(&format!("GtkScaleButtonClass @ {self:p}"))
4684            .field("parent_class", &self.parent_class)
4685            .field("value_changed", &self.value_changed)
4686            .finish()
4687    }
4688}
4689
4690#[derive(Copy, Clone)]
4691#[repr(C)]
4692pub struct GtkScaleClass {
4693    pub parent_class: GtkRangeClass,
4694    pub get_layout_offsets: Option<unsafe extern "C" fn(*mut GtkScale, *mut c_int, *mut c_int)>,
4695    pub padding: [gpointer; 8],
4696}
4697
4698impl ::std::fmt::Debug for GtkScaleClass {
4699    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4700        f.debug_struct(&format!("GtkScaleClass @ {self:p}"))
4701            .field("parent_class", &self.parent_class)
4702            .field("get_layout_offsets", &self.get_layout_offsets)
4703            .finish()
4704    }
4705}
4706
4707#[repr(C)]
4708#[allow(dead_code)]
4709pub struct GtkScrollInfo {
4710    _data: [u8; 0],
4711    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4712}
4713
4714impl ::std::fmt::Debug for GtkScrollInfo {
4715    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4716        f.debug_struct(&format!("GtkScrollInfo @ {self:p}"))
4717            .finish()
4718    }
4719}
4720
4721#[derive(Copy, Clone)]
4722#[repr(C)]
4723pub struct GtkScrollableInterface {
4724    pub base_iface: gobject::GTypeInterface,
4725    pub get_border: Option<unsafe extern "C" fn(*mut GtkScrollable, *mut GtkBorder) -> gboolean>,
4726}
4727
4728impl ::std::fmt::Debug for GtkScrollableInterface {
4729    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4730        f.debug_struct(&format!("GtkScrollableInterface @ {self:p}"))
4731            .field("base_iface", &self.base_iface)
4732            .field("get_border", &self.get_border)
4733            .finish()
4734    }
4735}
4736
4737#[derive(Copy, Clone)]
4738#[repr(C)]
4739pub struct GtkSectionModelInterface {
4740    pub g_iface: gobject::GTypeInterface,
4741    pub get_section:
4742        Option<unsafe extern "C" fn(*mut GtkSectionModel, c_uint, *mut c_uint, *mut c_uint)>,
4743}
4744
4745impl ::std::fmt::Debug for GtkSectionModelInterface {
4746    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4747        f.debug_struct(&format!("GtkSectionModelInterface @ {self:p}"))
4748            .field("get_section", &self.get_section)
4749            .finish()
4750    }
4751}
4752
4753#[derive(Copy, Clone)]
4754#[repr(C)]
4755pub struct GtkSelectionFilterModelClass {
4756    pub parent_class: gobject::GObjectClass,
4757}
4758
4759impl ::std::fmt::Debug for GtkSelectionFilterModelClass {
4760    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4761        f.debug_struct(&format!("GtkSelectionFilterModelClass @ {self:p}"))
4762            .field("parent_class", &self.parent_class)
4763            .finish()
4764    }
4765}
4766
4767#[derive(Copy, Clone)]
4768#[repr(C)]
4769pub struct GtkSelectionModelInterface {
4770    pub g_iface: gobject::GTypeInterface,
4771    pub is_selected: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4772    pub get_selection_in_range:
4773        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> *mut GtkBitset>,
4774    pub select_item:
4775        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, gboolean) -> gboolean>,
4776    pub unselect_item: Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint) -> gboolean>,
4777    pub select_range:
4778        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint, gboolean) -> gboolean>,
4779    pub unselect_range:
4780        Option<unsafe extern "C" fn(*mut GtkSelectionModel, c_uint, c_uint) -> gboolean>,
4781    pub select_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4782    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkSelectionModel) -> gboolean>,
4783    pub set_selection: Option<
4784        unsafe extern "C" fn(*mut GtkSelectionModel, *mut GtkBitset, *mut GtkBitset) -> gboolean,
4785    >,
4786}
4787
4788impl ::std::fmt::Debug for GtkSelectionModelInterface {
4789    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4790        f.debug_struct(&format!("GtkSelectionModelInterface @ {self:p}"))
4791            .field("is_selected", &self.is_selected)
4792            .field("get_selection_in_range", &self.get_selection_in_range)
4793            .field("select_item", &self.select_item)
4794            .field("unselect_item", &self.unselect_item)
4795            .field("select_range", &self.select_range)
4796            .field("unselect_range", &self.unselect_range)
4797            .field("select_all", &self.select_all)
4798            .field("unselect_all", &self.unselect_all)
4799            .field("set_selection", &self.set_selection)
4800            .finish()
4801    }
4802}
4803
4804#[repr(C)]
4805#[allow(dead_code)]
4806pub struct _GtkShortcutActionClass {
4807    _data: [u8; 0],
4808    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4809}
4810
4811pub type GtkShortcutActionClass = _GtkShortcutActionClass;
4812
4813#[derive(Copy, Clone)]
4814#[repr(C)]
4815pub struct GtkShortcutClass {
4816    pub parent_class: gobject::GObjectClass,
4817}
4818
4819impl ::std::fmt::Debug for GtkShortcutClass {
4820    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4821        f.debug_struct(&format!("GtkShortcutClass @ {self:p}"))
4822            .field("parent_class", &self.parent_class)
4823            .finish()
4824    }
4825}
4826
4827#[repr(C)]
4828#[allow(dead_code)]
4829pub struct _GtkShortcutControllerClass {
4830    _data: [u8; 0],
4831    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4832}
4833
4834pub type GtkShortcutControllerClass = _GtkShortcutControllerClass;
4835
4836#[repr(C)]
4837#[allow(dead_code)]
4838pub struct _GtkShortcutLabelClass {
4839    _data: [u8; 0],
4840    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4841}
4842
4843pub type GtkShortcutLabelClass = _GtkShortcutLabelClass;
4844
4845#[derive(Copy, Clone)]
4846#[repr(C)]
4847pub struct GtkShortcutManagerInterface {
4848    pub g_iface: gobject::GTypeInterface,
4849    pub add_controller:
4850        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4851    pub remove_controller:
4852        Option<unsafe extern "C" fn(*mut GtkShortcutManager, *mut GtkShortcutController)>,
4853}
4854
4855impl ::std::fmt::Debug for GtkShortcutManagerInterface {
4856    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4857        f.debug_struct(&format!("GtkShortcutManagerInterface @ {self:p}"))
4858            .field("add_controller", &self.add_controller)
4859            .field("remove_controller", &self.remove_controller)
4860            .finish()
4861    }
4862}
4863
4864#[repr(C)]
4865#[allow(dead_code)]
4866pub struct _GtkShortcutTriggerClass {
4867    _data: [u8; 0],
4868    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4869}
4870
4871pub type GtkShortcutTriggerClass = _GtkShortcutTriggerClass;
4872
4873#[repr(C)]
4874#[allow(dead_code)]
4875pub struct _GtkShortcutsGroupClass {
4876    _data: [u8; 0],
4877    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4878}
4879
4880pub type GtkShortcutsGroupClass = _GtkShortcutsGroupClass;
4881
4882#[repr(C)]
4883#[allow(dead_code)]
4884pub struct _GtkShortcutsSectionClass {
4885    _data: [u8; 0],
4886    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4887}
4888
4889pub type GtkShortcutsSectionClass = _GtkShortcutsSectionClass;
4890
4891#[repr(C)]
4892#[allow(dead_code)]
4893pub struct _GtkShortcutsShortcutClass {
4894    _data: [u8; 0],
4895    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4896}
4897
4898pub type GtkShortcutsShortcutClass = _GtkShortcutsShortcutClass;
4899
4900#[repr(C)]
4901#[allow(dead_code)]
4902pub struct _GtkSignalActionClass {
4903    _data: [u8; 0],
4904    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4905}
4906
4907pub type GtkSignalActionClass = _GtkSignalActionClass;
4908
4909#[repr(C)]
4910#[allow(dead_code)]
4911pub struct _GtkSignalListItemFactoryClass {
4912    _data: [u8; 0],
4913    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4914}
4915
4916pub type GtkSignalListItemFactoryClass = _GtkSignalListItemFactoryClass;
4917
4918#[derive(Copy, Clone)]
4919#[repr(C)]
4920pub struct GtkSingleSelectionClass {
4921    pub parent_class: gobject::GObjectClass,
4922}
4923
4924impl ::std::fmt::Debug for GtkSingleSelectionClass {
4925    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4926        f.debug_struct(&format!("GtkSingleSelectionClass @ {self:p}"))
4927            .field("parent_class", &self.parent_class)
4928            .finish()
4929    }
4930}
4931
4932#[derive(Copy, Clone)]
4933#[repr(C)]
4934pub struct GtkSliceListModelClass {
4935    pub parent_class: gobject::GObjectClass,
4936}
4937
4938impl ::std::fmt::Debug for GtkSliceListModelClass {
4939    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4940        f.debug_struct(&format!("GtkSliceListModelClass @ {self:p}"))
4941            .field("parent_class", &self.parent_class)
4942            .finish()
4943    }
4944}
4945
4946#[repr(C)]
4947#[allow(dead_code)]
4948pub struct _GtkSnapshotClass {
4949    _data: [u8; 0],
4950    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
4951}
4952
4953pub type GtkSnapshotClass = _GtkSnapshotClass;
4954
4955#[derive(Copy, Clone)]
4956#[repr(C)]
4957pub struct GtkSortListModelClass {
4958    pub parent_class: gobject::GObjectClass,
4959}
4960
4961impl ::std::fmt::Debug for GtkSortListModelClass {
4962    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4963        f.debug_struct(&format!("GtkSortListModelClass @ {self:p}"))
4964            .field("parent_class", &self.parent_class)
4965            .finish()
4966    }
4967}
4968
4969#[derive(Copy, Clone)]
4970#[repr(C)]
4971pub struct GtkSorterClass {
4972    pub parent_class: gobject::GObjectClass,
4973    pub compare: Option<
4974        unsafe extern "C" fn(
4975            *mut GtkSorter,
4976            *mut gobject::GObject,
4977            *mut gobject::GObject,
4978        ) -> GtkOrdering,
4979    >,
4980    pub get_order: Option<unsafe extern "C" fn(*mut GtkSorter) -> GtkSorterOrder>,
4981    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
4982    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
4983    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
4984    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
4985    pub _gtk_reserved5: Option<unsafe extern "C" fn()>,
4986    pub _gtk_reserved6: Option<unsafe extern "C" fn()>,
4987    pub _gtk_reserved7: Option<unsafe extern "C" fn()>,
4988    pub _gtk_reserved8: Option<unsafe extern "C" fn()>,
4989}
4990
4991impl ::std::fmt::Debug for GtkSorterClass {
4992    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
4993        f.debug_struct(&format!("GtkSorterClass @ {self:p}"))
4994            .field("parent_class", &self.parent_class)
4995            .field("compare", &self.compare)
4996            .field("get_order", &self.get_order)
4997            .field("_gtk_reserved1", &self._gtk_reserved1)
4998            .field("_gtk_reserved2", &self._gtk_reserved2)
4999            .field("_gtk_reserved3", &self._gtk_reserved3)
5000            .field("_gtk_reserved4", &self._gtk_reserved4)
5001            .field("_gtk_reserved5", &self._gtk_reserved5)
5002            .field("_gtk_reserved6", &self._gtk_reserved6)
5003            .field("_gtk_reserved7", &self._gtk_reserved7)
5004            .field("_gtk_reserved8", &self._gtk_reserved8)
5005            .finish()
5006    }
5007}
5008
5009#[derive(Copy, Clone)]
5010#[repr(C)]
5011pub struct GtkStringFilterClass {
5012    pub parent_class: GtkFilterClass,
5013}
5014
5015impl ::std::fmt::Debug for GtkStringFilterClass {
5016    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5017        f.debug_struct(&format!("GtkStringFilterClass @ {self:p}"))
5018            .field("parent_class", &self.parent_class)
5019            .finish()
5020    }
5021}
5022
5023#[derive(Copy, Clone)]
5024#[repr(C)]
5025pub struct GtkStringListClass {
5026    pub parent_class: gobject::GObjectClass,
5027}
5028
5029impl ::std::fmt::Debug for GtkStringListClass {
5030    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5031        f.debug_struct(&format!("GtkStringListClass @ {self:p}"))
5032            .field("parent_class", &self.parent_class)
5033            .finish()
5034    }
5035}
5036
5037#[derive(Copy, Clone)]
5038#[repr(C)]
5039pub struct GtkStringObjectClass {
5040    pub parent_class: gobject::GObjectClass,
5041}
5042
5043impl ::std::fmt::Debug for GtkStringObjectClass {
5044    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5045        f.debug_struct(&format!("GtkStringObjectClass @ {self:p}"))
5046            .field("parent_class", &self.parent_class)
5047            .finish()
5048    }
5049}
5050
5051#[derive(Copy, Clone)]
5052#[repr(C)]
5053pub struct GtkStringSorterClass {
5054    pub parent_class: GtkSorterClass,
5055}
5056
5057impl ::std::fmt::Debug for GtkStringSorterClass {
5058    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5059        f.debug_struct(&format!("GtkStringSorterClass @ {self:p}"))
5060            .field("parent_class", &self.parent_class)
5061            .finish()
5062    }
5063}
5064
5065#[derive(Copy, Clone)]
5066#[repr(C)]
5067pub struct GtkStyleContextClass {
5068    pub parent_class: gobject::GObjectClass,
5069    pub changed: Option<unsafe extern "C" fn(*mut GtkStyleContext)>,
5070    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5071    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5072    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5073    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5074}
5075
5076impl ::std::fmt::Debug for GtkStyleContextClass {
5077    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5078        f.debug_struct(&format!("GtkStyleContextClass @ {self:p}"))
5079            .field("parent_class", &self.parent_class)
5080            .field("changed", &self.changed)
5081            .field("_gtk_reserved1", &self._gtk_reserved1)
5082            .field("_gtk_reserved2", &self._gtk_reserved2)
5083            .field("_gtk_reserved3", &self._gtk_reserved3)
5084            .field("_gtk_reserved4", &self._gtk_reserved4)
5085            .finish()
5086    }
5087}
5088
5089#[derive(Copy, Clone)]
5090#[repr(C)]
5091pub struct GtkSvgClass {
5092    pub parent_class: gobject::GObjectClass,
5093}
5094
5095impl ::std::fmt::Debug for GtkSvgClass {
5096    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5097        f.debug_struct(&format!("GtkSvgClass @ {self:p}"))
5098            .field("parent_class", &self.parent_class)
5099            .finish()
5100    }
5101}
5102
5103#[derive(Copy, Clone)]
5104#[repr(C)]
5105pub struct GtkSvgLocation {
5106    pub bytes: size_t,
5107    pub lines: size_t,
5108    pub line_chars: size_t,
5109}
5110
5111impl ::std::fmt::Debug for GtkSvgLocation {
5112    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5113        f.debug_struct(&format!("GtkSvgLocation @ {self:p}"))
5114            .field("bytes", &self.bytes)
5115            .field("lines", &self.lines)
5116            .field("line_chars", &self.line_chars)
5117            .finish()
5118    }
5119}
5120
5121#[derive(Copy, Clone)]
5122#[repr(C)]
5123pub struct GtkSymbolicPaintableInterface {
5124    pub g_iface: gobject::GTypeInterface,
5125    pub snapshot_symbolic: Option<
5126        unsafe extern "C" fn(
5127            *mut GtkSymbolicPaintable,
5128            *mut gdk::GdkSnapshot,
5129            c_double,
5130            c_double,
5131            *const gdk::GdkRGBA,
5132            size_t,
5133        ),
5134    >,
5135    pub snapshot_with_weight: Option<
5136        unsafe extern "C" fn(
5137            *mut GtkSymbolicPaintable,
5138            *mut gdk::GdkSnapshot,
5139            c_double,
5140            c_double,
5141            *const gdk::GdkRGBA,
5142            size_t,
5143            c_double,
5144        ),
5145    >,
5146}
5147
5148impl ::std::fmt::Debug for GtkSymbolicPaintableInterface {
5149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5150        f.debug_struct(&format!("GtkSymbolicPaintableInterface @ {self:p}"))
5151            .field("snapshot_symbolic", &self.snapshot_symbolic)
5152            .field("snapshot_with_weight", &self.snapshot_with_weight)
5153            .finish()
5154    }
5155}
5156
5157#[derive(Copy, Clone)]
5158#[repr(C)]
5159pub struct GtkTextBufferClass {
5160    pub parent_class: gobject::GObjectClass,
5161    pub insert_text:
5162        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *const c_char, c_int)>,
5163    pub insert_paintable:
5164        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut gdk::GdkPaintable)>,
5165    pub insert_child_anchor:
5166        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextChildAnchor)>,
5167    pub delete_range:
5168        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextIter, *mut GtkTextIter)>,
5169    pub changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5170    pub modified_changed: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5171    pub mark_set:
5172        Option<unsafe extern "C" fn(*mut GtkTextBuffer, *const GtkTextIter, *mut GtkTextMark)>,
5173    pub mark_deleted: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut GtkTextMark)>,
5174    pub apply_tag: Option<
5175        unsafe extern "C" fn(
5176            *mut GtkTextBuffer,
5177            *mut GtkTextTag,
5178            *const GtkTextIter,
5179            *const GtkTextIter,
5180        ),
5181    >,
5182    pub remove_tag: Option<
5183        unsafe extern "C" fn(
5184            *mut GtkTextBuffer,
5185            *mut GtkTextTag,
5186            *const GtkTextIter,
5187            *const GtkTextIter,
5188        ),
5189    >,
5190    pub begin_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5191    pub end_user_action: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5192    pub paste_done: Option<unsafe extern "C" fn(*mut GtkTextBuffer, *mut gdk::GdkClipboard)>,
5193    pub undo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5194    pub redo: Option<unsafe extern "C" fn(*mut GtkTextBuffer)>,
5195    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5196    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5197    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5198    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5199}
5200
5201impl ::std::fmt::Debug for GtkTextBufferClass {
5202    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5203        f.debug_struct(&format!("GtkTextBufferClass @ {self:p}"))
5204            .field("parent_class", &self.parent_class)
5205            .field("insert_text", &self.insert_text)
5206            .field("insert_paintable", &self.insert_paintable)
5207            .field("insert_child_anchor", &self.insert_child_anchor)
5208            .field("delete_range", &self.delete_range)
5209            .field("changed", &self.changed)
5210            .field("modified_changed", &self.modified_changed)
5211            .field("mark_set", &self.mark_set)
5212            .field("mark_deleted", &self.mark_deleted)
5213            .field("apply_tag", &self.apply_tag)
5214            .field("remove_tag", &self.remove_tag)
5215            .field("begin_user_action", &self.begin_user_action)
5216            .field("end_user_action", &self.end_user_action)
5217            .field("paste_done", &self.paste_done)
5218            .field("undo", &self.undo)
5219            .field("redo", &self.redo)
5220            .field("_gtk_reserved1", &self._gtk_reserved1)
5221            .field("_gtk_reserved2", &self._gtk_reserved2)
5222            .field("_gtk_reserved3", &self._gtk_reserved3)
5223            .field("_gtk_reserved4", &self._gtk_reserved4)
5224            .finish()
5225    }
5226}
5227
5228#[repr(C)]
5229#[allow(dead_code)]
5230pub struct _GtkTextBufferPrivate {
5231    _data: [u8; 0],
5232    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5233}
5234
5235pub type GtkTextBufferPrivate = _GtkTextBufferPrivate;
5236
5237#[derive(Copy, Clone)]
5238#[repr(C)]
5239pub struct GtkTextChildAnchorClass {
5240    pub parent_class: gobject::GObjectClass,
5241    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
5242    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
5243    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
5244    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
5245}
5246
5247impl ::std::fmt::Debug for GtkTextChildAnchorClass {
5248    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5249        f.debug_struct(&format!("GtkTextChildAnchorClass @ {self:p}"))
5250            .field("parent_class", &self.parent_class)
5251            .field("_gtk_reserved1", &self._gtk_reserved1)
5252            .field("_gtk_reserved2", &self._gtk_reserved2)
5253            .field("_gtk_reserved3", &self._gtk_reserved3)
5254            .field("_gtk_reserved4", &self._gtk_reserved4)
5255            .finish()
5256    }
5257}
5258
5259#[derive(Copy, Clone)]
5260#[repr(C)]
5261pub struct GtkTextIter {
5262    pub dummy1: gpointer,
5263    pub dummy2: gpointer,
5264    pub dummy3: c_int,
5265    pub dummy4: c_int,
5266    pub dummy5: c_int,
5267    pub dummy6: c_int,
5268    pub dummy7: c_int,
5269    pub dummy8: c_int,
5270    pub dummy9: gpointer,
5271    pub dummy10: gpointer,
5272    pub dummy11: c_int,
5273    pub dummy12: c_int,
5274    pub dummy13: c_int,
5275    pub dummy14: gpointer,
5276}
5277
5278impl ::std::fmt::Debug for GtkTextIter {
5279    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5280        f.debug_struct(&format!("GtkTextIter @ {self:p}")).finish()
5281    }
5282}
5283
5284#[derive(Copy, Clone)]
5285#[repr(C)]
5286pub struct GtkTextMarkClass {
5287    pub parent_class: gobject::GObjectClass,
5288    pub padding: [gpointer; 8],
5289}
5290
5291impl ::std::fmt::Debug for GtkTextMarkClass {
5292    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5293        f.debug_struct(&format!("GtkTextMarkClass @ {self:p}"))
5294            .field("parent_class", &self.parent_class)
5295            .finish()
5296    }
5297}
5298
5299#[derive(Copy, Clone)]
5300#[repr(C)]
5301pub struct GtkTextTagClass {
5302    pub parent_class: gobject::GObjectClass,
5303    pub padding: [gpointer; 8],
5304}
5305
5306impl ::std::fmt::Debug for GtkTextTagClass {
5307    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5308        f.debug_struct(&format!("GtkTextTagClass @ {self:p}"))
5309            .field("parent_class", &self.parent_class)
5310            .finish()
5311    }
5312}
5313
5314#[repr(C)]
5315#[allow(dead_code)]
5316pub struct _GtkTextTagPrivate {
5317    _data: [u8; 0],
5318    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5319}
5320
5321pub type GtkTextTagPrivate = _GtkTextTagPrivate;
5322
5323#[derive(Copy, Clone)]
5324#[repr(C)]
5325pub struct GtkTextViewClass {
5326    pub parent_class: GtkWidgetClass,
5327    pub move_cursor:
5328        Option<unsafe extern "C" fn(*mut GtkTextView, GtkMovementStep, c_int, gboolean)>,
5329    pub set_anchor: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5330    pub insert_at_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, *const c_char)>,
5331    pub delete_from_cursor: Option<unsafe extern "C" fn(*mut GtkTextView, GtkDeleteType, c_int)>,
5332    pub backspace: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5333    pub cut_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5334    pub copy_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5335    pub paste_clipboard: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5336    pub toggle_overwrite: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5337    pub create_buffer: Option<unsafe extern "C" fn(*mut GtkTextView) -> *mut GtkTextBuffer>,
5338    pub snapshot_layer:
5339        Option<unsafe extern "C" fn(*mut GtkTextView, GtkTextViewLayer, *mut GtkSnapshot)>,
5340    pub extend_selection: Option<
5341        unsafe extern "C" fn(
5342            *mut GtkTextView,
5343            GtkTextExtendSelection,
5344            *const GtkTextIter,
5345            *mut GtkTextIter,
5346            *mut GtkTextIter,
5347        ) -> gboolean,
5348    >,
5349    pub insert_emoji: Option<unsafe extern "C" fn(*mut GtkTextView)>,
5350    pub padding: [gpointer; 8],
5351}
5352
5353impl ::std::fmt::Debug for GtkTextViewClass {
5354    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5355        f.debug_struct(&format!("GtkTextViewClass @ {self:p}"))
5356            .field("parent_class", &self.parent_class)
5357            .field("move_cursor", &self.move_cursor)
5358            .field("set_anchor", &self.set_anchor)
5359            .field("insert_at_cursor", &self.insert_at_cursor)
5360            .field("delete_from_cursor", &self.delete_from_cursor)
5361            .field("backspace", &self.backspace)
5362            .field("cut_clipboard", &self.cut_clipboard)
5363            .field("copy_clipboard", &self.copy_clipboard)
5364            .field("paste_clipboard", &self.paste_clipboard)
5365            .field("toggle_overwrite", &self.toggle_overwrite)
5366            .field("create_buffer", &self.create_buffer)
5367            .field("snapshot_layer", &self.snapshot_layer)
5368            .field("extend_selection", &self.extend_selection)
5369            .field("insert_emoji", &self.insert_emoji)
5370            .finish()
5371    }
5372}
5373
5374#[repr(C)]
5375#[allow(dead_code)]
5376pub struct _GtkTextViewPrivate {
5377    _data: [u8; 0],
5378    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5379}
5380
5381pub type GtkTextViewPrivate = _GtkTextViewPrivate;
5382
5383#[derive(Copy, Clone)]
5384#[repr(C)]
5385pub struct GtkToggleButtonClass {
5386    pub parent_class: GtkButtonClass,
5387    pub toggled: Option<unsafe extern "C" fn(*mut GtkToggleButton)>,
5388    pub padding: [gpointer; 8],
5389}
5390
5391impl ::std::fmt::Debug for GtkToggleButtonClass {
5392    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5393        f.debug_struct(&format!("GtkToggleButtonClass @ {self:p}"))
5394            .field("parent_class", &self.parent_class)
5395            .field("toggled", &self.toggled)
5396            .finish()
5397    }
5398}
5399
5400#[derive(Copy, Clone)]
5401#[repr(C)]
5402pub struct GtkTreeDragDestIface {
5403    pub g_iface: gobject::GTypeInterface,
5404    pub drag_data_received: Option<
5405        unsafe extern "C" fn(
5406            *mut GtkTreeDragDest,
5407            *mut GtkTreePath,
5408            *const gobject::GValue,
5409        ) -> gboolean,
5410    >,
5411    pub row_drop_possible: Option<
5412        unsafe extern "C" fn(
5413            *mut GtkTreeDragDest,
5414            *mut GtkTreePath,
5415            *const gobject::GValue,
5416        ) -> gboolean,
5417    >,
5418}
5419
5420impl ::std::fmt::Debug for GtkTreeDragDestIface {
5421    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5422        f.debug_struct(&format!("GtkTreeDragDestIface @ {self:p}"))
5423            .field("drag_data_received", &self.drag_data_received)
5424            .field("row_drop_possible", &self.row_drop_possible)
5425            .finish()
5426    }
5427}
5428
5429#[derive(Copy, Clone)]
5430#[repr(C)]
5431pub struct GtkTreeDragSourceIface {
5432    pub g_iface: gobject::GTypeInterface,
5433    pub row_draggable:
5434        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5435    pub drag_data_get: Option<
5436        unsafe extern "C" fn(
5437            *mut GtkTreeDragSource,
5438            *mut GtkTreePath,
5439        ) -> *mut gdk::GdkContentProvider,
5440    >,
5441    pub drag_data_delete:
5442        Option<unsafe extern "C" fn(*mut GtkTreeDragSource, *mut GtkTreePath) -> gboolean>,
5443}
5444
5445impl ::std::fmt::Debug for GtkTreeDragSourceIface {
5446    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5447        f.debug_struct(&format!("GtkTreeDragSourceIface @ {self:p}"))
5448            .field("row_draggable", &self.row_draggable)
5449            .field("drag_data_get", &self.drag_data_get)
5450            .field("drag_data_delete", &self.drag_data_delete)
5451            .finish()
5452    }
5453}
5454
5455#[derive(Copy, Clone)]
5456#[repr(C)]
5457pub struct GtkTreeExpanderClass {
5458    pub parent_class: GtkWidgetClass,
5459}
5460
5461impl ::std::fmt::Debug for GtkTreeExpanderClass {
5462    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5463        f.debug_struct(&format!("GtkTreeExpanderClass @ {self:p}"))
5464            .field("parent_class", &self.parent_class)
5465            .finish()
5466    }
5467}
5468
5469#[derive(Copy, Clone)]
5470#[repr(C)]
5471pub struct GtkTreeIter {
5472    pub stamp: c_int,
5473    pub user_data: gpointer,
5474    pub user_data2: gpointer,
5475    pub user_data3: gpointer,
5476}
5477
5478impl ::std::fmt::Debug for GtkTreeIter {
5479    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5480        f.debug_struct(&format!("GtkTreeIter @ {self:p}"))
5481            .field("stamp", &self.stamp)
5482            .field("user_data", &self.user_data)
5483            .field("user_data2", &self.user_data2)
5484            .field("user_data3", &self.user_data3)
5485            .finish()
5486    }
5487}
5488
5489#[derive(Copy, Clone)]
5490#[repr(C)]
5491pub struct GtkTreeListModelClass {
5492    pub parent_class: gobject::GObjectClass,
5493}
5494
5495impl ::std::fmt::Debug for GtkTreeListModelClass {
5496    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5497        f.debug_struct(&format!("GtkTreeListModelClass @ {self:p}"))
5498            .field("parent_class", &self.parent_class)
5499            .finish()
5500    }
5501}
5502
5503#[derive(Copy, Clone)]
5504#[repr(C)]
5505pub struct GtkTreeListRowClass {
5506    pub parent_class: gobject::GObjectClass,
5507}
5508
5509impl ::std::fmt::Debug for GtkTreeListRowClass {
5510    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5511        f.debug_struct(&format!("GtkTreeListRowClass @ {self:p}"))
5512            .field("parent_class", &self.parent_class)
5513            .finish()
5514    }
5515}
5516
5517#[derive(Copy, Clone)]
5518#[repr(C)]
5519pub struct GtkTreeListRowSorterClass {
5520    pub parent_class: GtkSorterClass,
5521}
5522
5523impl ::std::fmt::Debug for GtkTreeListRowSorterClass {
5524    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5525        f.debug_struct(&format!("GtkTreeListRowSorterClass @ {self:p}"))
5526            .field("parent_class", &self.parent_class)
5527            .finish()
5528    }
5529}
5530
5531#[derive(Copy, Clone)]
5532#[repr(C)]
5533pub struct GtkTreeModelFilterClass {
5534    pub parent_class: gobject::GObjectClass,
5535    pub visible: Option<
5536        unsafe extern "C" fn(
5537            *mut GtkTreeModelFilter,
5538            *mut GtkTreeModel,
5539            *mut GtkTreeIter,
5540        ) -> gboolean,
5541    >,
5542    pub modify: Option<
5543        unsafe extern "C" fn(
5544            *mut GtkTreeModelFilter,
5545            *mut GtkTreeModel,
5546            *mut GtkTreeIter,
5547            *mut gobject::GValue,
5548            c_int,
5549        ),
5550    >,
5551    pub padding: [gpointer; 8],
5552}
5553
5554impl ::std::fmt::Debug for GtkTreeModelFilterClass {
5555    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5556        f.debug_struct(&format!("GtkTreeModelFilterClass @ {self:p}"))
5557            .field("parent_class", &self.parent_class)
5558            .field("visible", &self.visible)
5559            .field("modify", &self.modify)
5560            .finish()
5561    }
5562}
5563
5564#[repr(C)]
5565#[allow(dead_code)]
5566pub struct _GtkTreeModelFilterPrivate {
5567    _data: [u8; 0],
5568    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5569}
5570
5571pub type GtkTreeModelFilterPrivate = _GtkTreeModelFilterPrivate;
5572
5573#[derive(Copy, Clone)]
5574#[repr(C)]
5575pub struct GtkTreeModelIface {
5576    pub g_iface: gobject::GTypeInterface,
5577    pub row_changed:
5578        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5579    pub row_inserted:
5580        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5581    pub row_has_child_toggled:
5582        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter)>,
5583    pub row_deleted: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath)>,
5584    pub rows_reordered: Option<
5585        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreePath, *mut GtkTreeIter, *mut c_int),
5586    >,
5587    pub get_flags: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> GtkTreeModelFlags>,
5588    pub get_n_columns: Option<unsafe extern "C" fn(*mut GtkTreeModel) -> c_int>,
5589    pub get_column_type: Option<unsafe extern "C" fn(*mut GtkTreeModel, c_int) -> GType>,
5590    pub get_iter: Option<
5591        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5592    >,
5593    pub get_path:
5594        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> *mut GtkTreePath>,
5595    pub get_value: Option<
5596        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, c_int, *mut gobject::GValue),
5597    >,
5598    pub iter_next: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5599    pub iter_previous:
5600        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5601    pub iter_children: Option<
5602        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5603    >,
5604    pub iter_has_child:
5605        Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> gboolean>,
5606    pub iter_n_children: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter) -> c_int>,
5607    pub iter_nth_child: Option<
5608        unsafe extern "C" fn(
5609            *mut GtkTreeModel,
5610            *mut GtkTreeIter,
5611            *mut GtkTreeIter,
5612            c_int,
5613        ) -> gboolean,
5614    >,
5615    pub iter_parent: Option<
5616        unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter, *mut GtkTreeIter) -> gboolean,
5617    >,
5618    pub ref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5619    pub unref_node: Option<unsafe extern "C" fn(*mut GtkTreeModel, *mut GtkTreeIter)>,
5620}
5621
5622impl ::std::fmt::Debug for GtkTreeModelIface {
5623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5624        f.debug_struct(&format!("GtkTreeModelIface @ {self:p}"))
5625            .field("row_changed", &self.row_changed)
5626            .field("row_inserted", &self.row_inserted)
5627            .field("row_has_child_toggled", &self.row_has_child_toggled)
5628            .field("row_deleted", &self.row_deleted)
5629            .field("rows_reordered", &self.rows_reordered)
5630            .field("get_flags", &self.get_flags)
5631            .field("get_n_columns", &self.get_n_columns)
5632            .field("get_column_type", &self.get_column_type)
5633            .field("get_iter", &self.get_iter)
5634            .field("get_path", &self.get_path)
5635            .field("get_value", &self.get_value)
5636            .field("iter_next", &self.iter_next)
5637            .field("iter_previous", &self.iter_previous)
5638            .field("iter_children", &self.iter_children)
5639            .field("iter_has_child", &self.iter_has_child)
5640            .field("iter_n_children", &self.iter_n_children)
5641            .field("iter_nth_child", &self.iter_nth_child)
5642            .field("iter_parent", &self.iter_parent)
5643            .field("ref_node", &self.ref_node)
5644            .field("unref_node", &self.unref_node)
5645            .finish()
5646    }
5647}
5648
5649#[derive(Copy, Clone)]
5650#[repr(C)]
5651pub struct GtkTreeModelSortClass {
5652    pub parent_class: gobject::GObjectClass,
5653    pub padding: [gpointer; 8],
5654}
5655
5656impl ::std::fmt::Debug for GtkTreeModelSortClass {
5657    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5658        f.debug_struct(&format!("GtkTreeModelSortClass @ {self:p}"))
5659            .field("parent_class", &self.parent_class)
5660            .finish()
5661    }
5662}
5663
5664#[repr(C)]
5665#[allow(dead_code)]
5666pub struct _GtkTreeModelSortPrivate {
5667    _data: [u8; 0],
5668    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5669}
5670
5671pub type GtkTreeModelSortPrivate = _GtkTreeModelSortPrivate;
5672
5673#[repr(C)]
5674#[allow(dead_code)]
5675pub struct GtkTreePath {
5676    _data: [u8; 0],
5677    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5678}
5679
5680impl ::std::fmt::Debug for GtkTreePath {
5681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5682        f.debug_struct(&format!("GtkTreePath @ {self:p}")).finish()
5683    }
5684}
5685
5686#[repr(C)]
5687#[allow(dead_code)]
5688pub struct GtkTreeRowReference {
5689    _data: [u8; 0],
5690    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5691}
5692
5693impl ::std::fmt::Debug for GtkTreeRowReference {
5694    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5695        f.debug_struct(&format!("GtkTreeRowReference @ {self:p}"))
5696            .finish()
5697    }
5698}
5699
5700#[derive(Copy, Clone)]
5701#[repr(C)]
5702pub struct GtkTreeSortableIface {
5703    pub g_iface: gobject::GTypeInterface,
5704    pub sort_column_changed: Option<unsafe extern "C" fn(*mut GtkTreeSortable)>,
5705    pub get_sort_column_id: Option<
5706        unsafe extern "C" fn(*mut GtkTreeSortable, *mut c_int, *mut GtkSortType) -> gboolean,
5707    >,
5708    pub set_sort_column_id: Option<unsafe extern "C" fn(*mut GtkTreeSortable, c_int, GtkSortType)>,
5709    pub set_sort_func: Option<
5710        unsafe extern "C" fn(
5711            *mut GtkTreeSortable,
5712            c_int,
5713            GtkTreeIterCompareFunc,
5714            gpointer,
5715            glib::GDestroyNotify,
5716        ),
5717    >,
5718    pub set_default_sort_func: Option<
5719        unsafe extern "C" fn(
5720            *mut GtkTreeSortable,
5721            GtkTreeIterCompareFunc,
5722            gpointer,
5723            glib::GDestroyNotify,
5724        ),
5725    >,
5726    pub has_default_sort_func: Option<unsafe extern "C" fn(*mut GtkTreeSortable) -> gboolean>,
5727}
5728
5729impl ::std::fmt::Debug for GtkTreeSortableIface {
5730    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5731        f.debug_struct(&format!("GtkTreeSortableIface @ {self:p}"))
5732            .field("sort_column_changed", &self.sort_column_changed)
5733            .field("get_sort_column_id", &self.get_sort_column_id)
5734            .field("set_sort_column_id", &self.set_sort_column_id)
5735            .field("set_sort_func", &self.set_sort_func)
5736            .field("set_default_sort_func", &self.set_default_sort_func)
5737            .field("has_default_sort_func", &self.has_default_sort_func)
5738            .finish()
5739    }
5740}
5741
5742#[derive(Copy, Clone)]
5743#[repr(C)]
5744pub struct GtkTreeStoreClass {
5745    pub parent_class: gobject::GObjectClass,
5746    pub padding: [gpointer; 8],
5747}
5748
5749impl ::std::fmt::Debug for GtkTreeStoreClass {
5750    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5751        f.debug_struct(&format!("GtkTreeStoreClass @ {self:p}"))
5752            .field("parent_class", &self.parent_class)
5753            .finish()
5754    }
5755}
5756
5757#[repr(C)]
5758#[allow(dead_code)]
5759pub struct _GtkTreeStorePrivate {
5760    _data: [u8; 0],
5761    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5762}
5763
5764pub type GtkTreeStorePrivate = _GtkTreeStorePrivate;
5765
5766#[derive(Copy, Clone)]
5767#[repr(C)]
5768pub struct GtkTreeViewClass {
5769    pub parent_class: GtkWidgetClass,
5770    pub row_activated:
5771        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreePath, *mut GtkTreeViewColumn)>,
5772    pub test_expand_row: Option<
5773        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5774    >,
5775    pub test_collapse_row: Option<
5776        unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath) -> gboolean,
5777    >,
5778    pub row_expanded:
5779        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5780    pub row_collapsed:
5781        Option<unsafe extern "C" fn(*mut GtkTreeView, *mut GtkTreeIter, *mut GtkTreePath)>,
5782    pub columns_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5783    pub cursor_changed: Option<unsafe extern "C" fn(*mut GtkTreeView)>,
5784    pub move_cursor: Option<
5785        unsafe extern "C" fn(
5786            *mut GtkTreeView,
5787            GtkMovementStep,
5788            c_int,
5789            gboolean,
5790            gboolean,
5791        ) -> gboolean,
5792    >,
5793    pub select_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5794    pub unselect_all: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5795    pub select_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean) -> gboolean>,
5796    pub toggle_cursor_row: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5797    pub expand_collapse_cursor_row:
5798        Option<unsafe extern "C" fn(*mut GtkTreeView, gboolean, gboolean, gboolean) -> gboolean>,
5799    pub select_cursor_parent: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5800    pub start_interactive_search: Option<unsafe extern "C" fn(*mut GtkTreeView) -> gboolean>,
5801    pub _reserved: [gpointer; 16],
5802}
5803
5804impl ::std::fmt::Debug for GtkTreeViewClass {
5805    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5806        f.debug_struct(&format!("GtkTreeViewClass @ {self:p}"))
5807            .field("parent_class", &self.parent_class)
5808            .field("row_activated", &self.row_activated)
5809            .field("test_expand_row", &self.test_expand_row)
5810            .field("test_collapse_row", &self.test_collapse_row)
5811            .field("row_expanded", &self.row_expanded)
5812            .field("row_collapsed", &self.row_collapsed)
5813            .field("columns_changed", &self.columns_changed)
5814            .field("cursor_changed", &self.cursor_changed)
5815            .field("move_cursor", &self.move_cursor)
5816            .field("select_all", &self.select_all)
5817            .field("unselect_all", &self.unselect_all)
5818            .field("select_cursor_row", &self.select_cursor_row)
5819            .field("toggle_cursor_row", &self.toggle_cursor_row)
5820            .field(
5821                "expand_collapse_cursor_row",
5822                &self.expand_collapse_cursor_row,
5823            )
5824            .field("select_cursor_parent", &self.select_cursor_parent)
5825            .field("start_interactive_search", &self.start_interactive_search)
5826            .finish()
5827    }
5828}
5829
5830#[derive(Copy, Clone)]
5831#[repr(C)]
5832pub struct GtkUriLauncherClass {
5833    pub parent_class: gobject::GObjectClass,
5834}
5835
5836impl ::std::fmt::Debug for GtkUriLauncherClass {
5837    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5838        f.debug_struct(&format!("GtkUriLauncherClass @ {self:p}"))
5839            .field("parent_class", &self.parent_class)
5840            .finish()
5841    }
5842}
5843
5844#[derive(Copy, Clone)]
5845#[repr(C)]
5846pub struct GtkVideoClass {
5847    pub parent_class: GtkWidgetClass,
5848}
5849
5850impl ::std::fmt::Debug for GtkVideoClass {
5851    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5852        f.debug_struct(&format!("GtkVideoClass @ {self:p}"))
5853            .field("parent_class", &self.parent_class)
5854            .finish()
5855    }
5856}
5857
5858#[derive(Copy, Clone)]
5859#[repr(C)]
5860pub struct GtkWidgetClass {
5861    pub parent_class: gobject::GInitiallyUnownedClass,
5862    pub show: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5863    pub hide: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5864    pub map: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5865    pub unmap: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5866    pub realize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5867    pub unrealize: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5868    pub root: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5869    pub unroot: Option<unsafe extern "C" fn(*mut GtkWidget)>,
5870    pub size_allocate: Option<unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, c_int)>,
5871    pub state_flags_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkStateFlags)>,
5872    pub direction_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkTextDirection)>,
5873    pub get_request_mode: Option<unsafe extern "C" fn(*mut GtkWidget) -> GtkSizeRequestMode>,
5874    pub measure: Option<
5875        unsafe extern "C" fn(
5876            *mut GtkWidget,
5877            GtkOrientation,
5878            c_int,
5879            *mut c_int,
5880            *mut c_int,
5881            *mut c_int,
5882            *mut c_int,
5883        ),
5884    >,
5885    pub mnemonic_activate: Option<unsafe extern "C" fn(*mut GtkWidget, gboolean) -> gboolean>,
5886    pub grab_focus: Option<unsafe extern "C" fn(*mut GtkWidget) -> gboolean>,
5887    pub focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5888    pub set_focus_child: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkWidget)>,
5889    pub move_focus: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType)>,
5890    pub keynav_failed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkDirectionType) -> gboolean>,
5891    pub query_tooltip: Option<
5892        unsafe extern "C" fn(*mut GtkWidget, c_int, c_int, gboolean, *mut GtkTooltip) -> gboolean,
5893    >,
5894    pub compute_expand: Option<unsafe extern "C" fn(*mut GtkWidget, *mut gboolean, *mut gboolean)>,
5895    pub css_changed: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkCssStyleChange)>,
5896    pub system_setting_changed: Option<unsafe extern "C" fn(*mut GtkWidget, GtkSystemSetting)>,
5897    pub snapshot: Option<unsafe extern "C" fn(*mut GtkWidget, *mut GtkSnapshot)>,
5898    pub contains: Option<unsafe extern "C" fn(*mut GtkWidget, c_double, c_double) -> gboolean>,
5899    pub priv_: *mut GtkWidgetClassPrivate,
5900    pub padding: [gpointer; 8],
5901}
5902
5903impl ::std::fmt::Debug for GtkWidgetClass {
5904    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5905        f.debug_struct(&format!("GtkWidgetClass @ {self:p}"))
5906            .field("parent_class", &self.parent_class)
5907            .field("show", &self.show)
5908            .field("hide", &self.hide)
5909            .field("map", &self.map)
5910            .field("unmap", &self.unmap)
5911            .field("realize", &self.realize)
5912            .field("unrealize", &self.unrealize)
5913            .field("root", &self.root)
5914            .field("unroot", &self.unroot)
5915            .field("size_allocate", &self.size_allocate)
5916            .field("state_flags_changed", &self.state_flags_changed)
5917            .field("direction_changed", &self.direction_changed)
5918            .field("get_request_mode", &self.get_request_mode)
5919            .field("measure", &self.measure)
5920            .field("mnemonic_activate", &self.mnemonic_activate)
5921            .field("grab_focus", &self.grab_focus)
5922            .field("focus", &self.focus)
5923            .field("set_focus_child", &self.set_focus_child)
5924            .field("move_focus", &self.move_focus)
5925            .field("keynav_failed", &self.keynav_failed)
5926            .field("query_tooltip", &self.query_tooltip)
5927            .field("compute_expand", &self.compute_expand)
5928            .field("css_changed", &self.css_changed)
5929            .field("system_setting_changed", &self.system_setting_changed)
5930            .field("snapshot", &self.snapshot)
5931            .field("contains", &self.contains)
5932            .finish()
5933    }
5934}
5935
5936#[repr(C)]
5937#[allow(dead_code)]
5938pub struct _GtkWidgetClassPrivate {
5939    _data: [u8; 0],
5940    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5941}
5942
5943pub type GtkWidgetClassPrivate = _GtkWidgetClassPrivate;
5944
5945#[derive(Copy, Clone)]
5946#[repr(C)]
5947pub struct GtkWidgetPaintableClass {
5948    pub parent_class: gobject::GObjectClass,
5949}
5950
5951impl ::std::fmt::Debug for GtkWidgetPaintableClass {
5952    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5953        f.debug_struct(&format!("GtkWidgetPaintableClass @ {self:p}"))
5954            .field("parent_class", &self.parent_class)
5955            .finish()
5956    }
5957}
5958
5959#[repr(C)]
5960#[allow(dead_code)]
5961pub struct _GtkWidgetPrivate {
5962    _data: [u8; 0],
5963    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
5964}
5965
5966pub type GtkWidgetPrivate = _GtkWidgetPrivate;
5967
5968#[derive(Copy, Clone)]
5969#[repr(C)]
5970pub struct GtkWindowClass {
5971    pub parent_class: GtkWidgetClass,
5972    pub activate_focus: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5973    pub activate_default: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5974    pub keys_changed: Option<unsafe extern "C" fn(*mut GtkWindow)>,
5975    pub enable_debugging: Option<unsafe extern "C" fn(*mut GtkWindow, gboolean) -> gboolean>,
5976    pub close_request: Option<unsafe extern "C" fn(*mut GtkWindow) -> gboolean>,
5977    pub padding: [gpointer; 8],
5978}
5979
5980impl ::std::fmt::Debug for GtkWindowClass {
5981    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
5982        f.debug_struct(&format!("GtkWindowClass @ {self:p}"))
5983            .field("parent_class", &self.parent_class)
5984            .field("activate_focus", &self.activate_focus)
5985            .field("activate_default", &self.activate_default)
5986            .field("keys_changed", &self.keys_changed)
5987            .field("enable_debugging", &self.enable_debugging)
5988            .field("close_request", &self.close_request)
5989            .finish()
5990    }
5991}
5992
5993#[derive(Copy, Clone)]
5994#[repr(C)]
5995pub struct GtkWindowControlsClass {
5996    pub parent_class: GtkWidgetClass,
5997}
5998
5999impl ::std::fmt::Debug for GtkWindowControlsClass {
6000    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6001        f.debug_struct(&format!("GtkWindowControlsClass @ {self:p}"))
6002            .field("parent_class", &self.parent_class)
6003            .finish()
6004    }
6005}
6006
6007#[derive(Copy, Clone)]
6008#[repr(C)]
6009pub struct GtkWindowGroupClass {
6010    pub parent_class: gobject::GObjectClass,
6011    pub _gtk_reserved1: Option<unsafe extern "C" fn()>,
6012    pub _gtk_reserved2: Option<unsafe extern "C" fn()>,
6013    pub _gtk_reserved3: Option<unsafe extern "C" fn()>,
6014    pub _gtk_reserved4: Option<unsafe extern "C" fn()>,
6015}
6016
6017impl ::std::fmt::Debug for GtkWindowGroupClass {
6018    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6019        f.debug_struct(&format!("GtkWindowGroupClass @ {self:p}"))
6020            .field("parent_class", &self.parent_class)
6021            .field("_gtk_reserved1", &self._gtk_reserved1)
6022            .field("_gtk_reserved2", &self._gtk_reserved2)
6023            .field("_gtk_reserved3", &self._gtk_reserved3)
6024            .field("_gtk_reserved4", &self._gtk_reserved4)
6025            .finish()
6026    }
6027}
6028
6029#[repr(C)]
6030#[allow(dead_code)]
6031pub struct _GtkWindowGroupPrivate {
6032    _data: [u8; 0],
6033    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6034}
6035
6036pub type GtkWindowGroupPrivate = _GtkWindowGroupPrivate;
6037
6038#[derive(Copy, Clone)]
6039#[repr(C)]
6040pub struct GtkWindowHandleClass {
6041    pub parent_class: GtkWidgetClass,
6042}
6043
6044impl ::std::fmt::Debug for GtkWindowHandleClass {
6045    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6046        f.debug_struct(&format!("GtkWindowHandleClass @ {self:p}"))
6047            .field("parent_class", &self.parent_class)
6048            .finish()
6049    }
6050}
6051
6052// Classes
6053#[repr(C)]
6054#[allow(dead_code)]
6055pub struct GtkATContext {
6056    _data: [u8; 0],
6057    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6058}
6059
6060impl ::std::fmt::Debug for GtkATContext {
6061    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6062        f.debug_struct(&format!("GtkATContext @ {self:p}")).finish()
6063    }
6064}
6065
6066#[repr(C)]
6067#[allow(dead_code)]
6068pub struct GtkAboutDialog {
6069    _data: [u8; 0],
6070    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6071}
6072
6073impl ::std::fmt::Debug for GtkAboutDialog {
6074    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6075        f.debug_struct(&format!("GtkAboutDialog @ {self:p}"))
6076            .finish()
6077    }
6078}
6079
6080#[repr(C)]
6081#[allow(dead_code)]
6082pub struct GtkAccessibleHyperlink {
6083    _data: [u8; 0],
6084    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6085}
6086
6087impl ::std::fmt::Debug for GtkAccessibleHyperlink {
6088    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6089        f.debug_struct(&format!("GtkAccessibleHyperlink @ {self:p}"))
6090            .finish()
6091    }
6092}
6093
6094#[repr(C)]
6095#[allow(dead_code)]
6096pub struct GtkActionBar {
6097    _data: [u8; 0],
6098    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6099}
6100
6101impl ::std::fmt::Debug for GtkActionBar {
6102    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6103        f.debug_struct(&format!("GtkActionBar @ {self:p}")).finish()
6104    }
6105}
6106
6107#[repr(C)]
6108#[allow(dead_code)]
6109pub struct GtkActivateAction {
6110    _data: [u8; 0],
6111    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6112}
6113
6114impl ::std::fmt::Debug for GtkActivateAction {
6115    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6116        f.debug_struct(&format!("GtkActivateAction @ {self:p}"))
6117            .finish()
6118    }
6119}
6120
6121#[derive(Copy, Clone)]
6122#[repr(C)]
6123pub struct GtkAdjustment {
6124    pub parent_instance: gobject::GInitiallyUnowned,
6125}
6126
6127impl ::std::fmt::Debug for GtkAdjustment {
6128    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6129        f.debug_struct(&format!("GtkAdjustment @ {self:p}"))
6130            .field("parent_instance", &self.parent_instance)
6131            .finish()
6132    }
6133}
6134
6135#[repr(C)]
6136#[allow(dead_code)]
6137pub struct GtkAlertDialog {
6138    _data: [u8; 0],
6139    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6140}
6141
6142impl ::std::fmt::Debug for GtkAlertDialog {
6143    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6144        f.debug_struct(&format!("GtkAlertDialog @ {self:p}"))
6145            .finish()
6146    }
6147}
6148
6149#[repr(C)]
6150#[allow(dead_code)]
6151pub struct GtkAlternativeTrigger {
6152    _data: [u8; 0],
6153    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6154}
6155
6156impl ::std::fmt::Debug for GtkAlternativeTrigger {
6157    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6158        f.debug_struct(&format!("GtkAlternativeTrigger @ {self:p}"))
6159            .finish()
6160    }
6161}
6162
6163#[repr(C)]
6164#[allow(dead_code)]
6165pub struct GtkAnyFilter {
6166    _data: [u8; 0],
6167    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6168}
6169
6170impl ::std::fmt::Debug for GtkAnyFilter {
6171    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6172        f.debug_struct(&format!("GtkAnyFilter @ {self:p}")).finish()
6173    }
6174}
6175
6176#[repr(C)]
6177#[allow(dead_code)]
6178pub struct GtkAppChooserButton {
6179    _data: [u8; 0],
6180    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6181}
6182
6183impl ::std::fmt::Debug for GtkAppChooserButton {
6184    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6185        f.debug_struct(&format!("GtkAppChooserButton @ {self:p}"))
6186            .finish()
6187    }
6188}
6189
6190#[repr(C)]
6191#[allow(dead_code)]
6192pub struct GtkAppChooserDialog {
6193    _data: [u8; 0],
6194    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6195}
6196
6197impl ::std::fmt::Debug for GtkAppChooserDialog {
6198    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6199        f.debug_struct(&format!("GtkAppChooserDialog @ {self:p}"))
6200            .finish()
6201    }
6202}
6203
6204#[repr(C)]
6205#[allow(dead_code)]
6206pub struct GtkAppChooserWidget {
6207    _data: [u8; 0],
6208    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6209}
6210
6211impl ::std::fmt::Debug for GtkAppChooserWidget {
6212    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6213        f.debug_struct(&format!("GtkAppChooserWidget @ {self:p}"))
6214            .finish()
6215    }
6216}
6217
6218#[derive(Copy, Clone)]
6219#[repr(C)]
6220pub struct GtkApplication {
6221    pub parent_instance: gio::GApplication,
6222}
6223
6224impl ::std::fmt::Debug for GtkApplication {
6225    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6226        f.debug_struct(&format!("GtkApplication @ {self:p}"))
6227            .field("parent_instance", &self.parent_instance)
6228            .finish()
6229    }
6230}
6231
6232#[derive(Copy, Clone)]
6233#[repr(C)]
6234pub struct GtkApplicationWindow {
6235    pub parent_instance: GtkWindow,
6236}
6237
6238impl ::std::fmt::Debug for GtkApplicationWindow {
6239    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6240        f.debug_struct(&format!("GtkApplicationWindow @ {self:p}"))
6241            .field("parent_instance", &self.parent_instance)
6242            .finish()
6243    }
6244}
6245
6246#[repr(C)]
6247#[allow(dead_code)]
6248pub struct GtkAspectFrame {
6249    _data: [u8; 0],
6250    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6251}
6252
6253impl ::std::fmt::Debug for GtkAspectFrame {
6254    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6255        f.debug_struct(&format!("GtkAspectFrame @ {self:p}"))
6256            .finish()
6257    }
6258}
6259
6260#[repr(C)]
6261#[allow(dead_code)]
6262pub struct GtkAssistant {
6263    _data: [u8; 0],
6264    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6265}
6266
6267impl ::std::fmt::Debug for GtkAssistant {
6268    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6269        f.debug_struct(&format!("GtkAssistant @ {self:p}")).finish()
6270    }
6271}
6272
6273#[repr(C)]
6274#[allow(dead_code)]
6275pub struct GtkAssistantPage {
6276    _data: [u8; 0],
6277    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6278}
6279
6280impl ::std::fmt::Debug for GtkAssistantPage {
6281    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6282        f.debug_struct(&format!("GtkAssistantPage @ {self:p}"))
6283            .finish()
6284    }
6285}
6286
6287#[repr(C)]
6288#[allow(dead_code)]
6289pub struct GtkBinLayout {
6290    _data: [u8; 0],
6291    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6292}
6293
6294impl ::std::fmt::Debug for GtkBinLayout {
6295    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6296        f.debug_struct(&format!("GtkBinLayout @ {self:p}")).finish()
6297    }
6298}
6299
6300#[repr(C)]
6301#[allow(dead_code)]
6302pub struct GtkBookmarkList {
6303    _data: [u8; 0],
6304    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6305}
6306
6307impl ::std::fmt::Debug for GtkBookmarkList {
6308    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6309        f.debug_struct(&format!("GtkBookmarkList @ {self:p}"))
6310            .finish()
6311    }
6312}
6313
6314#[repr(C)]
6315#[allow(dead_code)]
6316pub struct GtkBoolFilter {
6317    _data: [u8; 0],
6318    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6319}
6320
6321impl ::std::fmt::Debug for GtkBoolFilter {
6322    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6323        f.debug_struct(&format!("GtkBoolFilter @ {self:p}"))
6324            .finish()
6325    }
6326}
6327
6328#[derive(Copy, Clone)]
6329#[repr(C)]
6330pub struct GtkBox {
6331    pub parent_instance: GtkWidget,
6332}
6333
6334impl ::std::fmt::Debug for GtkBox {
6335    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6336        f.debug_struct(&format!("GtkBox @ {self:p}"))
6337            .field("parent_instance", &self.parent_instance)
6338            .finish()
6339    }
6340}
6341
6342#[repr(C)]
6343#[allow(dead_code)]
6344pub struct GtkBoxLayout {
6345    _data: [u8; 0],
6346    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6347}
6348
6349impl ::std::fmt::Debug for GtkBoxLayout {
6350    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6351        f.debug_struct(&format!("GtkBoxLayout @ {self:p}")).finish()
6352    }
6353}
6354
6355#[repr(C)]
6356#[allow(dead_code)]
6357pub struct GtkBuilder {
6358    _data: [u8; 0],
6359    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6360}
6361
6362impl ::std::fmt::Debug for GtkBuilder {
6363    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6364        f.debug_struct(&format!("GtkBuilder @ {self:p}")).finish()
6365    }
6366}
6367
6368#[derive(Copy, Clone)]
6369#[repr(C)]
6370pub struct GtkBuilderCScope {
6371    pub parent_instance: gobject::GObject,
6372}
6373
6374impl ::std::fmt::Debug for GtkBuilderCScope {
6375    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6376        f.debug_struct(&format!("GtkBuilderCScope @ {self:p}"))
6377            .field("parent_instance", &self.parent_instance)
6378            .finish()
6379    }
6380}
6381
6382#[repr(C)]
6383#[allow(dead_code)]
6384pub struct GtkBuilderListItemFactory {
6385    _data: [u8; 0],
6386    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6387}
6388
6389impl ::std::fmt::Debug for GtkBuilderListItemFactory {
6390    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6391        f.debug_struct(&format!("GtkBuilderListItemFactory @ {self:p}"))
6392            .finish()
6393    }
6394}
6395
6396#[derive(Copy, Clone)]
6397#[repr(C)]
6398pub struct GtkButton {
6399    pub parent_instance: GtkWidget,
6400}
6401
6402impl ::std::fmt::Debug for GtkButton {
6403    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6404        f.debug_struct(&format!("GtkButton @ {self:p}")).finish()
6405    }
6406}
6407
6408#[repr(C)]
6409#[allow(dead_code)]
6410pub struct GtkCClosureExpression {
6411    _data: [u8; 0],
6412    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6413}
6414
6415impl ::std::fmt::Debug for GtkCClosureExpression {
6416    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6417        f.debug_struct(&format!("GtkCClosureExpression @ {self:p}"))
6418            .finish()
6419    }
6420}
6421
6422#[repr(C)]
6423#[allow(dead_code)]
6424pub struct GtkCalendar {
6425    _data: [u8; 0],
6426    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6427}
6428
6429impl ::std::fmt::Debug for GtkCalendar {
6430    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6431        f.debug_struct(&format!("GtkCalendar @ {self:p}")).finish()
6432    }
6433}
6434
6435#[repr(C)]
6436#[allow(dead_code)]
6437pub struct GtkCallbackAction {
6438    _data: [u8; 0],
6439    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6440}
6441
6442impl ::std::fmt::Debug for GtkCallbackAction {
6443    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6444        f.debug_struct(&format!("GtkCallbackAction @ {self:p}"))
6445            .finish()
6446    }
6447}
6448
6449#[derive(Copy, Clone)]
6450#[repr(C)]
6451pub struct GtkCellArea {
6452    pub parent_instance: gobject::GInitiallyUnowned,
6453}
6454
6455impl ::std::fmt::Debug for GtkCellArea {
6456    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6457        f.debug_struct(&format!("GtkCellArea @ {self:p}")).finish()
6458    }
6459}
6460
6461#[repr(C)]
6462#[allow(dead_code)]
6463pub struct GtkCellAreaBox {
6464    _data: [u8; 0],
6465    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6466}
6467
6468impl ::std::fmt::Debug for GtkCellAreaBox {
6469    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6470        f.debug_struct(&format!("GtkCellAreaBox @ {self:p}"))
6471            .finish()
6472    }
6473}
6474
6475#[derive(Copy, Clone)]
6476#[repr(C)]
6477pub struct GtkCellAreaContext {
6478    pub parent_instance: gobject::GObject,
6479}
6480
6481impl ::std::fmt::Debug for GtkCellAreaContext {
6482    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6483        f.debug_struct(&format!("GtkCellAreaContext @ {self:p}"))
6484            .finish()
6485    }
6486}
6487
6488#[derive(Copy, Clone)]
6489#[repr(C)]
6490pub struct GtkCellRenderer {
6491    pub parent_instance: gobject::GInitiallyUnowned,
6492    pub priv_: *mut GtkCellRendererPrivate,
6493}
6494
6495impl ::std::fmt::Debug for GtkCellRenderer {
6496    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6497        f.debug_struct(&format!("GtkCellRenderer @ {self:p}"))
6498            .field("parent_instance", &self.parent_instance)
6499            .finish()
6500    }
6501}
6502
6503#[repr(C)]
6504#[allow(dead_code)]
6505pub struct GtkCellRendererAccel {
6506    _data: [u8; 0],
6507    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6508}
6509
6510impl ::std::fmt::Debug for GtkCellRendererAccel {
6511    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6512        f.debug_struct(&format!("GtkCellRendererAccel @ {self:p}"))
6513            .finish()
6514    }
6515}
6516
6517#[repr(C)]
6518#[allow(dead_code)]
6519pub struct GtkCellRendererCombo {
6520    _data: [u8; 0],
6521    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6522}
6523
6524impl ::std::fmt::Debug for GtkCellRendererCombo {
6525    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6526        f.debug_struct(&format!("GtkCellRendererCombo @ {self:p}"))
6527            .finish()
6528    }
6529}
6530
6531#[repr(C)]
6532#[allow(dead_code)]
6533pub struct GtkCellRendererPixbuf {
6534    _data: [u8; 0],
6535    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6536}
6537
6538impl ::std::fmt::Debug for GtkCellRendererPixbuf {
6539    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6540        f.debug_struct(&format!("GtkCellRendererPixbuf @ {self:p}"))
6541            .finish()
6542    }
6543}
6544
6545#[repr(C)]
6546#[allow(dead_code)]
6547pub struct GtkCellRendererProgress {
6548    _data: [u8; 0],
6549    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6550}
6551
6552impl ::std::fmt::Debug for GtkCellRendererProgress {
6553    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6554        f.debug_struct(&format!("GtkCellRendererProgress @ {self:p}"))
6555            .finish()
6556    }
6557}
6558
6559#[repr(C)]
6560#[allow(dead_code)]
6561pub struct GtkCellRendererSpin {
6562    _data: [u8; 0],
6563    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6564}
6565
6566impl ::std::fmt::Debug for GtkCellRendererSpin {
6567    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6568        f.debug_struct(&format!("GtkCellRendererSpin @ {self:p}"))
6569            .finish()
6570    }
6571}
6572
6573#[repr(C)]
6574#[allow(dead_code)]
6575pub struct GtkCellRendererSpinner {
6576    _data: [u8; 0],
6577    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6578}
6579
6580impl ::std::fmt::Debug for GtkCellRendererSpinner {
6581    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6582        f.debug_struct(&format!("GtkCellRendererSpinner @ {self:p}"))
6583            .finish()
6584    }
6585}
6586
6587#[derive(Copy, Clone)]
6588#[repr(C)]
6589pub struct GtkCellRendererText {
6590    pub parent: GtkCellRenderer,
6591}
6592
6593impl ::std::fmt::Debug for GtkCellRendererText {
6594    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6595        f.debug_struct(&format!("GtkCellRendererText @ {self:p}"))
6596            .field("parent", &self.parent)
6597            .finish()
6598    }
6599}
6600
6601#[repr(C)]
6602#[allow(dead_code)]
6603pub struct GtkCellRendererToggle {
6604    _data: [u8; 0],
6605    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6606}
6607
6608impl ::std::fmt::Debug for GtkCellRendererToggle {
6609    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6610        f.debug_struct(&format!("GtkCellRendererToggle @ {self:p}"))
6611            .finish()
6612    }
6613}
6614
6615#[repr(C)]
6616#[allow(dead_code)]
6617pub struct GtkCellView {
6618    _data: [u8; 0],
6619    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6620}
6621
6622impl ::std::fmt::Debug for GtkCellView {
6623    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6624        f.debug_struct(&format!("GtkCellView @ {self:p}")).finish()
6625    }
6626}
6627
6628#[repr(C)]
6629#[allow(dead_code)]
6630pub struct GtkCenterBox {
6631    _data: [u8; 0],
6632    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6633}
6634
6635impl ::std::fmt::Debug for GtkCenterBox {
6636    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6637        f.debug_struct(&format!("GtkCenterBox @ {self:p}")).finish()
6638    }
6639}
6640
6641#[repr(C)]
6642#[allow(dead_code)]
6643pub struct GtkCenterLayout {
6644    _data: [u8; 0],
6645    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6646}
6647
6648impl ::std::fmt::Debug for GtkCenterLayout {
6649    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6650        f.debug_struct(&format!("GtkCenterLayout @ {self:p}"))
6651            .finish()
6652    }
6653}
6654
6655#[derive(Copy, Clone)]
6656#[repr(C)]
6657pub struct GtkCheckButton {
6658    pub parent_instance: GtkWidget,
6659}
6660
6661impl ::std::fmt::Debug for GtkCheckButton {
6662    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6663        f.debug_struct(&format!("GtkCheckButton @ {self:p}"))
6664            .field("parent_instance", &self.parent_instance)
6665            .finish()
6666    }
6667}
6668
6669#[repr(C)]
6670#[allow(dead_code)]
6671pub struct GtkClosureExpression {
6672    _data: [u8; 0],
6673    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6674}
6675
6676impl ::std::fmt::Debug for GtkClosureExpression {
6677    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6678        f.debug_struct(&format!("GtkClosureExpression @ {self:p}"))
6679            .finish()
6680    }
6681}
6682
6683#[repr(C)]
6684#[allow(dead_code)]
6685pub struct GtkColorButton {
6686    _data: [u8; 0],
6687    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6688}
6689
6690impl ::std::fmt::Debug for GtkColorButton {
6691    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6692        f.debug_struct(&format!("GtkColorButton @ {self:p}"))
6693            .finish()
6694    }
6695}
6696
6697#[repr(C)]
6698#[allow(dead_code)]
6699pub struct GtkColorChooserDialog {
6700    _data: [u8; 0],
6701    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6702}
6703
6704impl ::std::fmt::Debug for GtkColorChooserDialog {
6705    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6706        f.debug_struct(&format!("GtkColorChooserDialog @ {self:p}"))
6707            .finish()
6708    }
6709}
6710
6711#[repr(C)]
6712#[allow(dead_code)]
6713pub struct GtkColorChooserWidget {
6714    _data: [u8; 0],
6715    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6716}
6717
6718impl ::std::fmt::Debug for GtkColorChooserWidget {
6719    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6720        f.debug_struct(&format!("GtkColorChooserWidget @ {self:p}"))
6721            .finish()
6722    }
6723}
6724
6725#[repr(C)]
6726#[allow(dead_code)]
6727pub struct GtkColorDialog {
6728    _data: [u8; 0],
6729    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6730}
6731
6732impl ::std::fmt::Debug for GtkColorDialog {
6733    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6734        f.debug_struct(&format!("GtkColorDialog @ {self:p}"))
6735            .finish()
6736    }
6737}
6738
6739#[repr(C)]
6740#[allow(dead_code)]
6741pub struct GtkColorDialogButton {
6742    _data: [u8; 0],
6743    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6744}
6745
6746impl ::std::fmt::Debug for GtkColorDialogButton {
6747    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6748        f.debug_struct(&format!("GtkColorDialogButton @ {self:p}"))
6749            .finish()
6750    }
6751}
6752
6753#[repr(C)]
6754#[allow(dead_code)]
6755pub struct GtkColumnView {
6756    _data: [u8; 0],
6757    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6758}
6759
6760impl ::std::fmt::Debug for GtkColumnView {
6761    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6762        f.debug_struct(&format!("GtkColumnView @ {self:p}"))
6763            .finish()
6764    }
6765}
6766
6767#[repr(C)]
6768#[allow(dead_code)]
6769pub struct GtkColumnViewCell {
6770    _data: [u8; 0],
6771    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6772}
6773
6774impl ::std::fmt::Debug for GtkColumnViewCell {
6775    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6776        f.debug_struct(&format!("GtkColumnViewCell @ {self:p}"))
6777            .finish()
6778    }
6779}
6780
6781#[repr(C)]
6782#[allow(dead_code)]
6783pub struct GtkColumnViewColumn {
6784    _data: [u8; 0],
6785    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6786}
6787
6788impl ::std::fmt::Debug for GtkColumnViewColumn {
6789    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6790        f.debug_struct(&format!("GtkColumnViewColumn @ {self:p}"))
6791            .finish()
6792    }
6793}
6794
6795#[repr(C)]
6796#[allow(dead_code)]
6797pub struct GtkColumnViewRow {
6798    _data: [u8; 0],
6799    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6800}
6801
6802impl ::std::fmt::Debug for GtkColumnViewRow {
6803    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6804        f.debug_struct(&format!("GtkColumnViewRow @ {self:p}"))
6805            .finish()
6806    }
6807}
6808
6809#[repr(C)]
6810#[allow(dead_code)]
6811pub struct GtkColumnViewSorter {
6812    _data: [u8; 0],
6813    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6814}
6815
6816impl ::std::fmt::Debug for GtkColumnViewSorter {
6817    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6818        f.debug_struct(&format!("GtkColumnViewSorter @ {self:p}"))
6819            .finish()
6820    }
6821}
6822
6823#[derive(Copy, Clone)]
6824#[repr(C)]
6825pub struct GtkComboBox {
6826    pub parent_instance: GtkWidget,
6827}
6828
6829impl ::std::fmt::Debug for GtkComboBox {
6830    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6831        f.debug_struct(&format!("GtkComboBox @ {self:p}"))
6832            .field("parent_instance", &self.parent_instance)
6833            .finish()
6834    }
6835}
6836
6837#[repr(C)]
6838#[allow(dead_code)]
6839pub struct GtkComboBoxText {
6840    _data: [u8; 0],
6841    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6842}
6843
6844impl ::std::fmt::Debug for GtkComboBoxText {
6845    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6846        f.debug_struct(&format!("GtkComboBoxText @ {self:p}"))
6847            .finish()
6848    }
6849}
6850
6851#[repr(C)]
6852#[allow(dead_code)]
6853pub struct GtkConstantExpression {
6854    _data: [u8; 0],
6855    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6856}
6857
6858impl ::std::fmt::Debug for GtkConstantExpression {
6859    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6860        f.debug_struct(&format!("GtkConstantExpression @ {self:p}"))
6861            .finish()
6862    }
6863}
6864
6865#[repr(C)]
6866#[allow(dead_code)]
6867pub struct GtkConstraint {
6868    _data: [u8; 0],
6869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6870}
6871
6872impl ::std::fmt::Debug for GtkConstraint {
6873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6874        f.debug_struct(&format!("GtkConstraint @ {self:p}"))
6875            .finish()
6876    }
6877}
6878
6879#[repr(C)]
6880#[allow(dead_code)]
6881pub struct GtkConstraintGuide {
6882    _data: [u8; 0],
6883    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6884}
6885
6886impl ::std::fmt::Debug for GtkConstraintGuide {
6887    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6888        f.debug_struct(&format!("GtkConstraintGuide @ {self:p}"))
6889            .finish()
6890    }
6891}
6892
6893#[repr(C)]
6894#[allow(dead_code)]
6895pub struct GtkConstraintLayout {
6896    _data: [u8; 0],
6897    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6898}
6899
6900impl ::std::fmt::Debug for GtkConstraintLayout {
6901    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6902        f.debug_struct(&format!("GtkConstraintLayout @ {self:p}"))
6903            .finish()
6904    }
6905}
6906
6907#[repr(C)]
6908#[allow(dead_code)]
6909pub struct GtkConstraintLayoutChild {
6910    _data: [u8; 0],
6911    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6912}
6913
6914impl ::std::fmt::Debug for GtkConstraintLayoutChild {
6915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6916        f.debug_struct(&format!("GtkConstraintLayoutChild @ {self:p}"))
6917            .finish()
6918    }
6919}
6920
6921#[derive(Copy, Clone)]
6922#[repr(C)]
6923pub struct GtkCssProvider {
6924    pub parent_instance: gobject::GObject,
6925}
6926
6927impl ::std::fmt::Debug for GtkCssProvider {
6928    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6929        f.debug_struct(&format!("GtkCssProvider @ {self:p}"))
6930            .field("parent_instance", &self.parent_instance)
6931            .finish()
6932    }
6933}
6934
6935#[repr(C)]
6936#[allow(dead_code)]
6937pub struct GtkCustomFilter {
6938    _data: [u8; 0],
6939    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6940}
6941
6942impl ::std::fmt::Debug for GtkCustomFilter {
6943    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6944        f.debug_struct(&format!("GtkCustomFilter @ {self:p}"))
6945            .finish()
6946    }
6947}
6948
6949#[repr(C)]
6950#[allow(dead_code)]
6951pub struct GtkCustomLayout {
6952    _data: [u8; 0],
6953    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6954}
6955
6956impl ::std::fmt::Debug for GtkCustomLayout {
6957    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6958        f.debug_struct(&format!("GtkCustomLayout @ {self:p}"))
6959            .finish()
6960    }
6961}
6962
6963#[repr(C)]
6964#[allow(dead_code)]
6965pub struct GtkCustomSorter {
6966    _data: [u8; 0],
6967    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6968}
6969
6970impl ::std::fmt::Debug for GtkCustomSorter {
6971    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6972        f.debug_struct(&format!("GtkCustomSorter @ {self:p}"))
6973            .finish()
6974    }
6975}
6976
6977#[derive(Copy, Clone)]
6978#[repr(C)]
6979pub struct GtkDialog {
6980    pub parent_instance: GtkWindow,
6981}
6982
6983impl ::std::fmt::Debug for GtkDialog {
6984    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
6985        f.debug_struct(&format!("GtkDialog @ {self:p}"))
6986            .field("parent_instance", &self.parent_instance)
6987            .finish()
6988    }
6989}
6990
6991#[repr(C)]
6992#[allow(dead_code)]
6993pub struct GtkDirectoryList {
6994    _data: [u8; 0],
6995    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
6996}
6997
6998impl ::std::fmt::Debug for GtkDirectoryList {
6999    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7000        f.debug_struct(&format!("GtkDirectoryList @ {self:p}"))
7001            .finish()
7002    }
7003}
7004
7005#[repr(C)]
7006#[allow(dead_code)]
7007pub struct GtkDragIcon {
7008    _data: [u8; 0],
7009    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7010}
7011
7012impl ::std::fmt::Debug for GtkDragIcon {
7013    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7014        f.debug_struct(&format!("GtkDragIcon @ {self:p}")).finish()
7015    }
7016}
7017
7018#[repr(C)]
7019#[allow(dead_code)]
7020pub struct GtkDragSource {
7021    _data: [u8; 0],
7022    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7023}
7024
7025impl ::std::fmt::Debug for GtkDragSource {
7026    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7027        f.debug_struct(&format!("GtkDragSource @ {self:p}"))
7028            .finish()
7029    }
7030}
7031
7032#[derive(Copy, Clone)]
7033#[repr(C)]
7034pub struct GtkDrawingArea {
7035    pub widget: GtkWidget,
7036}
7037
7038impl ::std::fmt::Debug for GtkDrawingArea {
7039    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7040        f.debug_struct(&format!("GtkDrawingArea @ {self:p}"))
7041            .field("widget", &self.widget)
7042            .finish()
7043    }
7044}
7045
7046#[repr(C)]
7047#[allow(dead_code)]
7048pub struct GtkDropControllerMotion {
7049    _data: [u8; 0],
7050    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7051}
7052
7053impl ::std::fmt::Debug for GtkDropControllerMotion {
7054    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7055        f.debug_struct(&format!("GtkDropControllerMotion @ {self:p}"))
7056            .finish()
7057    }
7058}
7059
7060#[repr(C)]
7061#[allow(dead_code)]
7062pub struct GtkDropDown {
7063    _data: [u8; 0],
7064    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7065}
7066
7067impl ::std::fmt::Debug for GtkDropDown {
7068    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7069        f.debug_struct(&format!("GtkDropDown @ {self:p}")).finish()
7070    }
7071}
7072
7073#[repr(C)]
7074#[allow(dead_code)]
7075pub struct GtkDropTarget {
7076    _data: [u8; 0],
7077    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7078}
7079
7080impl ::std::fmt::Debug for GtkDropTarget {
7081    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7082        f.debug_struct(&format!("GtkDropTarget @ {self:p}"))
7083            .finish()
7084    }
7085}
7086
7087#[repr(C)]
7088#[allow(dead_code)]
7089pub struct GtkDropTargetAsync {
7090    _data: [u8; 0],
7091    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7092}
7093
7094impl ::std::fmt::Debug for GtkDropTargetAsync {
7095    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7096        f.debug_struct(&format!("GtkDropTargetAsync @ {self:p}"))
7097            .finish()
7098    }
7099}
7100
7101#[repr(C)]
7102#[allow(dead_code)]
7103pub struct GtkEditableLabel {
7104    _data: [u8; 0],
7105    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7106}
7107
7108impl ::std::fmt::Debug for GtkEditableLabel {
7109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7110        f.debug_struct(&format!("GtkEditableLabel @ {self:p}"))
7111            .finish()
7112    }
7113}
7114
7115#[repr(C)]
7116#[allow(dead_code)]
7117pub struct GtkEmojiChooser {
7118    _data: [u8; 0],
7119    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7120}
7121
7122impl ::std::fmt::Debug for GtkEmojiChooser {
7123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7124        f.debug_struct(&format!("GtkEmojiChooser @ {self:p}"))
7125            .finish()
7126    }
7127}
7128
7129#[derive(Copy, Clone)]
7130#[repr(C)]
7131pub struct GtkEntry {
7132    pub parent_instance: GtkWidget,
7133}
7134
7135impl ::std::fmt::Debug for GtkEntry {
7136    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7137        f.debug_struct(&format!("GtkEntry @ {self:p}")).finish()
7138    }
7139}
7140
7141#[derive(Copy, Clone)]
7142#[repr(C)]
7143pub struct GtkEntryBuffer {
7144    pub parent_instance: gobject::GObject,
7145}
7146
7147impl ::std::fmt::Debug for GtkEntryBuffer {
7148    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7149        f.debug_struct(&format!("GtkEntryBuffer @ {self:p}"))
7150            .field("parent_instance", &self.parent_instance)
7151            .finish()
7152    }
7153}
7154
7155#[repr(C)]
7156#[allow(dead_code)]
7157pub struct GtkEntryCompletion {
7158    _data: [u8; 0],
7159    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7160}
7161
7162impl ::std::fmt::Debug for GtkEntryCompletion {
7163    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7164        f.debug_struct(&format!("GtkEntryCompletion @ {self:p}"))
7165            .finish()
7166    }
7167}
7168
7169#[repr(C)]
7170#[allow(dead_code)]
7171pub struct GtkEventController {
7172    _data: [u8; 0],
7173    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7174}
7175
7176impl ::std::fmt::Debug for GtkEventController {
7177    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7178        f.debug_struct(&format!("GtkEventController @ {self:p}"))
7179            .finish()
7180    }
7181}
7182
7183#[repr(C)]
7184#[allow(dead_code)]
7185pub struct GtkEventControllerFocus {
7186    _data: [u8; 0],
7187    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7188}
7189
7190impl ::std::fmt::Debug for GtkEventControllerFocus {
7191    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7192        f.debug_struct(&format!("GtkEventControllerFocus @ {self:p}"))
7193            .finish()
7194    }
7195}
7196
7197#[repr(C)]
7198#[allow(dead_code)]
7199pub struct GtkEventControllerKey {
7200    _data: [u8; 0],
7201    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7202}
7203
7204impl ::std::fmt::Debug for GtkEventControllerKey {
7205    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7206        f.debug_struct(&format!("GtkEventControllerKey @ {self:p}"))
7207            .finish()
7208    }
7209}
7210
7211#[repr(C)]
7212#[allow(dead_code)]
7213pub struct GtkEventControllerLegacy {
7214    _data: [u8; 0],
7215    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7216}
7217
7218impl ::std::fmt::Debug for GtkEventControllerLegacy {
7219    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7220        f.debug_struct(&format!("GtkEventControllerLegacy @ {self:p}"))
7221            .finish()
7222    }
7223}
7224
7225#[repr(C)]
7226#[allow(dead_code)]
7227pub struct GtkEventControllerMotion {
7228    _data: [u8; 0],
7229    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7230}
7231
7232impl ::std::fmt::Debug for GtkEventControllerMotion {
7233    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7234        f.debug_struct(&format!("GtkEventControllerMotion @ {self:p}"))
7235            .finish()
7236    }
7237}
7238
7239#[repr(C)]
7240#[allow(dead_code)]
7241pub struct GtkEventControllerScroll {
7242    _data: [u8; 0],
7243    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7244}
7245
7246impl ::std::fmt::Debug for GtkEventControllerScroll {
7247    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7248        f.debug_struct(&format!("GtkEventControllerScroll @ {self:p}"))
7249            .finish()
7250    }
7251}
7252
7253#[repr(C)]
7254#[allow(dead_code)]
7255pub struct GtkEveryFilter {
7256    _data: [u8; 0],
7257    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7258}
7259
7260impl ::std::fmt::Debug for GtkEveryFilter {
7261    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7262        f.debug_struct(&format!("GtkEveryFilter @ {self:p}"))
7263            .finish()
7264    }
7265}
7266
7267#[repr(C)]
7268#[allow(dead_code)]
7269pub struct GtkExpander {
7270    _data: [u8; 0],
7271    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7272}
7273
7274impl ::std::fmt::Debug for GtkExpander {
7275    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7276        f.debug_struct(&format!("GtkExpander @ {self:p}")).finish()
7277    }
7278}
7279
7280#[repr(C)]
7281#[allow(dead_code)]
7282pub struct GtkExpression {
7283    _data: [u8; 0],
7284    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7285}
7286
7287impl ::std::fmt::Debug for GtkExpression {
7288    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7289        f.debug_struct(&format!("GtkExpression @ {self:p}"))
7290            .finish()
7291    }
7292}
7293
7294#[repr(C)]
7295#[allow(dead_code)]
7296pub struct GtkFileChooserDialog {
7297    _data: [u8; 0],
7298    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7299}
7300
7301impl ::std::fmt::Debug for GtkFileChooserDialog {
7302    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7303        f.debug_struct(&format!("GtkFileChooserDialog @ {self:p}"))
7304            .finish()
7305    }
7306}
7307
7308#[repr(C)]
7309#[allow(dead_code)]
7310pub struct GtkFileChooserNative {
7311    _data: [u8; 0],
7312    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7313}
7314
7315impl ::std::fmt::Debug for GtkFileChooserNative {
7316    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7317        f.debug_struct(&format!("GtkFileChooserNative @ {self:p}"))
7318            .finish()
7319    }
7320}
7321
7322#[repr(C)]
7323#[allow(dead_code)]
7324pub struct GtkFileChooserWidget {
7325    _data: [u8; 0],
7326    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7327}
7328
7329impl ::std::fmt::Debug for GtkFileChooserWidget {
7330    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7331        f.debug_struct(&format!("GtkFileChooserWidget @ {self:p}"))
7332            .finish()
7333    }
7334}
7335
7336#[repr(C)]
7337#[allow(dead_code)]
7338pub struct GtkFileDialog {
7339    _data: [u8; 0],
7340    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7341}
7342
7343impl ::std::fmt::Debug for GtkFileDialog {
7344    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7345        f.debug_struct(&format!("GtkFileDialog @ {self:p}"))
7346            .finish()
7347    }
7348}
7349
7350#[repr(C)]
7351#[allow(dead_code)]
7352pub struct GtkFileFilter {
7353    _data: [u8; 0],
7354    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7355}
7356
7357impl ::std::fmt::Debug for GtkFileFilter {
7358    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7359        f.debug_struct(&format!("GtkFileFilter @ {self:p}"))
7360            .finish()
7361    }
7362}
7363
7364#[repr(C)]
7365#[allow(dead_code)]
7366pub struct GtkFileLauncher {
7367    _data: [u8; 0],
7368    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7369}
7370
7371impl ::std::fmt::Debug for GtkFileLauncher {
7372    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7373        f.debug_struct(&format!("GtkFileLauncher @ {self:p}"))
7374            .finish()
7375    }
7376}
7377
7378#[derive(Copy, Clone)]
7379#[repr(C)]
7380pub struct GtkFilter {
7381    pub parent_instance: gobject::GObject,
7382}
7383
7384impl ::std::fmt::Debug for GtkFilter {
7385    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7386        f.debug_struct(&format!("GtkFilter @ {self:p}"))
7387            .field("parent_instance", &self.parent_instance)
7388            .finish()
7389    }
7390}
7391
7392#[repr(C)]
7393#[allow(dead_code)]
7394pub struct GtkFilterListModel {
7395    _data: [u8; 0],
7396    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7397}
7398
7399impl ::std::fmt::Debug for GtkFilterListModel {
7400    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7401        f.debug_struct(&format!("GtkFilterListModel @ {self:p}"))
7402            .finish()
7403    }
7404}
7405
7406#[derive(Copy, Clone)]
7407#[repr(C)]
7408pub struct GtkFixed {
7409    pub parent_instance: GtkWidget,
7410}
7411
7412impl ::std::fmt::Debug for GtkFixed {
7413    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7414        f.debug_struct(&format!("GtkFixed @ {self:p}"))
7415            .field("parent_instance", &self.parent_instance)
7416            .finish()
7417    }
7418}
7419
7420#[repr(C)]
7421#[allow(dead_code)]
7422pub struct GtkFixedLayout {
7423    _data: [u8; 0],
7424    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7425}
7426
7427impl ::std::fmt::Debug for GtkFixedLayout {
7428    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7429        f.debug_struct(&format!("GtkFixedLayout @ {self:p}"))
7430            .finish()
7431    }
7432}
7433
7434#[repr(C)]
7435#[allow(dead_code)]
7436pub struct GtkFixedLayoutChild {
7437    _data: [u8; 0],
7438    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7439}
7440
7441impl ::std::fmt::Debug for GtkFixedLayoutChild {
7442    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7443        f.debug_struct(&format!("GtkFixedLayoutChild @ {self:p}"))
7444            .finish()
7445    }
7446}
7447
7448#[repr(C)]
7449#[allow(dead_code)]
7450pub struct GtkFlattenListModel {
7451    _data: [u8; 0],
7452    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7453}
7454
7455impl ::std::fmt::Debug for GtkFlattenListModel {
7456    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7457        f.debug_struct(&format!("GtkFlattenListModel @ {self:p}"))
7458            .finish()
7459    }
7460}
7461
7462#[repr(C)]
7463#[allow(dead_code)]
7464pub struct GtkFlowBox {
7465    _data: [u8; 0],
7466    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7467}
7468
7469impl ::std::fmt::Debug for GtkFlowBox {
7470    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7471        f.debug_struct(&format!("GtkFlowBox @ {self:p}")).finish()
7472    }
7473}
7474
7475#[derive(Copy, Clone)]
7476#[repr(C)]
7477pub struct GtkFlowBoxChild {
7478    pub parent_instance: GtkWidget,
7479}
7480
7481impl ::std::fmt::Debug for GtkFlowBoxChild {
7482    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7483        f.debug_struct(&format!("GtkFlowBoxChild @ {self:p}"))
7484            .finish()
7485    }
7486}
7487
7488#[repr(C)]
7489#[allow(dead_code)]
7490pub struct GtkFontButton {
7491    _data: [u8; 0],
7492    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7493}
7494
7495impl ::std::fmt::Debug for GtkFontButton {
7496    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7497        f.debug_struct(&format!("GtkFontButton @ {self:p}"))
7498            .finish()
7499    }
7500}
7501
7502#[repr(C)]
7503#[allow(dead_code)]
7504pub struct GtkFontChooserDialog {
7505    _data: [u8; 0],
7506    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7507}
7508
7509impl ::std::fmt::Debug for GtkFontChooserDialog {
7510    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7511        f.debug_struct(&format!("GtkFontChooserDialog @ {self:p}"))
7512            .finish()
7513    }
7514}
7515
7516#[repr(C)]
7517#[allow(dead_code)]
7518pub struct GtkFontChooserWidget {
7519    _data: [u8; 0],
7520    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7521}
7522
7523impl ::std::fmt::Debug for GtkFontChooserWidget {
7524    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7525        f.debug_struct(&format!("GtkFontChooserWidget @ {self:p}"))
7526            .finish()
7527    }
7528}
7529
7530#[repr(C)]
7531#[allow(dead_code)]
7532pub struct GtkFontDialog {
7533    _data: [u8; 0],
7534    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7535}
7536
7537impl ::std::fmt::Debug for GtkFontDialog {
7538    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7539        f.debug_struct(&format!("GtkFontDialog @ {self:p}"))
7540            .finish()
7541    }
7542}
7543
7544#[repr(C)]
7545#[allow(dead_code)]
7546pub struct GtkFontDialogButton {
7547    _data: [u8; 0],
7548    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7549}
7550
7551impl ::std::fmt::Debug for GtkFontDialogButton {
7552    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7553        f.debug_struct(&format!("GtkFontDialogButton @ {self:p}"))
7554            .finish()
7555    }
7556}
7557
7558#[derive(Copy, Clone)]
7559#[repr(C)]
7560pub struct GtkFrame {
7561    pub parent_instance: GtkWidget,
7562}
7563
7564impl ::std::fmt::Debug for GtkFrame {
7565    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7566        f.debug_struct(&format!("GtkFrame @ {self:p}"))
7567            .field("parent_instance", &self.parent_instance)
7568            .finish()
7569    }
7570}
7571
7572#[derive(Copy, Clone)]
7573#[repr(C)]
7574pub struct GtkGLArea {
7575    pub parent_instance: GtkWidget,
7576}
7577
7578impl ::std::fmt::Debug for GtkGLArea {
7579    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7580        f.debug_struct(&format!("GtkGLArea @ {self:p}")).finish()
7581    }
7582}
7583
7584#[repr(C)]
7585#[allow(dead_code)]
7586pub struct GtkGesture {
7587    _data: [u8; 0],
7588    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7589}
7590
7591impl ::std::fmt::Debug for GtkGesture {
7592    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7593        f.debug_struct(&format!("GtkGesture @ {self:p}")).finish()
7594    }
7595}
7596
7597#[repr(C)]
7598#[allow(dead_code)]
7599pub struct GtkGestureClick {
7600    _data: [u8; 0],
7601    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7602}
7603
7604impl ::std::fmt::Debug for GtkGestureClick {
7605    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7606        f.debug_struct(&format!("GtkGestureClick @ {self:p}"))
7607            .finish()
7608    }
7609}
7610
7611#[repr(C)]
7612#[allow(dead_code)]
7613pub struct GtkGestureDrag {
7614    _data: [u8; 0],
7615    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7616}
7617
7618impl ::std::fmt::Debug for GtkGestureDrag {
7619    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7620        f.debug_struct(&format!("GtkGestureDrag @ {self:p}"))
7621            .finish()
7622    }
7623}
7624
7625#[repr(C)]
7626#[allow(dead_code)]
7627pub struct GtkGestureLongPress {
7628    _data: [u8; 0],
7629    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7630}
7631
7632impl ::std::fmt::Debug for GtkGestureLongPress {
7633    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7634        f.debug_struct(&format!("GtkGestureLongPress @ {self:p}"))
7635            .finish()
7636    }
7637}
7638
7639#[repr(C)]
7640#[allow(dead_code)]
7641pub struct GtkGesturePan {
7642    _data: [u8; 0],
7643    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7644}
7645
7646impl ::std::fmt::Debug for GtkGesturePan {
7647    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7648        f.debug_struct(&format!("GtkGesturePan @ {self:p}"))
7649            .finish()
7650    }
7651}
7652
7653#[repr(C)]
7654#[allow(dead_code)]
7655pub struct GtkGestureRotate {
7656    _data: [u8; 0],
7657    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7658}
7659
7660impl ::std::fmt::Debug for GtkGestureRotate {
7661    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7662        f.debug_struct(&format!("GtkGestureRotate @ {self:p}"))
7663            .finish()
7664    }
7665}
7666
7667#[repr(C)]
7668#[allow(dead_code)]
7669pub struct GtkGestureSingle {
7670    _data: [u8; 0],
7671    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7672}
7673
7674impl ::std::fmt::Debug for GtkGestureSingle {
7675    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7676        f.debug_struct(&format!("GtkGestureSingle @ {self:p}"))
7677            .finish()
7678    }
7679}
7680
7681#[repr(C)]
7682#[allow(dead_code)]
7683pub struct GtkGestureStylus {
7684    _data: [u8; 0],
7685    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7686}
7687
7688impl ::std::fmt::Debug for GtkGestureStylus {
7689    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7690        f.debug_struct(&format!("GtkGestureStylus @ {self:p}"))
7691            .finish()
7692    }
7693}
7694
7695#[repr(C)]
7696#[allow(dead_code)]
7697pub struct GtkGestureSwipe {
7698    _data: [u8; 0],
7699    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7700}
7701
7702impl ::std::fmt::Debug for GtkGestureSwipe {
7703    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7704        f.debug_struct(&format!("GtkGestureSwipe @ {self:p}"))
7705            .finish()
7706    }
7707}
7708
7709#[repr(C)]
7710#[allow(dead_code)]
7711pub struct GtkGestureZoom {
7712    _data: [u8; 0],
7713    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7714}
7715
7716impl ::std::fmt::Debug for GtkGestureZoom {
7717    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7718        f.debug_struct(&format!("GtkGestureZoom @ {self:p}"))
7719            .finish()
7720    }
7721}
7722
7723#[repr(C)]
7724#[allow(dead_code)]
7725pub struct GtkGraphicsOffload {
7726    _data: [u8; 0],
7727    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7728}
7729
7730impl ::std::fmt::Debug for GtkGraphicsOffload {
7731    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7732        f.debug_struct(&format!("GtkGraphicsOffload @ {self:p}"))
7733            .finish()
7734    }
7735}
7736
7737#[derive(Copy, Clone)]
7738#[repr(C)]
7739pub struct GtkGrid {
7740    pub parent_instance: GtkWidget,
7741}
7742
7743impl ::std::fmt::Debug for GtkGrid {
7744    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7745        f.debug_struct(&format!("GtkGrid @ {self:p}")).finish()
7746    }
7747}
7748
7749#[repr(C)]
7750#[allow(dead_code)]
7751pub struct GtkGridLayout {
7752    _data: [u8; 0],
7753    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7754}
7755
7756impl ::std::fmt::Debug for GtkGridLayout {
7757    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7758        f.debug_struct(&format!("GtkGridLayout @ {self:p}"))
7759            .finish()
7760    }
7761}
7762
7763#[repr(C)]
7764#[allow(dead_code)]
7765pub struct GtkGridLayoutChild {
7766    _data: [u8; 0],
7767    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7768}
7769
7770impl ::std::fmt::Debug for GtkGridLayoutChild {
7771    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7772        f.debug_struct(&format!("GtkGridLayoutChild @ {self:p}"))
7773            .finish()
7774    }
7775}
7776
7777#[repr(C)]
7778#[allow(dead_code)]
7779pub struct GtkGridView {
7780    _data: [u8; 0],
7781    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7782}
7783
7784impl ::std::fmt::Debug for GtkGridView {
7785    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7786        f.debug_struct(&format!("GtkGridView @ {self:p}")).finish()
7787    }
7788}
7789
7790#[repr(C)]
7791#[allow(dead_code)]
7792pub struct GtkHeaderBar {
7793    _data: [u8; 0],
7794    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7795}
7796
7797impl ::std::fmt::Debug for GtkHeaderBar {
7798    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7799        f.debug_struct(&format!("GtkHeaderBar @ {self:p}")).finish()
7800    }
7801}
7802
7803#[derive(Copy, Clone)]
7804#[repr(C)]
7805pub struct GtkIMContext {
7806    pub parent_instance: gobject::GObject,
7807}
7808
7809impl ::std::fmt::Debug for GtkIMContext {
7810    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7811        f.debug_struct(&format!("GtkIMContext @ {self:p}"))
7812            .field("parent_instance", &self.parent_instance)
7813            .finish()
7814    }
7815}
7816
7817#[derive(Copy, Clone)]
7818#[repr(C)]
7819pub struct GtkIMContextSimple {
7820    pub object: GtkIMContext,
7821    pub priv_: *mut GtkIMContextSimplePrivate,
7822}
7823
7824impl ::std::fmt::Debug for GtkIMContextSimple {
7825    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7826        f.debug_struct(&format!("GtkIMContextSimple @ {self:p}"))
7827            .field("object", &self.object)
7828            .finish()
7829    }
7830}
7831
7832#[derive(Copy, Clone)]
7833#[repr(C)]
7834pub struct GtkIMMulticontext {
7835    pub object: GtkIMContext,
7836    pub priv_: *mut GtkIMMulticontextPrivate,
7837}
7838
7839impl ::std::fmt::Debug for GtkIMMulticontext {
7840    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7841        f.debug_struct(&format!("GtkIMMulticontext @ {self:p}"))
7842            .field("object", &self.object)
7843            .finish()
7844    }
7845}
7846
7847#[repr(C)]
7848#[allow(dead_code)]
7849pub struct GtkIconPaintable {
7850    _data: [u8; 0],
7851    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7852}
7853
7854impl ::std::fmt::Debug for GtkIconPaintable {
7855    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7856        f.debug_struct(&format!("GtkIconPaintable @ {self:p}"))
7857            .finish()
7858    }
7859}
7860
7861#[repr(C)]
7862#[allow(dead_code)]
7863pub struct GtkIconTheme {
7864    _data: [u8; 0],
7865    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7866}
7867
7868impl ::std::fmt::Debug for GtkIconTheme {
7869    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7870        f.debug_struct(&format!("GtkIconTheme @ {self:p}")).finish()
7871    }
7872}
7873
7874#[repr(C)]
7875#[allow(dead_code)]
7876pub struct GtkIconView {
7877    _data: [u8; 0],
7878    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7879}
7880
7881impl ::std::fmt::Debug for GtkIconView {
7882    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7883        f.debug_struct(&format!("GtkIconView @ {self:p}")).finish()
7884    }
7885}
7886
7887#[repr(C)]
7888#[allow(dead_code)]
7889pub struct GtkImage {
7890    _data: [u8; 0],
7891    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7892}
7893
7894impl ::std::fmt::Debug for GtkImage {
7895    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7896        f.debug_struct(&format!("GtkImage @ {self:p}")).finish()
7897    }
7898}
7899
7900#[repr(C)]
7901#[allow(dead_code)]
7902pub struct GtkInfoBar {
7903    _data: [u8; 0],
7904    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7905}
7906
7907impl ::std::fmt::Debug for GtkInfoBar {
7908    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7909        f.debug_struct(&format!("GtkInfoBar @ {self:p}")).finish()
7910    }
7911}
7912
7913#[repr(C)]
7914#[allow(dead_code)]
7915pub struct GtkInscription {
7916    _data: [u8; 0],
7917    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7918}
7919
7920impl ::std::fmt::Debug for GtkInscription {
7921    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7922        f.debug_struct(&format!("GtkInscription @ {self:p}"))
7923            .finish()
7924    }
7925}
7926
7927#[repr(C)]
7928#[allow(dead_code)]
7929pub struct GtkKeyvalTrigger {
7930    _data: [u8; 0],
7931    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7932}
7933
7934impl ::std::fmt::Debug for GtkKeyvalTrigger {
7935    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7936        f.debug_struct(&format!("GtkKeyvalTrigger @ {self:p}"))
7937            .finish()
7938    }
7939}
7940
7941#[repr(C)]
7942#[allow(dead_code)]
7943pub struct GtkLabel {
7944    _data: [u8; 0],
7945    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7946}
7947
7948impl ::std::fmt::Debug for GtkLabel {
7949    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7950        f.debug_struct(&format!("GtkLabel @ {self:p}")).finish()
7951    }
7952}
7953
7954#[derive(Copy, Clone)]
7955#[repr(C)]
7956pub struct GtkLayoutChild {
7957    pub parent_instance: gobject::GObject,
7958}
7959
7960impl ::std::fmt::Debug for GtkLayoutChild {
7961    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7962        f.debug_struct(&format!("GtkLayoutChild @ {self:p}"))
7963            .field("parent_instance", &self.parent_instance)
7964            .finish()
7965    }
7966}
7967
7968#[derive(Copy, Clone)]
7969#[repr(C)]
7970pub struct GtkLayoutManager {
7971    pub parent_instance: gobject::GObject,
7972}
7973
7974impl ::std::fmt::Debug for GtkLayoutManager {
7975    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7976        f.debug_struct(&format!("GtkLayoutManager @ {self:p}"))
7977            .field("parent_instance", &self.parent_instance)
7978            .finish()
7979    }
7980}
7981
7982#[repr(C)]
7983#[allow(dead_code)]
7984pub struct GtkLevelBar {
7985    _data: [u8; 0],
7986    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
7987}
7988
7989impl ::std::fmt::Debug for GtkLevelBar {
7990    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
7991        f.debug_struct(&format!("GtkLevelBar @ {self:p}")).finish()
7992    }
7993}
7994
7995#[repr(C)]
7996#[allow(dead_code)]
7997pub struct GtkLinkButton {
7998    _data: [u8; 0],
7999    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8000}
8001
8002impl ::std::fmt::Debug for GtkLinkButton {
8003    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8004        f.debug_struct(&format!("GtkLinkButton @ {self:p}"))
8005            .finish()
8006    }
8007}
8008
8009#[repr(C)]
8010#[allow(dead_code)]
8011pub struct GtkListBase {
8012    _data: [u8; 0],
8013    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8014}
8015
8016impl ::std::fmt::Debug for GtkListBase {
8017    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8018        f.debug_struct(&format!("GtkListBase @ {self:p}")).finish()
8019    }
8020}
8021
8022#[repr(C)]
8023#[allow(dead_code)]
8024pub struct GtkListBox {
8025    _data: [u8; 0],
8026    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8027}
8028
8029impl ::std::fmt::Debug for GtkListBox {
8030    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8031        f.debug_struct(&format!("GtkListBox @ {self:p}")).finish()
8032    }
8033}
8034
8035#[derive(Copy, Clone)]
8036#[repr(C)]
8037pub struct GtkListBoxRow {
8038    pub parent_instance: GtkWidget,
8039}
8040
8041impl ::std::fmt::Debug for GtkListBoxRow {
8042    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8043        f.debug_struct(&format!("GtkListBoxRow @ {self:p}"))
8044            .field("parent_instance", &self.parent_instance)
8045            .finish()
8046    }
8047}
8048
8049#[repr(C)]
8050#[allow(dead_code)]
8051pub struct GtkListHeader {
8052    _data: [u8; 0],
8053    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8054}
8055
8056impl ::std::fmt::Debug for GtkListHeader {
8057    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8058        f.debug_struct(&format!("GtkListHeader @ {self:p}"))
8059            .finish()
8060    }
8061}
8062
8063#[repr(C)]
8064#[allow(dead_code)]
8065pub struct GtkListItem {
8066    _data: [u8; 0],
8067    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8068}
8069
8070impl ::std::fmt::Debug for GtkListItem {
8071    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8072        f.debug_struct(&format!("GtkListItem @ {self:p}")).finish()
8073    }
8074}
8075
8076#[repr(C)]
8077#[allow(dead_code)]
8078pub struct GtkListItemFactory {
8079    _data: [u8; 0],
8080    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8081}
8082
8083impl ::std::fmt::Debug for GtkListItemFactory {
8084    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8085        f.debug_struct(&format!("GtkListItemFactory @ {self:p}"))
8086            .finish()
8087    }
8088}
8089
8090#[derive(Copy, Clone)]
8091#[repr(C)]
8092pub struct GtkListStore {
8093    pub parent: gobject::GObject,
8094    pub priv_: *mut GtkListStorePrivate,
8095}
8096
8097impl ::std::fmt::Debug for GtkListStore {
8098    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8099        f.debug_struct(&format!("GtkListStore @ {self:p}"))
8100            .field("parent", &self.parent)
8101            .finish()
8102    }
8103}
8104
8105#[repr(C)]
8106#[allow(dead_code)]
8107pub struct GtkListView {
8108    _data: [u8; 0],
8109    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8110}
8111
8112impl ::std::fmt::Debug for GtkListView {
8113    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8114        f.debug_struct(&format!("GtkListView @ {self:p}")).finish()
8115    }
8116}
8117
8118#[repr(C)]
8119#[allow(dead_code)]
8120pub struct GtkLockButton {
8121    _data: [u8; 0],
8122    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8123}
8124
8125impl ::std::fmt::Debug for GtkLockButton {
8126    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8127        f.debug_struct(&format!("GtkLockButton @ {self:p}"))
8128            .finish()
8129    }
8130}
8131
8132#[repr(C)]
8133#[allow(dead_code)]
8134pub struct GtkMapListModel {
8135    _data: [u8; 0],
8136    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8137}
8138
8139impl ::std::fmt::Debug for GtkMapListModel {
8140    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8141        f.debug_struct(&format!("GtkMapListModel @ {self:p}"))
8142            .finish()
8143    }
8144}
8145
8146#[repr(C)]
8147#[allow(dead_code)]
8148pub struct GtkMediaControls {
8149    _data: [u8; 0],
8150    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8151}
8152
8153impl ::std::fmt::Debug for GtkMediaControls {
8154    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8155        f.debug_struct(&format!("GtkMediaControls @ {self:p}"))
8156            .finish()
8157    }
8158}
8159
8160#[derive(Copy, Clone)]
8161#[repr(C)]
8162pub struct GtkMediaFile {
8163    pub parent_instance: GtkMediaStream,
8164}
8165
8166impl ::std::fmt::Debug for GtkMediaFile {
8167    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8168        f.debug_struct(&format!("GtkMediaFile @ {self:p}"))
8169            .field("parent_instance", &self.parent_instance)
8170            .finish()
8171    }
8172}
8173
8174#[derive(Copy, Clone)]
8175#[repr(C)]
8176pub struct GtkMediaStream {
8177    pub parent_instance: gobject::GObject,
8178}
8179
8180impl ::std::fmt::Debug for GtkMediaStream {
8181    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8182        f.debug_struct(&format!("GtkMediaStream @ {self:p}"))
8183            .field("parent_instance", &self.parent_instance)
8184            .finish()
8185    }
8186}
8187
8188#[repr(C)]
8189#[allow(dead_code)]
8190pub struct GtkMenuButton {
8191    _data: [u8; 0],
8192    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8193}
8194
8195impl ::std::fmt::Debug for GtkMenuButton {
8196    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8197        f.debug_struct(&format!("GtkMenuButton @ {self:p}"))
8198            .finish()
8199    }
8200}
8201
8202#[derive(Copy, Clone)]
8203#[repr(C)]
8204pub struct GtkMessageDialog {
8205    pub parent_instance: GtkDialog,
8206}
8207
8208impl ::std::fmt::Debug for GtkMessageDialog {
8209    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8210        f.debug_struct(&format!("GtkMessageDialog @ {self:p}"))
8211            .field("parent_instance", &self.parent_instance)
8212            .finish()
8213    }
8214}
8215
8216#[repr(C)]
8217#[allow(dead_code)]
8218pub struct GtkMnemonicAction {
8219    _data: [u8; 0],
8220    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8221}
8222
8223impl ::std::fmt::Debug for GtkMnemonicAction {
8224    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8225        f.debug_struct(&format!("GtkMnemonicAction @ {self:p}"))
8226            .finish()
8227    }
8228}
8229
8230#[repr(C)]
8231#[allow(dead_code)]
8232pub struct GtkMnemonicTrigger {
8233    _data: [u8; 0],
8234    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8235}
8236
8237impl ::std::fmt::Debug for GtkMnemonicTrigger {
8238    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8239        f.debug_struct(&format!("GtkMnemonicTrigger @ {self:p}"))
8240            .finish()
8241    }
8242}
8243
8244#[derive(Copy, Clone)]
8245#[repr(C)]
8246pub struct GtkMountOperation {
8247    pub parent_instance: gio::GMountOperation,
8248    pub priv_: *mut GtkMountOperationPrivate,
8249}
8250
8251impl ::std::fmt::Debug for GtkMountOperation {
8252    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8253        f.debug_struct(&format!("GtkMountOperation @ {self:p}"))
8254            .field("parent_instance", &self.parent_instance)
8255            .field("priv_", &self.priv_)
8256            .finish()
8257    }
8258}
8259
8260#[repr(C)]
8261#[allow(dead_code)]
8262pub struct GtkMultiFilter {
8263    _data: [u8; 0],
8264    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8265}
8266
8267impl ::std::fmt::Debug for GtkMultiFilter {
8268    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8269        f.debug_struct(&format!("GtkMultiFilter @ {self:p}"))
8270            .finish()
8271    }
8272}
8273
8274#[repr(C)]
8275#[allow(dead_code)]
8276pub struct GtkMultiSelection {
8277    _data: [u8; 0],
8278    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8279}
8280
8281impl ::std::fmt::Debug for GtkMultiSelection {
8282    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8283        f.debug_struct(&format!("GtkMultiSelection @ {self:p}"))
8284            .finish()
8285    }
8286}
8287
8288#[repr(C)]
8289#[allow(dead_code)]
8290pub struct GtkMultiSorter {
8291    _data: [u8; 0],
8292    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8293}
8294
8295impl ::std::fmt::Debug for GtkMultiSorter {
8296    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8297        f.debug_struct(&format!("GtkMultiSorter @ {self:p}"))
8298            .finish()
8299    }
8300}
8301
8302#[repr(C)]
8303#[allow(dead_code)]
8304pub struct GtkNamedAction {
8305    _data: [u8; 0],
8306    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8307}
8308
8309impl ::std::fmt::Debug for GtkNamedAction {
8310    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8311        f.debug_struct(&format!("GtkNamedAction @ {self:p}"))
8312            .finish()
8313    }
8314}
8315
8316#[derive(Copy, Clone)]
8317#[repr(C)]
8318pub struct GtkNativeDialog {
8319    pub parent_instance: gobject::GObject,
8320}
8321
8322impl ::std::fmt::Debug for GtkNativeDialog {
8323    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8324        f.debug_struct(&format!("GtkNativeDialog @ {self:p}"))
8325            .field("parent_instance", &self.parent_instance)
8326            .finish()
8327    }
8328}
8329
8330#[repr(C)]
8331#[allow(dead_code)]
8332pub struct GtkNeverTrigger {
8333    _data: [u8; 0],
8334    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8335}
8336
8337impl ::std::fmt::Debug for GtkNeverTrigger {
8338    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8339        f.debug_struct(&format!("GtkNeverTrigger @ {self:p}"))
8340            .finish()
8341    }
8342}
8343
8344#[repr(C)]
8345#[allow(dead_code)]
8346pub struct GtkNoSelection {
8347    _data: [u8; 0],
8348    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8349}
8350
8351impl ::std::fmt::Debug for GtkNoSelection {
8352    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8353        f.debug_struct(&format!("GtkNoSelection @ {self:p}"))
8354            .finish()
8355    }
8356}
8357
8358#[repr(C)]
8359#[allow(dead_code)]
8360pub struct GtkNotebook {
8361    _data: [u8; 0],
8362    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8363}
8364
8365impl ::std::fmt::Debug for GtkNotebook {
8366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8367        f.debug_struct(&format!("GtkNotebook @ {self:p}")).finish()
8368    }
8369}
8370
8371#[repr(C)]
8372#[allow(dead_code)]
8373pub struct GtkNotebookPage {
8374    _data: [u8; 0],
8375    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8376}
8377
8378impl ::std::fmt::Debug for GtkNotebookPage {
8379    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8380        f.debug_struct(&format!("GtkNotebookPage @ {self:p}"))
8381            .finish()
8382    }
8383}
8384
8385#[repr(C)]
8386#[allow(dead_code)]
8387pub struct GtkNothingAction {
8388    _data: [u8; 0],
8389    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8390}
8391
8392impl ::std::fmt::Debug for GtkNothingAction {
8393    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8394        f.debug_struct(&format!("GtkNothingAction @ {self:p}"))
8395            .finish()
8396    }
8397}
8398
8399#[repr(C)]
8400#[allow(dead_code)]
8401pub struct GtkNumericSorter {
8402    _data: [u8; 0],
8403    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8404}
8405
8406impl ::std::fmt::Debug for GtkNumericSorter {
8407    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8408        f.debug_struct(&format!("GtkNumericSorter @ {self:p}"))
8409            .finish()
8410    }
8411}
8412
8413#[repr(C)]
8414#[allow(dead_code)]
8415pub struct GtkObjectExpression {
8416    _data: [u8; 0],
8417    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8418}
8419
8420impl ::std::fmt::Debug for GtkObjectExpression {
8421    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8422        f.debug_struct(&format!("GtkObjectExpression @ {self:p}"))
8423            .finish()
8424    }
8425}
8426
8427#[repr(C)]
8428#[allow(dead_code)]
8429pub struct GtkOverlay {
8430    _data: [u8; 0],
8431    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8432}
8433
8434impl ::std::fmt::Debug for GtkOverlay {
8435    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8436        f.debug_struct(&format!("GtkOverlay @ {self:p}")).finish()
8437    }
8438}
8439
8440#[repr(C)]
8441#[allow(dead_code)]
8442pub struct GtkOverlayLayout {
8443    _data: [u8; 0],
8444    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8445}
8446
8447impl ::std::fmt::Debug for GtkOverlayLayout {
8448    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8449        f.debug_struct(&format!("GtkOverlayLayout @ {self:p}"))
8450            .finish()
8451    }
8452}
8453
8454#[repr(C)]
8455#[allow(dead_code)]
8456pub struct GtkOverlayLayoutChild {
8457    _data: [u8; 0],
8458    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8459}
8460
8461impl ::std::fmt::Debug for GtkOverlayLayoutChild {
8462    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8463        f.debug_struct(&format!("GtkOverlayLayoutChild @ {self:p}"))
8464            .finish()
8465    }
8466}
8467
8468#[repr(C)]
8469#[allow(dead_code)]
8470pub struct GtkPadController {
8471    _data: [u8; 0],
8472    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8473}
8474
8475impl ::std::fmt::Debug for GtkPadController {
8476    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8477        f.debug_struct(&format!("GtkPadController @ {self:p}"))
8478            .finish()
8479    }
8480}
8481
8482#[repr(C)]
8483#[allow(dead_code)]
8484pub struct GtkPageSetup {
8485    _data: [u8; 0],
8486    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8487}
8488
8489impl ::std::fmt::Debug for GtkPageSetup {
8490    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8491        f.debug_struct(&format!("GtkPageSetup @ {self:p}")).finish()
8492    }
8493}
8494
8495#[repr(C)]
8496#[allow(dead_code)]
8497pub struct GtkPageSetupUnixDialog {
8498    _data: [u8; 0],
8499    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8500}
8501
8502impl ::std::fmt::Debug for GtkPageSetupUnixDialog {
8503    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8504        f.debug_struct(&format!("GtkPageSetupUnixDialog @ {self:p}"))
8505            .finish()
8506    }
8507}
8508
8509#[repr(C)]
8510#[allow(dead_code)]
8511pub struct GtkPaned {
8512    _data: [u8; 0],
8513    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8514}
8515
8516impl ::std::fmt::Debug for GtkPaned {
8517    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8518        f.debug_struct(&format!("GtkPaned @ {self:p}")).finish()
8519    }
8520}
8521
8522#[derive(Copy, Clone)]
8523#[repr(C)]
8524pub struct GtkParamSpecExpression {
8525    pub parent_instance: gobject::GParamSpec,
8526}
8527
8528impl ::std::fmt::Debug for GtkParamSpecExpression {
8529    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8530        f.debug_struct(&format!("GtkParamSpecExpression @ {self:p}"))
8531            .finish()
8532    }
8533}
8534
8535#[repr(C)]
8536#[allow(dead_code)]
8537pub struct GtkPasswordEntry {
8538    _data: [u8; 0],
8539    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8540}
8541
8542impl ::std::fmt::Debug for GtkPasswordEntry {
8543    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8544        f.debug_struct(&format!("GtkPasswordEntry @ {self:p}"))
8545            .finish()
8546    }
8547}
8548
8549#[repr(C)]
8550#[allow(dead_code)]
8551pub struct GtkPasswordEntryBuffer {
8552    _data: [u8; 0],
8553    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8554}
8555
8556impl ::std::fmt::Debug for GtkPasswordEntryBuffer {
8557    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8558        f.debug_struct(&format!("GtkPasswordEntryBuffer @ {self:p}"))
8559            .finish()
8560    }
8561}
8562
8563#[repr(C)]
8564#[allow(dead_code)]
8565pub struct GtkPicture {
8566    _data: [u8; 0],
8567    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8568}
8569
8570impl ::std::fmt::Debug for GtkPicture {
8571    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8572        f.debug_struct(&format!("GtkPicture @ {self:p}")).finish()
8573    }
8574}
8575
8576#[derive(Copy, Clone)]
8577#[repr(C)]
8578pub struct GtkPopover {
8579    pub parent: GtkWidget,
8580}
8581
8582impl ::std::fmt::Debug for GtkPopover {
8583    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8584        f.debug_struct(&format!("GtkPopover @ {self:p}"))
8585            .field("parent", &self.parent)
8586            .finish()
8587    }
8588}
8589
8590#[repr(C)]
8591#[allow(dead_code)]
8592pub struct GtkPopoverBin {
8593    _data: [u8; 0],
8594    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8595}
8596
8597impl ::std::fmt::Debug for GtkPopoverBin {
8598    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8599        f.debug_struct(&format!("GtkPopoverBin @ {self:p}"))
8600            .finish()
8601    }
8602}
8603
8604#[repr(C)]
8605#[allow(dead_code)]
8606pub struct GtkPopoverMenu {
8607    _data: [u8; 0],
8608    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8609}
8610
8611impl ::std::fmt::Debug for GtkPopoverMenu {
8612    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8613        f.debug_struct(&format!("GtkPopoverMenu @ {self:p}"))
8614            .finish()
8615    }
8616}
8617
8618#[repr(C)]
8619#[allow(dead_code)]
8620pub struct GtkPopoverMenuBar {
8621    _data: [u8; 0],
8622    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8623}
8624
8625impl ::std::fmt::Debug for GtkPopoverMenuBar {
8626    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8627        f.debug_struct(&format!("GtkPopoverMenuBar @ {self:p}"))
8628            .finish()
8629    }
8630}
8631
8632#[repr(C)]
8633#[allow(dead_code)]
8634pub struct GtkPrintContext {
8635    _data: [u8; 0],
8636    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8637}
8638
8639impl ::std::fmt::Debug for GtkPrintContext {
8640    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8641        f.debug_struct(&format!("GtkPrintContext @ {self:p}"))
8642            .finish()
8643    }
8644}
8645
8646#[repr(C)]
8647#[allow(dead_code)]
8648pub struct GtkPrintDialog {
8649    _data: [u8; 0],
8650    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8651}
8652
8653impl ::std::fmt::Debug for GtkPrintDialog {
8654    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8655        f.debug_struct(&format!("GtkPrintDialog @ {self:p}"))
8656            .finish()
8657    }
8658}
8659
8660#[repr(C)]
8661#[allow(dead_code)]
8662pub struct GtkPrintJob {
8663    _data: [u8; 0],
8664    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8665}
8666
8667impl ::std::fmt::Debug for GtkPrintJob {
8668    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8669        f.debug_struct(&format!("GtkPrintJob @ {self:p}")).finish()
8670    }
8671}
8672
8673#[derive(Copy, Clone)]
8674#[repr(C)]
8675pub struct GtkPrintOperation {
8676    pub parent_instance: gobject::GObject,
8677    pub priv_: *mut GtkPrintOperationPrivate,
8678}
8679
8680impl ::std::fmt::Debug for GtkPrintOperation {
8681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8682        f.debug_struct(&format!("GtkPrintOperation @ {self:p}"))
8683            .field("parent_instance", &self.parent_instance)
8684            .finish()
8685    }
8686}
8687
8688#[repr(C)]
8689#[allow(dead_code)]
8690pub struct GtkPrintSettings {
8691    _data: [u8; 0],
8692    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8693}
8694
8695impl ::std::fmt::Debug for GtkPrintSettings {
8696    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8697        f.debug_struct(&format!("GtkPrintSettings @ {self:p}"))
8698            .finish()
8699    }
8700}
8701
8702#[repr(C)]
8703#[allow(dead_code)]
8704pub struct GtkPrintUnixDialog {
8705    _data: [u8; 0],
8706    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8707}
8708
8709impl ::std::fmt::Debug for GtkPrintUnixDialog {
8710    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8711        f.debug_struct(&format!("GtkPrintUnixDialog @ {self:p}"))
8712            .finish()
8713    }
8714}
8715
8716#[repr(C)]
8717#[allow(dead_code)]
8718pub struct GtkPrinter {
8719    _data: [u8; 0],
8720    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8721}
8722
8723impl ::std::fmt::Debug for GtkPrinter {
8724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8725        f.debug_struct(&format!("GtkPrinter @ {self:p}")).finish()
8726    }
8727}
8728
8729#[repr(C)]
8730#[allow(dead_code)]
8731pub struct GtkProgressBar {
8732    _data: [u8; 0],
8733    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8734}
8735
8736impl ::std::fmt::Debug for GtkProgressBar {
8737    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8738        f.debug_struct(&format!("GtkProgressBar @ {self:p}"))
8739            .finish()
8740    }
8741}
8742
8743#[repr(C)]
8744#[allow(dead_code)]
8745pub struct GtkPropertyExpression {
8746    _data: [u8; 0],
8747    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8748}
8749
8750impl ::std::fmt::Debug for GtkPropertyExpression {
8751    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8752        f.debug_struct(&format!("GtkPropertyExpression @ {self:p}"))
8753            .finish()
8754    }
8755}
8756
8757#[derive(Copy, Clone)]
8758#[repr(C)]
8759pub struct GtkRange {
8760    pub parent_instance: GtkWidget,
8761}
8762
8763impl ::std::fmt::Debug for GtkRange {
8764    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8765        f.debug_struct(&format!("GtkRange @ {self:p}"))
8766            .field("parent_instance", &self.parent_instance)
8767            .finish()
8768    }
8769}
8770
8771#[derive(Copy, Clone)]
8772#[repr(C)]
8773pub struct GtkRecentManager {
8774    pub parent_instance: gobject::GObject,
8775    pub priv_: *mut GtkRecentManagerPrivate,
8776}
8777
8778impl ::std::fmt::Debug for GtkRecentManager {
8779    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8780        f.debug_struct(&format!("GtkRecentManager @ {self:p}"))
8781            .finish()
8782    }
8783}
8784
8785#[repr(C)]
8786#[allow(dead_code)]
8787pub struct GtkRevealer {
8788    _data: [u8; 0],
8789    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8790}
8791
8792impl ::std::fmt::Debug for GtkRevealer {
8793    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8794        f.debug_struct(&format!("GtkRevealer @ {self:p}")).finish()
8795    }
8796}
8797
8798#[derive(Copy, Clone)]
8799#[repr(C)]
8800pub struct GtkScale {
8801    pub parent_instance: GtkRange,
8802}
8803
8804impl ::std::fmt::Debug for GtkScale {
8805    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8806        f.debug_struct(&format!("GtkScale @ {self:p}"))
8807            .field("parent_instance", &self.parent_instance)
8808            .finish()
8809    }
8810}
8811
8812#[derive(Copy, Clone)]
8813#[repr(C)]
8814pub struct GtkScaleButton {
8815    pub parent_instance: GtkWidget,
8816}
8817
8818impl ::std::fmt::Debug for GtkScaleButton {
8819    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8820        f.debug_struct(&format!("GtkScaleButton @ {self:p}"))
8821            .field("parent_instance", &self.parent_instance)
8822            .finish()
8823    }
8824}
8825
8826#[repr(C)]
8827#[allow(dead_code)]
8828pub struct GtkScrollbar {
8829    _data: [u8; 0],
8830    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8831}
8832
8833impl ::std::fmt::Debug for GtkScrollbar {
8834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8835        f.debug_struct(&format!("GtkScrollbar @ {self:p}")).finish()
8836    }
8837}
8838
8839#[repr(C)]
8840#[allow(dead_code)]
8841pub struct GtkScrolledWindow {
8842    _data: [u8; 0],
8843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8844}
8845
8846impl ::std::fmt::Debug for GtkScrolledWindow {
8847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8848        f.debug_struct(&format!("GtkScrolledWindow @ {self:p}"))
8849            .finish()
8850    }
8851}
8852
8853#[repr(C)]
8854#[allow(dead_code)]
8855pub struct GtkSearchBar {
8856    _data: [u8; 0],
8857    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8858}
8859
8860impl ::std::fmt::Debug for GtkSearchBar {
8861    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8862        f.debug_struct(&format!("GtkSearchBar @ {self:p}")).finish()
8863    }
8864}
8865
8866#[repr(C)]
8867#[allow(dead_code)]
8868pub struct GtkSearchEntry {
8869    _data: [u8; 0],
8870    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8871}
8872
8873impl ::std::fmt::Debug for GtkSearchEntry {
8874    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8875        f.debug_struct(&format!("GtkSearchEntry @ {self:p}"))
8876            .finish()
8877    }
8878}
8879
8880#[repr(C)]
8881#[allow(dead_code)]
8882pub struct GtkSelectionFilterModel {
8883    _data: [u8; 0],
8884    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8885}
8886
8887impl ::std::fmt::Debug for GtkSelectionFilterModel {
8888    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8889        f.debug_struct(&format!("GtkSelectionFilterModel @ {self:p}"))
8890            .finish()
8891    }
8892}
8893
8894#[repr(C)]
8895#[allow(dead_code)]
8896pub struct GtkSeparator {
8897    _data: [u8; 0],
8898    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8899}
8900
8901impl ::std::fmt::Debug for GtkSeparator {
8902    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8903        f.debug_struct(&format!("GtkSeparator @ {self:p}")).finish()
8904    }
8905}
8906
8907#[repr(C)]
8908#[allow(dead_code)]
8909pub struct GtkSettings {
8910    _data: [u8; 0],
8911    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8912}
8913
8914impl ::std::fmt::Debug for GtkSettings {
8915    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8916        f.debug_struct(&format!("GtkSettings @ {self:p}")).finish()
8917    }
8918}
8919
8920#[repr(C)]
8921#[allow(dead_code)]
8922pub struct GtkShortcut {
8923    _data: [u8; 0],
8924    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8925}
8926
8927impl ::std::fmt::Debug for GtkShortcut {
8928    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8929        f.debug_struct(&format!("GtkShortcut @ {self:p}")).finish()
8930    }
8931}
8932
8933#[repr(C)]
8934#[allow(dead_code)]
8935pub struct GtkShortcutAction {
8936    _data: [u8; 0],
8937    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8938}
8939
8940impl ::std::fmt::Debug for GtkShortcutAction {
8941    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8942        f.debug_struct(&format!("GtkShortcutAction @ {self:p}"))
8943            .finish()
8944    }
8945}
8946
8947#[repr(C)]
8948#[allow(dead_code)]
8949pub struct GtkShortcutController {
8950    _data: [u8; 0],
8951    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8952}
8953
8954impl ::std::fmt::Debug for GtkShortcutController {
8955    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8956        f.debug_struct(&format!("GtkShortcutController @ {self:p}"))
8957            .finish()
8958    }
8959}
8960
8961#[repr(C)]
8962#[allow(dead_code)]
8963pub struct GtkShortcutLabel {
8964    _data: [u8; 0],
8965    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8966}
8967
8968impl ::std::fmt::Debug for GtkShortcutLabel {
8969    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8970        f.debug_struct(&format!("GtkShortcutLabel @ {self:p}"))
8971            .finish()
8972    }
8973}
8974
8975#[repr(C)]
8976#[allow(dead_code)]
8977pub struct GtkShortcutTrigger {
8978    _data: [u8; 0],
8979    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8980}
8981
8982impl ::std::fmt::Debug for GtkShortcutTrigger {
8983    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8984        f.debug_struct(&format!("GtkShortcutTrigger @ {self:p}"))
8985            .finish()
8986    }
8987}
8988
8989#[repr(C)]
8990#[allow(dead_code)]
8991pub struct GtkShortcutsGroup {
8992    _data: [u8; 0],
8993    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
8994}
8995
8996impl ::std::fmt::Debug for GtkShortcutsGroup {
8997    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
8998        f.debug_struct(&format!("GtkShortcutsGroup @ {self:p}"))
8999            .finish()
9000    }
9001}
9002
9003#[repr(C)]
9004#[allow(dead_code)]
9005pub struct GtkShortcutsSection {
9006    _data: [u8; 0],
9007    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9008}
9009
9010impl ::std::fmt::Debug for GtkShortcutsSection {
9011    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9012        f.debug_struct(&format!("GtkShortcutsSection @ {self:p}"))
9013            .finish()
9014    }
9015}
9016
9017#[repr(C)]
9018#[allow(dead_code)]
9019pub struct GtkShortcutsShortcut {
9020    _data: [u8; 0],
9021    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9022}
9023
9024impl ::std::fmt::Debug for GtkShortcutsShortcut {
9025    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9026        f.debug_struct(&format!("GtkShortcutsShortcut @ {self:p}"))
9027            .finish()
9028    }
9029}
9030
9031#[repr(C)]
9032#[allow(dead_code)]
9033pub struct GtkShortcutsWindow {
9034    _data: [u8; 0],
9035    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9036}
9037
9038impl ::std::fmt::Debug for GtkShortcutsWindow {
9039    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9040        f.debug_struct(&format!("GtkShortcutsWindow @ {self:p}"))
9041            .finish()
9042    }
9043}
9044
9045#[repr(C)]
9046#[allow(dead_code)]
9047pub struct GtkSignalAction {
9048    _data: [u8; 0],
9049    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9050}
9051
9052impl ::std::fmt::Debug for GtkSignalAction {
9053    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9054        f.debug_struct(&format!("GtkSignalAction @ {self:p}"))
9055            .finish()
9056    }
9057}
9058
9059#[repr(C)]
9060#[allow(dead_code)]
9061pub struct GtkSignalListItemFactory {
9062    _data: [u8; 0],
9063    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9064}
9065
9066impl ::std::fmt::Debug for GtkSignalListItemFactory {
9067    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9068        f.debug_struct(&format!("GtkSignalListItemFactory @ {self:p}"))
9069            .finish()
9070    }
9071}
9072
9073#[repr(C)]
9074#[allow(dead_code)]
9075pub struct GtkSingleSelection {
9076    _data: [u8; 0],
9077    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9078}
9079
9080impl ::std::fmt::Debug for GtkSingleSelection {
9081    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9082        f.debug_struct(&format!("GtkSingleSelection @ {self:p}"))
9083            .finish()
9084    }
9085}
9086
9087#[derive(Copy, Clone)]
9088#[repr(C)]
9089pub struct GtkSizeGroup {
9090    pub parent_instance: gobject::GObject,
9091}
9092
9093impl ::std::fmt::Debug for GtkSizeGroup {
9094    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9095        f.debug_struct(&format!("GtkSizeGroup @ {self:p}"))
9096            .field("parent_instance", &self.parent_instance)
9097            .finish()
9098    }
9099}
9100
9101#[repr(C)]
9102#[allow(dead_code)]
9103pub struct GtkSliceListModel {
9104    _data: [u8; 0],
9105    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9106}
9107
9108impl ::std::fmt::Debug for GtkSliceListModel {
9109    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9110        f.debug_struct(&format!("GtkSliceListModel @ {self:p}"))
9111            .finish()
9112    }
9113}
9114
9115#[repr(C)]
9116#[allow(dead_code)]
9117pub struct GtkSnapshot {
9118    _data: [u8; 0],
9119    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9120}
9121
9122impl ::std::fmt::Debug for GtkSnapshot {
9123    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9124        f.debug_struct(&format!("GtkSnapshot @ {self:p}")).finish()
9125    }
9126}
9127
9128#[repr(C)]
9129#[allow(dead_code)]
9130pub struct GtkSortListModel {
9131    _data: [u8; 0],
9132    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9133}
9134
9135impl ::std::fmt::Debug for GtkSortListModel {
9136    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9137        f.debug_struct(&format!("GtkSortListModel @ {self:p}"))
9138            .finish()
9139    }
9140}
9141
9142#[derive(Copy, Clone)]
9143#[repr(C)]
9144pub struct GtkSorter {
9145    pub parent_instance: gobject::GObject,
9146}
9147
9148impl ::std::fmt::Debug for GtkSorter {
9149    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9150        f.debug_struct(&format!("GtkSorter @ {self:p}"))
9151            .field("parent_instance", &self.parent_instance)
9152            .finish()
9153    }
9154}
9155
9156#[repr(C)]
9157#[allow(dead_code)]
9158pub struct GtkSpinButton {
9159    _data: [u8; 0],
9160    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9161}
9162
9163impl ::std::fmt::Debug for GtkSpinButton {
9164    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9165        f.debug_struct(&format!("GtkSpinButton @ {self:p}"))
9166            .finish()
9167    }
9168}
9169
9170#[repr(C)]
9171#[allow(dead_code)]
9172pub struct GtkSpinner {
9173    _data: [u8; 0],
9174    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9175}
9176
9177impl ::std::fmt::Debug for GtkSpinner {
9178    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9179        f.debug_struct(&format!("GtkSpinner @ {self:p}")).finish()
9180    }
9181}
9182
9183#[repr(C)]
9184#[allow(dead_code)]
9185pub struct GtkStack {
9186    _data: [u8; 0],
9187    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9188}
9189
9190impl ::std::fmt::Debug for GtkStack {
9191    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9192        f.debug_struct(&format!("GtkStack @ {self:p}")).finish()
9193    }
9194}
9195
9196#[repr(C)]
9197#[allow(dead_code)]
9198pub struct GtkStackPage {
9199    _data: [u8; 0],
9200    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9201}
9202
9203impl ::std::fmt::Debug for GtkStackPage {
9204    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9205        f.debug_struct(&format!("GtkStackPage @ {self:p}")).finish()
9206    }
9207}
9208
9209#[repr(C)]
9210#[allow(dead_code)]
9211pub struct GtkStackSidebar {
9212    _data: [u8; 0],
9213    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9214}
9215
9216impl ::std::fmt::Debug for GtkStackSidebar {
9217    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9218        f.debug_struct(&format!("GtkStackSidebar @ {self:p}"))
9219            .finish()
9220    }
9221}
9222
9223#[repr(C)]
9224#[allow(dead_code)]
9225pub struct GtkStackSwitcher {
9226    _data: [u8; 0],
9227    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9228}
9229
9230impl ::std::fmt::Debug for GtkStackSwitcher {
9231    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9232        f.debug_struct(&format!("GtkStackSwitcher @ {self:p}"))
9233            .finish()
9234    }
9235}
9236
9237#[repr(C)]
9238#[allow(dead_code)]
9239pub struct GtkStatusbar {
9240    _data: [u8; 0],
9241    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9242}
9243
9244impl ::std::fmt::Debug for GtkStatusbar {
9245    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9246        f.debug_struct(&format!("GtkStatusbar @ {self:p}")).finish()
9247    }
9248}
9249
9250#[repr(C)]
9251#[allow(dead_code)]
9252pub struct GtkStringFilter {
9253    _data: [u8; 0],
9254    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9255}
9256
9257impl ::std::fmt::Debug for GtkStringFilter {
9258    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9259        f.debug_struct(&format!("GtkStringFilter @ {self:p}"))
9260            .finish()
9261    }
9262}
9263
9264#[repr(C)]
9265#[allow(dead_code)]
9266pub struct GtkStringList {
9267    _data: [u8; 0],
9268    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9269}
9270
9271impl ::std::fmt::Debug for GtkStringList {
9272    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9273        f.debug_struct(&format!("GtkStringList @ {self:p}"))
9274            .finish()
9275    }
9276}
9277
9278#[repr(C)]
9279#[allow(dead_code)]
9280pub struct GtkStringObject {
9281    _data: [u8; 0],
9282    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9283}
9284
9285impl ::std::fmt::Debug for GtkStringObject {
9286    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9287        f.debug_struct(&format!("GtkStringObject @ {self:p}"))
9288            .finish()
9289    }
9290}
9291
9292#[repr(C)]
9293#[allow(dead_code)]
9294pub struct GtkStringSorter {
9295    _data: [u8; 0],
9296    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9297}
9298
9299impl ::std::fmt::Debug for GtkStringSorter {
9300    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9301        f.debug_struct(&format!("GtkStringSorter @ {self:p}"))
9302            .finish()
9303    }
9304}
9305
9306#[derive(Copy, Clone)]
9307#[repr(C)]
9308pub struct GtkStyleContext {
9309    pub parent_object: gobject::GObject,
9310}
9311
9312impl ::std::fmt::Debug for GtkStyleContext {
9313    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9314        f.debug_struct(&format!("GtkStyleContext @ {self:p}"))
9315            .field("parent_object", &self.parent_object)
9316            .finish()
9317    }
9318}
9319
9320#[repr(C)]
9321#[allow(dead_code)]
9322pub struct GtkSvg {
9323    _data: [u8; 0],
9324    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9325}
9326
9327impl ::std::fmt::Debug for GtkSvg {
9328    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9329        f.debug_struct(&format!("GtkSvg @ {self:p}")).finish()
9330    }
9331}
9332
9333#[repr(C)]
9334#[allow(dead_code)]
9335pub struct GtkSwitch {
9336    _data: [u8; 0],
9337    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9338}
9339
9340impl ::std::fmt::Debug for GtkSwitch {
9341    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9342        f.debug_struct(&format!("GtkSwitch @ {self:p}")).finish()
9343    }
9344}
9345
9346#[derive(Copy, Clone)]
9347#[repr(C)]
9348pub struct GtkText {
9349    pub parent_instance: GtkWidget,
9350}
9351
9352impl ::std::fmt::Debug for GtkText {
9353    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9354        f.debug_struct(&format!("GtkText @ {self:p}")).finish()
9355    }
9356}
9357
9358#[derive(Copy, Clone)]
9359#[repr(C)]
9360pub struct GtkTextBuffer {
9361    pub parent_instance: gobject::GObject,
9362    pub priv_: *mut GtkTextBufferPrivate,
9363}
9364
9365impl ::std::fmt::Debug for GtkTextBuffer {
9366    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9367        f.debug_struct(&format!("GtkTextBuffer @ {self:p}"))
9368            .field("parent_instance", &self.parent_instance)
9369            .field("priv_", &self.priv_)
9370            .finish()
9371    }
9372}
9373
9374#[derive(Copy, Clone)]
9375#[repr(C)]
9376pub struct GtkTextChildAnchor {
9377    pub parent_instance: gobject::GObject,
9378    pub segment: gpointer,
9379}
9380
9381impl ::std::fmt::Debug for GtkTextChildAnchor {
9382    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9383        f.debug_struct(&format!("GtkTextChildAnchor @ {self:p}"))
9384            .field("parent_instance", &self.parent_instance)
9385            .finish()
9386    }
9387}
9388
9389#[derive(Copy, Clone)]
9390#[repr(C)]
9391pub struct GtkTextMark {
9392    pub parent_instance: gobject::GObject,
9393    pub segment: gpointer,
9394}
9395
9396impl ::std::fmt::Debug for GtkTextMark {
9397    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9398        f.debug_struct(&format!("GtkTextMark @ {self:p}"))
9399            .field("parent_instance", &self.parent_instance)
9400            .finish()
9401    }
9402}
9403
9404#[derive(Copy, Clone)]
9405#[repr(C)]
9406pub struct GtkTextTag {
9407    pub parent_instance: gobject::GObject,
9408    pub priv_: *mut GtkTextTagPrivate,
9409}
9410
9411impl ::std::fmt::Debug for GtkTextTag {
9412    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9413        f.debug_struct(&format!("GtkTextTag @ {self:p}"))
9414            .field("parent_instance", &self.parent_instance)
9415            .field("priv_", &self.priv_)
9416            .finish()
9417    }
9418}
9419
9420#[repr(C)]
9421#[allow(dead_code)]
9422pub struct GtkTextTagTable {
9423    _data: [u8; 0],
9424    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9425}
9426
9427impl ::std::fmt::Debug for GtkTextTagTable {
9428    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9429        f.debug_struct(&format!("GtkTextTagTable @ {self:p}"))
9430            .finish()
9431    }
9432}
9433
9434#[derive(Copy, Clone)]
9435#[repr(C)]
9436pub struct GtkTextView {
9437    pub parent_instance: GtkWidget,
9438    pub priv_: *mut GtkTextViewPrivate,
9439}
9440
9441impl ::std::fmt::Debug for GtkTextView {
9442    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9443        f.debug_struct(&format!("GtkTextView @ {self:p}"))
9444            .field("parent_instance", &self.parent_instance)
9445            .finish()
9446    }
9447}
9448
9449#[derive(Copy, Clone)]
9450#[repr(C)]
9451pub struct GtkToggleButton {
9452    pub button: GtkButton,
9453}
9454
9455impl ::std::fmt::Debug for GtkToggleButton {
9456    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9457        f.debug_struct(&format!("GtkToggleButton @ {self:p}"))
9458            .finish()
9459    }
9460}
9461
9462#[repr(C)]
9463#[allow(dead_code)]
9464pub struct GtkTooltip {
9465    _data: [u8; 0],
9466    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9467}
9468
9469impl ::std::fmt::Debug for GtkTooltip {
9470    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9471        f.debug_struct(&format!("GtkTooltip @ {self:p}")).finish()
9472    }
9473}
9474
9475#[repr(C)]
9476#[allow(dead_code)]
9477pub struct GtkTreeExpander {
9478    _data: [u8; 0],
9479    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9480}
9481
9482impl ::std::fmt::Debug for GtkTreeExpander {
9483    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9484        f.debug_struct(&format!("GtkTreeExpander @ {self:p}"))
9485            .finish()
9486    }
9487}
9488
9489#[repr(C)]
9490#[allow(dead_code)]
9491pub struct GtkTreeListModel {
9492    _data: [u8; 0],
9493    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9494}
9495
9496impl ::std::fmt::Debug for GtkTreeListModel {
9497    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9498        f.debug_struct(&format!("GtkTreeListModel @ {self:p}"))
9499            .finish()
9500    }
9501}
9502
9503#[repr(C)]
9504#[allow(dead_code)]
9505pub struct GtkTreeListRow {
9506    _data: [u8; 0],
9507    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9508}
9509
9510impl ::std::fmt::Debug for GtkTreeListRow {
9511    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9512        f.debug_struct(&format!("GtkTreeListRow @ {self:p}"))
9513            .finish()
9514    }
9515}
9516
9517#[repr(C)]
9518#[allow(dead_code)]
9519pub struct GtkTreeListRowSorter {
9520    _data: [u8; 0],
9521    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9522}
9523
9524impl ::std::fmt::Debug for GtkTreeListRowSorter {
9525    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9526        f.debug_struct(&format!("GtkTreeListRowSorter @ {self:p}"))
9527            .finish()
9528    }
9529}
9530
9531#[derive(Copy, Clone)]
9532#[repr(C)]
9533pub struct GtkTreeModelFilter {
9534    pub parent: gobject::GObject,
9535    pub priv_: *mut GtkTreeModelFilterPrivate,
9536}
9537
9538impl ::std::fmt::Debug for GtkTreeModelFilter {
9539    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9540        f.debug_struct(&format!("GtkTreeModelFilter @ {self:p}"))
9541            .field("parent", &self.parent)
9542            .finish()
9543    }
9544}
9545
9546#[derive(Copy, Clone)]
9547#[repr(C)]
9548pub struct GtkTreeModelSort {
9549    pub parent: gobject::GObject,
9550    pub priv_: *mut GtkTreeModelSortPrivate,
9551}
9552
9553impl ::std::fmt::Debug for GtkTreeModelSort {
9554    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9555        f.debug_struct(&format!("GtkTreeModelSort @ {self:p}"))
9556            .field("parent", &self.parent)
9557            .finish()
9558    }
9559}
9560
9561#[repr(C)]
9562#[allow(dead_code)]
9563pub struct GtkTreeSelection {
9564    _data: [u8; 0],
9565    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9566}
9567
9568impl ::std::fmt::Debug for GtkTreeSelection {
9569    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9570        f.debug_struct(&format!("GtkTreeSelection @ {self:p}"))
9571            .finish()
9572    }
9573}
9574
9575#[derive(Copy, Clone)]
9576#[repr(C)]
9577pub struct GtkTreeStore {
9578    pub parent: gobject::GObject,
9579    pub priv_: *mut GtkTreeStorePrivate,
9580}
9581
9582impl ::std::fmt::Debug for GtkTreeStore {
9583    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9584        f.debug_struct(&format!("GtkTreeStore @ {self:p}"))
9585            .field("parent", &self.parent)
9586            .field("priv_", &self.priv_)
9587            .finish()
9588    }
9589}
9590
9591#[derive(Copy, Clone)]
9592#[repr(C)]
9593pub struct GtkTreeView {
9594    pub parent_instance: GtkWidget,
9595}
9596
9597impl ::std::fmt::Debug for GtkTreeView {
9598    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9599        f.debug_struct(&format!("GtkTreeView @ {self:p}"))
9600            .field("parent_instance", &self.parent_instance)
9601            .finish()
9602    }
9603}
9604
9605#[repr(C)]
9606#[allow(dead_code)]
9607pub struct GtkTreeViewColumn {
9608    _data: [u8; 0],
9609    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9610}
9611
9612impl ::std::fmt::Debug for GtkTreeViewColumn {
9613    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9614        f.debug_struct(&format!("GtkTreeViewColumn @ {self:p}"))
9615            .finish()
9616    }
9617}
9618
9619#[repr(C)]
9620#[allow(dead_code)]
9621pub struct GtkUriLauncher {
9622    _data: [u8; 0],
9623    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9624}
9625
9626impl ::std::fmt::Debug for GtkUriLauncher {
9627    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9628        f.debug_struct(&format!("GtkUriLauncher @ {self:p}"))
9629            .finish()
9630    }
9631}
9632
9633#[repr(C)]
9634#[allow(dead_code)]
9635pub struct GtkVideo {
9636    _data: [u8; 0],
9637    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9638}
9639
9640impl ::std::fmt::Debug for GtkVideo {
9641    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9642        f.debug_struct(&format!("GtkVideo @ {self:p}")).finish()
9643    }
9644}
9645
9646#[repr(C)]
9647#[allow(dead_code)]
9648pub struct GtkViewport {
9649    _data: [u8; 0],
9650    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9651}
9652
9653impl ::std::fmt::Debug for GtkViewport {
9654    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9655        f.debug_struct(&format!("GtkViewport @ {self:p}")).finish()
9656    }
9657}
9658
9659#[derive(Copy, Clone)]
9660#[repr(C)]
9661pub struct GtkVolumeButton {
9662    pub parent: GtkScaleButton,
9663}
9664
9665impl ::std::fmt::Debug for GtkVolumeButton {
9666    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9667        f.debug_struct(&format!("GtkVolumeButton @ {self:p}"))
9668            .field("parent", &self.parent)
9669            .finish()
9670    }
9671}
9672
9673#[derive(Copy, Clone)]
9674#[repr(C)]
9675pub struct GtkWidget {
9676    pub parent_instance: gobject::GInitiallyUnowned,
9677    pub priv_: *mut GtkWidgetPrivate,
9678}
9679
9680impl ::std::fmt::Debug for GtkWidget {
9681    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9682        f.debug_struct(&format!("GtkWidget @ {self:p}"))
9683            .field("parent_instance", &self.parent_instance)
9684            .finish()
9685    }
9686}
9687
9688#[repr(C)]
9689#[allow(dead_code)]
9690pub struct GtkWidgetPaintable {
9691    _data: [u8; 0],
9692    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9693}
9694
9695impl ::std::fmt::Debug for GtkWidgetPaintable {
9696    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9697        f.debug_struct(&format!("GtkWidgetPaintable @ {self:p}"))
9698            .finish()
9699    }
9700}
9701
9702#[derive(Copy, Clone)]
9703#[repr(C)]
9704pub struct GtkWindow {
9705    pub parent_instance: GtkWidget,
9706}
9707
9708impl ::std::fmt::Debug for GtkWindow {
9709    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9710        f.debug_struct(&format!("GtkWindow @ {self:p}"))
9711            .field("parent_instance", &self.parent_instance)
9712            .finish()
9713    }
9714}
9715
9716#[repr(C)]
9717#[allow(dead_code)]
9718pub struct GtkWindowControls {
9719    _data: [u8; 0],
9720    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9721}
9722
9723impl ::std::fmt::Debug for GtkWindowControls {
9724    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9725        f.debug_struct(&format!("GtkWindowControls @ {self:p}"))
9726            .finish()
9727    }
9728}
9729
9730#[derive(Copy, Clone)]
9731#[repr(C)]
9732pub struct GtkWindowGroup {
9733    pub parent_instance: gobject::GObject,
9734    pub priv_: *mut GtkWindowGroupPrivate,
9735}
9736
9737impl ::std::fmt::Debug for GtkWindowGroup {
9738    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9739        f.debug_struct(&format!("GtkWindowGroup @ {self:p}"))
9740            .field("parent_instance", &self.parent_instance)
9741            .field("priv_", &self.priv_)
9742            .finish()
9743    }
9744}
9745
9746#[repr(C)]
9747#[allow(dead_code)]
9748pub struct GtkWindowHandle {
9749    _data: [u8; 0],
9750    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9751}
9752
9753impl ::std::fmt::Debug for GtkWindowHandle {
9754    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9755        f.debug_struct(&format!("GtkWindowHandle @ {self:p}"))
9756            .finish()
9757    }
9758}
9759
9760// Interfaces
9761#[repr(C)]
9762#[allow(dead_code)]
9763pub struct GtkAccessible {
9764    _data: [u8; 0],
9765    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9766}
9767
9768impl ::std::fmt::Debug for GtkAccessible {
9769    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9770        write!(f, "GtkAccessible @ {self:p}")
9771    }
9772}
9773
9774#[repr(C)]
9775#[allow(dead_code)]
9776pub struct GtkAccessibleHypertext {
9777    _data: [u8; 0],
9778    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9779}
9780
9781impl ::std::fmt::Debug for GtkAccessibleHypertext {
9782    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9783        write!(f, "GtkAccessibleHypertext @ {self:p}")
9784    }
9785}
9786
9787#[repr(C)]
9788#[allow(dead_code)]
9789pub struct GtkAccessibleRange {
9790    _data: [u8; 0],
9791    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9792}
9793
9794impl ::std::fmt::Debug for GtkAccessibleRange {
9795    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9796        write!(f, "GtkAccessibleRange @ {self:p}")
9797    }
9798}
9799
9800#[repr(C)]
9801#[allow(dead_code)]
9802pub struct GtkAccessibleText {
9803    _data: [u8; 0],
9804    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9805}
9806
9807impl ::std::fmt::Debug for GtkAccessibleText {
9808    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9809        write!(f, "GtkAccessibleText @ {self:p}")
9810    }
9811}
9812
9813#[repr(C)]
9814#[allow(dead_code)]
9815pub struct GtkActionable {
9816    _data: [u8; 0],
9817    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9818}
9819
9820impl ::std::fmt::Debug for GtkActionable {
9821    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9822        write!(f, "GtkActionable @ {self:p}")
9823    }
9824}
9825
9826#[repr(C)]
9827#[allow(dead_code)]
9828pub struct GtkAppChooser {
9829    _data: [u8; 0],
9830    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9831}
9832
9833impl ::std::fmt::Debug for GtkAppChooser {
9834    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9835        write!(f, "GtkAppChooser @ {self:p}")
9836    }
9837}
9838
9839#[repr(C)]
9840#[allow(dead_code)]
9841pub struct GtkBuildable {
9842    _data: [u8; 0],
9843    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9844}
9845
9846impl ::std::fmt::Debug for GtkBuildable {
9847    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9848        write!(f, "GtkBuildable @ {self:p}")
9849    }
9850}
9851
9852#[repr(C)]
9853#[allow(dead_code)]
9854pub struct GtkBuilderScope {
9855    _data: [u8; 0],
9856    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9857}
9858
9859impl ::std::fmt::Debug for GtkBuilderScope {
9860    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9861        write!(f, "GtkBuilderScope @ {self:p}")
9862    }
9863}
9864
9865#[repr(C)]
9866#[allow(dead_code)]
9867pub struct GtkCellEditable {
9868    _data: [u8; 0],
9869    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9870}
9871
9872impl ::std::fmt::Debug for GtkCellEditable {
9873    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9874        write!(f, "GtkCellEditable @ {self:p}")
9875    }
9876}
9877
9878#[repr(C)]
9879#[allow(dead_code)]
9880pub struct GtkCellLayout {
9881    _data: [u8; 0],
9882    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9883}
9884
9885impl ::std::fmt::Debug for GtkCellLayout {
9886    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9887        write!(f, "GtkCellLayout @ {self:p}")
9888    }
9889}
9890
9891#[repr(C)]
9892#[allow(dead_code)]
9893pub struct GtkColorChooser {
9894    _data: [u8; 0],
9895    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9896}
9897
9898impl ::std::fmt::Debug for GtkColorChooser {
9899    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9900        write!(f, "GtkColorChooser @ {self:p}")
9901    }
9902}
9903
9904#[repr(C)]
9905#[allow(dead_code)]
9906pub struct GtkConstraintTarget {
9907    _data: [u8; 0],
9908    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9909}
9910
9911impl ::std::fmt::Debug for GtkConstraintTarget {
9912    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9913        write!(f, "GtkConstraintTarget @ {self:p}")
9914    }
9915}
9916
9917#[repr(C)]
9918#[allow(dead_code)]
9919pub struct GtkEditable {
9920    _data: [u8; 0],
9921    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9922}
9923
9924impl ::std::fmt::Debug for GtkEditable {
9925    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9926        write!(f, "GtkEditable @ {self:p}")
9927    }
9928}
9929
9930#[repr(C)]
9931#[allow(dead_code)]
9932pub struct GtkFileChooser {
9933    _data: [u8; 0],
9934    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9935}
9936
9937impl ::std::fmt::Debug for GtkFileChooser {
9938    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9939        write!(f, "GtkFileChooser @ {self:p}")
9940    }
9941}
9942
9943#[repr(C)]
9944#[allow(dead_code)]
9945pub struct GtkFontChooser {
9946    _data: [u8; 0],
9947    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9948}
9949
9950impl ::std::fmt::Debug for GtkFontChooser {
9951    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9952        write!(f, "GtkFontChooser @ {self:p}")
9953    }
9954}
9955
9956#[repr(C)]
9957#[allow(dead_code)]
9958pub struct GtkNative {
9959    _data: [u8; 0],
9960    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9961}
9962
9963impl ::std::fmt::Debug for GtkNative {
9964    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9965        write!(f, "GtkNative @ {self:p}")
9966    }
9967}
9968
9969#[repr(C)]
9970#[allow(dead_code)]
9971pub struct GtkOrientable {
9972    _data: [u8; 0],
9973    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9974}
9975
9976impl ::std::fmt::Debug for GtkOrientable {
9977    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9978        write!(f, "GtkOrientable @ {self:p}")
9979    }
9980}
9981
9982#[repr(C)]
9983#[allow(dead_code)]
9984pub struct GtkPrintOperationPreview {
9985    _data: [u8; 0],
9986    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
9987}
9988
9989impl ::std::fmt::Debug for GtkPrintOperationPreview {
9990    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
9991        write!(f, "GtkPrintOperationPreview @ {self:p}")
9992    }
9993}
9994
9995#[repr(C)]
9996#[allow(dead_code)]
9997pub struct GtkRoot {
9998    _data: [u8; 0],
9999    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10000}
10001
10002impl ::std::fmt::Debug for GtkRoot {
10003    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10004        write!(f, "GtkRoot @ {self:p}")
10005    }
10006}
10007
10008#[repr(C)]
10009#[allow(dead_code)]
10010pub struct GtkScrollable {
10011    _data: [u8; 0],
10012    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10013}
10014
10015impl ::std::fmt::Debug for GtkScrollable {
10016    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10017        write!(f, "GtkScrollable @ {self:p}")
10018    }
10019}
10020
10021#[repr(C)]
10022#[allow(dead_code)]
10023pub struct GtkSectionModel {
10024    _data: [u8; 0],
10025    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10026}
10027
10028impl ::std::fmt::Debug for GtkSectionModel {
10029    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10030        write!(f, "GtkSectionModel @ {self:p}")
10031    }
10032}
10033
10034#[repr(C)]
10035#[allow(dead_code)]
10036pub struct GtkSelectionModel {
10037    _data: [u8; 0],
10038    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10039}
10040
10041impl ::std::fmt::Debug for GtkSelectionModel {
10042    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10043        write!(f, "GtkSelectionModel @ {self:p}")
10044    }
10045}
10046
10047#[repr(C)]
10048#[allow(dead_code)]
10049pub struct GtkShortcutManager {
10050    _data: [u8; 0],
10051    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10052}
10053
10054impl ::std::fmt::Debug for GtkShortcutManager {
10055    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10056        write!(f, "GtkShortcutManager @ {self:p}")
10057    }
10058}
10059
10060#[repr(C)]
10061#[allow(dead_code)]
10062pub struct GtkStyleProvider {
10063    _data: [u8; 0],
10064    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10065}
10066
10067impl ::std::fmt::Debug for GtkStyleProvider {
10068    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10069        write!(f, "GtkStyleProvider @ {self:p}")
10070    }
10071}
10072
10073#[repr(C)]
10074#[allow(dead_code)]
10075pub struct GtkSymbolicPaintable {
10076    _data: [u8; 0],
10077    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10078}
10079
10080impl ::std::fmt::Debug for GtkSymbolicPaintable {
10081    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10082        write!(f, "GtkSymbolicPaintable @ {self:p}")
10083    }
10084}
10085
10086#[repr(C)]
10087#[allow(dead_code)]
10088pub struct GtkTreeDragDest {
10089    _data: [u8; 0],
10090    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10091}
10092
10093impl ::std::fmt::Debug for GtkTreeDragDest {
10094    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10095        write!(f, "GtkTreeDragDest @ {self:p}")
10096    }
10097}
10098
10099#[repr(C)]
10100#[allow(dead_code)]
10101pub struct GtkTreeDragSource {
10102    _data: [u8; 0],
10103    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10104}
10105
10106impl ::std::fmt::Debug for GtkTreeDragSource {
10107    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10108        write!(f, "GtkTreeDragSource @ {self:p}")
10109    }
10110}
10111
10112#[repr(C)]
10113#[allow(dead_code)]
10114pub struct GtkTreeModel {
10115    _data: [u8; 0],
10116    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10117}
10118
10119impl ::std::fmt::Debug for GtkTreeModel {
10120    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10121        write!(f, "GtkTreeModel @ {self:p}")
10122    }
10123}
10124
10125#[repr(C)]
10126#[allow(dead_code)]
10127pub struct GtkTreeSortable {
10128    _data: [u8; 0],
10129    _marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
10130}
10131
10132impl ::std::fmt::Debug for GtkTreeSortable {
10133    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
10134        write!(f, "GtkTreeSortable @ {self:p}")
10135    }
10136}
10137
10138unsafe extern "C" {
10139
10140    //=========================================================================
10141    // GtkAccessibleAnnouncementPriority
10142    //=========================================================================
10143    #[cfg(feature = "v4_14")]
10144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10145    pub fn gtk_accessible_announcement_priority_get_type() -> GType;
10146
10147    //=========================================================================
10148    // GtkAccessibleAutocomplete
10149    //=========================================================================
10150    pub fn gtk_accessible_autocomplete_get_type() -> GType;
10151
10152    //=========================================================================
10153    // GtkAccessibleInvalidState
10154    //=========================================================================
10155    pub fn gtk_accessible_invalid_state_get_type() -> GType;
10156
10157    //=========================================================================
10158    // GtkAccessiblePlatformState
10159    //=========================================================================
10160    #[cfg(feature = "v4_10")]
10161    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10162    pub fn gtk_accessible_platform_state_get_type() -> GType;
10163
10164    //=========================================================================
10165    // GtkAccessibleProperty
10166    //=========================================================================
10167    pub fn gtk_accessible_property_get_type() -> GType;
10168    pub fn gtk_accessible_property_init_value(
10169        property: GtkAccessibleProperty,
10170        value: *mut gobject::GValue,
10171    );
10172
10173    //=========================================================================
10174    // GtkAccessibleRelation
10175    //=========================================================================
10176    pub fn gtk_accessible_relation_get_type() -> GType;
10177    pub fn gtk_accessible_relation_init_value(
10178        relation: GtkAccessibleRelation,
10179        value: *mut gobject::GValue,
10180    );
10181
10182    //=========================================================================
10183    // GtkAccessibleRole
10184    //=========================================================================
10185    pub fn gtk_accessible_role_get_type() -> GType;
10186
10187    //=========================================================================
10188    // GtkAccessibleSort
10189    //=========================================================================
10190    pub fn gtk_accessible_sort_get_type() -> GType;
10191
10192    //=========================================================================
10193    // GtkAccessibleState
10194    //=========================================================================
10195    pub fn gtk_accessible_state_get_type() -> GType;
10196    pub fn gtk_accessible_state_init_value(state: GtkAccessibleState, value: *mut gobject::GValue);
10197
10198    //=========================================================================
10199    // GtkAccessibleTextContentChange
10200    //=========================================================================
10201    #[cfg(feature = "v4_14")]
10202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10203    pub fn gtk_accessible_text_content_change_get_type() -> GType;
10204
10205    //=========================================================================
10206    // GtkAccessibleTextGranularity
10207    //=========================================================================
10208    #[cfg(feature = "v4_14")]
10209    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10210    pub fn gtk_accessible_text_granularity_get_type() -> GType;
10211
10212    //=========================================================================
10213    // GtkAccessibleTristate
10214    //=========================================================================
10215    pub fn gtk_accessible_tristate_get_type() -> GType;
10216
10217    //=========================================================================
10218    // GtkAlign
10219    //=========================================================================
10220    pub fn gtk_align_get_type() -> GType;
10221
10222    //=========================================================================
10223    // GtkArrowType
10224    //=========================================================================
10225    pub fn gtk_arrow_type_get_type() -> GType;
10226
10227    //=========================================================================
10228    // GtkAssistantPageType
10229    //=========================================================================
10230    pub fn gtk_assistant_page_type_get_type() -> GType;
10231
10232    //=========================================================================
10233    // GtkBaselinePosition
10234    //=========================================================================
10235    pub fn gtk_baseline_position_get_type() -> GType;
10236
10237    //=========================================================================
10238    // GtkBorderStyle
10239    //=========================================================================
10240    pub fn gtk_border_style_get_type() -> GType;
10241
10242    //=========================================================================
10243    // GtkBuilderError
10244    //=========================================================================
10245    pub fn gtk_builder_error_get_type() -> GType;
10246    pub fn gtk_builder_error_quark() -> glib::GQuark;
10247
10248    //=========================================================================
10249    // GtkButtonsType
10250    //=========================================================================
10251    pub fn gtk_buttons_type_get_type() -> GType;
10252
10253    //=========================================================================
10254    // GtkCellRendererAccelMode
10255    //=========================================================================
10256    pub fn gtk_cell_renderer_accel_mode_get_type() -> GType;
10257
10258    //=========================================================================
10259    // GtkCellRendererMode
10260    //=========================================================================
10261    pub fn gtk_cell_renderer_mode_get_type() -> GType;
10262
10263    //=========================================================================
10264    // GtkCollation
10265    //=========================================================================
10266    #[cfg(feature = "v4_10")]
10267    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10268    pub fn gtk_collation_get_type() -> GType;
10269
10270    //=========================================================================
10271    // GtkConstraintAttribute
10272    //=========================================================================
10273    pub fn gtk_constraint_attribute_get_type() -> GType;
10274
10275    //=========================================================================
10276    // GtkConstraintRelation
10277    //=========================================================================
10278    pub fn gtk_constraint_relation_get_type() -> GType;
10279
10280    //=========================================================================
10281    // GtkConstraintStrength
10282    //=========================================================================
10283    pub fn gtk_constraint_strength_get_type() -> GType;
10284
10285    //=========================================================================
10286    // GtkConstraintVflParserError
10287    //=========================================================================
10288    pub fn gtk_constraint_vfl_parser_error_get_type() -> GType;
10289    pub fn gtk_constraint_vfl_parser_error_quark() -> glib::GQuark;
10290
10291    //=========================================================================
10292    // GtkContentFit
10293    //=========================================================================
10294    #[cfg(feature = "v4_8")]
10295    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10296    pub fn gtk_content_fit_get_type() -> GType;
10297
10298    //=========================================================================
10299    // GtkCornerType
10300    //=========================================================================
10301    pub fn gtk_corner_type_get_type() -> GType;
10302
10303    //=========================================================================
10304    // GtkDeleteType
10305    //=========================================================================
10306    pub fn gtk_delete_type_get_type() -> GType;
10307
10308    //=========================================================================
10309    // GtkDialogError
10310    //=========================================================================
10311    #[cfg(feature = "v4_10")]
10312    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10313    pub fn gtk_dialog_error_get_type() -> GType;
10314    #[cfg(feature = "v4_10")]
10315    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10316    pub fn gtk_dialog_error_quark() -> glib::GQuark;
10317
10318    //=========================================================================
10319    // GtkDirectionType
10320    //=========================================================================
10321    pub fn gtk_direction_type_get_type() -> GType;
10322
10323    //=========================================================================
10324    // GtkEditableProperties
10325    //=========================================================================
10326    pub fn gtk_editable_properties_get_type() -> GType;
10327
10328    //=========================================================================
10329    // GtkEntryIconPosition
10330    //=========================================================================
10331    pub fn gtk_entry_icon_position_get_type() -> GType;
10332
10333    //=========================================================================
10334    // GtkEventSequenceState
10335    //=========================================================================
10336    pub fn gtk_event_sequence_state_get_type() -> GType;
10337
10338    //=========================================================================
10339    // GtkFileChooserAction
10340    //=========================================================================
10341    pub fn gtk_file_chooser_action_get_type() -> GType;
10342
10343    //=========================================================================
10344    // GtkFileChooserError
10345    //=========================================================================
10346    pub fn gtk_file_chooser_error_get_type() -> GType;
10347    pub fn gtk_file_chooser_error_quark() -> glib::GQuark;
10348
10349    //=========================================================================
10350    // GtkFilterChange
10351    //=========================================================================
10352    pub fn gtk_filter_change_get_type() -> GType;
10353
10354    //=========================================================================
10355    // GtkFilterMatch
10356    //=========================================================================
10357    pub fn gtk_filter_match_get_type() -> GType;
10358
10359    //=========================================================================
10360    // GtkFontLevel
10361    //=========================================================================
10362    #[cfg(feature = "v4_10")]
10363    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
10364    pub fn gtk_font_level_get_type() -> GType;
10365
10366    //=========================================================================
10367    // GtkFontRendering
10368    //=========================================================================
10369    #[cfg(feature = "v4_16")]
10370    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10371    pub fn gtk_font_rendering_get_type() -> GType;
10372
10373    //=========================================================================
10374    // GtkGraphicsOffloadEnabled
10375    //=========================================================================
10376    #[cfg(feature = "v4_14")]
10377    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10378    pub fn gtk_graphics_offload_enabled_get_type() -> GType;
10379
10380    //=========================================================================
10381    // GtkIconSize
10382    //=========================================================================
10383    pub fn gtk_icon_size_get_type() -> GType;
10384
10385    //=========================================================================
10386    // GtkIconThemeError
10387    //=========================================================================
10388    pub fn gtk_icon_theme_error_get_type() -> GType;
10389    pub fn gtk_icon_theme_error_quark() -> glib::GQuark;
10390
10391    //=========================================================================
10392    // GtkIconViewDropPosition
10393    //=========================================================================
10394    pub fn gtk_icon_view_drop_position_get_type() -> GType;
10395
10396    //=========================================================================
10397    // GtkImageType
10398    //=========================================================================
10399    pub fn gtk_image_type_get_type() -> GType;
10400
10401    //=========================================================================
10402    // GtkInputPurpose
10403    //=========================================================================
10404    pub fn gtk_input_purpose_get_type() -> GType;
10405
10406    //=========================================================================
10407    // GtkInscriptionOverflow
10408    //=========================================================================
10409    #[cfg(feature = "v4_8")]
10410    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
10411    pub fn gtk_inscription_overflow_get_type() -> GType;
10412
10413    //=========================================================================
10414    // GtkInterfaceColorScheme
10415    //=========================================================================
10416    #[cfg(feature = "v4_20")]
10417    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10418    pub fn gtk_interface_color_scheme_get_type() -> GType;
10419
10420    //=========================================================================
10421    // GtkInterfaceContrast
10422    //=========================================================================
10423    #[cfg(feature = "v4_20")]
10424    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10425    pub fn gtk_interface_contrast_get_type() -> GType;
10426
10427    //=========================================================================
10428    // GtkJustification
10429    //=========================================================================
10430    pub fn gtk_justification_get_type() -> GType;
10431
10432    //=========================================================================
10433    // GtkLevelBarMode
10434    //=========================================================================
10435    pub fn gtk_level_bar_mode_get_type() -> GType;
10436
10437    //=========================================================================
10438    // GtkLicense
10439    //=========================================================================
10440    pub fn gtk_license_get_type() -> GType;
10441
10442    //=========================================================================
10443    // GtkListTabBehavior
10444    //=========================================================================
10445    #[cfg(feature = "v4_12")]
10446    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10447    pub fn gtk_list_tab_behavior_get_type() -> GType;
10448
10449    //=========================================================================
10450    // GtkMessageType
10451    //=========================================================================
10452    pub fn gtk_message_type_get_type() -> GType;
10453
10454    //=========================================================================
10455    // GtkMovementStep
10456    //=========================================================================
10457    pub fn gtk_movement_step_get_type() -> GType;
10458
10459    //=========================================================================
10460    // GtkNaturalWrapMode
10461    //=========================================================================
10462    #[cfg(feature = "v4_6")]
10463    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10464    pub fn gtk_natural_wrap_mode_get_type() -> GType;
10465
10466    //=========================================================================
10467    // GtkNotebookTab
10468    //=========================================================================
10469    pub fn gtk_notebook_tab_get_type() -> GType;
10470
10471    //=========================================================================
10472    // GtkNumberUpLayout
10473    //=========================================================================
10474    pub fn gtk_number_up_layout_get_type() -> GType;
10475
10476    //=========================================================================
10477    // GtkOrdering
10478    //=========================================================================
10479    pub fn gtk_ordering_get_type() -> GType;
10480    #[cfg(feature = "v4_2")]
10481    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
10482    pub fn gtk_ordering_from_cmpfunc(cmpfunc_result: c_int) -> GtkOrdering;
10483
10484    //=========================================================================
10485    // GtkOrientation
10486    //=========================================================================
10487    pub fn gtk_orientation_get_type() -> GType;
10488
10489    //=========================================================================
10490    // GtkOverflow
10491    //=========================================================================
10492    pub fn gtk_overflow_get_type() -> GType;
10493
10494    //=========================================================================
10495    // GtkPackType
10496    //=========================================================================
10497    pub fn gtk_pack_type_get_type() -> GType;
10498
10499    //=========================================================================
10500    // GtkPadActionType
10501    //=========================================================================
10502    pub fn gtk_pad_action_type_get_type() -> GType;
10503
10504    //=========================================================================
10505    // GtkPageOrientation
10506    //=========================================================================
10507    pub fn gtk_page_orientation_get_type() -> GType;
10508
10509    //=========================================================================
10510    // GtkPageSet
10511    //=========================================================================
10512    pub fn gtk_page_set_get_type() -> GType;
10513
10514    //=========================================================================
10515    // GtkPanDirection
10516    //=========================================================================
10517    pub fn gtk_pan_direction_get_type() -> GType;
10518
10519    //=========================================================================
10520    // GtkPolicyType
10521    //=========================================================================
10522    pub fn gtk_policy_type_get_type() -> GType;
10523
10524    //=========================================================================
10525    // GtkPositionType
10526    //=========================================================================
10527    pub fn gtk_position_type_get_type() -> GType;
10528
10529    //=========================================================================
10530    // GtkPrintDuplex
10531    //=========================================================================
10532    pub fn gtk_print_duplex_get_type() -> GType;
10533
10534    //=========================================================================
10535    // GtkPrintError
10536    //=========================================================================
10537    pub fn gtk_print_error_get_type() -> GType;
10538    pub fn gtk_print_error_quark() -> glib::GQuark;
10539
10540    //=========================================================================
10541    // GtkPrintOperationAction
10542    //=========================================================================
10543    pub fn gtk_print_operation_action_get_type() -> GType;
10544
10545    //=========================================================================
10546    // GtkPrintOperationResult
10547    //=========================================================================
10548    pub fn gtk_print_operation_result_get_type() -> GType;
10549
10550    //=========================================================================
10551    // GtkPrintPages
10552    //=========================================================================
10553    pub fn gtk_print_pages_get_type() -> GType;
10554
10555    //=========================================================================
10556    // GtkPrintQuality
10557    //=========================================================================
10558    pub fn gtk_print_quality_get_type() -> GType;
10559
10560    //=========================================================================
10561    // GtkPrintStatus
10562    //=========================================================================
10563    pub fn gtk_print_status_get_type() -> GType;
10564
10565    //=========================================================================
10566    // GtkPropagationLimit
10567    //=========================================================================
10568    pub fn gtk_propagation_limit_get_type() -> GType;
10569
10570    //=========================================================================
10571    // GtkPropagationPhase
10572    //=========================================================================
10573    pub fn gtk_propagation_phase_get_type() -> GType;
10574
10575    //=========================================================================
10576    // GtkRecentManagerError
10577    //=========================================================================
10578    pub fn gtk_recent_manager_error_get_type() -> GType;
10579    pub fn gtk_recent_manager_error_quark() -> glib::GQuark;
10580
10581    //=========================================================================
10582    // GtkReducedMotion
10583    //=========================================================================
10584    #[cfg(feature = "v4_22")]
10585    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10586    pub fn gtk_reduced_motion_get_type() -> GType;
10587
10588    //=========================================================================
10589    // GtkResponseType
10590    //=========================================================================
10591    pub fn gtk_response_type_get_type() -> GType;
10592
10593    //=========================================================================
10594    // GtkRestoreReason
10595    //=========================================================================
10596    #[cfg(feature = "v4_22")]
10597    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10598    pub fn gtk_restore_reason_get_type() -> GType;
10599
10600    //=========================================================================
10601    // GtkRevealerTransitionType
10602    //=========================================================================
10603    pub fn gtk_revealer_transition_type_get_type() -> GType;
10604
10605    //=========================================================================
10606    // GtkScrollStep
10607    //=========================================================================
10608    pub fn gtk_scroll_step_get_type() -> GType;
10609
10610    //=========================================================================
10611    // GtkScrollType
10612    //=========================================================================
10613    pub fn gtk_scroll_type_get_type() -> GType;
10614
10615    //=========================================================================
10616    // GtkScrollablePolicy
10617    //=========================================================================
10618    pub fn gtk_scrollable_policy_get_type() -> GType;
10619
10620    //=========================================================================
10621    // GtkSelectionMode
10622    //=========================================================================
10623    pub fn gtk_selection_mode_get_type() -> GType;
10624
10625    //=========================================================================
10626    // GtkSensitivityType
10627    //=========================================================================
10628    pub fn gtk_sensitivity_type_get_type() -> GType;
10629
10630    //=========================================================================
10631    // GtkShortcutScope
10632    //=========================================================================
10633    pub fn gtk_shortcut_scope_get_type() -> GType;
10634
10635    //=========================================================================
10636    // GtkShortcutType
10637    //=========================================================================
10638    pub fn gtk_shortcut_type_get_type() -> GType;
10639
10640    //=========================================================================
10641    // GtkSizeGroupMode
10642    //=========================================================================
10643    pub fn gtk_size_group_mode_get_type() -> GType;
10644
10645    //=========================================================================
10646    // GtkSizeRequestMode
10647    //=========================================================================
10648    pub fn gtk_size_request_mode_get_type() -> GType;
10649
10650    //=========================================================================
10651    // GtkSortType
10652    //=========================================================================
10653    pub fn gtk_sort_type_get_type() -> GType;
10654
10655    //=========================================================================
10656    // GtkSorterChange
10657    //=========================================================================
10658    pub fn gtk_sorter_change_get_type() -> GType;
10659
10660    //=========================================================================
10661    // GtkSorterOrder
10662    //=========================================================================
10663    pub fn gtk_sorter_order_get_type() -> GType;
10664
10665    //=========================================================================
10666    // GtkSpinButtonUpdatePolicy
10667    //=========================================================================
10668    pub fn gtk_spin_button_update_policy_get_type() -> GType;
10669
10670    //=========================================================================
10671    // GtkSpinType
10672    //=========================================================================
10673    pub fn gtk_spin_type_get_type() -> GType;
10674
10675    //=========================================================================
10676    // GtkStackTransitionType
10677    //=========================================================================
10678    pub fn gtk_stack_transition_type_get_type() -> GType;
10679
10680    //=========================================================================
10681    // GtkStringFilterMatchMode
10682    //=========================================================================
10683    pub fn gtk_string_filter_match_mode_get_type() -> GType;
10684
10685    //=========================================================================
10686    // GtkSvgError
10687    //=========================================================================
10688    #[cfg(feature = "v4_22")]
10689    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10690    pub fn gtk_svg_error_get_type() -> GType;
10691    #[cfg(feature = "v4_22")]
10692    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10693    pub fn gtk_svg_error_get_attribute(error: *const glib::GError) -> *const c_char;
10694    #[cfg(feature = "v4_22")]
10695    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10696    pub fn gtk_svg_error_get_element(error: *const glib::GError) -> *const c_char;
10697    #[cfg(feature = "v4_22")]
10698    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10699    pub fn gtk_svg_error_get_end(error: *const glib::GError) -> *const GtkSvgLocation;
10700    #[cfg(feature = "v4_22")]
10701    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10702    pub fn gtk_svg_error_get_start(error: *const glib::GError) -> *const GtkSvgLocation;
10703    #[cfg(feature = "v4_22")]
10704    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10705    pub fn gtk_svg_error_quark() -> glib::GQuark;
10706
10707    //=========================================================================
10708    // GtkSymbolicColor
10709    //=========================================================================
10710    #[cfg(feature = "v4_6")]
10711    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
10712    pub fn gtk_symbolic_color_get_type() -> GType;
10713
10714    //=========================================================================
10715    // GtkSystemSetting
10716    //=========================================================================
10717    pub fn gtk_system_setting_get_type() -> GType;
10718
10719    //=========================================================================
10720    // GtkTextDirection
10721    //=========================================================================
10722    pub fn gtk_text_direction_get_type() -> GType;
10723
10724    //=========================================================================
10725    // GtkTextExtendSelection
10726    //=========================================================================
10727    pub fn gtk_text_extend_selection_get_type() -> GType;
10728
10729    //=========================================================================
10730    // GtkTextViewLayer
10731    //=========================================================================
10732    pub fn gtk_text_view_layer_get_type() -> GType;
10733
10734    //=========================================================================
10735    // GtkTextWindowType
10736    //=========================================================================
10737    pub fn gtk_text_window_type_get_type() -> GType;
10738
10739    //=========================================================================
10740    // GtkTreeViewColumnSizing
10741    //=========================================================================
10742    pub fn gtk_tree_view_column_sizing_get_type() -> GType;
10743
10744    //=========================================================================
10745    // GtkTreeViewDropPosition
10746    //=========================================================================
10747    pub fn gtk_tree_view_drop_position_get_type() -> GType;
10748
10749    //=========================================================================
10750    // GtkTreeViewGridLines
10751    //=========================================================================
10752    pub fn gtk_tree_view_grid_lines_get_type() -> GType;
10753
10754    //=========================================================================
10755    // GtkUnit
10756    //=========================================================================
10757    pub fn gtk_unit_get_type() -> GType;
10758
10759    //=========================================================================
10760    // GtkWindowGravity
10761    //=========================================================================
10762    #[cfg(feature = "v4_20")]
10763    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
10764    pub fn gtk_window_gravity_get_type() -> GType;
10765
10766    //=========================================================================
10767    // GtkWrapMode
10768    //=========================================================================
10769    pub fn gtk_wrap_mode_get_type() -> GType;
10770
10771    //=========================================================================
10772    // GtkApplicationInhibitFlags
10773    //=========================================================================
10774    pub fn gtk_application_inhibit_flags_get_type() -> GType;
10775
10776    //=========================================================================
10777    // GtkBuilderClosureFlags
10778    //=========================================================================
10779    pub fn gtk_builder_closure_flags_get_type() -> GType;
10780
10781    //=========================================================================
10782    // GtkCellRendererState
10783    //=========================================================================
10784    pub fn gtk_cell_renderer_state_get_type() -> GType;
10785
10786    //=========================================================================
10787    // GtkDebugFlags
10788    //=========================================================================
10789    pub fn gtk_debug_flags_get_type() -> GType;
10790
10791    //=========================================================================
10792    // GtkDialogFlags
10793    //=========================================================================
10794    pub fn gtk_dialog_flags_get_type() -> GType;
10795
10796    //=========================================================================
10797    // GtkEventControllerScrollFlags
10798    //=========================================================================
10799    pub fn gtk_event_controller_scroll_flags_get_type() -> GType;
10800
10801    //=========================================================================
10802    // GtkFontChooserLevel
10803    //=========================================================================
10804    pub fn gtk_font_chooser_level_get_type() -> GType;
10805
10806    //=========================================================================
10807    // GtkIconLookupFlags
10808    //=========================================================================
10809    pub fn gtk_icon_lookup_flags_get_type() -> GType;
10810
10811    //=========================================================================
10812    // GtkInputHints
10813    //=========================================================================
10814    pub fn gtk_input_hints_get_type() -> GType;
10815
10816    //=========================================================================
10817    // GtkListScrollFlags
10818    //=========================================================================
10819    #[cfg(feature = "v4_12")]
10820    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
10821    pub fn gtk_list_scroll_flags_get_type() -> GType;
10822
10823    //=========================================================================
10824    // GtkPickFlags
10825    //=========================================================================
10826    pub fn gtk_pick_flags_get_type() -> GType;
10827
10828    //=========================================================================
10829    // GtkPopoverMenuFlags
10830    //=========================================================================
10831    pub fn gtk_popover_menu_flags_get_type() -> GType;
10832
10833    //=========================================================================
10834    // GtkPrintCapabilities
10835    //=========================================================================
10836    pub fn gtk_print_capabilities_get_type() -> GType;
10837
10838    //=========================================================================
10839    // GtkShortcutActionFlags
10840    //=========================================================================
10841    pub fn gtk_shortcut_action_flags_get_type() -> GType;
10842
10843    //=========================================================================
10844    // GtkStateFlags
10845    //=========================================================================
10846    pub fn gtk_state_flags_get_type() -> GType;
10847
10848    //=========================================================================
10849    // GtkStyleContextPrintFlags
10850    //=========================================================================
10851    pub fn gtk_style_context_print_flags_get_type() -> GType;
10852
10853    //=========================================================================
10854    // GtkSvgFeatures
10855    //=========================================================================
10856    #[cfg(feature = "v4_22")]
10857    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
10858    pub fn gtk_svg_features_get_type() -> GType;
10859
10860    //=========================================================================
10861    // GtkTextBufferNotifyFlags
10862    //=========================================================================
10863    #[cfg(feature = "v4_16")]
10864    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
10865    pub fn gtk_text_buffer_notify_flags_get_type() -> GType;
10866
10867    //=========================================================================
10868    // GtkTextSearchFlags
10869    //=========================================================================
10870    pub fn gtk_text_search_flags_get_type() -> GType;
10871
10872    //=========================================================================
10873    // GtkTreeModelFlags
10874    //=========================================================================
10875    pub fn gtk_tree_model_flags_get_type() -> GType;
10876
10877    //=========================================================================
10878    // GtkAccessibleList
10879    //=========================================================================
10880    #[cfg(feature = "v4_14")]
10881    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10882    pub fn gtk_accessible_list_get_type() -> GType;
10883    #[cfg(feature = "v4_14")]
10884    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10885    pub fn gtk_accessible_list_new_from_array(
10886        accessibles: *mut *mut GtkAccessible,
10887        n_accessibles: size_t,
10888    ) -> *mut GtkAccessibleList;
10889    #[cfg(feature = "v4_14")]
10890    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10891    pub fn gtk_accessible_list_new_from_list(list: *mut glib::GList) -> *mut GtkAccessibleList;
10892    #[cfg(feature = "v4_14")]
10893    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
10894    pub fn gtk_accessible_list_get_objects(
10895        accessible_list: *mut GtkAccessibleList,
10896    ) -> *mut glib::GList;
10897
10898    //=========================================================================
10899    // GtkBitset
10900    //=========================================================================
10901    pub fn gtk_bitset_get_type() -> GType;
10902    pub fn gtk_bitset_new_empty() -> *mut GtkBitset;
10903    pub fn gtk_bitset_new_range(start: c_uint, n_items: c_uint) -> *mut GtkBitset;
10904    pub fn gtk_bitset_add(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10905    pub fn gtk_bitset_add_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10906    pub fn gtk_bitset_add_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10907    pub fn gtk_bitset_add_rectangle(
10908        self_: *mut GtkBitset,
10909        start: c_uint,
10910        width: c_uint,
10911        height: c_uint,
10912        stride: c_uint,
10913    );
10914    pub fn gtk_bitset_contains(self_: *const GtkBitset, value: c_uint) -> gboolean;
10915    pub fn gtk_bitset_copy(self_: *const GtkBitset) -> *mut GtkBitset;
10916    pub fn gtk_bitset_difference(self_: *mut GtkBitset, other: *const GtkBitset);
10917    pub fn gtk_bitset_equals(self_: *const GtkBitset, other: *const GtkBitset) -> gboolean;
10918    pub fn gtk_bitset_get_maximum(self_: *const GtkBitset) -> c_uint;
10919    pub fn gtk_bitset_get_minimum(self_: *const GtkBitset) -> c_uint;
10920    pub fn gtk_bitset_get_nth(self_: *const GtkBitset, nth: c_uint) -> c_uint;
10921    pub fn gtk_bitset_get_size(self_: *const GtkBitset) -> u64;
10922    pub fn gtk_bitset_get_size_in_range(
10923        self_: *const GtkBitset,
10924        first: c_uint,
10925        last: c_uint,
10926    ) -> u64;
10927    pub fn gtk_bitset_intersect(self_: *mut GtkBitset, other: *const GtkBitset);
10928    pub fn gtk_bitset_is_empty(self_: *const GtkBitset) -> gboolean;
10929    pub fn gtk_bitset_ref(self_: *mut GtkBitset) -> *mut GtkBitset;
10930    pub fn gtk_bitset_remove(self_: *mut GtkBitset, value: c_uint) -> gboolean;
10931    pub fn gtk_bitset_remove_all(self_: *mut GtkBitset);
10932    pub fn gtk_bitset_remove_range(self_: *mut GtkBitset, start: c_uint, n_items: c_uint);
10933    pub fn gtk_bitset_remove_range_closed(self_: *mut GtkBitset, first: c_uint, last: c_uint);
10934    pub fn gtk_bitset_remove_rectangle(
10935        self_: *mut GtkBitset,
10936        start: c_uint,
10937        width: c_uint,
10938        height: c_uint,
10939        stride: c_uint,
10940    );
10941    pub fn gtk_bitset_shift_left(self_: *mut GtkBitset, amount: c_uint);
10942    pub fn gtk_bitset_shift_right(self_: *mut GtkBitset, amount: c_uint);
10943    pub fn gtk_bitset_splice(
10944        self_: *mut GtkBitset,
10945        position: c_uint,
10946        removed: c_uint,
10947        added: c_uint,
10948    );
10949    pub fn gtk_bitset_subtract(self_: *mut GtkBitset, other: *const GtkBitset);
10950    pub fn gtk_bitset_union(self_: *mut GtkBitset, other: *const GtkBitset);
10951    pub fn gtk_bitset_unref(self_: *mut GtkBitset);
10952
10953    //=========================================================================
10954    // GtkBitsetIter
10955    //=========================================================================
10956    pub fn gtk_bitset_iter_get_type() -> GType;
10957    pub fn gtk_bitset_iter_get_value(iter: *const GtkBitsetIter) -> c_uint;
10958    pub fn gtk_bitset_iter_is_valid(iter: *const GtkBitsetIter) -> gboolean;
10959    pub fn gtk_bitset_iter_next(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10960    pub fn gtk_bitset_iter_previous(iter: *mut GtkBitsetIter, value: *mut c_uint) -> gboolean;
10961    pub fn gtk_bitset_iter_init_at(
10962        iter: *mut GtkBitsetIter,
10963        set: *const GtkBitset,
10964        target: c_uint,
10965        value: *mut c_uint,
10966    ) -> gboolean;
10967    pub fn gtk_bitset_iter_init_first(
10968        iter: *mut GtkBitsetIter,
10969        set: *const GtkBitset,
10970        value: *mut c_uint,
10971    ) -> gboolean;
10972    pub fn gtk_bitset_iter_init_last(
10973        iter: *mut GtkBitsetIter,
10974        set: *const GtkBitset,
10975        value: *mut c_uint,
10976    ) -> gboolean;
10977
10978    //=========================================================================
10979    // GtkBorder
10980    //=========================================================================
10981    pub fn gtk_border_get_type() -> GType;
10982    pub fn gtk_border_new() -> *mut GtkBorder;
10983    pub fn gtk_border_copy(border_: *const GtkBorder) -> *mut GtkBorder;
10984    pub fn gtk_border_free(border_: *mut GtkBorder);
10985
10986    //=========================================================================
10987    // GtkBuildableParseContext
10988    //=========================================================================
10989    pub fn gtk_buildable_parse_context_get_element(
10990        context: *mut GtkBuildableParseContext,
10991    ) -> *const c_char;
10992    pub fn gtk_buildable_parse_context_get_element_stack(
10993        context: *mut GtkBuildableParseContext,
10994    ) -> *mut glib::GPtrArray;
10995    pub fn gtk_buildable_parse_context_get_position(
10996        context: *mut GtkBuildableParseContext,
10997        line_number: *mut c_int,
10998        char_number: *mut c_int,
10999    );
11000    pub fn gtk_buildable_parse_context_pop(context: *mut GtkBuildableParseContext) -> gpointer;
11001    pub fn gtk_buildable_parse_context_push(
11002        context: *mut GtkBuildableParseContext,
11003        parser: *const GtkBuildableParser,
11004        user_data: gpointer,
11005    );
11006
11007    //=========================================================================
11008    // GtkCellAreaClass
11009    //=========================================================================
11010    pub fn gtk_cell_area_class_find_cell_property(
11011        aclass: *mut GtkCellAreaClass,
11012        property_name: *const c_char,
11013    ) -> *mut gobject::GParamSpec;
11014    pub fn gtk_cell_area_class_install_cell_property(
11015        aclass: *mut GtkCellAreaClass,
11016        property_id: c_uint,
11017        pspec: *mut gobject::GParamSpec,
11018    );
11019    pub fn gtk_cell_area_class_list_cell_properties(
11020        aclass: *mut GtkCellAreaClass,
11021        n_properties: *mut c_uint,
11022    ) -> *mut *mut gobject::GParamSpec;
11023
11024    //=========================================================================
11025    // GtkCssSection
11026    //=========================================================================
11027    pub fn gtk_css_section_get_type() -> GType;
11028    pub fn gtk_css_section_new(
11029        file: *mut gio::GFile,
11030        start: *const GtkCssLocation,
11031        end: *const GtkCssLocation,
11032    ) -> *mut GtkCssSection;
11033    #[cfg(feature = "v4_16")]
11034    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
11035    pub fn gtk_css_section_new_with_bytes(
11036        file: *mut gio::GFile,
11037        bytes: *mut glib::GBytes,
11038        start: *const GtkCssLocation,
11039        end: *const GtkCssLocation,
11040    ) -> *mut GtkCssSection;
11041    #[cfg(feature = "v4_16")]
11042    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
11043    pub fn gtk_css_section_get_bytes(section: *const GtkCssSection) -> *mut glib::GBytes;
11044    pub fn gtk_css_section_get_end_location(section: *const GtkCssSection)
11045    -> *const GtkCssLocation;
11046    pub fn gtk_css_section_get_file(section: *const GtkCssSection) -> *mut gio::GFile;
11047    pub fn gtk_css_section_get_parent(section: *const GtkCssSection) -> *mut GtkCssSection;
11048    pub fn gtk_css_section_get_start_location(
11049        section: *const GtkCssSection,
11050    ) -> *const GtkCssLocation;
11051    pub fn gtk_css_section_print(section: *const GtkCssSection, string: *mut glib::GString);
11052    pub fn gtk_css_section_ref(section: *mut GtkCssSection) -> *mut GtkCssSection;
11053    pub fn gtk_css_section_to_string(section: *const GtkCssSection) -> *mut c_char;
11054    pub fn gtk_css_section_unref(section: *mut GtkCssSection);
11055
11056    //=========================================================================
11057    // GtkExpressionWatch
11058    //=========================================================================
11059    #[cfg(feature = "v4_2")]
11060    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
11061    pub fn gtk_expression_watch_get_type() -> GType;
11062    pub fn gtk_expression_watch_evaluate(
11063        watch: *mut GtkExpressionWatch,
11064        value: *mut gobject::GValue,
11065    ) -> gboolean;
11066    pub fn gtk_expression_watch_ref(watch: *mut GtkExpressionWatch) -> *mut GtkExpressionWatch;
11067    pub fn gtk_expression_watch_unref(watch: *mut GtkExpressionWatch);
11068    pub fn gtk_expression_watch_unwatch(watch: *mut GtkExpressionWatch);
11069
11070    //=========================================================================
11071    // GtkPaperSize
11072    //=========================================================================
11073    pub fn gtk_paper_size_get_type() -> GType;
11074    pub fn gtk_paper_size_new(name: *const c_char) -> *mut GtkPaperSize;
11075    pub fn gtk_paper_size_new_custom(
11076        name: *const c_char,
11077        display_name: *const c_char,
11078        width: c_double,
11079        height: c_double,
11080        unit: GtkUnit,
11081    ) -> *mut GtkPaperSize;
11082    pub fn gtk_paper_size_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPaperSize;
11083    pub fn gtk_paper_size_new_from_ipp(
11084        ipp_name: *const c_char,
11085        width: c_double,
11086        height: c_double,
11087    ) -> *mut GtkPaperSize;
11088    pub fn gtk_paper_size_new_from_key_file(
11089        key_file: *mut glib::GKeyFile,
11090        group_name: *const c_char,
11091        error: *mut *mut glib::GError,
11092    ) -> *mut GtkPaperSize;
11093    pub fn gtk_paper_size_new_from_ppd(
11094        ppd_name: *const c_char,
11095        ppd_display_name: *const c_char,
11096        width: c_double,
11097        height: c_double,
11098    ) -> *mut GtkPaperSize;
11099    pub fn gtk_paper_size_copy(other: *mut GtkPaperSize) -> *mut GtkPaperSize;
11100    pub fn gtk_paper_size_free(size: *mut GtkPaperSize);
11101    pub fn gtk_paper_size_get_default_bottom_margin(
11102        size: *mut GtkPaperSize,
11103        unit: GtkUnit,
11104    ) -> c_double;
11105    pub fn gtk_paper_size_get_default_left_margin(
11106        size: *mut GtkPaperSize,
11107        unit: GtkUnit,
11108    ) -> c_double;
11109    pub fn gtk_paper_size_get_default_right_margin(
11110        size: *mut GtkPaperSize,
11111        unit: GtkUnit,
11112    ) -> c_double;
11113    pub fn gtk_paper_size_get_default_top_margin(
11114        size: *mut GtkPaperSize,
11115        unit: GtkUnit,
11116    ) -> c_double;
11117    pub fn gtk_paper_size_get_display_name(size: *mut GtkPaperSize) -> *const c_char;
11118    pub fn gtk_paper_size_get_height(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11119    pub fn gtk_paper_size_get_name(size: *mut GtkPaperSize) -> *const c_char;
11120    pub fn gtk_paper_size_get_ppd_name(size: *mut GtkPaperSize) -> *const c_char;
11121    pub fn gtk_paper_size_get_width(size: *mut GtkPaperSize, unit: GtkUnit) -> c_double;
11122    pub fn gtk_paper_size_is_custom(size: *mut GtkPaperSize) -> gboolean;
11123    pub fn gtk_paper_size_is_equal(size1: *mut GtkPaperSize, size2: *mut GtkPaperSize) -> gboolean;
11124    pub fn gtk_paper_size_is_ipp(size: *mut GtkPaperSize) -> gboolean;
11125    pub fn gtk_paper_size_set_size(
11126        size: *mut GtkPaperSize,
11127        width: c_double,
11128        height: c_double,
11129        unit: GtkUnit,
11130    );
11131    pub fn gtk_paper_size_to_gvariant(paper_size: *mut GtkPaperSize) -> *mut glib::GVariant;
11132    pub fn gtk_paper_size_to_key_file(
11133        size: *mut GtkPaperSize,
11134        key_file: *mut glib::GKeyFile,
11135        group_name: *const c_char,
11136    );
11137    pub fn gtk_paper_size_get_default() -> *const c_char;
11138    pub fn gtk_paper_size_get_paper_sizes(include_custom: gboolean) -> *mut glib::GList;
11139
11140    //=========================================================================
11141    // GtkPrintSetup
11142    //=========================================================================
11143    #[cfg(feature = "v4_14")]
11144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11145    pub fn gtk_print_setup_get_type() -> GType;
11146    #[cfg(feature = "v4_14")]
11147    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11148    pub fn gtk_print_setup_get_page_setup(setup: *mut GtkPrintSetup) -> *mut GtkPageSetup;
11149    #[cfg(feature = "v4_14")]
11150    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11151    pub fn gtk_print_setup_get_print_settings(setup: *mut GtkPrintSetup) -> *mut GtkPrintSettings;
11152    #[cfg(feature = "v4_14")]
11153    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11154    pub fn gtk_print_setup_ref(setup: *mut GtkPrintSetup) -> *mut GtkPrintSetup;
11155    #[cfg(feature = "v4_14")]
11156    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
11157    pub fn gtk_print_setup_unref(setup: *mut GtkPrintSetup);
11158
11159    //=========================================================================
11160    // GtkRecentInfo
11161    //=========================================================================
11162    pub fn gtk_recent_info_get_type() -> GType;
11163    pub fn gtk_recent_info_create_app_info(
11164        info: *mut GtkRecentInfo,
11165        app_name: *const c_char,
11166        error: *mut *mut glib::GError,
11167    ) -> *mut gio::GAppInfo;
11168    pub fn gtk_recent_info_exists(info: *mut GtkRecentInfo) -> gboolean;
11169    pub fn gtk_recent_info_get_added(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11170    pub fn gtk_recent_info_get_age(info: *mut GtkRecentInfo) -> c_int;
11171    pub fn gtk_recent_info_get_application_info(
11172        info: *mut GtkRecentInfo,
11173        app_name: *const c_char,
11174        app_exec: *mut *const c_char,
11175        count: *mut c_uint,
11176        stamp: *mut *mut glib::GDateTime,
11177    ) -> gboolean;
11178    pub fn gtk_recent_info_get_applications(
11179        info: *mut GtkRecentInfo,
11180        length: *mut size_t,
11181    ) -> *mut *mut c_char;
11182    pub fn gtk_recent_info_get_description(info: *mut GtkRecentInfo) -> *const c_char;
11183    pub fn gtk_recent_info_get_display_name(info: *mut GtkRecentInfo) -> *const c_char;
11184    pub fn gtk_recent_info_get_gicon(info: *mut GtkRecentInfo) -> *mut gio::GIcon;
11185    pub fn gtk_recent_info_get_groups(
11186        info: *mut GtkRecentInfo,
11187        length: *mut size_t,
11188    ) -> *mut *mut c_char;
11189    pub fn gtk_recent_info_get_mime_type(info: *mut GtkRecentInfo) -> *const c_char;
11190    pub fn gtk_recent_info_get_modified(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11191    pub fn gtk_recent_info_get_private_hint(info: *mut GtkRecentInfo) -> gboolean;
11192    pub fn gtk_recent_info_get_short_name(info: *mut GtkRecentInfo) -> *mut c_char;
11193    pub fn gtk_recent_info_get_uri(info: *mut GtkRecentInfo) -> *const c_char;
11194    pub fn gtk_recent_info_get_uri_display(info: *mut GtkRecentInfo) -> *mut c_char;
11195    pub fn gtk_recent_info_get_visited(info: *mut GtkRecentInfo) -> *mut glib::GDateTime;
11196    pub fn gtk_recent_info_has_application(
11197        info: *mut GtkRecentInfo,
11198        app_name: *const c_char,
11199    ) -> gboolean;
11200    pub fn gtk_recent_info_has_group(
11201        info: *mut GtkRecentInfo,
11202        group_name: *const c_char,
11203    ) -> gboolean;
11204    pub fn gtk_recent_info_is_local(info: *mut GtkRecentInfo) -> gboolean;
11205    pub fn gtk_recent_info_last_application(info: *mut GtkRecentInfo) -> *mut c_char;
11206    pub fn gtk_recent_info_match(
11207        info_a: *mut GtkRecentInfo,
11208        info_b: *mut GtkRecentInfo,
11209    ) -> gboolean;
11210    pub fn gtk_recent_info_ref(info: *mut GtkRecentInfo) -> *mut GtkRecentInfo;
11211    pub fn gtk_recent_info_unref(info: *mut GtkRecentInfo);
11212
11213    //=========================================================================
11214    // GtkRequisition
11215    //=========================================================================
11216    pub fn gtk_requisition_get_type() -> GType;
11217    pub fn gtk_requisition_new() -> *mut GtkRequisition;
11218    pub fn gtk_requisition_copy(requisition: *const GtkRequisition) -> *mut GtkRequisition;
11219    pub fn gtk_requisition_free(requisition: *mut GtkRequisition);
11220
11221    //=========================================================================
11222    // GtkScrollInfo
11223    //=========================================================================
11224    #[cfg(feature = "v4_12")]
11225    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11226    pub fn gtk_scroll_info_get_type() -> GType;
11227    #[cfg(feature = "v4_12")]
11228    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11229    pub fn gtk_scroll_info_new() -> *mut GtkScrollInfo;
11230    #[cfg(feature = "v4_12")]
11231    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11232    pub fn gtk_scroll_info_get_enable_horizontal(self_: *mut GtkScrollInfo) -> gboolean;
11233    #[cfg(feature = "v4_12")]
11234    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11235    pub fn gtk_scroll_info_get_enable_vertical(self_: *mut GtkScrollInfo) -> gboolean;
11236    #[cfg(feature = "v4_12")]
11237    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11238    pub fn gtk_scroll_info_ref(self_: *mut GtkScrollInfo) -> *mut GtkScrollInfo;
11239    #[cfg(feature = "v4_12")]
11240    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11241    pub fn gtk_scroll_info_set_enable_horizontal(self_: *mut GtkScrollInfo, horizontal: gboolean);
11242    #[cfg(feature = "v4_12")]
11243    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11244    pub fn gtk_scroll_info_set_enable_vertical(self_: *mut GtkScrollInfo, vertical: gboolean);
11245    #[cfg(feature = "v4_12")]
11246    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
11247    pub fn gtk_scroll_info_unref(self_: *mut GtkScrollInfo);
11248
11249    //=========================================================================
11250    // GtkTextIter
11251    //=========================================================================
11252    pub fn gtk_text_iter_get_type() -> GType;
11253    pub fn gtk_text_iter_assign(iter: *mut GtkTextIter, other: *const GtkTextIter);
11254    pub fn gtk_text_iter_backward_char(iter: *mut GtkTextIter) -> gboolean;
11255    pub fn gtk_text_iter_backward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11256    pub fn gtk_text_iter_backward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11257    pub fn gtk_text_iter_backward_cursor_positions(
11258        iter: *mut GtkTextIter,
11259        count: c_int,
11260    ) -> gboolean;
11261    pub fn gtk_text_iter_backward_find_char(
11262        iter: *mut GtkTextIter,
11263        pred: GtkTextCharPredicate,
11264        user_data: gpointer,
11265        limit: *const GtkTextIter,
11266    ) -> gboolean;
11267    pub fn gtk_text_iter_backward_line(iter: *mut GtkTextIter) -> gboolean;
11268    pub fn gtk_text_iter_backward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11269    pub fn gtk_text_iter_backward_search(
11270        iter: *const GtkTextIter,
11271        str: *const c_char,
11272        flags: GtkTextSearchFlags,
11273        match_start: *mut GtkTextIter,
11274        match_end: *mut GtkTextIter,
11275        limit: *const GtkTextIter,
11276    ) -> gboolean;
11277    pub fn gtk_text_iter_backward_sentence_start(iter: *mut GtkTextIter) -> gboolean;
11278    pub fn gtk_text_iter_backward_sentence_starts(iter: *mut GtkTextIter, count: c_int)
11279    -> gboolean;
11280    pub fn gtk_text_iter_backward_to_tag_toggle(
11281        iter: *mut GtkTextIter,
11282        tag: *mut GtkTextTag,
11283    ) -> gboolean;
11284    pub fn gtk_text_iter_backward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11285    pub fn gtk_text_iter_backward_visible_cursor_positions(
11286        iter: *mut GtkTextIter,
11287        count: c_int,
11288    ) -> gboolean;
11289    pub fn gtk_text_iter_backward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11290    pub fn gtk_text_iter_backward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11291    pub fn gtk_text_iter_backward_visible_word_start(iter: *mut GtkTextIter) -> gboolean;
11292    pub fn gtk_text_iter_backward_visible_word_starts(
11293        iter: *mut GtkTextIter,
11294        count: c_int,
11295    ) -> gboolean;
11296    pub fn gtk_text_iter_backward_word_start(iter: *mut GtkTextIter) -> gboolean;
11297    pub fn gtk_text_iter_backward_word_starts(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11298    pub fn gtk_text_iter_can_insert(
11299        iter: *const GtkTextIter,
11300        default_editability: gboolean,
11301    ) -> gboolean;
11302    pub fn gtk_text_iter_compare(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> c_int;
11303    pub fn gtk_text_iter_copy(iter: *const GtkTextIter) -> *mut GtkTextIter;
11304    pub fn gtk_text_iter_editable(iter: *const GtkTextIter, default_setting: gboolean) -> gboolean;
11305    pub fn gtk_text_iter_ends_line(iter: *const GtkTextIter) -> gboolean;
11306    pub fn gtk_text_iter_ends_sentence(iter: *const GtkTextIter) -> gboolean;
11307    pub fn gtk_text_iter_ends_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11308    pub fn gtk_text_iter_ends_word(iter: *const GtkTextIter) -> gboolean;
11309    pub fn gtk_text_iter_equal(lhs: *const GtkTextIter, rhs: *const GtkTextIter) -> gboolean;
11310    pub fn gtk_text_iter_forward_char(iter: *mut GtkTextIter) -> gboolean;
11311    pub fn gtk_text_iter_forward_chars(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11312    pub fn gtk_text_iter_forward_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11313    pub fn gtk_text_iter_forward_cursor_positions(iter: *mut GtkTextIter, count: c_int)
11314    -> gboolean;
11315    pub fn gtk_text_iter_forward_find_char(
11316        iter: *mut GtkTextIter,
11317        pred: GtkTextCharPredicate,
11318        user_data: gpointer,
11319        limit: *const GtkTextIter,
11320    ) -> gboolean;
11321    pub fn gtk_text_iter_forward_line(iter: *mut GtkTextIter) -> gboolean;
11322    pub fn gtk_text_iter_forward_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11323    pub fn gtk_text_iter_forward_search(
11324        iter: *const GtkTextIter,
11325        str: *const c_char,
11326        flags: GtkTextSearchFlags,
11327        match_start: *mut GtkTextIter,
11328        match_end: *mut GtkTextIter,
11329        limit: *const GtkTextIter,
11330    ) -> gboolean;
11331    pub fn gtk_text_iter_forward_sentence_end(iter: *mut GtkTextIter) -> gboolean;
11332    pub fn gtk_text_iter_forward_sentence_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11333    pub fn gtk_text_iter_forward_to_end(iter: *mut GtkTextIter);
11334    pub fn gtk_text_iter_forward_to_line_end(iter: *mut GtkTextIter) -> gboolean;
11335    pub fn gtk_text_iter_forward_to_tag_toggle(
11336        iter: *mut GtkTextIter,
11337        tag: *mut GtkTextTag,
11338    ) -> gboolean;
11339    pub fn gtk_text_iter_forward_visible_cursor_position(iter: *mut GtkTextIter) -> gboolean;
11340    pub fn gtk_text_iter_forward_visible_cursor_positions(
11341        iter: *mut GtkTextIter,
11342        count: c_int,
11343    ) -> gboolean;
11344    pub fn gtk_text_iter_forward_visible_line(iter: *mut GtkTextIter) -> gboolean;
11345    pub fn gtk_text_iter_forward_visible_lines(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11346    pub fn gtk_text_iter_forward_visible_word_end(iter: *mut GtkTextIter) -> gboolean;
11347    pub fn gtk_text_iter_forward_visible_word_ends(
11348        iter: *mut GtkTextIter,
11349        count: c_int,
11350    ) -> gboolean;
11351    pub fn gtk_text_iter_forward_word_end(iter: *mut GtkTextIter) -> gboolean;
11352    pub fn gtk_text_iter_forward_word_ends(iter: *mut GtkTextIter, count: c_int) -> gboolean;
11353    pub fn gtk_text_iter_free(iter: *mut GtkTextIter);
11354    pub fn gtk_text_iter_get_buffer(iter: *const GtkTextIter) -> *mut GtkTextBuffer;
11355    pub fn gtk_text_iter_get_bytes_in_line(iter: *const GtkTextIter) -> c_int;
11356    pub fn gtk_text_iter_get_char(iter: *const GtkTextIter) -> u32;
11357    pub fn gtk_text_iter_get_chars_in_line(iter: *const GtkTextIter) -> c_int;
11358    pub fn gtk_text_iter_get_child_anchor(iter: *const GtkTextIter) -> *mut GtkTextChildAnchor;
11359    pub fn gtk_text_iter_get_language(iter: *const GtkTextIter) -> *mut pango::PangoLanguage;
11360    pub fn gtk_text_iter_get_line(iter: *const GtkTextIter) -> c_int;
11361    pub fn gtk_text_iter_get_line_index(iter: *const GtkTextIter) -> c_int;
11362    pub fn gtk_text_iter_get_line_offset(iter: *const GtkTextIter) -> c_int;
11363    pub fn gtk_text_iter_get_marks(iter: *const GtkTextIter) -> *mut glib::GSList;
11364    pub fn gtk_text_iter_get_offset(iter: *const GtkTextIter) -> c_int;
11365    pub fn gtk_text_iter_get_paintable(iter: *const GtkTextIter) -> *mut gdk::GdkPaintable;
11366    pub fn gtk_text_iter_get_slice(
11367        start: *const GtkTextIter,
11368        end: *const GtkTextIter,
11369    ) -> *mut c_char;
11370    pub fn gtk_text_iter_get_tags(iter: *const GtkTextIter) -> *mut glib::GSList;
11371    pub fn gtk_text_iter_get_text(
11372        start: *const GtkTextIter,
11373        end: *const GtkTextIter,
11374    ) -> *mut c_char;
11375    pub fn gtk_text_iter_get_toggled_tags(
11376        iter: *const GtkTextIter,
11377        toggled_on: gboolean,
11378    ) -> *mut glib::GSList;
11379    pub fn gtk_text_iter_get_visible_line_index(iter: *const GtkTextIter) -> c_int;
11380    pub fn gtk_text_iter_get_visible_line_offset(iter: *const GtkTextIter) -> c_int;
11381    pub fn gtk_text_iter_get_visible_slice(
11382        start: *const GtkTextIter,
11383        end: *const GtkTextIter,
11384    ) -> *mut c_char;
11385    pub fn gtk_text_iter_get_visible_text(
11386        start: *const GtkTextIter,
11387        end: *const GtkTextIter,
11388    ) -> *mut c_char;
11389    pub fn gtk_text_iter_has_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11390    pub fn gtk_text_iter_in_range(
11391        iter: *const GtkTextIter,
11392        start: *const GtkTextIter,
11393        end: *const GtkTextIter,
11394    ) -> gboolean;
11395    pub fn gtk_text_iter_inside_sentence(iter: *const GtkTextIter) -> gboolean;
11396    pub fn gtk_text_iter_inside_word(iter: *const GtkTextIter) -> gboolean;
11397    pub fn gtk_text_iter_is_cursor_position(iter: *const GtkTextIter) -> gboolean;
11398    pub fn gtk_text_iter_is_end(iter: *const GtkTextIter) -> gboolean;
11399    pub fn gtk_text_iter_is_start(iter: *const GtkTextIter) -> gboolean;
11400    pub fn gtk_text_iter_order(first: *mut GtkTextIter, second: *mut GtkTextIter);
11401    pub fn gtk_text_iter_set_line(iter: *mut GtkTextIter, line_number: c_int);
11402    pub fn gtk_text_iter_set_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11403    pub fn gtk_text_iter_set_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11404    pub fn gtk_text_iter_set_offset(iter: *mut GtkTextIter, char_offset: c_int);
11405    pub fn gtk_text_iter_set_visible_line_index(iter: *mut GtkTextIter, byte_on_line: c_int);
11406    pub fn gtk_text_iter_set_visible_line_offset(iter: *mut GtkTextIter, char_on_line: c_int);
11407    pub fn gtk_text_iter_starts_line(iter: *const GtkTextIter) -> gboolean;
11408    pub fn gtk_text_iter_starts_sentence(iter: *const GtkTextIter) -> gboolean;
11409    pub fn gtk_text_iter_starts_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11410    pub fn gtk_text_iter_starts_word(iter: *const GtkTextIter) -> gboolean;
11411    pub fn gtk_text_iter_toggles_tag(iter: *const GtkTextIter, tag: *mut GtkTextTag) -> gboolean;
11412
11413    //=========================================================================
11414    // GtkTreeIter
11415    //=========================================================================
11416    pub fn gtk_tree_iter_get_type() -> GType;
11417    pub fn gtk_tree_iter_copy(iter: *mut GtkTreeIter) -> *mut GtkTreeIter;
11418    pub fn gtk_tree_iter_free(iter: *mut GtkTreeIter);
11419
11420    //=========================================================================
11421    // GtkTreePath
11422    //=========================================================================
11423    pub fn gtk_tree_path_get_type() -> GType;
11424    pub fn gtk_tree_path_new() -> *mut GtkTreePath;
11425    pub fn gtk_tree_path_new_first() -> *mut GtkTreePath;
11426    pub fn gtk_tree_path_new_from_indices(first_index: c_int, ...) -> *mut GtkTreePath;
11427    pub fn gtk_tree_path_new_from_indicesv(indices: *mut c_int, length: size_t)
11428    -> *mut GtkTreePath;
11429    pub fn gtk_tree_path_new_from_string(path: *const c_char) -> *mut GtkTreePath;
11430    pub fn gtk_tree_path_append_index(path: *mut GtkTreePath, index_: c_int);
11431    pub fn gtk_tree_path_compare(a: *const GtkTreePath, b: *const GtkTreePath) -> c_int;
11432    pub fn gtk_tree_path_copy(path: *const GtkTreePath) -> *mut GtkTreePath;
11433    pub fn gtk_tree_path_down(path: *mut GtkTreePath);
11434    pub fn gtk_tree_path_free(path: *mut GtkTreePath);
11435    pub fn gtk_tree_path_get_depth(path: *mut GtkTreePath) -> c_int;
11436    pub fn gtk_tree_path_get_indices(path: *mut GtkTreePath) -> *mut c_int;
11437    pub fn gtk_tree_path_get_indices_with_depth(
11438        path: *mut GtkTreePath,
11439        depth: *mut c_int,
11440    ) -> *mut c_int;
11441    pub fn gtk_tree_path_is_ancestor(
11442        path: *mut GtkTreePath,
11443        descendant: *mut GtkTreePath,
11444    ) -> gboolean;
11445    pub fn gtk_tree_path_is_descendant(
11446        path: *mut GtkTreePath,
11447        ancestor: *mut GtkTreePath,
11448    ) -> gboolean;
11449    pub fn gtk_tree_path_next(path: *mut GtkTreePath);
11450    pub fn gtk_tree_path_prepend_index(path: *mut GtkTreePath, index_: c_int);
11451    pub fn gtk_tree_path_prev(path: *mut GtkTreePath) -> gboolean;
11452    pub fn gtk_tree_path_to_string(path: *mut GtkTreePath) -> *mut c_char;
11453    pub fn gtk_tree_path_up(path: *mut GtkTreePath) -> gboolean;
11454
11455    //=========================================================================
11456    // GtkTreeRowReference
11457    //=========================================================================
11458    pub fn gtk_tree_row_reference_get_type() -> GType;
11459    pub fn gtk_tree_row_reference_new(
11460        model: *mut GtkTreeModel,
11461        path: *mut GtkTreePath,
11462    ) -> *mut GtkTreeRowReference;
11463    pub fn gtk_tree_row_reference_new_proxy(
11464        proxy: *mut gobject::GObject,
11465        model: *mut GtkTreeModel,
11466        path: *mut GtkTreePath,
11467    ) -> *mut GtkTreeRowReference;
11468    pub fn gtk_tree_row_reference_copy(
11469        reference: *mut GtkTreeRowReference,
11470    ) -> *mut GtkTreeRowReference;
11471    pub fn gtk_tree_row_reference_free(reference: *mut GtkTreeRowReference);
11472    pub fn gtk_tree_row_reference_get_model(
11473        reference: *mut GtkTreeRowReference,
11474    ) -> *mut GtkTreeModel;
11475    pub fn gtk_tree_row_reference_get_path(reference: *mut GtkTreeRowReference)
11476    -> *mut GtkTreePath;
11477    pub fn gtk_tree_row_reference_valid(reference: *mut GtkTreeRowReference) -> gboolean;
11478    pub fn gtk_tree_row_reference_deleted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11479    pub fn gtk_tree_row_reference_inserted(proxy: *mut gobject::GObject, path: *mut GtkTreePath);
11480    pub fn gtk_tree_row_reference_reordered(
11481        proxy: *mut gobject::GObject,
11482        path: *mut GtkTreePath,
11483        iter: *mut GtkTreeIter,
11484        new_order: *mut c_int,
11485    );
11486
11487    //=========================================================================
11488    // GtkWidgetClass
11489    //=========================================================================
11490    pub fn gtk_widget_class_add_binding(
11491        widget_class: *mut GtkWidgetClass,
11492        keyval: c_uint,
11493        mods: gdk::GdkModifierType,
11494        callback: GtkShortcutFunc,
11495        format_string: *const c_char,
11496        ...
11497    );
11498    pub fn gtk_widget_class_add_binding_action(
11499        widget_class: *mut GtkWidgetClass,
11500        keyval: c_uint,
11501        mods: gdk::GdkModifierType,
11502        action_name: *const c_char,
11503        format_string: *const c_char,
11504        ...
11505    );
11506    pub fn gtk_widget_class_add_binding_signal(
11507        widget_class: *mut GtkWidgetClass,
11508        keyval: c_uint,
11509        mods: gdk::GdkModifierType,
11510        signal: *const c_char,
11511        format_string: *const c_char,
11512        ...
11513    );
11514    pub fn gtk_widget_class_add_shortcut(
11515        widget_class: *mut GtkWidgetClass,
11516        shortcut: *mut GtkShortcut,
11517    );
11518    pub fn gtk_widget_class_bind_template_callback_full(
11519        widget_class: *mut GtkWidgetClass,
11520        callback_name: *const c_char,
11521        callback_symbol: gobject::GCallback,
11522    );
11523    pub fn gtk_widget_class_bind_template_child_full(
11524        widget_class: *mut GtkWidgetClass,
11525        name: *const c_char,
11526        internal_child: gboolean,
11527        struct_offset: ssize_t,
11528    );
11529    pub fn gtk_widget_class_get_accessible_role(
11530        widget_class: *mut GtkWidgetClass,
11531    ) -> GtkAccessibleRole;
11532    pub fn gtk_widget_class_get_activate_signal(widget_class: *mut GtkWidgetClass) -> c_uint;
11533    pub fn gtk_widget_class_get_css_name(widget_class: *mut GtkWidgetClass) -> *const c_char;
11534    pub fn gtk_widget_class_get_layout_manager_type(widget_class: *mut GtkWidgetClass) -> GType;
11535    pub fn gtk_widget_class_install_action(
11536        widget_class: *mut GtkWidgetClass,
11537        action_name: *const c_char,
11538        parameter_type: *const c_char,
11539        activate: GtkWidgetActionActivateFunc,
11540    );
11541    pub fn gtk_widget_class_install_property_action(
11542        widget_class: *mut GtkWidgetClass,
11543        action_name: *const c_char,
11544        property_name: *const c_char,
11545    );
11546    pub fn gtk_widget_class_query_action(
11547        widget_class: *mut GtkWidgetClass,
11548        index_: c_uint,
11549        owner: *mut GType,
11550        action_name: *mut *const c_char,
11551        parameter_type: *mut *const glib::GVariantType,
11552        property_name: *mut *const c_char,
11553    ) -> gboolean;
11554    pub fn gtk_widget_class_set_accessible_role(
11555        widget_class: *mut GtkWidgetClass,
11556        accessible_role: GtkAccessibleRole,
11557    );
11558    pub fn gtk_widget_class_set_activate_signal(
11559        widget_class: *mut GtkWidgetClass,
11560        signal_id: c_uint,
11561    );
11562    pub fn gtk_widget_class_set_activate_signal_from_name(
11563        widget_class: *mut GtkWidgetClass,
11564        signal_name: *const c_char,
11565    );
11566    pub fn gtk_widget_class_set_css_name(widget_class: *mut GtkWidgetClass, name: *const c_char);
11567    pub fn gtk_widget_class_set_layout_manager_type(
11568        widget_class: *mut GtkWidgetClass,
11569        type_: GType,
11570    );
11571    pub fn gtk_widget_class_set_template(
11572        widget_class: *mut GtkWidgetClass,
11573        template_bytes: *mut glib::GBytes,
11574    );
11575    pub fn gtk_widget_class_set_template_from_resource(
11576        widget_class: *mut GtkWidgetClass,
11577        resource_name: *const c_char,
11578    );
11579    pub fn gtk_widget_class_set_template_scope(
11580        widget_class: *mut GtkWidgetClass,
11581        scope: *mut GtkBuilderScope,
11582    );
11583
11584    //=========================================================================
11585    // GtkATContext
11586    //=========================================================================
11587    pub fn gtk_at_context_get_type() -> GType;
11588    pub fn gtk_at_context_create(
11589        accessible_role: GtkAccessibleRole,
11590        accessible: *mut GtkAccessible,
11591        display: *mut gdk::GdkDisplay,
11592    ) -> *mut GtkATContext;
11593    pub fn gtk_at_context_get_accessible(self_: *mut GtkATContext) -> *mut GtkAccessible;
11594    pub fn gtk_at_context_get_accessible_role(self_: *mut GtkATContext) -> GtkAccessibleRole;
11595
11596    //=========================================================================
11597    // GtkAboutDialog
11598    //=========================================================================
11599    pub fn gtk_about_dialog_get_type() -> GType;
11600    pub fn gtk_about_dialog_new() -> *mut GtkWidget;
11601    pub fn gtk_about_dialog_add_credit_section(
11602        about: *mut GtkAboutDialog,
11603        section_name: *const c_char,
11604        people: *mut *const c_char,
11605    );
11606    pub fn gtk_about_dialog_get_artists(about: *mut GtkAboutDialog) -> *const *const c_char;
11607    pub fn gtk_about_dialog_get_authors(about: *mut GtkAboutDialog) -> *const *const c_char;
11608    pub fn gtk_about_dialog_get_comments(about: *mut GtkAboutDialog) -> *const c_char;
11609    pub fn gtk_about_dialog_get_copyright(about: *mut GtkAboutDialog) -> *const c_char;
11610    pub fn gtk_about_dialog_get_documenters(about: *mut GtkAboutDialog) -> *const *const c_char;
11611    pub fn gtk_about_dialog_get_license(about: *mut GtkAboutDialog) -> *const c_char;
11612    pub fn gtk_about_dialog_get_license_type(about: *mut GtkAboutDialog) -> GtkLicense;
11613    pub fn gtk_about_dialog_get_logo(about: *mut GtkAboutDialog) -> *mut gdk::GdkPaintable;
11614    pub fn gtk_about_dialog_get_logo_icon_name(about: *mut GtkAboutDialog) -> *const c_char;
11615    pub fn gtk_about_dialog_get_program_name(about: *mut GtkAboutDialog) -> *const c_char;
11616    pub fn gtk_about_dialog_get_system_information(about: *mut GtkAboutDialog) -> *const c_char;
11617    pub fn gtk_about_dialog_get_translator_credits(about: *mut GtkAboutDialog) -> *const c_char;
11618    pub fn gtk_about_dialog_get_version(about: *mut GtkAboutDialog) -> *const c_char;
11619    pub fn gtk_about_dialog_get_website(about: *mut GtkAboutDialog) -> *const c_char;
11620    pub fn gtk_about_dialog_get_website_label(about: *mut GtkAboutDialog) -> *const c_char;
11621    pub fn gtk_about_dialog_get_wrap_license(about: *mut GtkAboutDialog) -> gboolean;
11622    pub fn gtk_about_dialog_set_artists(about: *mut GtkAboutDialog, artists: *mut *const c_char);
11623    pub fn gtk_about_dialog_set_authors(about: *mut GtkAboutDialog, authors: *mut *const c_char);
11624    pub fn gtk_about_dialog_set_comments(about: *mut GtkAboutDialog, comments: *const c_char);
11625    pub fn gtk_about_dialog_set_copyright(about: *mut GtkAboutDialog, copyright: *const c_char);
11626    pub fn gtk_about_dialog_set_documenters(
11627        about: *mut GtkAboutDialog,
11628        documenters: *mut *const c_char,
11629    );
11630    pub fn gtk_about_dialog_set_license(about: *mut GtkAboutDialog, license: *const c_char);
11631    pub fn gtk_about_dialog_set_license_type(about: *mut GtkAboutDialog, license_type: GtkLicense);
11632    pub fn gtk_about_dialog_set_logo(about: *mut GtkAboutDialog, logo: *mut gdk::GdkPaintable);
11633    pub fn gtk_about_dialog_set_logo_icon_name(
11634        about: *mut GtkAboutDialog,
11635        icon_name: *const c_char,
11636    );
11637    pub fn gtk_about_dialog_set_program_name(about: *mut GtkAboutDialog, name: *const c_char);
11638    pub fn gtk_about_dialog_set_system_information(
11639        about: *mut GtkAboutDialog,
11640        system_information: *const c_char,
11641    );
11642    pub fn gtk_about_dialog_set_translator_credits(
11643        about: *mut GtkAboutDialog,
11644        translator_credits: *const c_char,
11645    );
11646    pub fn gtk_about_dialog_set_version(about: *mut GtkAboutDialog, version: *const c_char);
11647    pub fn gtk_about_dialog_set_website(about: *mut GtkAboutDialog, website: *const c_char);
11648    pub fn gtk_about_dialog_set_website_label(
11649        about: *mut GtkAboutDialog,
11650        website_label: *const c_char,
11651    );
11652    pub fn gtk_about_dialog_set_wrap_license(about: *mut GtkAboutDialog, wrap_license: gboolean);
11653
11654    //=========================================================================
11655    // GtkAccessibleHyperlink
11656    //=========================================================================
11657    #[cfg(feature = "v4_22")]
11658    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11659    pub fn gtk_accessible_hyperlink_get_type() -> GType;
11660    #[cfg(feature = "v4_22")]
11661    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11662    pub fn gtk_accessible_hyperlink_new(
11663        parent: *mut GtkAccessibleHypertext,
11664        index: c_uint,
11665        uri: *const c_char,
11666        bounds: *mut GtkAccessibleTextRange,
11667    ) -> *mut GtkAccessibleHyperlink;
11668    #[cfg(feature = "v4_22")]
11669    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11670    pub fn gtk_accessible_hyperlink_set_platform_state(
11671        self_: *mut GtkAccessibleHyperlink,
11672        state: GtkAccessiblePlatformState,
11673        enabled: gboolean,
11674    );
11675
11676    //=========================================================================
11677    // GtkActionBar
11678    //=========================================================================
11679    pub fn gtk_action_bar_get_type() -> GType;
11680    pub fn gtk_action_bar_new() -> *mut GtkWidget;
11681    pub fn gtk_action_bar_get_center_widget(action_bar: *mut GtkActionBar) -> *mut GtkWidget;
11682    pub fn gtk_action_bar_get_revealed(action_bar: *mut GtkActionBar) -> gboolean;
11683    pub fn gtk_action_bar_pack_end(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11684    pub fn gtk_action_bar_pack_start(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11685    pub fn gtk_action_bar_remove(action_bar: *mut GtkActionBar, child: *mut GtkWidget);
11686    pub fn gtk_action_bar_set_center_widget(
11687        action_bar: *mut GtkActionBar,
11688        center_widget: *mut GtkWidget,
11689    );
11690    pub fn gtk_action_bar_set_revealed(action_bar: *mut GtkActionBar, revealed: gboolean);
11691
11692    //=========================================================================
11693    // GtkActivateAction
11694    //=========================================================================
11695    pub fn gtk_activate_action_get_type() -> GType;
11696    pub fn gtk_activate_action_get() -> *mut GtkActivateAction;
11697
11698    //=========================================================================
11699    // GtkAdjustment
11700    //=========================================================================
11701    pub fn gtk_adjustment_get_type() -> GType;
11702    pub fn gtk_adjustment_new(
11703        value: c_double,
11704        lower: c_double,
11705        upper: c_double,
11706        step_increment: c_double,
11707        page_increment: c_double,
11708        page_size: c_double,
11709    ) -> *mut GtkAdjustment;
11710    pub fn gtk_adjustment_clamp_page(
11711        adjustment: *mut GtkAdjustment,
11712        lower: c_double,
11713        upper: c_double,
11714    );
11715    pub fn gtk_adjustment_configure(
11716        adjustment: *mut GtkAdjustment,
11717        value: c_double,
11718        lower: c_double,
11719        upper: c_double,
11720        step_increment: c_double,
11721        page_increment: c_double,
11722        page_size: c_double,
11723    );
11724    pub fn gtk_adjustment_get_lower(adjustment: *mut GtkAdjustment) -> c_double;
11725    pub fn gtk_adjustment_get_minimum_increment(adjustment: *mut GtkAdjustment) -> c_double;
11726    pub fn gtk_adjustment_get_page_increment(adjustment: *mut GtkAdjustment) -> c_double;
11727    pub fn gtk_adjustment_get_page_size(adjustment: *mut GtkAdjustment) -> c_double;
11728    pub fn gtk_adjustment_get_step_increment(adjustment: *mut GtkAdjustment) -> c_double;
11729    pub fn gtk_adjustment_get_upper(adjustment: *mut GtkAdjustment) -> c_double;
11730    pub fn gtk_adjustment_get_value(adjustment: *mut GtkAdjustment) -> c_double;
11731    pub fn gtk_adjustment_set_lower(adjustment: *mut GtkAdjustment, lower: c_double);
11732    pub fn gtk_adjustment_set_page_increment(
11733        adjustment: *mut GtkAdjustment,
11734        page_increment: c_double,
11735    );
11736    pub fn gtk_adjustment_set_page_size(adjustment: *mut GtkAdjustment, page_size: c_double);
11737    pub fn gtk_adjustment_set_step_increment(
11738        adjustment: *mut GtkAdjustment,
11739        step_increment: c_double,
11740    );
11741    pub fn gtk_adjustment_set_upper(adjustment: *mut GtkAdjustment, upper: c_double);
11742    pub fn gtk_adjustment_set_value(adjustment: *mut GtkAdjustment, value: c_double);
11743
11744    //=========================================================================
11745    // GtkAlertDialog
11746    //=========================================================================
11747    #[cfg(feature = "v4_10")]
11748    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11749    pub fn gtk_alert_dialog_get_type() -> GType;
11750    #[cfg(feature = "v4_10")]
11751    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11752    pub fn gtk_alert_dialog_new(format: *const c_char, ...) -> *mut GtkAlertDialog;
11753    #[cfg(feature = "v4_10")]
11754    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11755    pub fn gtk_alert_dialog_choose(
11756        self_: *mut GtkAlertDialog,
11757        parent: *mut GtkWindow,
11758        cancellable: *mut gio::GCancellable,
11759        callback: gio::GAsyncReadyCallback,
11760        user_data: gpointer,
11761    );
11762    #[cfg(feature = "v4_10")]
11763    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11764    pub fn gtk_alert_dialog_choose_finish(
11765        self_: *mut GtkAlertDialog,
11766        result: *mut gio::GAsyncResult,
11767        error: *mut *mut glib::GError,
11768    ) -> c_int;
11769    #[cfg(feature = "v4_10")]
11770    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11771    pub fn gtk_alert_dialog_get_buttons(self_: *mut GtkAlertDialog) -> *const *const c_char;
11772    #[cfg(feature = "v4_10")]
11773    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11774    pub fn gtk_alert_dialog_get_cancel_button(self_: *mut GtkAlertDialog) -> c_int;
11775    #[cfg(feature = "v4_10")]
11776    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11777    pub fn gtk_alert_dialog_get_default_button(self_: *mut GtkAlertDialog) -> c_int;
11778    #[cfg(feature = "v4_10")]
11779    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11780    pub fn gtk_alert_dialog_get_detail(self_: *mut GtkAlertDialog) -> *const c_char;
11781    #[cfg(feature = "v4_10")]
11782    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11783    pub fn gtk_alert_dialog_get_message(self_: *mut GtkAlertDialog) -> *const c_char;
11784    #[cfg(feature = "v4_10")]
11785    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11786    pub fn gtk_alert_dialog_get_modal(self_: *mut GtkAlertDialog) -> gboolean;
11787    #[cfg(feature = "v4_10")]
11788    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11789    pub fn gtk_alert_dialog_set_buttons(self_: *mut GtkAlertDialog, labels: *const *const c_char);
11790    #[cfg(feature = "v4_10")]
11791    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11792    pub fn gtk_alert_dialog_set_cancel_button(self_: *mut GtkAlertDialog, button: c_int);
11793    #[cfg(feature = "v4_10")]
11794    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11795    pub fn gtk_alert_dialog_set_default_button(self_: *mut GtkAlertDialog, button: c_int);
11796    #[cfg(feature = "v4_10")]
11797    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11798    pub fn gtk_alert_dialog_set_detail(self_: *mut GtkAlertDialog, detail: *const c_char);
11799    #[cfg(feature = "v4_10")]
11800    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11801    pub fn gtk_alert_dialog_set_message(self_: *mut GtkAlertDialog, message: *const c_char);
11802    #[cfg(feature = "v4_10")]
11803    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11804    pub fn gtk_alert_dialog_set_modal(self_: *mut GtkAlertDialog, modal: gboolean);
11805    #[cfg(feature = "v4_10")]
11806    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
11807    pub fn gtk_alert_dialog_show(self_: *mut GtkAlertDialog, parent: *mut GtkWindow);
11808
11809    //=========================================================================
11810    // GtkAlternativeTrigger
11811    //=========================================================================
11812    pub fn gtk_alternative_trigger_get_type() -> GType;
11813    pub fn gtk_alternative_trigger_new(
11814        first: *mut GtkShortcutTrigger,
11815        second: *mut GtkShortcutTrigger,
11816    ) -> *mut GtkShortcutTrigger;
11817    pub fn gtk_alternative_trigger_get_first(
11818        self_: *mut GtkAlternativeTrigger,
11819    ) -> *mut GtkShortcutTrigger;
11820    pub fn gtk_alternative_trigger_get_second(
11821        self_: *mut GtkAlternativeTrigger,
11822    ) -> *mut GtkShortcutTrigger;
11823
11824    //=========================================================================
11825    // GtkAnyFilter
11826    //=========================================================================
11827    pub fn gtk_any_filter_get_type() -> GType;
11828    pub fn gtk_any_filter_new() -> *mut GtkAnyFilter;
11829
11830    //=========================================================================
11831    // GtkAppChooserButton
11832    //=========================================================================
11833    pub fn gtk_app_chooser_button_get_type() -> GType;
11834    pub fn gtk_app_chooser_button_new(content_type: *const c_char) -> *mut GtkWidget;
11835    pub fn gtk_app_chooser_button_append_custom_item(
11836        self_: *mut GtkAppChooserButton,
11837        name: *const c_char,
11838        label: *const c_char,
11839        icon: *mut gio::GIcon,
11840    );
11841    pub fn gtk_app_chooser_button_append_separator(self_: *mut GtkAppChooserButton);
11842    pub fn gtk_app_chooser_button_get_heading(self_: *mut GtkAppChooserButton) -> *const c_char;
11843    pub fn gtk_app_chooser_button_get_modal(self_: *mut GtkAppChooserButton) -> gboolean;
11844    pub fn gtk_app_chooser_button_get_show_default_item(
11845        self_: *mut GtkAppChooserButton,
11846    ) -> gboolean;
11847    pub fn gtk_app_chooser_button_get_show_dialog_item(self_: *mut GtkAppChooserButton)
11848    -> gboolean;
11849    pub fn gtk_app_chooser_button_set_active_custom_item(
11850        self_: *mut GtkAppChooserButton,
11851        name: *const c_char,
11852    );
11853    pub fn gtk_app_chooser_button_set_heading(
11854        self_: *mut GtkAppChooserButton,
11855        heading: *const c_char,
11856    );
11857    pub fn gtk_app_chooser_button_set_modal(self_: *mut GtkAppChooserButton, modal: gboolean);
11858    pub fn gtk_app_chooser_button_set_show_default_item(
11859        self_: *mut GtkAppChooserButton,
11860        setting: gboolean,
11861    );
11862    pub fn gtk_app_chooser_button_set_show_dialog_item(
11863        self_: *mut GtkAppChooserButton,
11864        setting: gboolean,
11865    );
11866
11867    //=========================================================================
11868    // GtkAppChooserDialog
11869    //=========================================================================
11870    pub fn gtk_app_chooser_dialog_get_type() -> GType;
11871    pub fn gtk_app_chooser_dialog_new(
11872        parent: *mut GtkWindow,
11873        flags: GtkDialogFlags,
11874        file: *mut gio::GFile,
11875    ) -> *mut GtkWidget;
11876    pub fn gtk_app_chooser_dialog_new_for_content_type(
11877        parent: *mut GtkWindow,
11878        flags: GtkDialogFlags,
11879        content_type: *const c_char,
11880    ) -> *mut GtkWidget;
11881    pub fn gtk_app_chooser_dialog_get_heading(self_: *mut GtkAppChooserDialog) -> *const c_char;
11882    pub fn gtk_app_chooser_dialog_get_widget(self_: *mut GtkAppChooserDialog) -> *mut GtkWidget;
11883    pub fn gtk_app_chooser_dialog_set_heading(
11884        self_: *mut GtkAppChooserDialog,
11885        heading: *const c_char,
11886    );
11887
11888    //=========================================================================
11889    // GtkAppChooserWidget
11890    //=========================================================================
11891    pub fn gtk_app_chooser_widget_get_type() -> GType;
11892    pub fn gtk_app_chooser_widget_new(content_type: *const c_char) -> *mut GtkWidget;
11893    pub fn gtk_app_chooser_widget_get_default_text(
11894        self_: *mut GtkAppChooserWidget,
11895    ) -> *const c_char;
11896    pub fn gtk_app_chooser_widget_get_show_all(self_: *mut GtkAppChooserWidget) -> gboolean;
11897    pub fn gtk_app_chooser_widget_get_show_default(self_: *mut GtkAppChooserWidget) -> gboolean;
11898    pub fn gtk_app_chooser_widget_get_show_fallback(self_: *mut GtkAppChooserWidget) -> gboolean;
11899    pub fn gtk_app_chooser_widget_get_show_other(self_: *mut GtkAppChooserWidget) -> gboolean;
11900    pub fn gtk_app_chooser_widget_get_show_recommended(self_: *mut GtkAppChooserWidget)
11901    -> gboolean;
11902    pub fn gtk_app_chooser_widget_set_default_text(
11903        self_: *mut GtkAppChooserWidget,
11904        text: *const c_char,
11905    );
11906    pub fn gtk_app_chooser_widget_set_show_all(self_: *mut GtkAppChooserWidget, setting: gboolean);
11907    pub fn gtk_app_chooser_widget_set_show_default(
11908        self_: *mut GtkAppChooserWidget,
11909        setting: gboolean,
11910    );
11911    pub fn gtk_app_chooser_widget_set_show_fallback(
11912        self_: *mut GtkAppChooserWidget,
11913        setting: gboolean,
11914    );
11915    pub fn gtk_app_chooser_widget_set_show_other(
11916        self_: *mut GtkAppChooserWidget,
11917        setting: gboolean,
11918    );
11919    pub fn gtk_app_chooser_widget_set_show_recommended(
11920        self_: *mut GtkAppChooserWidget,
11921        setting: gboolean,
11922    );
11923
11924    //=========================================================================
11925    // GtkApplication
11926    //=========================================================================
11927    pub fn gtk_application_get_type() -> GType;
11928    pub fn gtk_application_new(
11929        application_id: *const c_char,
11930        flags: gio::GApplicationFlags,
11931    ) -> *mut GtkApplication;
11932    pub fn gtk_application_add_window(application: *mut GtkApplication, window: *mut GtkWindow);
11933    #[cfg(feature = "v4_22")]
11934    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11935    pub fn gtk_application_forget(application: *mut GtkApplication);
11936    pub fn gtk_application_get_accels_for_action(
11937        application: *mut GtkApplication,
11938        detailed_action_name: *const c_char,
11939    ) -> *mut *mut c_char;
11940    pub fn gtk_application_get_actions_for_accel(
11941        application: *mut GtkApplication,
11942        accel: *const c_char,
11943    ) -> *mut *mut c_char;
11944    pub fn gtk_application_get_active_window(application: *mut GtkApplication) -> *mut GtkWindow;
11945    pub fn gtk_application_get_menu_by_id(
11946        application: *mut GtkApplication,
11947        id: *const c_char,
11948    ) -> *mut gio::GMenu;
11949    pub fn gtk_application_get_menubar(application: *mut GtkApplication) -> *mut gio::GMenuModel;
11950    pub fn gtk_application_get_window_by_id(
11951        application: *mut GtkApplication,
11952        id: c_uint,
11953    ) -> *mut GtkWindow;
11954    pub fn gtk_application_get_windows(application: *mut GtkApplication) -> *mut glib::GList;
11955    pub fn gtk_application_inhibit(
11956        application: *mut GtkApplication,
11957        window: *mut GtkWindow,
11958        flags: GtkApplicationInhibitFlags,
11959        reason: *const c_char,
11960    ) -> c_uint;
11961    pub fn gtk_application_list_action_descriptions(
11962        application: *mut GtkApplication,
11963    ) -> *mut *mut c_char;
11964    pub fn gtk_application_remove_window(application: *mut GtkApplication, window: *mut GtkWindow);
11965    #[cfg(feature = "v4_22")]
11966    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
11967    pub fn gtk_application_save(application: *mut GtkApplication);
11968    pub fn gtk_application_set_accels_for_action(
11969        application: *mut GtkApplication,
11970        detailed_action_name: *const c_char,
11971        accels: *const *const c_char,
11972    );
11973    pub fn gtk_application_set_menubar(
11974        application: *mut GtkApplication,
11975        menubar: *mut gio::GMenuModel,
11976    );
11977    pub fn gtk_application_uninhibit(application: *mut GtkApplication, cookie: c_uint);
11978
11979    //=========================================================================
11980    // GtkApplicationWindow
11981    //=========================================================================
11982    pub fn gtk_application_window_get_type() -> GType;
11983    pub fn gtk_application_window_new(application: *mut GtkApplication) -> *mut GtkWidget;
11984    pub fn gtk_application_window_get_help_overlay(
11985        window: *mut GtkApplicationWindow,
11986    ) -> *mut GtkShortcutsWindow;
11987    pub fn gtk_application_window_get_id(window: *mut GtkApplicationWindow) -> c_uint;
11988    pub fn gtk_application_window_get_show_menubar(window: *mut GtkApplicationWindow) -> gboolean;
11989    pub fn gtk_application_window_set_help_overlay(
11990        window: *mut GtkApplicationWindow,
11991        help_overlay: *mut GtkShortcutsWindow,
11992    );
11993    pub fn gtk_application_window_set_show_menubar(
11994        window: *mut GtkApplicationWindow,
11995        show_menubar: gboolean,
11996    );
11997
11998    //=========================================================================
11999    // GtkAspectFrame
12000    //=========================================================================
12001    pub fn gtk_aspect_frame_get_type() -> GType;
12002    pub fn gtk_aspect_frame_new(
12003        xalign: c_float,
12004        yalign: c_float,
12005        ratio: c_float,
12006        obey_child: gboolean,
12007    ) -> *mut GtkWidget;
12008    pub fn gtk_aspect_frame_get_child(self_: *mut GtkAspectFrame) -> *mut GtkWidget;
12009    pub fn gtk_aspect_frame_get_obey_child(self_: *mut GtkAspectFrame) -> gboolean;
12010    pub fn gtk_aspect_frame_get_ratio(self_: *mut GtkAspectFrame) -> c_float;
12011    pub fn gtk_aspect_frame_get_xalign(self_: *mut GtkAspectFrame) -> c_float;
12012    pub fn gtk_aspect_frame_get_yalign(self_: *mut GtkAspectFrame) -> c_float;
12013    pub fn gtk_aspect_frame_set_child(self_: *mut GtkAspectFrame, child: *mut GtkWidget);
12014    pub fn gtk_aspect_frame_set_obey_child(self_: *mut GtkAspectFrame, obey_child: gboolean);
12015    pub fn gtk_aspect_frame_set_ratio(self_: *mut GtkAspectFrame, ratio: c_float);
12016    pub fn gtk_aspect_frame_set_xalign(self_: *mut GtkAspectFrame, xalign: c_float);
12017    pub fn gtk_aspect_frame_set_yalign(self_: *mut GtkAspectFrame, yalign: c_float);
12018
12019    //=========================================================================
12020    // GtkAssistant
12021    //=========================================================================
12022    pub fn gtk_assistant_get_type() -> GType;
12023    pub fn gtk_assistant_new() -> *mut GtkWidget;
12024    pub fn gtk_assistant_add_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
12025    pub fn gtk_assistant_append_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
12026    pub fn gtk_assistant_commit(assistant: *mut GtkAssistant);
12027    pub fn gtk_assistant_get_current_page(assistant: *mut GtkAssistant) -> c_int;
12028    pub fn gtk_assistant_get_n_pages(assistant: *mut GtkAssistant) -> c_int;
12029    pub fn gtk_assistant_get_nth_page(
12030        assistant: *mut GtkAssistant,
12031        page_num: c_int,
12032    ) -> *mut GtkWidget;
12033    pub fn gtk_assistant_get_page(
12034        assistant: *mut GtkAssistant,
12035        child: *mut GtkWidget,
12036    ) -> *mut GtkAssistantPage;
12037    pub fn gtk_assistant_get_page_complete(
12038        assistant: *mut GtkAssistant,
12039        page: *mut GtkWidget,
12040    ) -> gboolean;
12041    pub fn gtk_assistant_get_page_title(
12042        assistant: *mut GtkAssistant,
12043        page: *mut GtkWidget,
12044    ) -> *const c_char;
12045    pub fn gtk_assistant_get_page_type(
12046        assistant: *mut GtkAssistant,
12047        page: *mut GtkWidget,
12048    ) -> GtkAssistantPageType;
12049    pub fn gtk_assistant_get_pages(assistant: *mut GtkAssistant) -> *mut gio::GListModel;
12050    pub fn gtk_assistant_insert_page(
12051        assistant: *mut GtkAssistant,
12052        page: *mut GtkWidget,
12053        position: c_int,
12054    ) -> c_int;
12055    pub fn gtk_assistant_next_page(assistant: *mut GtkAssistant);
12056    pub fn gtk_assistant_prepend_page(assistant: *mut GtkAssistant, page: *mut GtkWidget) -> c_int;
12057    pub fn gtk_assistant_previous_page(assistant: *mut GtkAssistant);
12058    pub fn gtk_assistant_remove_action_widget(assistant: *mut GtkAssistant, child: *mut GtkWidget);
12059    pub fn gtk_assistant_remove_page(assistant: *mut GtkAssistant, page_num: c_int);
12060    pub fn gtk_assistant_set_current_page(assistant: *mut GtkAssistant, page_num: c_int);
12061    pub fn gtk_assistant_set_forward_page_func(
12062        assistant: *mut GtkAssistant,
12063        page_func: GtkAssistantPageFunc,
12064        data: gpointer,
12065        destroy: glib::GDestroyNotify,
12066    );
12067    pub fn gtk_assistant_set_page_complete(
12068        assistant: *mut GtkAssistant,
12069        page: *mut GtkWidget,
12070        complete: gboolean,
12071    );
12072    pub fn gtk_assistant_set_page_title(
12073        assistant: *mut GtkAssistant,
12074        page: *mut GtkWidget,
12075        title: *const c_char,
12076    );
12077    pub fn gtk_assistant_set_page_type(
12078        assistant: *mut GtkAssistant,
12079        page: *mut GtkWidget,
12080        type_: GtkAssistantPageType,
12081    );
12082    pub fn gtk_assistant_update_buttons_state(assistant: *mut GtkAssistant);
12083
12084    //=========================================================================
12085    // GtkAssistantPage
12086    //=========================================================================
12087    pub fn gtk_assistant_page_get_type() -> GType;
12088    pub fn gtk_assistant_page_get_child(page: *mut GtkAssistantPage) -> *mut GtkWidget;
12089
12090    //=========================================================================
12091    // GtkBinLayout
12092    //=========================================================================
12093    pub fn gtk_bin_layout_get_type() -> GType;
12094    pub fn gtk_bin_layout_new() -> *mut GtkLayoutManager;
12095
12096    //=========================================================================
12097    // GtkBookmarkList
12098    //=========================================================================
12099    pub fn gtk_bookmark_list_get_type() -> GType;
12100    pub fn gtk_bookmark_list_new(
12101        filename: *const c_char,
12102        attributes: *const c_char,
12103    ) -> *mut GtkBookmarkList;
12104    pub fn gtk_bookmark_list_get_attributes(self_: *mut GtkBookmarkList) -> *const c_char;
12105    pub fn gtk_bookmark_list_get_filename(self_: *mut GtkBookmarkList) -> *const c_char;
12106    pub fn gtk_bookmark_list_get_io_priority(self_: *mut GtkBookmarkList) -> c_int;
12107    pub fn gtk_bookmark_list_is_loading(self_: *mut GtkBookmarkList) -> gboolean;
12108    pub fn gtk_bookmark_list_set_attributes(self_: *mut GtkBookmarkList, attributes: *const c_char);
12109    pub fn gtk_bookmark_list_set_io_priority(self_: *mut GtkBookmarkList, io_priority: c_int);
12110
12111    //=========================================================================
12112    // GtkBoolFilter
12113    //=========================================================================
12114    pub fn gtk_bool_filter_get_type() -> GType;
12115    pub fn gtk_bool_filter_new(expression: *mut GtkExpression) -> *mut GtkBoolFilter;
12116    pub fn gtk_bool_filter_get_expression(self_: *mut GtkBoolFilter) -> *mut GtkExpression;
12117    pub fn gtk_bool_filter_get_invert(self_: *mut GtkBoolFilter) -> gboolean;
12118    pub fn gtk_bool_filter_set_expression(
12119        self_: *mut GtkBoolFilter,
12120        expression: *mut GtkExpression,
12121    );
12122    pub fn gtk_bool_filter_set_invert(self_: *mut GtkBoolFilter, invert: gboolean);
12123
12124    //=========================================================================
12125    // GtkBox
12126    //=========================================================================
12127    pub fn gtk_box_get_type() -> GType;
12128    pub fn gtk_box_new(orientation: GtkOrientation, spacing: c_int) -> *mut GtkWidget;
12129    pub fn gtk_box_append(box_: *mut GtkBox, child: *mut GtkWidget);
12130    #[cfg(feature = "v4_12")]
12131    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12132    pub fn gtk_box_get_baseline_child(box_: *mut GtkBox) -> c_int;
12133    pub fn gtk_box_get_baseline_position(box_: *mut GtkBox) -> GtkBaselinePosition;
12134    pub fn gtk_box_get_homogeneous(box_: *mut GtkBox) -> gboolean;
12135    pub fn gtk_box_get_spacing(box_: *mut GtkBox) -> c_int;
12136    pub fn gtk_box_insert_child_after(
12137        box_: *mut GtkBox,
12138        child: *mut GtkWidget,
12139        sibling: *mut GtkWidget,
12140    );
12141    pub fn gtk_box_prepend(box_: *mut GtkBox, child: *mut GtkWidget);
12142    pub fn gtk_box_remove(box_: *mut GtkBox, child: *mut GtkWidget);
12143    pub fn gtk_box_reorder_child_after(
12144        box_: *mut GtkBox,
12145        child: *mut GtkWidget,
12146        sibling: *mut GtkWidget,
12147    );
12148    #[cfg(feature = "v4_12")]
12149    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12150    pub fn gtk_box_set_baseline_child(box_: *mut GtkBox, child: c_int);
12151    pub fn gtk_box_set_baseline_position(box_: *mut GtkBox, position: GtkBaselinePosition);
12152    pub fn gtk_box_set_homogeneous(box_: *mut GtkBox, homogeneous: gboolean);
12153    pub fn gtk_box_set_spacing(box_: *mut GtkBox, spacing: c_int);
12154
12155    //=========================================================================
12156    // GtkBoxLayout
12157    //=========================================================================
12158    pub fn gtk_box_layout_get_type() -> GType;
12159    pub fn gtk_box_layout_new(orientation: GtkOrientation) -> *mut GtkLayoutManager;
12160    #[cfg(feature = "v4_12")]
12161    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12162    pub fn gtk_box_layout_get_baseline_child(box_layout: *mut GtkBoxLayout) -> c_int;
12163    pub fn gtk_box_layout_get_baseline_position(
12164        box_layout: *mut GtkBoxLayout,
12165    ) -> GtkBaselinePosition;
12166    pub fn gtk_box_layout_get_homogeneous(box_layout: *mut GtkBoxLayout) -> gboolean;
12167    pub fn gtk_box_layout_get_spacing(box_layout: *mut GtkBoxLayout) -> c_uint;
12168    #[cfg(feature = "v4_12")]
12169    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12170    pub fn gtk_box_layout_set_baseline_child(box_layout: *mut GtkBoxLayout, child: c_int);
12171    pub fn gtk_box_layout_set_baseline_position(
12172        box_layout: *mut GtkBoxLayout,
12173        position: GtkBaselinePosition,
12174    );
12175    pub fn gtk_box_layout_set_homogeneous(box_layout: *mut GtkBoxLayout, homogeneous: gboolean);
12176    pub fn gtk_box_layout_set_spacing(box_layout: *mut GtkBoxLayout, spacing: c_uint);
12177
12178    //=========================================================================
12179    // GtkBuilder
12180    //=========================================================================
12181    pub fn gtk_builder_get_type() -> GType;
12182    pub fn gtk_builder_new() -> *mut GtkBuilder;
12183    pub fn gtk_builder_new_from_file(filename: *const c_char) -> *mut GtkBuilder;
12184    pub fn gtk_builder_new_from_resource(resource_path: *const c_char) -> *mut GtkBuilder;
12185    pub fn gtk_builder_new_from_string(string: *const c_char, length: ssize_t) -> *mut GtkBuilder;
12186    pub fn gtk_builder_add_from_file(
12187        builder: *mut GtkBuilder,
12188        filename: *const c_char,
12189        error: *mut *mut glib::GError,
12190    ) -> gboolean;
12191    pub fn gtk_builder_add_from_resource(
12192        builder: *mut GtkBuilder,
12193        resource_path: *const c_char,
12194        error: *mut *mut glib::GError,
12195    ) -> gboolean;
12196    pub fn gtk_builder_add_from_string(
12197        builder: *mut GtkBuilder,
12198        buffer: *const c_char,
12199        length: ssize_t,
12200        error: *mut *mut glib::GError,
12201    ) -> gboolean;
12202    pub fn gtk_builder_add_objects_from_file(
12203        builder: *mut GtkBuilder,
12204        filename: *const c_char,
12205        object_ids: *mut *const c_char,
12206        error: *mut *mut glib::GError,
12207    ) -> gboolean;
12208    pub fn gtk_builder_add_objects_from_resource(
12209        builder: *mut GtkBuilder,
12210        resource_path: *const c_char,
12211        object_ids: *mut *const c_char,
12212        error: *mut *mut glib::GError,
12213    ) -> gboolean;
12214    pub fn gtk_builder_add_objects_from_string(
12215        builder: *mut GtkBuilder,
12216        buffer: *const c_char,
12217        length: ssize_t,
12218        object_ids: *mut *const c_char,
12219        error: *mut *mut glib::GError,
12220    ) -> gboolean;
12221    pub fn gtk_builder_create_closure(
12222        builder: *mut GtkBuilder,
12223        function_name: *const c_char,
12224        flags: GtkBuilderClosureFlags,
12225        object: *mut gobject::GObject,
12226        error: *mut *mut glib::GError,
12227    ) -> *mut gobject::GClosure;
12228    pub fn gtk_builder_expose_object(
12229        builder: *mut GtkBuilder,
12230        name: *const c_char,
12231        object: *mut gobject::GObject,
12232    );
12233    pub fn gtk_builder_extend_with_template(
12234        builder: *mut GtkBuilder,
12235        object: *mut gobject::GObject,
12236        template_type: GType,
12237        buffer: *const c_char,
12238        length: ssize_t,
12239        error: *mut *mut glib::GError,
12240    ) -> gboolean;
12241    pub fn gtk_builder_get_current_object(builder: *mut GtkBuilder) -> *mut gobject::GObject;
12242    pub fn gtk_builder_get_object(
12243        builder: *mut GtkBuilder,
12244        name: *const c_char,
12245    ) -> *mut gobject::GObject;
12246    pub fn gtk_builder_get_objects(builder: *mut GtkBuilder) -> *mut glib::GSList;
12247    pub fn gtk_builder_get_scope(builder: *mut GtkBuilder) -> *mut GtkBuilderScope;
12248    pub fn gtk_builder_get_translation_domain(builder: *mut GtkBuilder) -> *const c_char;
12249    pub fn gtk_builder_get_type_from_name(
12250        builder: *mut GtkBuilder,
12251        type_name: *const c_char,
12252    ) -> GType;
12253    pub fn gtk_builder_set_current_object(
12254        builder: *mut GtkBuilder,
12255        current_object: *mut gobject::GObject,
12256    );
12257    pub fn gtk_builder_set_scope(builder: *mut GtkBuilder, scope: *mut GtkBuilderScope);
12258    pub fn gtk_builder_set_translation_domain(builder: *mut GtkBuilder, domain: *const c_char);
12259    pub fn gtk_builder_value_from_string(
12260        builder: *mut GtkBuilder,
12261        pspec: *mut gobject::GParamSpec,
12262        string: *const c_char,
12263        value: *mut gobject::GValue,
12264        error: *mut *mut glib::GError,
12265    ) -> gboolean;
12266    pub fn gtk_builder_value_from_string_type(
12267        builder: *mut GtkBuilder,
12268        type_: GType,
12269        string: *const c_char,
12270        value: *mut gobject::GValue,
12271        error: *mut *mut glib::GError,
12272    ) -> gboolean;
12273
12274    //=========================================================================
12275    // GtkBuilderCScope
12276    //=========================================================================
12277    pub fn gtk_builder_cscope_get_type() -> GType;
12278    pub fn gtk_builder_cscope_new() -> *mut GtkBuilderCScope;
12279    pub fn gtk_builder_cscope_add_callback_symbol(
12280        self_: *mut GtkBuilderCScope,
12281        callback_name: *const c_char,
12282        callback_symbol: gobject::GCallback,
12283    );
12284    pub fn gtk_builder_cscope_add_callback_symbols(
12285        self_: *mut GtkBuilderCScope,
12286        first_callback_name: *const c_char,
12287        first_callback_symbol: gobject::GCallback,
12288        ...
12289    );
12290    pub fn gtk_builder_cscope_lookup_callback_symbol(
12291        self_: *mut GtkBuilderCScope,
12292        callback_name: *const c_char,
12293    ) -> gobject::GCallback;
12294
12295    //=========================================================================
12296    // GtkBuilderListItemFactory
12297    //=========================================================================
12298    pub fn gtk_builder_list_item_factory_get_type() -> GType;
12299    pub fn gtk_builder_list_item_factory_new_from_bytes(
12300        scope: *mut GtkBuilderScope,
12301        bytes: *mut glib::GBytes,
12302    ) -> *mut GtkListItemFactory;
12303    pub fn gtk_builder_list_item_factory_new_from_resource(
12304        scope: *mut GtkBuilderScope,
12305        resource_path: *const c_char,
12306    ) -> *mut GtkListItemFactory;
12307    pub fn gtk_builder_list_item_factory_get_bytes(
12308        self_: *mut GtkBuilderListItemFactory,
12309    ) -> *mut glib::GBytes;
12310    pub fn gtk_builder_list_item_factory_get_resource(
12311        self_: *mut GtkBuilderListItemFactory,
12312    ) -> *const c_char;
12313    pub fn gtk_builder_list_item_factory_get_scope(
12314        self_: *mut GtkBuilderListItemFactory,
12315    ) -> *mut GtkBuilderScope;
12316
12317    //=========================================================================
12318    // GtkButton
12319    //=========================================================================
12320    pub fn gtk_button_get_type() -> GType;
12321    pub fn gtk_button_new() -> *mut GtkWidget;
12322    pub fn gtk_button_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
12323    pub fn gtk_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12324    pub fn gtk_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12325    #[cfg(feature = "v4_12")]
12326    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12327    pub fn gtk_button_get_can_shrink(button: *mut GtkButton) -> gboolean;
12328    pub fn gtk_button_get_child(button: *mut GtkButton) -> *mut GtkWidget;
12329    pub fn gtk_button_get_has_frame(button: *mut GtkButton) -> gboolean;
12330    pub fn gtk_button_get_icon_name(button: *mut GtkButton) -> *const c_char;
12331    pub fn gtk_button_get_label(button: *mut GtkButton) -> *const c_char;
12332    pub fn gtk_button_get_use_underline(button: *mut GtkButton) -> gboolean;
12333    #[cfg(feature = "v4_12")]
12334    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12335    pub fn gtk_button_set_can_shrink(button: *mut GtkButton, can_shrink: gboolean);
12336    pub fn gtk_button_set_child(button: *mut GtkButton, child: *mut GtkWidget);
12337    pub fn gtk_button_set_has_frame(button: *mut GtkButton, has_frame: gboolean);
12338    pub fn gtk_button_set_icon_name(button: *mut GtkButton, icon_name: *const c_char);
12339    pub fn gtk_button_set_label(button: *mut GtkButton, label: *const c_char);
12340    pub fn gtk_button_set_use_underline(button: *mut GtkButton, use_underline: gboolean);
12341
12342    //=========================================================================
12343    // GtkCClosureExpression
12344    //=========================================================================
12345    pub fn gtk_cclosure_expression_get_type() -> GType;
12346    pub fn gtk_cclosure_expression_new(
12347        value_type: GType,
12348        marshal: gobject::GClosureMarshal,
12349        n_params: c_uint,
12350        params: *mut *mut GtkExpression,
12351        callback_func: gobject::GCallback,
12352        user_data: gpointer,
12353        user_destroy: gobject::GClosureNotify,
12354    ) -> *mut GtkCClosureExpression;
12355
12356    //=========================================================================
12357    // GtkCalendar
12358    //=========================================================================
12359    pub fn gtk_calendar_get_type() -> GType;
12360    pub fn gtk_calendar_new() -> *mut GtkWidget;
12361    pub fn gtk_calendar_clear_marks(calendar: *mut GtkCalendar);
12362    pub fn gtk_calendar_get_date(self_: *mut GtkCalendar) -> *mut glib::GDateTime;
12363    #[cfg(feature = "v4_14")]
12364    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12365    pub fn gtk_calendar_get_day(self_: *mut GtkCalendar) -> c_int;
12366    pub fn gtk_calendar_get_day_is_marked(calendar: *mut GtkCalendar, day: c_uint) -> gboolean;
12367    #[cfg(feature = "v4_14")]
12368    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12369    pub fn gtk_calendar_get_month(self_: *mut GtkCalendar) -> c_int;
12370    pub fn gtk_calendar_get_show_day_names(self_: *mut GtkCalendar) -> gboolean;
12371    pub fn gtk_calendar_get_show_heading(self_: *mut GtkCalendar) -> gboolean;
12372    pub fn gtk_calendar_get_show_week_numbers(self_: *mut GtkCalendar) -> gboolean;
12373    #[cfg(feature = "v4_14")]
12374    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12375    pub fn gtk_calendar_get_year(self_: *mut GtkCalendar) -> c_int;
12376    pub fn gtk_calendar_mark_day(calendar: *mut GtkCalendar, day: c_uint);
12377    pub fn gtk_calendar_select_day(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12378    #[cfg(feature = "v4_20")]
12379    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
12380    pub fn gtk_calendar_set_date(self_: *mut GtkCalendar, date: *mut glib::GDateTime);
12381    #[cfg(feature = "v4_14")]
12382    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12383    pub fn gtk_calendar_set_day(self_: *mut GtkCalendar, day: c_int);
12384    #[cfg(feature = "v4_14")]
12385    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12386    pub fn gtk_calendar_set_month(self_: *mut GtkCalendar, month: c_int);
12387    pub fn gtk_calendar_set_show_day_names(self_: *mut GtkCalendar, value: gboolean);
12388    pub fn gtk_calendar_set_show_heading(self_: *mut GtkCalendar, value: gboolean);
12389    pub fn gtk_calendar_set_show_week_numbers(self_: *mut GtkCalendar, value: gboolean);
12390    #[cfg(feature = "v4_14")]
12391    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
12392    pub fn gtk_calendar_set_year(self_: *mut GtkCalendar, year: c_int);
12393    pub fn gtk_calendar_unmark_day(calendar: *mut GtkCalendar, day: c_uint);
12394
12395    //=========================================================================
12396    // GtkCallbackAction
12397    //=========================================================================
12398    pub fn gtk_callback_action_get_type() -> GType;
12399    pub fn gtk_callback_action_new(
12400        callback: GtkShortcutFunc,
12401        data: gpointer,
12402        destroy: glib::GDestroyNotify,
12403    ) -> *mut GtkCallbackAction;
12404
12405    //=========================================================================
12406    // GtkCellArea
12407    //=========================================================================
12408    pub fn gtk_cell_area_get_type() -> GType;
12409    pub fn gtk_cell_area_activate(
12410        area: *mut GtkCellArea,
12411        context: *mut GtkCellAreaContext,
12412        widget: *mut GtkWidget,
12413        cell_area: *const gdk::GdkRectangle,
12414        flags: GtkCellRendererState,
12415        edit_only: gboolean,
12416    ) -> gboolean;
12417    pub fn gtk_cell_area_activate_cell(
12418        area: *mut GtkCellArea,
12419        widget: *mut GtkWidget,
12420        renderer: *mut GtkCellRenderer,
12421        event: *mut gdk::GdkEvent,
12422        cell_area: *const gdk::GdkRectangle,
12423        flags: GtkCellRendererState,
12424    ) -> gboolean;
12425    pub fn gtk_cell_area_add(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12426    pub fn gtk_cell_area_add_focus_sibling(
12427        area: *mut GtkCellArea,
12428        renderer: *mut GtkCellRenderer,
12429        sibling: *mut GtkCellRenderer,
12430    );
12431    pub fn gtk_cell_area_add_with_properties(
12432        area: *mut GtkCellArea,
12433        renderer: *mut GtkCellRenderer,
12434        first_prop_name: *const c_char,
12435        ...
12436    );
12437    pub fn gtk_cell_area_apply_attributes(
12438        area: *mut GtkCellArea,
12439        tree_model: *mut GtkTreeModel,
12440        iter: *mut GtkTreeIter,
12441        is_expander: gboolean,
12442        is_expanded: gboolean,
12443    );
12444    pub fn gtk_cell_area_attribute_connect(
12445        area: *mut GtkCellArea,
12446        renderer: *mut GtkCellRenderer,
12447        attribute: *const c_char,
12448        column: c_int,
12449    );
12450    pub fn gtk_cell_area_attribute_disconnect(
12451        area: *mut GtkCellArea,
12452        renderer: *mut GtkCellRenderer,
12453        attribute: *const c_char,
12454    );
12455    pub fn gtk_cell_area_attribute_get_column(
12456        area: *mut GtkCellArea,
12457        renderer: *mut GtkCellRenderer,
12458        attribute: *const c_char,
12459    ) -> c_int;
12460    pub fn gtk_cell_area_cell_get(
12461        area: *mut GtkCellArea,
12462        renderer: *mut GtkCellRenderer,
12463        first_prop_name: *const c_char,
12464        ...
12465    );
12466    pub fn gtk_cell_area_cell_get_property(
12467        area: *mut GtkCellArea,
12468        renderer: *mut GtkCellRenderer,
12469        property_name: *const c_char,
12470        value: *mut gobject::GValue,
12471    );
12472    //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);
12473    pub fn gtk_cell_area_cell_set(
12474        area: *mut GtkCellArea,
12475        renderer: *mut GtkCellRenderer,
12476        first_prop_name: *const c_char,
12477        ...
12478    );
12479    pub fn gtk_cell_area_cell_set_property(
12480        area: *mut GtkCellArea,
12481        renderer: *mut GtkCellRenderer,
12482        property_name: *const c_char,
12483        value: *const gobject::GValue,
12484    );
12485    //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);
12486    pub fn gtk_cell_area_copy_context(
12487        area: *mut GtkCellArea,
12488        context: *mut GtkCellAreaContext,
12489    ) -> *mut GtkCellAreaContext;
12490    pub fn gtk_cell_area_create_context(area: *mut GtkCellArea) -> *mut GtkCellAreaContext;
12491    pub fn gtk_cell_area_event(
12492        area: *mut GtkCellArea,
12493        context: *mut GtkCellAreaContext,
12494        widget: *mut GtkWidget,
12495        event: *mut gdk::GdkEvent,
12496        cell_area: *const gdk::GdkRectangle,
12497        flags: GtkCellRendererState,
12498    ) -> c_int;
12499    pub fn gtk_cell_area_focus(area: *mut GtkCellArea, direction: GtkDirectionType) -> gboolean;
12500    pub fn gtk_cell_area_foreach(
12501        area: *mut GtkCellArea,
12502        callback: GtkCellCallback,
12503        callback_data: gpointer,
12504    );
12505    pub fn gtk_cell_area_foreach_alloc(
12506        area: *mut GtkCellArea,
12507        context: *mut GtkCellAreaContext,
12508        widget: *mut GtkWidget,
12509        cell_area: *const gdk::GdkRectangle,
12510        background_area: *const gdk::GdkRectangle,
12511        callback: GtkCellAllocCallback,
12512        callback_data: gpointer,
12513    );
12514    pub fn gtk_cell_area_get_cell_allocation(
12515        area: *mut GtkCellArea,
12516        context: *mut GtkCellAreaContext,
12517        widget: *mut GtkWidget,
12518        renderer: *mut GtkCellRenderer,
12519        cell_area: *const gdk::GdkRectangle,
12520        allocation: *mut gdk::GdkRectangle,
12521    );
12522    pub fn gtk_cell_area_get_cell_at_position(
12523        area: *mut GtkCellArea,
12524        context: *mut GtkCellAreaContext,
12525        widget: *mut GtkWidget,
12526        cell_area: *const gdk::GdkRectangle,
12527        x: c_int,
12528        y: c_int,
12529        alloc_area: *mut gdk::GdkRectangle,
12530    ) -> *mut GtkCellRenderer;
12531    pub fn gtk_cell_area_get_current_path_string(area: *mut GtkCellArea) -> *const c_char;
12532    pub fn gtk_cell_area_get_edit_widget(area: *mut GtkCellArea) -> *mut GtkCellEditable;
12533    pub fn gtk_cell_area_get_edited_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12534    pub fn gtk_cell_area_get_focus_cell(area: *mut GtkCellArea) -> *mut GtkCellRenderer;
12535    pub fn gtk_cell_area_get_focus_from_sibling(
12536        area: *mut GtkCellArea,
12537        renderer: *mut GtkCellRenderer,
12538    ) -> *mut GtkCellRenderer;
12539    pub fn gtk_cell_area_get_focus_siblings(
12540        area: *mut GtkCellArea,
12541        renderer: *mut GtkCellRenderer,
12542    ) -> *const glib::GList;
12543    pub fn gtk_cell_area_get_preferred_height(
12544        area: *mut GtkCellArea,
12545        context: *mut GtkCellAreaContext,
12546        widget: *mut GtkWidget,
12547        minimum_height: *mut c_int,
12548        natural_height: *mut c_int,
12549    );
12550    pub fn gtk_cell_area_get_preferred_height_for_width(
12551        area: *mut GtkCellArea,
12552        context: *mut GtkCellAreaContext,
12553        widget: *mut GtkWidget,
12554        width: c_int,
12555        minimum_height: *mut c_int,
12556        natural_height: *mut c_int,
12557    );
12558    pub fn gtk_cell_area_get_preferred_width(
12559        area: *mut GtkCellArea,
12560        context: *mut GtkCellAreaContext,
12561        widget: *mut GtkWidget,
12562        minimum_width: *mut c_int,
12563        natural_width: *mut c_int,
12564    );
12565    pub fn gtk_cell_area_get_preferred_width_for_height(
12566        area: *mut GtkCellArea,
12567        context: *mut GtkCellAreaContext,
12568        widget: *mut GtkWidget,
12569        height: c_int,
12570        minimum_width: *mut c_int,
12571        natural_width: *mut c_int,
12572    );
12573    pub fn gtk_cell_area_get_request_mode(area: *mut GtkCellArea) -> GtkSizeRequestMode;
12574    pub fn gtk_cell_area_has_renderer(
12575        area: *mut GtkCellArea,
12576        renderer: *mut GtkCellRenderer,
12577    ) -> gboolean;
12578    pub fn gtk_cell_area_inner_cell_area(
12579        area: *mut GtkCellArea,
12580        widget: *mut GtkWidget,
12581        cell_area: *const gdk::GdkRectangle,
12582        inner_area: *mut gdk::GdkRectangle,
12583    );
12584    pub fn gtk_cell_area_is_activatable(area: *mut GtkCellArea) -> gboolean;
12585    pub fn gtk_cell_area_is_focus_sibling(
12586        area: *mut GtkCellArea,
12587        renderer: *mut GtkCellRenderer,
12588        sibling: *mut GtkCellRenderer,
12589    ) -> gboolean;
12590    pub fn gtk_cell_area_remove(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12591    pub fn gtk_cell_area_remove_focus_sibling(
12592        area: *mut GtkCellArea,
12593        renderer: *mut GtkCellRenderer,
12594        sibling: *mut GtkCellRenderer,
12595    );
12596    pub fn gtk_cell_area_request_renderer(
12597        area: *mut GtkCellArea,
12598        renderer: *mut GtkCellRenderer,
12599        orientation: GtkOrientation,
12600        widget: *mut GtkWidget,
12601        for_size: c_int,
12602        minimum_size: *mut c_int,
12603        natural_size: *mut c_int,
12604    );
12605    pub fn gtk_cell_area_set_focus_cell(area: *mut GtkCellArea, renderer: *mut GtkCellRenderer);
12606    pub fn gtk_cell_area_snapshot(
12607        area: *mut GtkCellArea,
12608        context: *mut GtkCellAreaContext,
12609        widget: *mut GtkWidget,
12610        snapshot: *mut GtkSnapshot,
12611        background_area: *const gdk::GdkRectangle,
12612        cell_area: *const gdk::GdkRectangle,
12613        flags: GtkCellRendererState,
12614        paint_focus: gboolean,
12615    );
12616    pub fn gtk_cell_area_stop_editing(area: *mut GtkCellArea, canceled: gboolean);
12617
12618    //=========================================================================
12619    // GtkCellAreaBox
12620    //=========================================================================
12621    pub fn gtk_cell_area_box_get_type() -> GType;
12622    pub fn gtk_cell_area_box_new() -> *mut GtkCellArea;
12623    pub fn gtk_cell_area_box_get_spacing(box_: *mut GtkCellAreaBox) -> c_int;
12624    pub fn gtk_cell_area_box_pack_end(
12625        box_: *mut GtkCellAreaBox,
12626        renderer: *mut GtkCellRenderer,
12627        expand: gboolean,
12628        align: gboolean,
12629        fixed: gboolean,
12630    );
12631    pub fn gtk_cell_area_box_pack_start(
12632        box_: *mut GtkCellAreaBox,
12633        renderer: *mut GtkCellRenderer,
12634        expand: gboolean,
12635        align: gboolean,
12636        fixed: gboolean,
12637    );
12638    pub fn gtk_cell_area_box_set_spacing(box_: *mut GtkCellAreaBox, spacing: c_int);
12639
12640    //=========================================================================
12641    // GtkCellAreaContext
12642    //=========================================================================
12643    pub fn gtk_cell_area_context_get_type() -> GType;
12644    pub fn gtk_cell_area_context_allocate(
12645        context: *mut GtkCellAreaContext,
12646        width: c_int,
12647        height: c_int,
12648    );
12649    pub fn gtk_cell_area_context_get_allocation(
12650        context: *mut GtkCellAreaContext,
12651        width: *mut c_int,
12652        height: *mut c_int,
12653    );
12654    pub fn gtk_cell_area_context_get_area(context: *mut GtkCellAreaContext) -> *mut GtkCellArea;
12655    pub fn gtk_cell_area_context_get_preferred_height(
12656        context: *mut GtkCellAreaContext,
12657        minimum_height: *mut c_int,
12658        natural_height: *mut c_int,
12659    );
12660    pub fn gtk_cell_area_context_get_preferred_height_for_width(
12661        context: *mut GtkCellAreaContext,
12662        width: c_int,
12663        minimum_height: *mut c_int,
12664        natural_height: *mut c_int,
12665    );
12666    pub fn gtk_cell_area_context_get_preferred_width(
12667        context: *mut GtkCellAreaContext,
12668        minimum_width: *mut c_int,
12669        natural_width: *mut c_int,
12670    );
12671    pub fn gtk_cell_area_context_get_preferred_width_for_height(
12672        context: *mut GtkCellAreaContext,
12673        height: c_int,
12674        minimum_width: *mut c_int,
12675        natural_width: *mut c_int,
12676    );
12677    pub fn gtk_cell_area_context_push_preferred_height(
12678        context: *mut GtkCellAreaContext,
12679        minimum_height: c_int,
12680        natural_height: c_int,
12681    );
12682    pub fn gtk_cell_area_context_push_preferred_width(
12683        context: *mut GtkCellAreaContext,
12684        minimum_width: c_int,
12685        natural_width: c_int,
12686    );
12687    pub fn gtk_cell_area_context_reset(context: *mut GtkCellAreaContext);
12688
12689    //=========================================================================
12690    // GtkCellRenderer
12691    //=========================================================================
12692    pub fn gtk_cell_renderer_get_type() -> GType;
12693    pub fn gtk_cell_renderer_activate(
12694        cell: *mut GtkCellRenderer,
12695        event: *mut gdk::GdkEvent,
12696        widget: *mut GtkWidget,
12697        path: *const c_char,
12698        background_area: *const gdk::GdkRectangle,
12699        cell_area: *const gdk::GdkRectangle,
12700        flags: GtkCellRendererState,
12701    ) -> gboolean;
12702    pub fn gtk_cell_renderer_get_aligned_area(
12703        cell: *mut GtkCellRenderer,
12704        widget: *mut GtkWidget,
12705        flags: GtkCellRendererState,
12706        cell_area: *const gdk::GdkRectangle,
12707        aligned_area: *mut gdk::GdkRectangle,
12708    );
12709    pub fn gtk_cell_renderer_get_alignment(
12710        cell: *mut GtkCellRenderer,
12711        xalign: *mut c_float,
12712        yalign: *mut c_float,
12713    );
12714    pub fn gtk_cell_renderer_get_fixed_size(
12715        cell: *mut GtkCellRenderer,
12716        width: *mut c_int,
12717        height: *mut c_int,
12718    );
12719    pub fn gtk_cell_renderer_get_is_expanded(cell: *mut GtkCellRenderer) -> gboolean;
12720    pub fn gtk_cell_renderer_get_is_expander(cell: *mut GtkCellRenderer) -> gboolean;
12721    pub fn gtk_cell_renderer_get_padding(
12722        cell: *mut GtkCellRenderer,
12723        xpad: *mut c_int,
12724        ypad: *mut c_int,
12725    );
12726    pub fn gtk_cell_renderer_get_preferred_height(
12727        cell: *mut GtkCellRenderer,
12728        widget: *mut GtkWidget,
12729        minimum_size: *mut c_int,
12730        natural_size: *mut c_int,
12731    );
12732    pub fn gtk_cell_renderer_get_preferred_height_for_width(
12733        cell: *mut GtkCellRenderer,
12734        widget: *mut GtkWidget,
12735        width: c_int,
12736        minimum_height: *mut c_int,
12737        natural_height: *mut c_int,
12738    );
12739    pub fn gtk_cell_renderer_get_preferred_size(
12740        cell: *mut GtkCellRenderer,
12741        widget: *mut GtkWidget,
12742        minimum_size: *mut GtkRequisition,
12743        natural_size: *mut GtkRequisition,
12744    );
12745    pub fn gtk_cell_renderer_get_preferred_width(
12746        cell: *mut GtkCellRenderer,
12747        widget: *mut GtkWidget,
12748        minimum_size: *mut c_int,
12749        natural_size: *mut c_int,
12750    );
12751    pub fn gtk_cell_renderer_get_preferred_width_for_height(
12752        cell: *mut GtkCellRenderer,
12753        widget: *mut GtkWidget,
12754        height: c_int,
12755        minimum_width: *mut c_int,
12756        natural_width: *mut c_int,
12757    );
12758    pub fn gtk_cell_renderer_get_request_mode(cell: *mut GtkCellRenderer) -> GtkSizeRequestMode;
12759    pub fn gtk_cell_renderer_get_sensitive(cell: *mut GtkCellRenderer) -> gboolean;
12760    pub fn gtk_cell_renderer_get_state(
12761        cell: *mut GtkCellRenderer,
12762        widget: *mut GtkWidget,
12763        cell_state: GtkCellRendererState,
12764    ) -> GtkStateFlags;
12765    pub fn gtk_cell_renderer_get_visible(cell: *mut GtkCellRenderer) -> gboolean;
12766    pub fn gtk_cell_renderer_is_activatable(cell: *mut GtkCellRenderer) -> gboolean;
12767    pub fn gtk_cell_renderer_set_alignment(
12768        cell: *mut GtkCellRenderer,
12769        xalign: c_float,
12770        yalign: c_float,
12771    );
12772    pub fn gtk_cell_renderer_set_fixed_size(
12773        cell: *mut GtkCellRenderer,
12774        width: c_int,
12775        height: c_int,
12776    );
12777    pub fn gtk_cell_renderer_set_is_expanded(cell: *mut GtkCellRenderer, is_expanded: gboolean);
12778    pub fn gtk_cell_renderer_set_is_expander(cell: *mut GtkCellRenderer, is_expander: gboolean);
12779    pub fn gtk_cell_renderer_set_padding(cell: *mut GtkCellRenderer, xpad: c_int, ypad: c_int);
12780    pub fn gtk_cell_renderer_set_sensitive(cell: *mut GtkCellRenderer, sensitive: gboolean);
12781    pub fn gtk_cell_renderer_set_visible(cell: *mut GtkCellRenderer, visible: gboolean);
12782    pub fn gtk_cell_renderer_snapshot(
12783        cell: *mut GtkCellRenderer,
12784        snapshot: *mut GtkSnapshot,
12785        widget: *mut GtkWidget,
12786        background_area: *const gdk::GdkRectangle,
12787        cell_area: *const gdk::GdkRectangle,
12788        flags: GtkCellRendererState,
12789    );
12790    pub fn gtk_cell_renderer_start_editing(
12791        cell: *mut GtkCellRenderer,
12792        event: *mut gdk::GdkEvent,
12793        widget: *mut GtkWidget,
12794        path: *const c_char,
12795        background_area: *const gdk::GdkRectangle,
12796        cell_area: *const gdk::GdkRectangle,
12797        flags: GtkCellRendererState,
12798    ) -> *mut GtkCellEditable;
12799    pub fn gtk_cell_renderer_stop_editing(cell: *mut GtkCellRenderer, canceled: gboolean);
12800
12801    //=========================================================================
12802    // GtkCellRendererAccel
12803    //=========================================================================
12804    pub fn gtk_cell_renderer_accel_get_type() -> GType;
12805    pub fn gtk_cell_renderer_accel_new() -> *mut GtkCellRenderer;
12806
12807    //=========================================================================
12808    // GtkCellRendererCombo
12809    //=========================================================================
12810    pub fn gtk_cell_renderer_combo_get_type() -> GType;
12811    pub fn gtk_cell_renderer_combo_new() -> *mut GtkCellRenderer;
12812
12813    //=========================================================================
12814    // GtkCellRendererPixbuf
12815    //=========================================================================
12816    pub fn gtk_cell_renderer_pixbuf_get_type() -> GType;
12817    pub fn gtk_cell_renderer_pixbuf_new() -> *mut GtkCellRenderer;
12818
12819    //=========================================================================
12820    // GtkCellRendererProgress
12821    //=========================================================================
12822    pub fn gtk_cell_renderer_progress_get_type() -> GType;
12823    pub fn gtk_cell_renderer_progress_new() -> *mut GtkCellRenderer;
12824
12825    //=========================================================================
12826    // GtkCellRendererSpin
12827    //=========================================================================
12828    pub fn gtk_cell_renderer_spin_get_type() -> GType;
12829    pub fn gtk_cell_renderer_spin_new() -> *mut GtkCellRenderer;
12830
12831    //=========================================================================
12832    // GtkCellRendererSpinner
12833    //=========================================================================
12834    pub fn gtk_cell_renderer_spinner_get_type() -> GType;
12835    pub fn gtk_cell_renderer_spinner_new() -> *mut GtkCellRenderer;
12836
12837    //=========================================================================
12838    // GtkCellRendererText
12839    //=========================================================================
12840    pub fn gtk_cell_renderer_text_get_type() -> GType;
12841    pub fn gtk_cell_renderer_text_new() -> *mut GtkCellRenderer;
12842    pub fn gtk_cell_renderer_text_set_fixed_height_from_font(
12843        renderer: *mut GtkCellRendererText,
12844        number_of_rows: c_int,
12845    );
12846
12847    //=========================================================================
12848    // GtkCellRendererToggle
12849    //=========================================================================
12850    pub fn gtk_cell_renderer_toggle_get_type() -> GType;
12851    pub fn gtk_cell_renderer_toggle_new() -> *mut GtkCellRenderer;
12852    pub fn gtk_cell_renderer_toggle_get_activatable(toggle: *mut GtkCellRendererToggle)
12853    -> gboolean;
12854    pub fn gtk_cell_renderer_toggle_get_active(toggle: *mut GtkCellRendererToggle) -> gboolean;
12855    pub fn gtk_cell_renderer_toggle_get_radio(toggle: *mut GtkCellRendererToggle) -> gboolean;
12856    pub fn gtk_cell_renderer_toggle_set_activatable(
12857        toggle: *mut GtkCellRendererToggle,
12858        setting: gboolean,
12859    );
12860    pub fn gtk_cell_renderer_toggle_set_active(
12861        toggle: *mut GtkCellRendererToggle,
12862        setting: gboolean,
12863    );
12864    pub fn gtk_cell_renderer_toggle_set_radio(toggle: *mut GtkCellRendererToggle, radio: gboolean);
12865
12866    //=========================================================================
12867    // GtkCellView
12868    //=========================================================================
12869    pub fn gtk_cell_view_get_type() -> GType;
12870    pub fn gtk_cell_view_new() -> *mut GtkWidget;
12871    pub fn gtk_cell_view_new_with_context(
12872        area: *mut GtkCellArea,
12873        context: *mut GtkCellAreaContext,
12874    ) -> *mut GtkWidget;
12875    pub fn gtk_cell_view_new_with_markup(markup: *const c_char) -> *mut GtkWidget;
12876    pub fn gtk_cell_view_new_with_text(text: *const c_char) -> *mut GtkWidget;
12877    pub fn gtk_cell_view_new_with_texture(texture: *mut gdk::GdkTexture) -> *mut GtkWidget;
12878    pub fn gtk_cell_view_get_displayed_row(cell_view: *mut GtkCellView) -> *mut GtkTreePath;
12879    pub fn gtk_cell_view_get_draw_sensitive(cell_view: *mut GtkCellView) -> gboolean;
12880    pub fn gtk_cell_view_get_fit_model(cell_view: *mut GtkCellView) -> gboolean;
12881    pub fn gtk_cell_view_get_model(cell_view: *mut GtkCellView) -> *mut GtkTreeModel;
12882    pub fn gtk_cell_view_set_displayed_row(cell_view: *mut GtkCellView, path: *mut GtkTreePath);
12883    pub fn gtk_cell_view_set_draw_sensitive(cell_view: *mut GtkCellView, draw_sensitive: gboolean);
12884    pub fn gtk_cell_view_set_fit_model(cell_view: *mut GtkCellView, fit_model: gboolean);
12885    pub fn gtk_cell_view_set_model(cell_view: *mut GtkCellView, model: *mut GtkTreeModel);
12886
12887    //=========================================================================
12888    // GtkCenterBox
12889    //=========================================================================
12890    pub fn gtk_center_box_get_type() -> GType;
12891    pub fn gtk_center_box_new() -> *mut GtkWidget;
12892    pub fn gtk_center_box_get_baseline_position(self_: *mut GtkCenterBox) -> GtkBaselinePosition;
12893    pub fn gtk_center_box_get_center_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12894    pub fn gtk_center_box_get_end_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12895    #[cfg(feature = "v4_12")]
12896    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12897    pub fn gtk_center_box_get_shrink_center_last(self_: *mut GtkCenterBox) -> gboolean;
12898    pub fn gtk_center_box_get_start_widget(self_: *mut GtkCenterBox) -> *mut GtkWidget;
12899    pub fn gtk_center_box_set_baseline_position(
12900        self_: *mut GtkCenterBox,
12901        position: GtkBaselinePosition,
12902    );
12903    pub fn gtk_center_box_set_center_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12904    pub fn gtk_center_box_set_end_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12905    #[cfg(feature = "v4_12")]
12906    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12907    pub fn gtk_center_box_set_shrink_center_last(
12908        self_: *mut GtkCenterBox,
12909        shrink_center_last: gboolean,
12910    );
12911    pub fn gtk_center_box_set_start_widget(self_: *mut GtkCenterBox, child: *mut GtkWidget);
12912
12913    //=========================================================================
12914    // GtkCenterLayout
12915    //=========================================================================
12916    pub fn gtk_center_layout_get_type() -> GType;
12917    pub fn gtk_center_layout_new() -> *mut GtkLayoutManager;
12918    pub fn gtk_center_layout_get_baseline_position(
12919        self_: *mut GtkCenterLayout,
12920    ) -> GtkBaselinePosition;
12921    pub fn gtk_center_layout_get_center_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12922    pub fn gtk_center_layout_get_end_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12923    pub fn gtk_center_layout_get_orientation(self_: *mut GtkCenterLayout) -> GtkOrientation;
12924    #[cfg(feature = "v4_12")]
12925    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12926    pub fn gtk_center_layout_get_shrink_center_last(self_: *mut GtkCenterLayout) -> gboolean;
12927    pub fn gtk_center_layout_get_start_widget(self_: *mut GtkCenterLayout) -> *mut GtkWidget;
12928    pub fn gtk_center_layout_set_baseline_position(
12929        self_: *mut GtkCenterLayout,
12930        baseline_position: GtkBaselinePosition,
12931    );
12932    pub fn gtk_center_layout_set_center_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12933    pub fn gtk_center_layout_set_end_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12934    pub fn gtk_center_layout_set_orientation(
12935        self_: *mut GtkCenterLayout,
12936        orientation: GtkOrientation,
12937    );
12938    #[cfg(feature = "v4_12")]
12939    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
12940    pub fn gtk_center_layout_set_shrink_center_last(
12941        self_: *mut GtkCenterLayout,
12942        shrink_center_last: gboolean,
12943    );
12944    pub fn gtk_center_layout_set_start_widget(self_: *mut GtkCenterLayout, widget: *mut GtkWidget);
12945
12946    //=========================================================================
12947    // GtkCheckButton
12948    //=========================================================================
12949    pub fn gtk_check_button_get_type() -> GType;
12950    pub fn gtk_check_button_new() -> *mut GtkWidget;
12951    pub fn gtk_check_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
12952    pub fn gtk_check_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
12953    pub fn gtk_check_button_get_active(self_: *mut GtkCheckButton) -> gboolean;
12954    #[cfg(feature = "v4_8")]
12955    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12956    pub fn gtk_check_button_get_child(button: *mut GtkCheckButton) -> *mut GtkWidget;
12957    pub fn gtk_check_button_get_inconsistent(check_button: *mut GtkCheckButton) -> gboolean;
12958    pub fn gtk_check_button_get_label(self_: *mut GtkCheckButton) -> *const c_char;
12959    pub fn gtk_check_button_get_use_underline(self_: *mut GtkCheckButton) -> gboolean;
12960    pub fn gtk_check_button_set_active(self_: *mut GtkCheckButton, setting: gboolean);
12961    #[cfg(feature = "v4_8")]
12962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
12963    pub fn gtk_check_button_set_child(button: *mut GtkCheckButton, child: *mut GtkWidget);
12964    pub fn gtk_check_button_set_group(self_: *mut GtkCheckButton, group: *mut GtkCheckButton);
12965    pub fn gtk_check_button_set_inconsistent(
12966        check_button: *mut GtkCheckButton,
12967        inconsistent: gboolean,
12968    );
12969    pub fn gtk_check_button_set_label(self_: *mut GtkCheckButton, label: *const c_char);
12970    pub fn gtk_check_button_set_use_underline(self_: *mut GtkCheckButton, setting: gboolean);
12971
12972    //=========================================================================
12973    // GtkClosureExpression
12974    //=========================================================================
12975    pub fn gtk_closure_expression_get_type() -> GType;
12976    pub fn gtk_closure_expression_new(
12977        value_type: GType,
12978        closure: *mut gobject::GClosure,
12979        n_params: c_uint,
12980        params: *mut *mut GtkExpression,
12981    ) -> *mut GtkClosureExpression;
12982
12983    //=========================================================================
12984    // GtkColorButton
12985    //=========================================================================
12986    pub fn gtk_color_button_get_type() -> GType;
12987    pub fn gtk_color_button_new() -> *mut GtkWidget;
12988    pub fn gtk_color_button_new_with_rgba(rgba: *const gdk::GdkRGBA) -> *mut GtkWidget;
12989    pub fn gtk_color_button_get_modal(button: *mut GtkColorButton) -> gboolean;
12990    pub fn gtk_color_button_get_title(button: *mut GtkColorButton) -> *const c_char;
12991    pub fn gtk_color_button_set_modal(button: *mut GtkColorButton, modal: gboolean);
12992    pub fn gtk_color_button_set_title(button: *mut GtkColorButton, title: *const c_char);
12993
12994    //=========================================================================
12995    // GtkColorChooserDialog
12996    //=========================================================================
12997    pub fn gtk_color_chooser_dialog_get_type() -> GType;
12998    pub fn gtk_color_chooser_dialog_new(
12999        title: *const c_char,
13000        parent: *mut GtkWindow,
13001    ) -> *mut GtkWidget;
13002
13003    //=========================================================================
13004    // GtkColorChooserWidget
13005    //=========================================================================
13006    pub fn gtk_color_chooser_widget_get_type() -> GType;
13007    pub fn gtk_color_chooser_widget_new() -> *mut GtkWidget;
13008
13009    //=========================================================================
13010    // GtkColorDialog
13011    //=========================================================================
13012    #[cfg(feature = "v4_10")]
13013    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13014    pub fn gtk_color_dialog_get_type() -> GType;
13015    #[cfg(feature = "v4_10")]
13016    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13017    pub fn gtk_color_dialog_new() -> *mut GtkColorDialog;
13018    #[cfg(feature = "v4_10")]
13019    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13020    pub fn gtk_color_dialog_choose_rgba(
13021        self_: *mut GtkColorDialog,
13022        parent: *mut GtkWindow,
13023        initial_color: *const gdk::GdkRGBA,
13024        cancellable: *mut gio::GCancellable,
13025        callback: gio::GAsyncReadyCallback,
13026        user_data: gpointer,
13027    );
13028    #[cfg(feature = "v4_10")]
13029    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13030    pub fn gtk_color_dialog_choose_rgba_finish(
13031        self_: *mut GtkColorDialog,
13032        result: *mut gio::GAsyncResult,
13033        error: *mut *mut glib::GError,
13034    ) -> *mut gdk::GdkRGBA;
13035    #[cfg(feature = "v4_10")]
13036    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13037    pub fn gtk_color_dialog_get_modal(self_: *mut GtkColorDialog) -> gboolean;
13038    #[cfg(feature = "v4_10")]
13039    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13040    pub fn gtk_color_dialog_get_title(self_: *mut GtkColorDialog) -> *const c_char;
13041    #[cfg(feature = "v4_10")]
13042    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13043    pub fn gtk_color_dialog_get_with_alpha(self_: *mut GtkColorDialog) -> gboolean;
13044    #[cfg(feature = "v4_10")]
13045    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13046    pub fn gtk_color_dialog_set_modal(self_: *mut GtkColorDialog, modal: gboolean);
13047    #[cfg(feature = "v4_10")]
13048    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13049    pub fn gtk_color_dialog_set_title(self_: *mut GtkColorDialog, title: *const c_char);
13050    #[cfg(feature = "v4_10")]
13051    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13052    pub fn gtk_color_dialog_set_with_alpha(self_: *mut GtkColorDialog, with_alpha: gboolean);
13053
13054    //=========================================================================
13055    // GtkColorDialogButton
13056    //=========================================================================
13057    #[cfg(feature = "v4_10")]
13058    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13059    pub fn gtk_color_dialog_button_get_type() -> GType;
13060    #[cfg(feature = "v4_10")]
13061    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13062    pub fn gtk_color_dialog_button_new(dialog: *mut GtkColorDialog) -> *mut GtkWidget;
13063    #[cfg(feature = "v4_10")]
13064    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13065    pub fn gtk_color_dialog_button_get_dialog(
13066        self_: *mut GtkColorDialogButton,
13067    ) -> *mut GtkColorDialog;
13068    #[cfg(feature = "v4_10")]
13069    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13070    pub fn gtk_color_dialog_button_get_rgba(
13071        self_: *mut GtkColorDialogButton,
13072    ) -> *const gdk::GdkRGBA;
13073    #[cfg(feature = "v4_10")]
13074    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13075    pub fn gtk_color_dialog_button_set_dialog(
13076        self_: *mut GtkColorDialogButton,
13077        dialog: *mut GtkColorDialog,
13078    );
13079    #[cfg(feature = "v4_10")]
13080    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13081    pub fn gtk_color_dialog_button_set_rgba(
13082        self_: *mut GtkColorDialogButton,
13083        color: *const gdk::GdkRGBA,
13084    );
13085
13086    //=========================================================================
13087    // GtkColumnView
13088    //=========================================================================
13089    pub fn gtk_column_view_get_type() -> GType;
13090    pub fn gtk_column_view_new(model: *mut GtkSelectionModel) -> *mut GtkWidget;
13091    pub fn gtk_column_view_append_column(
13092        self_: *mut GtkColumnView,
13093        column: *mut GtkColumnViewColumn,
13094    );
13095    pub fn gtk_column_view_get_columns(self_: *mut GtkColumnView) -> *mut gio::GListModel;
13096    pub fn gtk_column_view_get_enable_rubberband(self_: *mut GtkColumnView) -> gboolean;
13097    #[cfg(feature = "v4_12")]
13098    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13099    pub fn gtk_column_view_get_header_factory(self_: *mut GtkColumnView)
13100    -> *mut GtkListItemFactory;
13101    pub fn gtk_column_view_get_model(self_: *mut GtkColumnView) -> *mut GtkSelectionModel;
13102    pub fn gtk_column_view_get_reorderable(self_: *mut GtkColumnView) -> gboolean;
13103    #[cfg(feature = "v4_12")]
13104    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13105    pub fn gtk_column_view_get_row_factory(self_: *mut GtkColumnView) -> *mut GtkListItemFactory;
13106    pub fn gtk_column_view_get_show_column_separators(self_: *mut GtkColumnView) -> gboolean;
13107    pub fn gtk_column_view_get_show_row_separators(self_: *mut GtkColumnView) -> gboolean;
13108    pub fn gtk_column_view_get_single_click_activate(self_: *mut GtkColumnView) -> gboolean;
13109    pub fn gtk_column_view_get_sorter(self_: *mut GtkColumnView) -> *mut GtkSorter;
13110    #[cfg(feature = "v4_12")]
13111    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13112    pub fn gtk_column_view_get_tab_behavior(self_: *mut GtkColumnView) -> GtkListTabBehavior;
13113    pub fn gtk_column_view_insert_column(
13114        self_: *mut GtkColumnView,
13115        position: c_uint,
13116        column: *mut GtkColumnViewColumn,
13117    );
13118    pub fn gtk_column_view_remove_column(
13119        self_: *mut GtkColumnView,
13120        column: *mut GtkColumnViewColumn,
13121    );
13122    #[cfg(feature = "v4_12")]
13123    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13124    pub fn gtk_column_view_scroll_to(
13125        self_: *mut GtkColumnView,
13126        pos: c_uint,
13127        column: *mut GtkColumnViewColumn,
13128        flags: GtkListScrollFlags,
13129        scroll: *mut GtkScrollInfo,
13130    );
13131    pub fn gtk_column_view_set_enable_rubberband(
13132        self_: *mut GtkColumnView,
13133        enable_rubberband: gboolean,
13134    );
13135    #[cfg(feature = "v4_12")]
13136    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13137    pub fn gtk_column_view_set_header_factory(
13138        self_: *mut GtkColumnView,
13139        factory: *mut GtkListItemFactory,
13140    );
13141    pub fn gtk_column_view_set_model(self_: *mut GtkColumnView, model: *mut GtkSelectionModel);
13142    pub fn gtk_column_view_set_reorderable(self_: *mut GtkColumnView, reorderable: gboolean);
13143    #[cfg(feature = "v4_12")]
13144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13145    pub fn gtk_column_view_set_row_factory(
13146        self_: *mut GtkColumnView,
13147        factory: *mut GtkListItemFactory,
13148    );
13149    pub fn gtk_column_view_set_show_column_separators(
13150        self_: *mut GtkColumnView,
13151        show_column_separators: gboolean,
13152    );
13153    pub fn gtk_column_view_set_show_row_separators(
13154        self_: *mut GtkColumnView,
13155        show_row_separators: gboolean,
13156    );
13157    pub fn gtk_column_view_set_single_click_activate(
13158        self_: *mut GtkColumnView,
13159        single_click_activate: gboolean,
13160    );
13161    #[cfg(feature = "v4_12")]
13162    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13163    pub fn gtk_column_view_set_tab_behavior(
13164        self_: *mut GtkColumnView,
13165        tab_behavior: GtkListTabBehavior,
13166    );
13167    pub fn gtk_column_view_sort_by_column(
13168        self_: *mut GtkColumnView,
13169        column: *mut GtkColumnViewColumn,
13170        direction: GtkSortType,
13171    );
13172
13173    //=========================================================================
13174    // GtkColumnViewCell
13175    //=========================================================================
13176    #[cfg(feature = "v4_12")]
13177    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13178    pub fn gtk_column_view_cell_get_type() -> GType;
13179    #[cfg(feature = "v4_12")]
13180    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13181    pub fn gtk_column_view_cell_get_child(self_: *mut GtkColumnViewCell) -> *mut GtkWidget;
13182    #[cfg(feature = "v4_12")]
13183    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13184    pub fn gtk_column_view_cell_get_focusable(self_: *mut GtkColumnViewCell) -> gboolean;
13185    #[cfg(feature = "v4_12")]
13186    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13187    pub fn gtk_column_view_cell_get_item(self_: *mut GtkColumnViewCell) -> *mut gobject::GObject;
13188    #[cfg(feature = "v4_12")]
13189    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13190    pub fn gtk_column_view_cell_get_position(self_: *mut GtkColumnViewCell) -> c_uint;
13191    #[cfg(feature = "v4_12")]
13192    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13193    pub fn gtk_column_view_cell_get_selected(self_: *mut GtkColumnViewCell) -> gboolean;
13194    #[cfg(feature = "v4_12")]
13195    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13196    pub fn gtk_column_view_cell_set_child(self_: *mut GtkColumnViewCell, child: *mut GtkWidget);
13197    #[cfg(feature = "v4_12")]
13198    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13199    pub fn gtk_column_view_cell_set_focusable(self_: *mut GtkColumnViewCell, focusable: gboolean);
13200
13201    //=========================================================================
13202    // GtkColumnViewColumn
13203    //=========================================================================
13204    pub fn gtk_column_view_column_get_type() -> GType;
13205    pub fn gtk_column_view_column_new(
13206        title: *const c_char,
13207        factory: *mut GtkListItemFactory,
13208    ) -> *mut GtkColumnViewColumn;
13209    pub fn gtk_column_view_column_get_column_view(
13210        self_: *mut GtkColumnViewColumn,
13211    ) -> *mut GtkColumnView;
13212    pub fn gtk_column_view_column_get_expand(self_: *mut GtkColumnViewColumn) -> gboolean;
13213    pub fn gtk_column_view_column_get_factory(
13214        self_: *mut GtkColumnViewColumn,
13215    ) -> *mut GtkListItemFactory;
13216    pub fn gtk_column_view_column_get_fixed_width(self_: *mut GtkColumnViewColumn) -> c_int;
13217    pub fn gtk_column_view_column_get_header_menu(
13218        self_: *mut GtkColumnViewColumn,
13219    ) -> *mut gio::GMenuModel;
13220    #[cfg(feature = "v4_10")]
13221    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13222    pub fn gtk_column_view_column_get_id(self_: *mut GtkColumnViewColumn) -> *const c_char;
13223    pub fn gtk_column_view_column_get_resizable(self_: *mut GtkColumnViewColumn) -> gboolean;
13224    pub fn gtk_column_view_column_get_sorter(self_: *mut GtkColumnViewColumn) -> *mut GtkSorter;
13225    pub fn gtk_column_view_column_get_title(self_: *mut GtkColumnViewColumn) -> *const c_char;
13226    pub fn gtk_column_view_column_get_visible(self_: *mut GtkColumnViewColumn) -> gboolean;
13227    pub fn gtk_column_view_column_set_expand(self_: *mut GtkColumnViewColumn, expand: gboolean);
13228    pub fn gtk_column_view_column_set_factory(
13229        self_: *mut GtkColumnViewColumn,
13230        factory: *mut GtkListItemFactory,
13231    );
13232    pub fn gtk_column_view_column_set_fixed_width(
13233        self_: *mut GtkColumnViewColumn,
13234        fixed_width: c_int,
13235    );
13236    pub fn gtk_column_view_column_set_header_menu(
13237        self_: *mut GtkColumnViewColumn,
13238        menu: *mut gio::GMenuModel,
13239    );
13240    #[cfg(feature = "v4_10")]
13241    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13242    pub fn gtk_column_view_column_set_id(self_: *mut GtkColumnViewColumn, id: *const c_char);
13243    pub fn gtk_column_view_column_set_resizable(
13244        self_: *mut GtkColumnViewColumn,
13245        resizable: gboolean,
13246    );
13247    pub fn gtk_column_view_column_set_sorter(
13248        self_: *mut GtkColumnViewColumn,
13249        sorter: *mut GtkSorter,
13250    );
13251    pub fn gtk_column_view_column_set_title(self_: *mut GtkColumnViewColumn, title: *const c_char);
13252    pub fn gtk_column_view_column_set_visible(self_: *mut GtkColumnViewColumn, visible: gboolean);
13253
13254    //=========================================================================
13255    // GtkColumnViewRow
13256    //=========================================================================
13257    #[cfg(feature = "v4_12")]
13258    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13259    pub fn gtk_column_view_row_get_type() -> GType;
13260    #[cfg(feature = "v4_12")]
13261    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13262    pub fn gtk_column_view_row_get_accessible_description(
13263        self_: *mut GtkColumnViewRow,
13264    ) -> *const c_char;
13265    #[cfg(feature = "v4_12")]
13266    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13267    pub fn gtk_column_view_row_get_accessible_label(self_: *mut GtkColumnViewRow) -> *const c_char;
13268    #[cfg(feature = "v4_12")]
13269    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13270    pub fn gtk_column_view_row_get_activatable(self_: *mut GtkColumnViewRow) -> gboolean;
13271    #[cfg(feature = "v4_12")]
13272    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13273    pub fn gtk_column_view_row_get_focusable(self_: *mut GtkColumnViewRow) -> gboolean;
13274    #[cfg(feature = "v4_12")]
13275    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13276    pub fn gtk_column_view_row_get_item(self_: *mut GtkColumnViewRow) -> *mut gobject::GObject;
13277    #[cfg(feature = "v4_12")]
13278    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13279    pub fn gtk_column_view_row_get_position(self_: *mut GtkColumnViewRow) -> c_uint;
13280    #[cfg(feature = "v4_12")]
13281    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13282    pub fn gtk_column_view_row_get_selectable(self_: *mut GtkColumnViewRow) -> gboolean;
13283    #[cfg(feature = "v4_12")]
13284    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13285    pub fn gtk_column_view_row_get_selected(self_: *mut GtkColumnViewRow) -> gboolean;
13286    #[cfg(feature = "v4_12")]
13287    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13288    pub fn gtk_column_view_row_set_accessible_description(
13289        self_: *mut GtkColumnViewRow,
13290        description: *const c_char,
13291    );
13292    #[cfg(feature = "v4_12")]
13293    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13294    pub fn gtk_column_view_row_set_accessible_label(
13295        self_: *mut GtkColumnViewRow,
13296        label: *const c_char,
13297    );
13298    #[cfg(feature = "v4_12")]
13299    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13300    pub fn gtk_column_view_row_set_activatable(self_: *mut GtkColumnViewRow, activatable: gboolean);
13301    #[cfg(feature = "v4_12")]
13302    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13303    pub fn gtk_column_view_row_set_focusable(self_: *mut GtkColumnViewRow, focusable: gboolean);
13304    #[cfg(feature = "v4_12")]
13305    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13306    pub fn gtk_column_view_row_set_selectable(self_: *mut GtkColumnViewRow, selectable: gboolean);
13307
13308    //=========================================================================
13309    // GtkColumnViewSorter
13310    //=========================================================================
13311    #[cfg(feature = "v4_10")]
13312    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13313    pub fn gtk_column_view_sorter_get_type() -> GType;
13314    #[cfg(feature = "v4_10")]
13315    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13316    pub fn gtk_column_view_sorter_get_n_sort_columns(self_: *mut GtkColumnViewSorter) -> c_uint;
13317    #[cfg(feature = "v4_10")]
13318    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13319    pub fn gtk_column_view_sorter_get_nth_sort_column(
13320        self_: *mut GtkColumnViewSorter,
13321        position: c_uint,
13322        sort_order: *mut GtkSortType,
13323    ) -> *mut GtkColumnViewColumn;
13324    #[cfg(feature = "v4_10")]
13325    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13326    pub fn gtk_column_view_sorter_get_primary_sort_column(
13327        self_: *mut GtkColumnViewSorter,
13328    ) -> *mut GtkColumnViewColumn;
13329    #[cfg(feature = "v4_10")]
13330    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
13331    pub fn gtk_column_view_sorter_get_primary_sort_order(
13332        self_: *mut GtkColumnViewSorter,
13333    ) -> GtkSortType;
13334
13335    //=========================================================================
13336    // GtkComboBox
13337    //=========================================================================
13338    pub fn gtk_combo_box_get_type() -> GType;
13339    pub fn gtk_combo_box_new() -> *mut GtkWidget;
13340    pub fn gtk_combo_box_new_with_entry() -> *mut GtkWidget;
13341    pub fn gtk_combo_box_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
13342    pub fn gtk_combo_box_new_with_model_and_entry(model: *mut GtkTreeModel) -> *mut GtkWidget;
13343    pub fn gtk_combo_box_get_active(combo_box: *mut GtkComboBox) -> c_int;
13344    pub fn gtk_combo_box_get_active_id(combo_box: *mut GtkComboBox) -> *const c_char;
13345    pub fn gtk_combo_box_get_active_iter(
13346        combo_box: *mut GtkComboBox,
13347        iter: *mut GtkTreeIter,
13348    ) -> gboolean;
13349    pub fn gtk_combo_box_get_button_sensitivity(combo_box: *mut GtkComboBox) -> GtkSensitivityType;
13350    pub fn gtk_combo_box_get_child(combo_box: *mut GtkComboBox) -> *mut GtkWidget;
13351    pub fn gtk_combo_box_get_entry_text_column(combo_box: *mut GtkComboBox) -> c_int;
13352    pub fn gtk_combo_box_get_has_entry(combo_box: *mut GtkComboBox) -> gboolean;
13353    pub fn gtk_combo_box_get_id_column(combo_box: *mut GtkComboBox) -> c_int;
13354    pub fn gtk_combo_box_get_model(combo_box: *mut GtkComboBox) -> *mut GtkTreeModel;
13355    pub fn gtk_combo_box_get_popup_fixed_width(combo_box: *mut GtkComboBox) -> gboolean;
13356    pub fn gtk_combo_box_get_row_separator_func(
13357        combo_box: *mut GtkComboBox,
13358    ) -> GtkTreeViewRowSeparatorFunc;
13359    pub fn gtk_combo_box_popdown(combo_box: *mut GtkComboBox);
13360    pub fn gtk_combo_box_popup(combo_box: *mut GtkComboBox);
13361    pub fn gtk_combo_box_popup_for_device(combo_box: *mut GtkComboBox, device: *mut gdk::GdkDevice);
13362    pub fn gtk_combo_box_set_active(combo_box: *mut GtkComboBox, index_: c_int);
13363    pub fn gtk_combo_box_set_active_id(
13364        combo_box: *mut GtkComboBox,
13365        active_id: *const c_char,
13366    ) -> gboolean;
13367    pub fn gtk_combo_box_set_active_iter(combo_box: *mut GtkComboBox, iter: *mut GtkTreeIter);
13368    pub fn gtk_combo_box_set_button_sensitivity(
13369        combo_box: *mut GtkComboBox,
13370        sensitivity: GtkSensitivityType,
13371    );
13372    pub fn gtk_combo_box_set_child(combo_box: *mut GtkComboBox, child: *mut GtkWidget);
13373    pub fn gtk_combo_box_set_entry_text_column(combo_box: *mut GtkComboBox, text_column: c_int);
13374    pub fn gtk_combo_box_set_id_column(combo_box: *mut GtkComboBox, id_column: c_int);
13375    pub fn gtk_combo_box_set_model(combo_box: *mut GtkComboBox, model: *mut GtkTreeModel);
13376    pub fn gtk_combo_box_set_popup_fixed_width(combo_box: *mut GtkComboBox, fixed: gboolean);
13377    pub fn gtk_combo_box_set_row_separator_func(
13378        combo_box: *mut GtkComboBox,
13379        func: GtkTreeViewRowSeparatorFunc,
13380        data: gpointer,
13381        destroy: glib::GDestroyNotify,
13382    );
13383
13384    //=========================================================================
13385    // GtkComboBoxText
13386    //=========================================================================
13387    pub fn gtk_combo_box_text_get_type() -> GType;
13388    pub fn gtk_combo_box_text_new() -> *mut GtkWidget;
13389    pub fn gtk_combo_box_text_new_with_entry() -> *mut GtkWidget;
13390    pub fn gtk_combo_box_text_append(
13391        combo_box: *mut GtkComboBoxText,
13392        id: *const c_char,
13393        text: *const c_char,
13394    );
13395    pub fn gtk_combo_box_text_append_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13396    pub fn gtk_combo_box_text_get_active_text(combo_box: *mut GtkComboBoxText) -> *mut c_char;
13397    pub fn gtk_combo_box_text_insert(
13398        combo_box: *mut GtkComboBoxText,
13399        position: c_int,
13400        id: *const c_char,
13401        text: *const c_char,
13402    );
13403    pub fn gtk_combo_box_text_insert_text(
13404        combo_box: *mut GtkComboBoxText,
13405        position: c_int,
13406        text: *const c_char,
13407    );
13408    pub fn gtk_combo_box_text_prepend(
13409        combo_box: *mut GtkComboBoxText,
13410        id: *const c_char,
13411        text: *const c_char,
13412    );
13413    pub fn gtk_combo_box_text_prepend_text(combo_box: *mut GtkComboBoxText, text: *const c_char);
13414    pub fn gtk_combo_box_text_remove(combo_box: *mut GtkComboBoxText, position: c_int);
13415    pub fn gtk_combo_box_text_remove_all(combo_box: *mut GtkComboBoxText);
13416
13417    //=========================================================================
13418    // GtkConstantExpression
13419    //=========================================================================
13420    pub fn gtk_constant_expression_get_type() -> GType;
13421    pub fn gtk_constant_expression_new(value_type: GType, ...) -> *mut GtkConstantExpression;
13422    pub fn gtk_constant_expression_new_for_value(
13423        value: *const gobject::GValue,
13424    ) -> *mut GtkConstantExpression;
13425    pub fn gtk_constant_expression_get_value(
13426        expression: *mut GtkConstantExpression,
13427    ) -> *const gobject::GValue;
13428
13429    //=========================================================================
13430    // GtkConstraint
13431    //=========================================================================
13432    pub fn gtk_constraint_get_type() -> GType;
13433    pub fn gtk_constraint_new(
13434        target: *mut GtkConstraintTarget,
13435        target_attribute: GtkConstraintAttribute,
13436        relation: GtkConstraintRelation,
13437        source: *mut GtkConstraintTarget,
13438        source_attribute: GtkConstraintAttribute,
13439        multiplier: c_double,
13440        constant: c_double,
13441        strength: c_int,
13442    ) -> *mut GtkConstraint;
13443    pub fn gtk_constraint_new_constant(
13444        target: *mut GtkConstraintTarget,
13445        target_attribute: GtkConstraintAttribute,
13446        relation: GtkConstraintRelation,
13447        constant: c_double,
13448        strength: c_int,
13449    ) -> *mut GtkConstraint;
13450    pub fn gtk_constraint_get_constant(constraint: *mut GtkConstraint) -> c_double;
13451    pub fn gtk_constraint_get_multiplier(constraint: *mut GtkConstraint) -> c_double;
13452    pub fn gtk_constraint_get_relation(constraint: *mut GtkConstraint) -> GtkConstraintRelation;
13453    pub fn gtk_constraint_get_source(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13454    pub fn gtk_constraint_get_source_attribute(
13455        constraint: *mut GtkConstraint,
13456    ) -> GtkConstraintAttribute;
13457    pub fn gtk_constraint_get_strength(constraint: *mut GtkConstraint) -> c_int;
13458    pub fn gtk_constraint_get_target(constraint: *mut GtkConstraint) -> *mut GtkConstraintTarget;
13459    pub fn gtk_constraint_get_target_attribute(
13460        constraint: *mut GtkConstraint,
13461    ) -> GtkConstraintAttribute;
13462    pub fn gtk_constraint_is_attached(constraint: *mut GtkConstraint) -> gboolean;
13463    pub fn gtk_constraint_is_constant(constraint: *mut GtkConstraint) -> gboolean;
13464    pub fn gtk_constraint_is_required(constraint: *mut GtkConstraint) -> gboolean;
13465
13466    //=========================================================================
13467    // GtkConstraintGuide
13468    //=========================================================================
13469    pub fn gtk_constraint_guide_get_type() -> GType;
13470    pub fn gtk_constraint_guide_new() -> *mut GtkConstraintGuide;
13471    pub fn gtk_constraint_guide_get_max_size(
13472        guide: *mut GtkConstraintGuide,
13473        width: *mut c_int,
13474        height: *mut c_int,
13475    );
13476    pub fn gtk_constraint_guide_get_min_size(
13477        guide: *mut GtkConstraintGuide,
13478        width: *mut c_int,
13479        height: *mut c_int,
13480    );
13481    pub fn gtk_constraint_guide_get_name(guide: *mut GtkConstraintGuide) -> *const c_char;
13482    pub fn gtk_constraint_guide_get_nat_size(
13483        guide: *mut GtkConstraintGuide,
13484        width: *mut c_int,
13485        height: *mut c_int,
13486    );
13487    pub fn gtk_constraint_guide_get_strength(
13488        guide: *mut GtkConstraintGuide,
13489    ) -> GtkConstraintStrength;
13490    pub fn gtk_constraint_guide_set_max_size(
13491        guide: *mut GtkConstraintGuide,
13492        width: c_int,
13493        height: c_int,
13494    );
13495    pub fn gtk_constraint_guide_set_min_size(
13496        guide: *mut GtkConstraintGuide,
13497        width: c_int,
13498        height: c_int,
13499    );
13500    pub fn gtk_constraint_guide_set_name(guide: *mut GtkConstraintGuide, name: *const c_char);
13501    pub fn gtk_constraint_guide_set_nat_size(
13502        guide: *mut GtkConstraintGuide,
13503        width: c_int,
13504        height: c_int,
13505    );
13506    pub fn gtk_constraint_guide_set_strength(
13507        guide: *mut GtkConstraintGuide,
13508        strength: GtkConstraintStrength,
13509    );
13510
13511    //=========================================================================
13512    // GtkConstraintLayout
13513    //=========================================================================
13514    pub fn gtk_constraint_layout_get_type() -> GType;
13515    pub fn gtk_constraint_layout_new() -> *mut GtkLayoutManager;
13516    pub fn gtk_constraint_layout_add_constraint(
13517        layout: *mut GtkConstraintLayout,
13518        constraint: *mut GtkConstraint,
13519    );
13520    pub fn gtk_constraint_layout_add_constraints_from_description(
13521        layout: *mut GtkConstraintLayout,
13522        lines: *const *const c_char,
13523        n_lines: size_t,
13524        hspacing: c_int,
13525        vspacing: c_int,
13526        error: *mut *mut glib::GError,
13527        first_view: *const c_char,
13528        ...
13529    ) -> *mut glib::GList;
13530    pub fn gtk_constraint_layout_add_constraints_from_descriptionv(
13531        layout: *mut GtkConstraintLayout,
13532        lines: *const *const c_char,
13533        n_lines: size_t,
13534        hspacing: c_int,
13535        vspacing: c_int,
13536        views: *mut glib::GHashTable,
13537        error: *mut *mut glib::GError,
13538    ) -> *mut glib::GList;
13539    pub fn gtk_constraint_layout_add_guide(
13540        layout: *mut GtkConstraintLayout,
13541        guide: *mut GtkConstraintGuide,
13542    );
13543    pub fn gtk_constraint_layout_observe_constraints(
13544        layout: *mut GtkConstraintLayout,
13545    ) -> *mut gio::GListModel;
13546    pub fn gtk_constraint_layout_observe_guides(
13547        layout: *mut GtkConstraintLayout,
13548    ) -> *mut gio::GListModel;
13549    pub fn gtk_constraint_layout_remove_all_constraints(layout: *mut GtkConstraintLayout);
13550    pub fn gtk_constraint_layout_remove_constraint(
13551        layout: *mut GtkConstraintLayout,
13552        constraint: *mut GtkConstraint,
13553    );
13554    pub fn gtk_constraint_layout_remove_guide(
13555        layout: *mut GtkConstraintLayout,
13556        guide: *mut GtkConstraintGuide,
13557    );
13558
13559    //=========================================================================
13560    // GtkConstraintLayoutChild
13561    //=========================================================================
13562    pub fn gtk_constraint_layout_child_get_type() -> GType;
13563
13564    //=========================================================================
13565    // GtkCssProvider
13566    //=========================================================================
13567    pub fn gtk_css_provider_get_type() -> GType;
13568    pub fn gtk_css_provider_new() -> *mut GtkCssProvider;
13569    #[cfg(feature = "v4_12")]
13570    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13571    pub fn gtk_css_provider_load_from_bytes(
13572        css_provider: *mut GtkCssProvider,
13573        data: *mut glib::GBytes,
13574    );
13575    pub fn gtk_css_provider_load_from_data(
13576        css_provider: *mut GtkCssProvider,
13577        data: *const c_char,
13578        length: ssize_t,
13579    );
13580    pub fn gtk_css_provider_load_from_file(
13581        css_provider: *mut GtkCssProvider,
13582        file: *mut gio::GFile,
13583    );
13584    pub fn gtk_css_provider_load_from_path(css_provider: *mut GtkCssProvider, path: *const c_char);
13585    pub fn gtk_css_provider_load_from_resource(
13586        css_provider: *mut GtkCssProvider,
13587        resource_path: *const c_char,
13588    );
13589    #[cfg(feature = "v4_12")]
13590    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13591    pub fn gtk_css_provider_load_from_string(
13592        css_provider: *mut GtkCssProvider,
13593        string: *const c_char,
13594    );
13595    pub fn gtk_css_provider_load_named(
13596        provider: *mut GtkCssProvider,
13597        name: *const c_char,
13598        variant: *const c_char,
13599    );
13600    pub fn gtk_css_provider_to_string(provider: *mut GtkCssProvider) -> *mut c_char;
13601
13602    //=========================================================================
13603    // GtkCustomFilter
13604    //=========================================================================
13605    pub fn gtk_custom_filter_get_type() -> GType;
13606    pub fn gtk_custom_filter_new(
13607        match_func: GtkCustomFilterFunc,
13608        user_data: gpointer,
13609        user_destroy: glib::GDestroyNotify,
13610    ) -> *mut GtkCustomFilter;
13611    pub fn gtk_custom_filter_set_filter_func(
13612        self_: *mut GtkCustomFilter,
13613        match_func: GtkCustomFilterFunc,
13614        user_data: gpointer,
13615        user_destroy: glib::GDestroyNotify,
13616    );
13617
13618    //=========================================================================
13619    // GtkCustomLayout
13620    //=========================================================================
13621    pub fn gtk_custom_layout_get_type() -> GType;
13622    pub fn gtk_custom_layout_new(
13623        request_mode: GtkCustomRequestModeFunc,
13624        measure: GtkCustomMeasureFunc,
13625        allocate: GtkCustomAllocateFunc,
13626    ) -> *mut GtkLayoutManager;
13627
13628    //=========================================================================
13629    // GtkCustomSorter
13630    //=========================================================================
13631    pub fn gtk_custom_sorter_get_type() -> GType;
13632    pub fn gtk_custom_sorter_new(
13633        sort_func: glib::GCompareDataFunc,
13634        user_data: gpointer,
13635        user_destroy: glib::GDestroyNotify,
13636    ) -> *mut GtkCustomSorter;
13637    pub fn gtk_custom_sorter_set_sort_func(
13638        self_: *mut GtkCustomSorter,
13639        sort_func: glib::GCompareDataFunc,
13640        user_data: gpointer,
13641        user_destroy: glib::GDestroyNotify,
13642    );
13643
13644    //=========================================================================
13645    // GtkDialog
13646    //=========================================================================
13647    pub fn gtk_dialog_get_type() -> GType;
13648    pub fn gtk_dialog_new() -> *mut GtkWidget;
13649    pub fn gtk_dialog_new_with_buttons(
13650        title: *const c_char,
13651        parent: *mut GtkWindow,
13652        flags: GtkDialogFlags,
13653        first_button_text: *const c_char,
13654        ...
13655    ) -> *mut GtkWidget;
13656    pub fn gtk_dialog_add_action_widget(
13657        dialog: *mut GtkDialog,
13658        child: *mut GtkWidget,
13659        response_id: GtkResponseType,
13660    );
13661    pub fn gtk_dialog_add_button(
13662        dialog: *mut GtkDialog,
13663        button_text: *const c_char,
13664        response_id: GtkResponseType,
13665    ) -> *mut GtkWidget;
13666    pub fn gtk_dialog_add_buttons(dialog: *mut GtkDialog, first_button_text: *const c_char, ...);
13667    pub fn gtk_dialog_get_content_area(dialog: *mut GtkDialog) -> *mut GtkBox;
13668    pub fn gtk_dialog_get_header_bar(dialog: *mut GtkDialog) -> *mut GtkHeaderBar;
13669    pub fn gtk_dialog_get_response_for_widget(
13670        dialog: *mut GtkDialog,
13671        widget: *mut GtkWidget,
13672    ) -> c_int;
13673    pub fn gtk_dialog_get_widget_for_response(
13674        dialog: *mut GtkDialog,
13675        response_id: GtkResponseType,
13676    ) -> *mut GtkWidget;
13677    pub fn gtk_dialog_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13678    pub fn gtk_dialog_set_default_response(dialog: *mut GtkDialog, response_id: GtkResponseType);
13679    pub fn gtk_dialog_set_response_sensitive(
13680        dialog: *mut GtkDialog,
13681        response_id: GtkResponseType,
13682        setting: gboolean,
13683    );
13684
13685    //=========================================================================
13686    // GtkDirectoryList
13687    //=========================================================================
13688    pub fn gtk_directory_list_get_type() -> GType;
13689    pub fn gtk_directory_list_new(
13690        attributes: *const c_char,
13691        file: *mut gio::GFile,
13692    ) -> *mut GtkDirectoryList;
13693    pub fn gtk_directory_list_get_attributes(self_: *mut GtkDirectoryList) -> *const c_char;
13694    pub fn gtk_directory_list_get_error(self_: *mut GtkDirectoryList) -> *const glib::GError;
13695    pub fn gtk_directory_list_get_file(self_: *mut GtkDirectoryList) -> *mut gio::GFile;
13696    pub fn gtk_directory_list_get_io_priority(self_: *mut GtkDirectoryList) -> c_int;
13697    pub fn gtk_directory_list_get_monitored(self_: *mut GtkDirectoryList) -> gboolean;
13698    pub fn gtk_directory_list_is_loading(self_: *mut GtkDirectoryList) -> gboolean;
13699    pub fn gtk_directory_list_set_attributes(
13700        self_: *mut GtkDirectoryList,
13701        attributes: *const c_char,
13702    );
13703    pub fn gtk_directory_list_set_file(self_: *mut GtkDirectoryList, file: *mut gio::GFile);
13704    pub fn gtk_directory_list_set_io_priority(self_: *mut GtkDirectoryList, io_priority: c_int);
13705    pub fn gtk_directory_list_set_monitored(self_: *mut GtkDirectoryList, monitored: gboolean);
13706
13707    //=========================================================================
13708    // GtkDragIcon
13709    //=========================================================================
13710    pub fn gtk_drag_icon_get_type() -> GType;
13711    pub fn gtk_drag_icon_get_for_drag(drag: *mut gdk::GdkDrag) -> *mut GtkWidget;
13712    pub fn gtk_drag_icon_create_widget_for_value(value: *const gobject::GValue) -> *mut GtkWidget;
13713    pub fn gtk_drag_icon_set_from_paintable(
13714        drag: *mut gdk::GdkDrag,
13715        paintable: *mut gdk::GdkPaintable,
13716        hot_x: c_int,
13717        hot_y: c_int,
13718    );
13719    pub fn gtk_drag_icon_get_child(self_: *mut GtkDragIcon) -> *mut GtkWidget;
13720    pub fn gtk_drag_icon_set_child(self_: *mut GtkDragIcon, child: *mut GtkWidget);
13721
13722    //=========================================================================
13723    // GtkDragSource
13724    //=========================================================================
13725    pub fn gtk_drag_source_get_type() -> GType;
13726    pub fn gtk_drag_source_new() -> *mut GtkDragSource;
13727    pub fn gtk_drag_source_drag_cancel(source: *mut GtkDragSource);
13728    pub fn gtk_drag_source_get_actions(source: *mut GtkDragSource) -> gdk::GdkDragAction;
13729    pub fn gtk_drag_source_get_content(source: *mut GtkDragSource) -> *mut gdk::GdkContentProvider;
13730    pub fn gtk_drag_source_get_drag(source: *mut GtkDragSource) -> *mut gdk::GdkDrag;
13731    pub fn gtk_drag_source_set_actions(source: *mut GtkDragSource, actions: gdk::GdkDragAction);
13732    pub fn gtk_drag_source_set_content(
13733        source: *mut GtkDragSource,
13734        content: *mut gdk::GdkContentProvider,
13735    );
13736    pub fn gtk_drag_source_set_icon(
13737        source: *mut GtkDragSource,
13738        paintable: *mut gdk::GdkPaintable,
13739        hot_x: c_int,
13740        hot_y: c_int,
13741    );
13742
13743    //=========================================================================
13744    // GtkDrawingArea
13745    //=========================================================================
13746    pub fn gtk_drawing_area_get_type() -> GType;
13747    pub fn gtk_drawing_area_new() -> *mut GtkWidget;
13748    pub fn gtk_drawing_area_get_content_height(self_: *mut GtkDrawingArea) -> c_int;
13749    pub fn gtk_drawing_area_get_content_width(self_: *mut GtkDrawingArea) -> c_int;
13750    pub fn gtk_drawing_area_set_content_height(self_: *mut GtkDrawingArea, height: c_int);
13751    pub fn gtk_drawing_area_set_content_width(self_: *mut GtkDrawingArea, width: c_int);
13752    pub fn gtk_drawing_area_set_draw_func(
13753        self_: *mut GtkDrawingArea,
13754        draw_func: GtkDrawingAreaDrawFunc,
13755        user_data: gpointer,
13756        destroy: glib::GDestroyNotify,
13757    );
13758
13759    //=========================================================================
13760    // GtkDropControllerMotion
13761    //=========================================================================
13762    pub fn gtk_drop_controller_motion_get_type() -> GType;
13763    pub fn gtk_drop_controller_motion_new() -> *mut GtkEventController;
13764    pub fn gtk_drop_controller_motion_contains_pointer(
13765        self_: *mut GtkDropControllerMotion,
13766    ) -> gboolean;
13767    pub fn gtk_drop_controller_motion_get_drop(
13768        self_: *mut GtkDropControllerMotion,
13769    ) -> *mut gdk::GdkDrop;
13770    pub fn gtk_drop_controller_motion_is_pointer(self_: *mut GtkDropControllerMotion) -> gboolean;
13771
13772    //=========================================================================
13773    // GtkDropDown
13774    //=========================================================================
13775    pub fn gtk_drop_down_get_type() -> GType;
13776    pub fn gtk_drop_down_new(
13777        model: *mut gio::GListModel,
13778        expression: *mut GtkExpression,
13779    ) -> *mut GtkWidget;
13780    pub fn gtk_drop_down_new_from_strings(strings: *const *const c_char) -> *mut GtkWidget;
13781    pub fn gtk_drop_down_get_enable_search(self_: *mut GtkDropDown) -> gboolean;
13782    pub fn gtk_drop_down_get_expression(self_: *mut GtkDropDown) -> *mut GtkExpression;
13783    pub fn gtk_drop_down_get_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13784    #[cfg(feature = "v4_12")]
13785    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13786    pub fn gtk_drop_down_get_header_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13787    pub fn gtk_drop_down_get_list_factory(self_: *mut GtkDropDown) -> *mut GtkListItemFactory;
13788    pub fn gtk_drop_down_get_model(self_: *mut GtkDropDown) -> *mut gio::GListModel;
13789    #[cfg(feature = "v4_12")]
13790    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13791    pub fn gtk_drop_down_get_search_match_mode(self_: *mut GtkDropDown)
13792    -> GtkStringFilterMatchMode;
13793    pub fn gtk_drop_down_get_selected(self_: *mut GtkDropDown) -> c_uint;
13794    pub fn gtk_drop_down_get_selected_item(self_: *mut GtkDropDown) -> *mut gobject::GObject;
13795    #[cfg(feature = "v4_6")]
13796    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13797    pub fn gtk_drop_down_get_show_arrow(self_: *mut GtkDropDown) -> gboolean;
13798    pub fn gtk_drop_down_set_enable_search(self_: *mut GtkDropDown, enable_search: gboolean);
13799    pub fn gtk_drop_down_set_expression(self_: *mut GtkDropDown, expression: *mut GtkExpression);
13800    pub fn gtk_drop_down_set_factory(self_: *mut GtkDropDown, factory: *mut GtkListItemFactory);
13801    #[cfg(feature = "v4_12")]
13802    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13803    pub fn gtk_drop_down_set_header_factory(
13804        self_: *mut GtkDropDown,
13805        factory: *mut GtkListItemFactory,
13806    );
13807    pub fn gtk_drop_down_set_list_factory(
13808        self_: *mut GtkDropDown,
13809        factory: *mut GtkListItemFactory,
13810    );
13811    pub fn gtk_drop_down_set_model(self_: *mut GtkDropDown, model: *mut gio::GListModel);
13812    #[cfg(feature = "v4_12")]
13813    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
13814    pub fn gtk_drop_down_set_search_match_mode(
13815        self_: *mut GtkDropDown,
13816        search_match_mode: GtkStringFilterMatchMode,
13817    );
13818    pub fn gtk_drop_down_set_selected(self_: *mut GtkDropDown, position: c_uint);
13819    #[cfg(feature = "v4_6")]
13820    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
13821    pub fn gtk_drop_down_set_show_arrow(self_: *mut GtkDropDown, show_arrow: gboolean);
13822
13823    //=========================================================================
13824    // GtkDropTarget
13825    //=========================================================================
13826    pub fn gtk_drop_target_get_type() -> GType;
13827    pub fn gtk_drop_target_new(type_: GType, actions: gdk::GdkDragAction) -> *mut GtkDropTarget;
13828    pub fn gtk_drop_target_get_actions(self_: *mut GtkDropTarget) -> gdk::GdkDragAction;
13829    #[cfg(feature = "v4_4")]
13830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
13831    pub fn gtk_drop_target_get_current_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13832    pub fn gtk_drop_target_get_drop(self_: *mut GtkDropTarget) -> *mut gdk::GdkDrop;
13833    pub fn gtk_drop_target_get_formats(self_: *mut GtkDropTarget) -> *mut gdk::GdkContentFormats;
13834    pub fn gtk_drop_target_get_gtypes(
13835        self_: *mut GtkDropTarget,
13836        n_types: *mut size_t,
13837    ) -> *const GType;
13838    pub fn gtk_drop_target_get_preload(self_: *mut GtkDropTarget) -> gboolean;
13839    pub fn gtk_drop_target_get_value(self_: *mut GtkDropTarget) -> *const gobject::GValue;
13840    pub fn gtk_drop_target_reject(self_: *mut GtkDropTarget);
13841    pub fn gtk_drop_target_set_actions(self_: *mut GtkDropTarget, actions: gdk::GdkDragAction);
13842    pub fn gtk_drop_target_set_gtypes(
13843        self_: *mut GtkDropTarget,
13844        types: *mut GType,
13845        n_types: size_t,
13846    );
13847    pub fn gtk_drop_target_set_preload(self_: *mut GtkDropTarget, preload: gboolean);
13848
13849    //=========================================================================
13850    // GtkDropTargetAsync
13851    //=========================================================================
13852    pub fn gtk_drop_target_async_get_type() -> GType;
13853    pub fn gtk_drop_target_async_new(
13854        formats: *mut gdk::GdkContentFormats,
13855        actions: gdk::GdkDragAction,
13856    ) -> *mut GtkDropTargetAsync;
13857    pub fn gtk_drop_target_async_get_actions(self_: *mut GtkDropTargetAsync) -> gdk::GdkDragAction;
13858    pub fn gtk_drop_target_async_get_formats(
13859        self_: *mut GtkDropTargetAsync,
13860    ) -> *mut gdk::GdkContentFormats;
13861    pub fn gtk_drop_target_async_reject_drop(
13862        self_: *mut GtkDropTargetAsync,
13863        drop: *mut gdk::GdkDrop,
13864    );
13865    pub fn gtk_drop_target_async_set_actions(
13866        self_: *mut GtkDropTargetAsync,
13867        actions: gdk::GdkDragAction,
13868    );
13869    pub fn gtk_drop_target_async_set_formats(
13870        self_: *mut GtkDropTargetAsync,
13871        formats: *mut gdk::GdkContentFormats,
13872    );
13873
13874    //=========================================================================
13875    // GtkEditableLabel
13876    //=========================================================================
13877    pub fn gtk_editable_label_get_type() -> GType;
13878    pub fn gtk_editable_label_new(str: *const c_char) -> *mut GtkWidget;
13879    pub fn gtk_editable_label_get_editing(self_: *mut GtkEditableLabel) -> gboolean;
13880    pub fn gtk_editable_label_start_editing(self_: *mut GtkEditableLabel);
13881    pub fn gtk_editable_label_stop_editing(self_: *mut GtkEditableLabel, commit: gboolean);
13882
13883    //=========================================================================
13884    // GtkEmojiChooser
13885    //=========================================================================
13886    pub fn gtk_emoji_chooser_get_type() -> GType;
13887    pub fn gtk_emoji_chooser_new() -> *mut GtkWidget;
13888
13889    //=========================================================================
13890    // GtkEntry
13891    //=========================================================================
13892    pub fn gtk_entry_get_type() -> GType;
13893    pub fn gtk_entry_new() -> *mut GtkWidget;
13894    pub fn gtk_entry_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
13895    pub fn gtk_entry_get_activates_default(entry: *mut GtkEntry) -> gboolean;
13896    pub fn gtk_entry_get_alignment(entry: *mut GtkEntry) -> c_float;
13897    pub fn gtk_entry_get_attributes(entry: *mut GtkEntry) -> *mut pango::PangoAttrList;
13898    pub fn gtk_entry_get_buffer(entry: *mut GtkEntry) -> *mut GtkEntryBuffer;
13899    pub fn gtk_entry_get_completion(entry: *mut GtkEntry) -> *mut GtkEntryCompletion;
13900    pub fn gtk_entry_get_current_icon_drag_source(entry: *mut GtkEntry) -> c_int;
13901    pub fn gtk_entry_get_extra_menu(entry: *mut GtkEntry) -> *mut gio::GMenuModel;
13902    pub fn gtk_entry_get_has_frame(entry: *mut GtkEntry) -> gboolean;
13903    pub fn gtk_entry_get_icon_activatable(
13904        entry: *mut GtkEntry,
13905        icon_pos: GtkEntryIconPosition,
13906    ) -> gboolean;
13907    pub fn gtk_entry_get_icon_area(
13908        entry: *mut GtkEntry,
13909        icon_pos: GtkEntryIconPosition,
13910        icon_area: *mut gdk::GdkRectangle,
13911    );
13912    pub fn gtk_entry_get_icon_at_pos(entry: *mut GtkEntry, x: c_int, y: c_int) -> c_int;
13913    pub fn gtk_entry_get_icon_gicon(
13914        entry: *mut GtkEntry,
13915        icon_pos: GtkEntryIconPosition,
13916    ) -> *mut gio::GIcon;
13917    pub fn gtk_entry_get_icon_name(
13918        entry: *mut GtkEntry,
13919        icon_pos: GtkEntryIconPosition,
13920    ) -> *const c_char;
13921    pub fn gtk_entry_get_icon_paintable(
13922        entry: *mut GtkEntry,
13923        icon_pos: GtkEntryIconPosition,
13924    ) -> *mut gdk::GdkPaintable;
13925    pub fn gtk_entry_get_icon_sensitive(
13926        entry: *mut GtkEntry,
13927        icon_pos: GtkEntryIconPosition,
13928    ) -> gboolean;
13929    pub fn gtk_entry_get_icon_storage_type(
13930        entry: *mut GtkEntry,
13931        icon_pos: GtkEntryIconPosition,
13932    ) -> GtkImageType;
13933    pub fn gtk_entry_get_icon_tooltip_markup(
13934        entry: *mut GtkEntry,
13935        icon_pos: GtkEntryIconPosition,
13936    ) -> *mut c_char;
13937    pub fn gtk_entry_get_icon_tooltip_text(
13938        entry: *mut GtkEntry,
13939        icon_pos: GtkEntryIconPosition,
13940    ) -> *mut c_char;
13941    pub fn gtk_entry_get_input_hints(entry: *mut GtkEntry) -> GtkInputHints;
13942    pub fn gtk_entry_get_input_purpose(entry: *mut GtkEntry) -> GtkInputPurpose;
13943    pub fn gtk_entry_get_invisible_char(entry: *mut GtkEntry) -> u32;
13944    pub fn gtk_entry_get_max_length(entry: *mut GtkEntry) -> c_int;
13945    #[cfg(feature = "v4_20")]
13946    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
13947    pub fn gtk_entry_get_menu_entry_icon_text(
13948        entry: *mut GtkEntry,
13949        icon_pos: GtkEntryIconPosition,
13950    ) -> *const c_char;
13951    pub fn gtk_entry_get_overwrite_mode(entry: *mut GtkEntry) -> gboolean;
13952    pub fn gtk_entry_get_placeholder_text(entry: *mut GtkEntry) -> *const c_char;
13953    pub fn gtk_entry_get_progress_fraction(entry: *mut GtkEntry) -> c_double;
13954    pub fn gtk_entry_get_progress_pulse_step(entry: *mut GtkEntry) -> c_double;
13955    pub fn gtk_entry_get_tabs(entry: *mut GtkEntry) -> *mut pango::PangoTabArray;
13956    pub fn gtk_entry_get_text_length(entry: *mut GtkEntry) -> u16;
13957    pub fn gtk_entry_get_visibility(entry: *mut GtkEntry) -> gboolean;
13958    pub fn gtk_entry_grab_focus_without_selecting(entry: *mut GtkEntry) -> gboolean;
13959    pub fn gtk_entry_progress_pulse(entry: *mut GtkEntry);
13960    pub fn gtk_entry_reset_im_context(entry: *mut GtkEntry);
13961    pub fn gtk_entry_set_activates_default(entry: *mut GtkEntry, setting: gboolean);
13962    pub fn gtk_entry_set_alignment(entry: *mut GtkEntry, xalign: c_float);
13963    pub fn gtk_entry_set_attributes(entry: *mut GtkEntry, attrs: *mut pango::PangoAttrList);
13964    pub fn gtk_entry_set_buffer(entry: *mut GtkEntry, buffer: *mut GtkEntryBuffer);
13965    pub fn gtk_entry_set_completion(entry: *mut GtkEntry, completion: *mut GtkEntryCompletion);
13966    pub fn gtk_entry_set_extra_menu(entry: *mut GtkEntry, model: *mut gio::GMenuModel);
13967    pub fn gtk_entry_set_has_frame(entry: *mut GtkEntry, setting: gboolean);
13968    pub fn gtk_entry_set_icon_activatable(
13969        entry: *mut GtkEntry,
13970        icon_pos: GtkEntryIconPosition,
13971        activatable: gboolean,
13972    );
13973    pub fn gtk_entry_set_icon_drag_source(
13974        entry: *mut GtkEntry,
13975        icon_pos: GtkEntryIconPosition,
13976        provider: *mut gdk::GdkContentProvider,
13977        actions: gdk::GdkDragAction,
13978    );
13979    pub fn gtk_entry_set_icon_from_gicon(
13980        entry: *mut GtkEntry,
13981        icon_pos: GtkEntryIconPosition,
13982        icon: *mut gio::GIcon,
13983    );
13984    pub fn gtk_entry_set_icon_from_icon_name(
13985        entry: *mut GtkEntry,
13986        icon_pos: GtkEntryIconPosition,
13987        icon_name: *const c_char,
13988    );
13989    pub fn gtk_entry_set_icon_from_paintable(
13990        entry: *mut GtkEntry,
13991        icon_pos: GtkEntryIconPosition,
13992        paintable: *mut gdk::GdkPaintable,
13993    );
13994    pub fn gtk_entry_set_icon_sensitive(
13995        entry: *mut GtkEntry,
13996        icon_pos: GtkEntryIconPosition,
13997        sensitive: gboolean,
13998    );
13999    pub fn gtk_entry_set_icon_tooltip_markup(
14000        entry: *mut GtkEntry,
14001        icon_pos: GtkEntryIconPosition,
14002        tooltip: *const c_char,
14003    );
14004    pub fn gtk_entry_set_icon_tooltip_text(
14005        entry: *mut GtkEntry,
14006        icon_pos: GtkEntryIconPosition,
14007        tooltip: *const c_char,
14008    );
14009    pub fn gtk_entry_set_input_hints(entry: *mut GtkEntry, hints: GtkInputHints);
14010    pub fn gtk_entry_set_input_purpose(entry: *mut GtkEntry, purpose: GtkInputPurpose);
14011    pub fn gtk_entry_set_invisible_char(entry: *mut GtkEntry, ch: u32);
14012    pub fn gtk_entry_set_max_length(entry: *mut GtkEntry, max: c_int);
14013    #[cfg(feature = "v4_20")]
14014    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14015    pub fn gtk_entry_set_menu_entry_icon_text(
14016        entry: *mut GtkEntry,
14017        icon_pos: GtkEntryIconPosition,
14018        text: *const c_char,
14019    );
14020    pub fn gtk_entry_set_overwrite_mode(entry: *mut GtkEntry, overwrite: gboolean);
14021    pub fn gtk_entry_set_placeholder_text(entry: *mut GtkEntry, text: *const c_char);
14022    pub fn gtk_entry_set_progress_fraction(entry: *mut GtkEntry, fraction: c_double);
14023    pub fn gtk_entry_set_progress_pulse_step(entry: *mut GtkEntry, fraction: c_double);
14024    pub fn gtk_entry_set_tabs(entry: *mut GtkEntry, tabs: *mut pango::PangoTabArray);
14025    pub fn gtk_entry_set_visibility(entry: *mut GtkEntry, visible: gboolean);
14026    pub fn gtk_entry_unset_invisible_char(entry: *mut GtkEntry);
14027
14028    //=========================================================================
14029    // GtkEntryBuffer
14030    //=========================================================================
14031    pub fn gtk_entry_buffer_get_type() -> GType;
14032    pub fn gtk_entry_buffer_new(
14033        initial_chars: *const c_char,
14034        n_initial_chars: c_int,
14035    ) -> *mut GtkEntryBuffer;
14036    pub fn gtk_entry_buffer_delete_text(
14037        buffer: *mut GtkEntryBuffer,
14038        position: c_uint,
14039        n_chars: c_int,
14040    ) -> c_uint;
14041    pub fn gtk_entry_buffer_emit_deleted_text(
14042        buffer: *mut GtkEntryBuffer,
14043        position: c_uint,
14044        n_chars: c_uint,
14045    );
14046    pub fn gtk_entry_buffer_emit_inserted_text(
14047        buffer: *mut GtkEntryBuffer,
14048        position: c_uint,
14049        chars: *const c_char,
14050        n_chars: c_uint,
14051    );
14052    pub fn gtk_entry_buffer_get_bytes(buffer: *mut GtkEntryBuffer) -> size_t;
14053    pub fn gtk_entry_buffer_get_length(buffer: *mut GtkEntryBuffer) -> c_uint;
14054    pub fn gtk_entry_buffer_get_max_length(buffer: *mut GtkEntryBuffer) -> c_int;
14055    pub fn gtk_entry_buffer_get_text(buffer: *mut GtkEntryBuffer) -> *const c_char;
14056    pub fn gtk_entry_buffer_insert_text(
14057        buffer: *mut GtkEntryBuffer,
14058        position: c_uint,
14059        chars: *const c_char,
14060        n_chars: c_int,
14061    ) -> c_uint;
14062    pub fn gtk_entry_buffer_set_max_length(buffer: *mut GtkEntryBuffer, max_length: c_int);
14063    pub fn gtk_entry_buffer_set_text(
14064        buffer: *mut GtkEntryBuffer,
14065        chars: *const c_char,
14066        n_chars: c_int,
14067    );
14068
14069    //=========================================================================
14070    // GtkEntryCompletion
14071    //=========================================================================
14072    pub fn gtk_entry_completion_get_type() -> GType;
14073    pub fn gtk_entry_completion_new() -> *mut GtkEntryCompletion;
14074    pub fn gtk_entry_completion_new_with_area(area: *mut GtkCellArea) -> *mut GtkEntryCompletion;
14075    pub fn gtk_entry_completion_complete(completion: *mut GtkEntryCompletion);
14076    pub fn gtk_entry_completion_compute_prefix(
14077        completion: *mut GtkEntryCompletion,
14078        key: *const c_char,
14079    ) -> *mut c_char;
14080    pub fn gtk_entry_completion_get_completion_prefix(
14081        completion: *mut GtkEntryCompletion,
14082    ) -> *const c_char;
14083    pub fn gtk_entry_completion_get_entry(completion: *mut GtkEntryCompletion) -> *mut GtkWidget;
14084    pub fn gtk_entry_completion_get_inline_completion(
14085        completion: *mut GtkEntryCompletion,
14086    ) -> gboolean;
14087    pub fn gtk_entry_completion_get_inline_selection(
14088        completion: *mut GtkEntryCompletion,
14089    ) -> gboolean;
14090    pub fn gtk_entry_completion_get_minimum_key_length(
14091        completion: *mut GtkEntryCompletion,
14092    ) -> c_int;
14093    pub fn gtk_entry_completion_get_model(completion: *mut GtkEntryCompletion)
14094    -> *mut GtkTreeModel;
14095    pub fn gtk_entry_completion_get_popup_completion(
14096        completion: *mut GtkEntryCompletion,
14097    ) -> gboolean;
14098    pub fn gtk_entry_completion_get_popup_set_width(
14099        completion: *mut GtkEntryCompletion,
14100    ) -> gboolean;
14101    pub fn gtk_entry_completion_get_popup_single_match(
14102        completion: *mut GtkEntryCompletion,
14103    ) -> gboolean;
14104    pub fn gtk_entry_completion_get_text_column(completion: *mut GtkEntryCompletion) -> c_int;
14105    pub fn gtk_entry_completion_insert_prefix(completion: *mut GtkEntryCompletion);
14106    pub fn gtk_entry_completion_set_inline_completion(
14107        completion: *mut GtkEntryCompletion,
14108        inline_completion: gboolean,
14109    );
14110    pub fn gtk_entry_completion_set_inline_selection(
14111        completion: *mut GtkEntryCompletion,
14112        inline_selection: gboolean,
14113    );
14114    pub fn gtk_entry_completion_set_match_func(
14115        completion: *mut GtkEntryCompletion,
14116        func: GtkEntryCompletionMatchFunc,
14117        func_data: gpointer,
14118        func_notify: glib::GDestroyNotify,
14119    );
14120    pub fn gtk_entry_completion_set_minimum_key_length(
14121        completion: *mut GtkEntryCompletion,
14122        length: c_int,
14123    );
14124    pub fn gtk_entry_completion_set_model(
14125        completion: *mut GtkEntryCompletion,
14126        model: *mut GtkTreeModel,
14127    );
14128    pub fn gtk_entry_completion_set_popup_completion(
14129        completion: *mut GtkEntryCompletion,
14130        popup_completion: gboolean,
14131    );
14132    pub fn gtk_entry_completion_set_popup_set_width(
14133        completion: *mut GtkEntryCompletion,
14134        popup_set_width: gboolean,
14135    );
14136    pub fn gtk_entry_completion_set_popup_single_match(
14137        completion: *mut GtkEntryCompletion,
14138        popup_single_match: gboolean,
14139    );
14140    pub fn gtk_entry_completion_set_text_column(completion: *mut GtkEntryCompletion, column: c_int);
14141
14142    //=========================================================================
14143    // GtkEventController
14144    //=========================================================================
14145    pub fn gtk_event_controller_get_type() -> GType;
14146    pub fn gtk_event_controller_get_current_event(
14147        controller: *mut GtkEventController,
14148    ) -> *mut gdk::GdkEvent;
14149    pub fn gtk_event_controller_get_current_event_device(
14150        controller: *mut GtkEventController,
14151    ) -> *mut gdk::GdkDevice;
14152    pub fn gtk_event_controller_get_current_event_state(
14153        controller: *mut GtkEventController,
14154    ) -> gdk::GdkModifierType;
14155    pub fn gtk_event_controller_get_current_event_time(controller: *mut GtkEventController) -> u32;
14156    pub fn gtk_event_controller_get_name(controller: *mut GtkEventController) -> *const c_char;
14157    pub fn gtk_event_controller_get_propagation_limit(
14158        controller: *mut GtkEventController,
14159    ) -> GtkPropagationLimit;
14160    pub fn gtk_event_controller_get_propagation_phase(
14161        controller: *mut GtkEventController,
14162    ) -> GtkPropagationPhase;
14163    pub fn gtk_event_controller_get_widget(controller: *mut GtkEventController) -> *mut GtkWidget;
14164    pub fn gtk_event_controller_reset(controller: *mut GtkEventController);
14165    pub fn gtk_event_controller_set_name(controller: *mut GtkEventController, name: *const c_char);
14166    pub fn gtk_event_controller_set_propagation_limit(
14167        controller: *mut GtkEventController,
14168        limit: GtkPropagationLimit,
14169    );
14170    pub fn gtk_event_controller_set_propagation_phase(
14171        controller: *mut GtkEventController,
14172        phase: GtkPropagationPhase,
14173    );
14174    #[cfg(feature = "v4_8")]
14175    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14176    pub fn gtk_event_controller_set_static_name(
14177        controller: *mut GtkEventController,
14178        name: *const c_char,
14179    );
14180
14181    //=========================================================================
14182    // GtkEventControllerFocus
14183    //=========================================================================
14184    pub fn gtk_event_controller_focus_get_type() -> GType;
14185    pub fn gtk_event_controller_focus_new() -> *mut GtkEventController;
14186    pub fn gtk_event_controller_focus_contains_focus(
14187        self_: *mut GtkEventControllerFocus,
14188    ) -> gboolean;
14189    pub fn gtk_event_controller_focus_is_focus(self_: *mut GtkEventControllerFocus) -> gboolean;
14190
14191    //=========================================================================
14192    // GtkEventControllerKey
14193    //=========================================================================
14194    pub fn gtk_event_controller_key_get_type() -> GType;
14195    pub fn gtk_event_controller_key_new() -> *mut GtkEventController;
14196    pub fn gtk_event_controller_key_forward(
14197        controller: *mut GtkEventControllerKey,
14198        widget: *mut GtkWidget,
14199    ) -> gboolean;
14200    pub fn gtk_event_controller_key_get_group(controller: *mut GtkEventControllerKey) -> c_uint;
14201    pub fn gtk_event_controller_key_get_im_context(
14202        controller: *mut GtkEventControllerKey,
14203    ) -> *mut GtkIMContext;
14204    pub fn gtk_event_controller_key_set_im_context(
14205        controller: *mut GtkEventControllerKey,
14206        im_context: *mut GtkIMContext,
14207    );
14208
14209    //=========================================================================
14210    // GtkEventControllerLegacy
14211    //=========================================================================
14212    pub fn gtk_event_controller_legacy_get_type() -> GType;
14213    pub fn gtk_event_controller_legacy_new() -> *mut GtkEventController;
14214
14215    //=========================================================================
14216    // GtkEventControllerMotion
14217    //=========================================================================
14218    pub fn gtk_event_controller_motion_get_type() -> GType;
14219    pub fn gtk_event_controller_motion_new() -> *mut GtkEventController;
14220    pub fn gtk_event_controller_motion_contains_pointer(
14221        self_: *mut GtkEventControllerMotion,
14222    ) -> gboolean;
14223    pub fn gtk_event_controller_motion_is_pointer(self_: *mut GtkEventControllerMotion)
14224    -> gboolean;
14225
14226    //=========================================================================
14227    // GtkEventControllerScroll
14228    //=========================================================================
14229    pub fn gtk_event_controller_scroll_get_type() -> GType;
14230    pub fn gtk_event_controller_scroll_new(
14231        flags: GtkEventControllerScrollFlags,
14232    ) -> *mut GtkEventController;
14233    pub fn gtk_event_controller_scroll_get_flags(
14234        scroll: *mut GtkEventControllerScroll,
14235    ) -> GtkEventControllerScrollFlags;
14236    #[cfg(feature = "v4_8")]
14237    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
14238    pub fn gtk_event_controller_scroll_get_unit(
14239        scroll: *mut GtkEventControllerScroll,
14240    ) -> gdk::GdkScrollUnit;
14241    pub fn gtk_event_controller_scroll_set_flags(
14242        scroll: *mut GtkEventControllerScroll,
14243        flags: GtkEventControllerScrollFlags,
14244    );
14245
14246    //=========================================================================
14247    // GtkEveryFilter
14248    //=========================================================================
14249    pub fn gtk_every_filter_get_type() -> GType;
14250    pub fn gtk_every_filter_new() -> *mut GtkEveryFilter;
14251
14252    //=========================================================================
14253    // GtkExpander
14254    //=========================================================================
14255    pub fn gtk_expander_get_type() -> GType;
14256    pub fn gtk_expander_new(label: *const c_char) -> *mut GtkWidget;
14257    pub fn gtk_expander_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
14258    pub fn gtk_expander_get_child(expander: *mut GtkExpander) -> *mut GtkWidget;
14259    pub fn gtk_expander_get_expanded(expander: *mut GtkExpander) -> gboolean;
14260    pub fn gtk_expander_get_label(expander: *mut GtkExpander) -> *const c_char;
14261    pub fn gtk_expander_get_label_widget(expander: *mut GtkExpander) -> *mut GtkWidget;
14262    pub fn gtk_expander_get_resize_toplevel(expander: *mut GtkExpander) -> gboolean;
14263    pub fn gtk_expander_get_use_markup(expander: *mut GtkExpander) -> gboolean;
14264    pub fn gtk_expander_get_use_underline(expander: *mut GtkExpander) -> gboolean;
14265    pub fn gtk_expander_set_child(expander: *mut GtkExpander, child: *mut GtkWidget);
14266    pub fn gtk_expander_set_expanded(expander: *mut GtkExpander, expanded: gboolean);
14267    pub fn gtk_expander_set_label(expander: *mut GtkExpander, label: *const c_char);
14268    pub fn gtk_expander_set_label_widget(expander: *mut GtkExpander, label_widget: *mut GtkWidget);
14269    pub fn gtk_expander_set_resize_toplevel(expander: *mut GtkExpander, resize_toplevel: gboolean);
14270    pub fn gtk_expander_set_use_markup(expander: *mut GtkExpander, use_markup: gboolean);
14271    pub fn gtk_expander_set_use_underline(expander: *mut GtkExpander, use_underline: gboolean);
14272
14273    //=========================================================================
14274    // GtkExpression
14275    //=========================================================================
14276    pub fn gtk_expression_get_type() -> GType;
14277    pub fn gtk_expression_bind(
14278        self_: *mut GtkExpression,
14279        target: *mut gobject::GObject,
14280        property: *const c_char,
14281        this_: *mut gobject::GObject,
14282    ) -> *mut GtkExpressionWatch;
14283    pub fn gtk_expression_evaluate(
14284        self_: *mut GtkExpression,
14285        this_: *mut gobject::GObject,
14286        value: *mut gobject::GValue,
14287    ) -> gboolean;
14288    pub fn gtk_expression_get_value_type(self_: *mut GtkExpression) -> GType;
14289    pub fn gtk_expression_is_static(self_: *mut GtkExpression) -> gboolean;
14290    pub fn gtk_expression_ref(self_: *mut GtkExpression) -> *mut GtkExpression;
14291    pub fn gtk_expression_unref(self_: *mut GtkExpression);
14292    pub fn gtk_expression_watch(
14293        self_: *mut GtkExpression,
14294        this_: *mut gobject::GObject,
14295        notify: GtkExpressionNotify,
14296        user_data: gpointer,
14297        user_destroy: glib::GDestroyNotify,
14298    ) -> *mut GtkExpressionWatch;
14299
14300    //=========================================================================
14301    // GtkFileChooserDialog
14302    //=========================================================================
14303    pub fn gtk_file_chooser_dialog_get_type() -> GType;
14304    pub fn gtk_file_chooser_dialog_new(
14305        title: *const c_char,
14306        parent: *mut GtkWindow,
14307        action: GtkFileChooserAction,
14308        first_button_text: *const c_char,
14309        ...
14310    ) -> *mut GtkWidget;
14311
14312    //=========================================================================
14313    // GtkFileChooserNative
14314    //=========================================================================
14315    pub fn gtk_file_chooser_native_get_type() -> GType;
14316    pub fn gtk_file_chooser_native_new(
14317        title: *const c_char,
14318        parent: *mut GtkWindow,
14319        action: GtkFileChooserAction,
14320        accept_label: *const c_char,
14321        cancel_label: *const c_char,
14322    ) -> *mut GtkFileChooserNative;
14323    pub fn gtk_file_chooser_native_get_accept_label(
14324        self_: *mut GtkFileChooserNative,
14325    ) -> *const c_char;
14326    pub fn gtk_file_chooser_native_get_cancel_label(
14327        self_: *mut GtkFileChooserNative,
14328    ) -> *const c_char;
14329    pub fn gtk_file_chooser_native_set_accept_label(
14330        self_: *mut GtkFileChooserNative,
14331        accept_label: *const c_char,
14332    );
14333    pub fn gtk_file_chooser_native_set_cancel_label(
14334        self_: *mut GtkFileChooserNative,
14335        cancel_label: *const c_char,
14336    );
14337
14338    //=========================================================================
14339    // GtkFileChooserWidget
14340    //=========================================================================
14341    pub fn gtk_file_chooser_widget_get_type() -> GType;
14342    pub fn gtk_file_chooser_widget_new(action: GtkFileChooserAction) -> *mut GtkWidget;
14343
14344    //=========================================================================
14345    // GtkFileDialog
14346    //=========================================================================
14347    #[cfg(feature = "v4_10")]
14348    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14349    pub fn gtk_file_dialog_get_type() -> GType;
14350    #[cfg(feature = "v4_10")]
14351    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14352    pub fn gtk_file_dialog_new() -> *mut GtkFileDialog;
14353    #[cfg(feature = "v4_10")]
14354    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14355    pub fn gtk_file_dialog_get_accept_label(self_: *mut GtkFileDialog) -> *const c_char;
14356    #[cfg(feature = "v4_10")]
14357    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14358    pub fn gtk_file_dialog_get_default_filter(self_: *mut GtkFileDialog) -> *mut GtkFileFilter;
14359    #[cfg(feature = "v4_10")]
14360    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14361    pub fn gtk_file_dialog_get_filters(self_: *mut GtkFileDialog) -> *mut gio::GListModel;
14362    #[cfg(feature = "v4_10")]
14363    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14364    pub fn gtk_file_dialog_get_initial_file(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14365    #[cfg(feature = "v4_10")]
14366    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14367    pub fn gtk_file_dialog_get_initial_folder(self_: *mut GtkFileDialog) -> *mut gio::GFile;
14368    #[cfg(feature = "v4_10")]
14369    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14370    pub fn gtk_file_dialog_get_initial_name(self_: *mut GtkFileDialog) -> *const c_char;
14371    #[cfg(feature = "v4_10")]
14372    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14373    pub fn gtk_file_dialog_get_modal(self_: *mut GtkFileDialog) -> gboolean;
14374    #[cfg(feature = "v4_10")]
14375    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14376    pub fn gtk_file_dialog_get_title(self_: *mut GtkFileDialog) -> *const c_char;
14377    #[cfg(feature = "v4_10")]
14378    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14379    pub fn gtk_file_dialog_open(
14380        self_: *mut GtkFileDialog,
14381        parent: *mut GtkWindow,
14382        cancellable: *mut gio::GCancellable,
14383        callback: gio::GAsyncReadyCallback,
14384        user_data: gpointer,
14385    );
14386    #[cfg(feature = "v4_10")]
14387    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14388    pub fn gtk_file_dialog_open_finish(
14389        self_: *mut GtkFileDialog,
14390        result: *mut gio::GAsyncResult,
14391        error: *mut *mut glib::GError,
14392    ) -> *mut gio::GFile;
14393    #[cfg(feature = "v4_10")]
14394    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14395    pub fn gtk_file_dialog_open_multiple(
14396        self_: *mut GtkFileDialog,
14397        parent: *mut GtkWindow,
14398        cancellable: *mut gio::GCancellable,
14399        callback: gio::GAsyncReadyCallback,
14400        user_data: gpointer,
14401    );
14402    #[cfg(feature = "v4_10")]
14403    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14404    pub fn gtk_file_dialog_open_multiple_finish(
14405        self_: *mut GtkFileDialog,
14406        result: *mut gio::GAsyncResult,
14407        error: *mut *mut glib::GError,
14408    ) -> *mut gio::GListModel;
14409    #[cfg(feature = "v4_18")]
14410    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14411    pub fn gtk_file_dialog_open_multiple_text_files(
14412        self_: *mut GtkFileDialog,
14413        parent: *mut GtkWindow,
14414        cancellable: *mut gio::GCancellable,
14415        callback: gio::GAsyncReadyCallback,
14416        user_data: gpointer,
14417    );
14418    #[cfg(feature = "v4_18")]
14419    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14420    pub fn gtk_file_dialog_open_multiple_text_files_finish(
14421        self_: *mut GtkFileDialog,
14422        result: *mut gio::GAsyncResult,
14423        encoding: *mut *const c_char,
14424        error: *mut *mut glib::GError,
14425    ) -> *mut gio::GListModel;
14426    #[cfg(feature = "v4_18")]
14427    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14428    pub fn gtk_file_dialog_open_text_file(
14429        self_: *mut GtkFileDialog,
14430        parent: *mut GtkWindow,
14431        cancellable: *mut gio::GCancellable,
14432        callback: gio::GAsyncReadyCallback,
14433        user_data: gpointer,
14434    );
14435    #[cfg(feature = "v4_18")]
14436    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14437    pub fn gtk_file_dialog_open_text_file_finish(
14438        self_: *mut GtkFileDialog,
14439        result: *mut gio::GAsyncResult,
14440        encoding: *mut *const c_char,
14441        error: *mut *mut glib::GError,
14442    ) -> *mut gio::GFile;
14443    #[cfg(feature = "v4_10")]
14444    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14445    pub fn gtk_file_dialog_save(
14446        self_: *mut GtkFileDialog,
14447        parent: *mut GtkWindow,
14448        cancellable: *mut gio::GCancellable,
14449        callback: gio::GAsyncReadyCallback,
14450        user_data: gpointer,
14451    );
14452    #[cfg(feature = "v4_10")]
14453    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14454    pub fn gtk_file_dialog_save_finish(
14455        self_: *mut GtkFileDialog,
14456        result: *mut gio::GAsyncResult,
14457        error: *mut *mut glib::GError,
14458    ) -> *mut gio::GFile;
14459    #[cfg(feature = "v4_18")]
14460    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14461    pub fn gtk_file_dialog_save_text_file(
14462        self_: *mut GtkFileDialog,
14463        parent: *mut GtkWindow,
14464        cancellable: *mut gio::GCancellable,
14465        callback: gio::GAsyncReadyCallback,
14466        user_data: gpointer,
14467    );
14468    #[cfg(feature = "v4_18")]
14469    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
14470    pub fn gtk_file_dialog_save_text_file_finish(
14471        self_: *mut GtkFileDialog,
14472        result: *mut gio::GAsyncResult,
14473        encoding: *mut *const c_char,
14474        line_ending: *mut *const c_char,
14475        error: *mut *mut glib::GError,
14476    ) -> *mut gio::GFile;
14477    #[cfg(feature = "v4_10")]
14478    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14479    pub fn gtk_file_dialog_select_folder(
14480        self_: *mut GtkFileDialog,
14481        parent: *mut GtkWindow,
14482        cancellable: *mut gio::GCancellable,
14483        callback: gio::GAsyncReadyCallback,
14484        user_data: gpointer,
14485    );
14486    #[cfg(feature = "v4_10")]
14487    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14488    pub fn gtk_file_dialog_select_folder_finish(
14489        self_: *mut GtkFileDialog,
14490        result: *mut gio::GAsyncResult,
14491        error: *mut *mut glib::GError,
14492    ) -> *mut gio::GFile;
14493    #[cfg(feature = "v4_10")]
14494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14495    pub fn gtk_file_dialog_select_multiple_folders(
14496        self_: *mut GtkFileDialog,
14497        parent: *mut GtkWindow,
14498        cancellable: *mut gio::GCancellable,
14499        callback: gio::GAsyncReadyCallback,
14500        user_data: gpointer,
14501    );
14502    #[cfg(feature = "v4_10")]
14503    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14504    pub fn gtk_file_dialog_select_multiple_folders_finish(
14505        self_: *mut GtkFileDialog,
14506        result: *mut gio::GAsyncResult,
14507        error: *mut *mut glib::GError,
14508    ) -> *mut gio::GListModel;
14509    #[cfg(feature = "v4_10")]
14510    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14511    pub fn gtk_file_dialog_set_accept_label(self_: *mut GtkFileDialog, accept_label: *const c_char);
14512    #[cfg(feature = "v4_10")]
14513    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14514    pub fn gtk_file_dialog_set_default_filter(
14515        self_: *mut GtkFileDialog,
14516        filter: *mut GtkFileFilter,
14517    );
14518    #[cfg(feature = "v4_10")]
14519    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14520    pub fn gtk_file_dialog_set_filters(self_: *mut GtkFileDialog, filters: *mut gio::GListModel);
14521    #[cfg(feature = "v4_10")]
14522    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14523    pub fn gtk_file_dialog_set_initial_file(self_: *mut GtkFileDialog, file: *mut gio::GFile);
14524    #[cfg(feature = "v4_10")]
14525    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14526    pub fn gtk_file_dialog_set_initial_folder(self_: *mut GtkFileDialog, folder: *mut gio::GFile);
14527    #[cfg(feature = "v4_10")]
14528    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14529    pub fn gtk_file_dialog_set_initial_name(self_: *mut GtkFileDialog, name: *const c_char);
14530    #[cfg(feature = "v4_10")]
14531    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14532    pub fn gtk_file_dialog_set_modal(self_: *mut GtkFileDialog, modal: gboolean);
14533    #[cfg(feature = "v4_10")]
14534    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14535    pub fn gtk_file_dialog_set_title(self_: *mut GtkFileDialog, title: *const c_char);
14536
14537    //=========================================================================
14538    // GtkFileFilter
14539    //=========================================================================
14540    pub fn gtk_file_filter_get_type() -> GType;
14541    pub fn gtk_file_filter_new() -> *mut GtkFileFilter;
14542    pub fn gtk_file_filter_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkFileFilter;
14543    pub fn gtk_file_filter_add_mime_type(filter: *mut GtkFileFilter, mime_type: *const c_char);
14544    pub fn gtk_file_filter_add_pattern(filter: *mut GtkFileFilter, pattern: *const c_char);
14545    pub fn gtk_file_filter_add_pixbuf_formats(filter: *mut GtkFileFilter);
14546    #[cfg(feature = "v4_4")]
14547    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
14548    pub fn gtk_file_filter_add_suffix(filter: *mut GtkFileFilter, suffix: *const c_char);
14549    pub fn gtk_file_filter_get_attributes(filter: *mut GtkFileFilter) -> *mut *const c_char;
14550    pub fn gtk_file_filter_get_name(filter: *mut GtkFileFilter) -> *const c_char;
14551    pub fn gtk_file_filter_set_name(filter: *mut GtkFileFilter, name: *const c_char);
14552    pub fn gtk_file_filter_to_gvariant(filter: *mut GtkFileFilter) -> *mut glib::GVariant;
14553
14554    //=========================================================================
14555    // GtkFileLauncher
14556    //=========================================================================
14557    #[cfg(feature = "v4_10")]
14558    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14559    pub fn gtk_file_launcher_get_type() -> GType;
14560    #[cfg(feature = "v4_10")]
14561    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14562    pub fn gtk_file_launcher_new(file: *mut gio::GFile) -> *mut GtkFileLauncher;
14563    #[cfg(feature = "v4_12")]
14564    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14565    pub fn gtk_file_launcher_get_always_ask(self_: *mut GtkFileLauncher) -> gboolean;
14566    #[cfg(feature = "v4_10")]
14567    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14568    pub fn gtk_file_launcher_get_file(self_: *mut GtkFileLauncher) -> *mut gio::GFile;
14569    #[cfg(feature = "v4_14")]
14570    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14571    pub fn gtk_file_launcher_get_writable(self_: *mut GtkFileLauncher) -> gboolean;
14572    #[cfg(feature = "v4_10")]
14573    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14574    pub fn gtk_file_launcher_launch(
14575        self_: *mut GtkFileLauncher,
14576        parent: *mut GtkWindow,
14577        cancellable: *mut gio::GCancellable,
14578        callback: gio::GAsyncReadyCallback,
14579        user_data: gpointer,
14580    );
14581    #[cfg(feature = "v4_10")]
14582    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14583    pub fn gtk_file_launcher_launch_finish(
14584        self_: *mut GtkFileLauncher,
14585        result: *mut gio::GAsyncResult,
14586        error: *mut *mut glib::GError,
14587    ) -> gboolean;
14588    #[cfg(feature = "v4_10")]
14589    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14590    pub fn gtk_file_launcher_open_containing_folder(
14591        self_: *mut GtkFileLauncher,
14592        parent: *mut GtkWindow,
14593        cancellable: *mut gio::GCancellable,
14594        callback: gio::GAsyncReadyCallback,
14595        user_data: gpointer,
14596    );
14597    #[cfg(feature = "v4_10")]
14598    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14599    pub fn gtk_file_launcher_open_containing_folder_finish(
14600        self_: *mut GtkFileLauncher,
14601        result: *mut gio::GAsyncResult,
14602        error: *mut *mut glib::GError,
14603    ) -> gboolean;
14604    #[cfg(feature = "v4_12")]
14605    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14606    pub fn gtk_file_launcher_set_always_ask(self_: *mut GtkFileLauncher, always_ask: gboolean);
14607    #[cfg(feature = "v4_10")]
14608    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14609    pub fn gtk_file_launcher_set_file(self_: *mut GtkFileLauncher, file: *mut gio::GFile);
14610    #[cfg(feature = "v4_14")]
14611    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
14612    pub fn gtk_file_launcher_set_writable(self_: *mut GtkFileLauncher, writable: gboolean);
14613
14614    //=========================================================================
14615    // GtkFilter
14616    //=========================================================================
14617    pub fn gtk_filter_get_type() -> GType;
14618    pub fn gtk_filter_changed(self_: *mut GtkFilter, change: GtkFilterChange);
14619    pub fn gtk_filter_get_strictness(self_: *mut GtkFilter) -> GtkFilterMatch;
14620    pub fn gtk_filter_match(self_: *mut GtkFilter, item: *mut gobject::GObject) -> gboolean;
14621
14622    //=========================================================================
14623    // GtkFilterListModel
14624    //=========================================================================
14625    pub fn gtk_filter_list_model_get_type() -> GType;
14626    pub fn gtk_filter_list_model_new(
14627        model: *mut gio::GListModel,
14628        filter: *mut GtkFilter,
14629    ) -> *mut GtkFilterListModel;
14630    pub fn gtk_filter_list_model_get_filter(self_: *mut GtkFilterListModel) -> *mut GtkFilter;
14631    pub fn gtk_filter_list_model_get_incremental(self_: *mut GtkFilterListModel) -> gboolean;
14632    pub fn gtk_filter_list_model_get_model(self_: *mut GtkFilterListModel) -> *mut gio::GListModel;
14633    pub fn gtk_filter_list_model_get_pending(self_: *mut GtkFilterListModel) -> c_uint;
14634    #[cfg(feature = "v4_20")]
14635    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14636    pub fn gtk_filter_list_model_get_watch_items(self_: *mut GtkFilterListModel) -> gboolean;
14637    pub fn gtk_filter_list_model_set_filter(self_: *mut GtkFilterListModel, filter: *mut GtkFilter);
14638    pub fn gtk_filter_list_model_set_incremental(
14639        self_: *mut GtkFilterListModel,
14640        incremental: gboolean,
14641    );
14642    pub fn gtk_filter_list_model_set_model(
14643        self_: *mut GtkFilterListModel,
14644        model: *mut gio::GListModel,
14645    );
14646    #[cfg(feature = "v4_20")]
14647    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
14648    pub fn gtk_filter_list_model_set_watch_items(
14649        self_: *mut GtkFilterListModel,
14650        watch_items: gboolean,
14651    );
14652
14653    //=========================================================================
14654    // GtkFixed
14655    //=========================================================================
14656    pub fn gtk_fixed_get_type() -> GType;
14657    pub fn gtk_fixed_new() -> *mut GtkWidget;
14658    pub fn gtk_fixed_get_child_position(
14659        fixed: *mut GtkFixed,
14660        widget: *mut GtkWidget,
14661        x: *mut c_double,
14662        y: *mut c_double,
14663    );
14664    pub fn gtk_fixed_get_child_transform(
14665        fixed: *mut GtkFixed,
14666        widget: *mut GtkWidget,
14667    ) -> *mut gsk::GskTransform;
14668    pub fn gtk_fixed_move(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14669    pub fn gtk_fixed_put(fixed: *mut GtkFixed, widget: *mut GtkWidget, x: c_double, y: c_double);
14670    pub fn gtk_fixed_remove(fixed: *mut GtkFixed, widget: *mut GtkWidget);
14671    pub fn gtk_fixed_set_child_transform(
14672        fixed: *mut GtkFixed,
14673        widget: *mut GtkWidget,
14674        transform: *mut gsk::GskTransform,
14675    );
14676
14677    //=========================================================================
14678    // GtkFixedLayout
14679    //=========================================================================
14680    pub fn gtk_fixed_layout_get_type() -> GType;
14681    pub fn gtk_fixed_layout_new() -> *mut GtkLayoutManager;
14682
14683    //=========================================================================
14684    // GtkFixedLayoutChild
14685    //=========================================================================
14686    pub fn gtk_fixed_layout_child_get_type() -> GType;
14687    pub fn gtk_fixed_layout_child_get_transform(
14688        child: *mut GtkFixedLayoutChild,
14689    ) -> *mut gsk::GskTransform;
14690    pub fn gtk_fixed_layout_child_set_transform(
14691        child: *mut GtkFixedLayoutChild,
14692        transform: *mut gsk::GskTransform,
14693    );
14694
14695    //=========================================================================
14696    // GtkFlattenListModel
14697    //=========================================================================
14698    pub fn gtk_flatten_list_model_get_type() -> GType;
14699    pub fn gtk_flatten_list_model_new(model: *mut gio::GListModel) -> *mut GtkFlattenListModel;
14700    pub fn gtk_flatten_list_model_get_model(
14701        self_: *mut GtkFlattenListModel,
14702    ) -> *mut gio::GListModel;
14703    pub fn gtk_flatten_list_model_get_model_for_item(
14704        self_: *mut GtkFlattenListModel,
14705        position: c_uint,
14706    ) -> *mut gio::GListModel;
14707    pub fn gtk_flatten_list_model_set_model(
14708        self_: *mut GtkFlattenListModel,
14709        model: *mut gio::GListModel,
14710    );
14711
14712    //=========================================================================
14713    // GtkFlowBox
14714    //=========================================================================
14715    pub fn gtk_flow_box_get_type() -> GType;
14716    pub fn gtk_flow_box_new() -> *mut GtkWidget;
14717    #[cfg(feature = "v4_6")]
14718    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14719    pub fn gtk_flow_box_append(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14720    pub fn gtk_flow_box_bind_model(
14721        box_: *mut GtkFlowBox,
14722        model: *mut gio::GListModel,
14723        create_widget_func: GtkFlowBoxCreateWidgetFunc,
14724        user_data: gpointer,
14725        user_data_free_func: glib::GDestroyNotify,
14726    );
14727    pub fn gtk_flow_box_get_activate_on_single_click(box_: *mut GtkFlowBox) -> gboolean;
14728    pub fn gtk_flow_box_get_child_at_index(
14729        box_: *mut GtkFlowBox,
14730        idx: c_int,
14731    ) -> *mut GtkFlowBoxChild;
14732    pub fn gtk_flow_box_get_child_at_pos(
14733        box_: *mut GtkFlowBox,
14734        x: c_int,
14735        y: c_int,
14736    ) -> *mut GtkFlowBoxChild;
14737    pub fn gtk_flow_box_get_column_spacing(box_: *mut GtkFlowBox) -> c_uint;
14738    pub fn gtk_flow_box_get_homogeneous(box_: *mut GtkFlowBox) -> gboolean;
14739    pub fn gtk_flow_box_get_max_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14740    pub fn gtk_flow_box_get_min_children_per_line(box_: *mut GtkFlowBox) -> c_uint;
14741    pub fn gtk_flow_box_get_row_spacing(box_: *mut GtkFlowBox) -> c_uint;
14742    pub fn gtk_flow_box_get_selected_children(box_: *mut GtkFlowBox) -> *mut glib::GList;
14743    pub fn gtk_flow_box_get_selection_mode(box_: *mut GtkFlowBox) -> GtkSelectionMode;
14744    pub fn gtk_flow_box_insert(box_: *mut GtkFlowBox, widget: *mut GtkWidget, position: c_int);
14745    pub fn gtk_flow_box_invalidate_filter(box_: *mut GtkFlowBox);
14746    pub fn gtk_flow_box_invalidate_sort(box_: *mut GtkFlowBox);
14747    #[cfg(feature = "v4_6")]
14748    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
14749    pub fn gtk_flow_box_prepend(self_: *mut GtkFlowBox, child: *mut GtkWidget);
14750    pub fn gtk_flow_box_remove(box_: *mut GtkFlowBox, widget: *mut GtkWidget);
14751    #[cfg(feature = "v4_12")]
14752    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
14753    pub fn gtk_flow_box_remove_all(box_: *mut GtkFlowBox);
14754    pub fn gtk_flow_box_select_all(box_: *mut GtkFlowBox);
14755    pub fn gtk_flow_box_select_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14756    pub fn gtk_flow_box_selected_foreach(
14757        box_: *mut GtkFlowBox,
14758        func: GtkFlowBoxForeachFunc,
14759        data: gpointer,
14760    );
14761    pub fn gtk_flow_box_set_activate_on_single_click(box_: *mut GtkFlowBox, single: gboolean);
14762    pub fn gtk_flow_box_set_column_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14763    pub fn gtk_flow_box_set_filter_func(
14764        box_: *mut GtkFlowBox,
14765        filter_func: GtkFlowBoxFilterFunc,
14766        user_data: gpointer,
14767        destroy: glib::GDestroyNotify,
14768    );
14769    pub fn gtk_flow_box_set_hadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14770    pub fn gtk_flow_box_set_homogeneous(box_: *mut GtkFlowBox, homogeneous: gboolean);
14771    pub fn gtk_flow_box_set_max_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14772    pub fn gtk_flow_box_set_min_children_per_line(box_: *mut GtkFlowBox, n_children: c_uint);
14773    pub fn gtk_flow_box_set_row_spacing(box_: *mut GtkFlowBox, spacing: c_uint);
14774    pub fn gtk_flow_box_set_selection_mode(box_: *mut GtkFlowBox, mode: GtkSelectionMode);
14775    pub fn gtk_flow_box_set_sort_func(
14776        box_: *mut GtkFlowBox,
14777        sort_func: GtkFlowBoxSortFunc,
14778        user_data: gpointer,
14779        destroy: glib::GDestroyNotify,
14780    );
14781    pub fn gtk_flow_box_set_vadjustment(box_: *mut GtkFlowBox, adjustment: *mut GtkAdjustment);
14782    pub fn gtk_flow_box_unselect_all(box_: *mut GtkFlowBox);
14783    pub fn gtk_flow_box_unselect_child(box_: *mut GtkFlowBox, child: *mut GtkFlowBoxChild);
14784
14785    //=========================================================================
14786    // GtkFlowBoxChild
14787    //=========================================================================
14788    pub fn gtk_flow_box_child_get_type() -> GType;
14789    pub fn gtk_flow_box_child_new() -> *mut GtkWidget;
14790    pub fn gtk_flow_box_child_changed(child: *mut GtkFlowBoxChild);
14791    pub fn gtk_flow_box_child_get_child(self_: *mut GtkFlowBoxChild) -> *mut GtkWidget;
14792    pub fn gtk_flow_box_child_get_index(child: *mut GtkFlowBoxChild) -> c_int;
14793    pub fn gtk_flow_box_child_is_selected(child: *mut GtkFlowBoxChild) -> gboolean;
14794    pub fn gtk_flow_box_child_set_child(self_: *mut GtkFlowBoxChild, child: *mut GtkWidget);
14795
14796    //=========================================================================
14797    // GtkFontButton
14798    //=========================================================================
14799    pub fn gtk_font_button_get_type() -> GType;
14800    pub fn gtk_font_button_new() -> *mut GtkWidget;
14801    pub fn gtk_font_button_new_with_font(fontname: *const c_char) -> *mut GtkWidget;
14802    pub fn gtk_font_button_get_modal(font_button: *mut GtkFontButton) -> gboolean;
14803    pub fn gtk_font_button_get_title(font_button: *mut GtkFontButton) -> *const c_char;
14804    pub fn gtk_font_button_get_use_font(font_button: *mut GtkFontButton) -> gboolean;
14805    pub fn gtk_font_button_get_use_size(font_button: *mut GtkFontButton) -> gboolean;
14806    pub fn gtk_font_button_set_modal(font_button: *mut GtkFontButton, modal: gboolean);
14807    pub fn gtk_font_button_set_title(font_button: *mut GtkFontButton, title: *const c_char);
14808    pub fn gtk_font_button_set_use_font(font_button: *mut GtkFontButton, use_font: gboolean);
14809    pub fn gtk_font_button_set_use_size(font_button: *mut GtkFontButton, use_size: gboolean);
14810
14811    //=========================================================================
14812    // GtkFontChooserDialog
14813    //=========================================================================
14814    pub fn gtk_font_chooser_dialog_get_type() -> GType;
14815    pub fn gtk_font_chooser_dialog_new(
14816        title: *const c_char,
14817        parent: *mut GtkWindow,
14818    ) -> *mut GtkWidget;
14819
14820    //=========================================================================
14821    // GtkFontChooserWidget
14822    //=========================================================================
14823    pub fn gtk_font_chooser_widget_get_type() -> GType;
14824    pub fn gtk_font_chooser_widget_new() -> *mut GtkWidget;
14825
14826    //=========================================================================
14827    // GtkFontDialog
14828    //=========================================================================
14829    #[cfg(feature = "v4_10")]
14830    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14831    pub fn gtk_font_dialog_get_type() -> GType;
14832    #[cfg(feature = "v4_10")]
14833    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14834    pub fn gtk_font_dialog_new() -> *mut GtkFontDialog;
14835    #[cfg(feature = "v4_10")]
14836    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14837    pub fn gtk_font_dialog_choose_face(
14838        self_: *mut GtkFontDialog,
14839        parent: *mut GtkWindow,
14840        initial_value: *mut pango::PangoFontFace,
14841        cancellable: *mut gio::GCancellable,
14842        callback: gio::GAsyncReadyCallback,
14843        user_data: gpointer,
14844    );
14845    #[cfg(feature = "v4_10")]
14846    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14847    pub fn gtk_font_dialog_choose_face_finish(
14848        self_: *mut GtkFontDialog,
14849        result: *mut gio::GAsyncResult,
14850        error: *mut *mut glib::GError,
14851    ) -> *mut pango::PangoFontFace;
14852    #[cfg(feature = "v4_10")]
14853    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14854    pub fn gtk_font_dialog_choose_family(
14855        self_: *mut GtkFontDialog,
14856        parent: *mut GtkWindow,
14857        initial_value: *mut pango::PangoFontFamily,
14858        cancellable: *mut gio::GCancellable,
14859        callback: gio::GAsyncReadyCallback,
14860        user_data: gpointer,
14861    );
14862    #[cfg(feature = "v4_10")]
14863    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14864    pub fn gtk_font_dialog_choose_family_finish(
14865        self_: *mut GtkFontDialog,
14866        result: *mut gio::GAsyncResult,
14867        error: *mut *mut glib::GError,
14868    ) -> *mut pango::PangoFontFamily;
14869    #[cfg(feature = "v4_10")]
14870    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14871    pub fn gtk_font_dialog_choose_font(
14872        self_: *mut GtkFontDialog,
14873        parent: *mut GtkWindow,
14874        initial_value: *mut pango::PangoFontDescription,
14875        cancellable: *mut gio::GCancellable,
14876        callback: gio::GAsyncReadyCallback,
14877        user_data: gpointer,
14878    );
14879    #[cfg(feature = "v4_10")]
14880    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14881    pub fn gtk_font_dialog_choose_font_and_features(
14882        self_: *mut GtkFontDialog,
14883        parent: *mut GtkWindow,
14884        initial_value: *mut pango::PangoFontDescription,
14885        cancellable: *mut gio::GCancellable,
14886        callback: gio::GAsyncReadyCallback,
14887        user_data: gpointer,
14888    );
14889    #[cfg(feature = "v4_10")]
14890    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14891    pub fn gtk_font_dialog_choose_font_and_features_finish(
14892        self_: *mut GtkFontDialog,
14893        result: *mut gio::GAsyncResult,
14894        font_desc: *mut *mut pango::PangoFontDescription,
14895        font_features: *mut *mut c_char,
14896        language: *mut *mut pango::PangoLanguage,
14897        error: *mut *mut glib::GError,
14898    ) -> gboolean;
14899    #[cfg(feature = "v4_10")]
14900    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14901    pub fn gtk_font_dialog_choose_font_finish(
14902        self_: *mut GtkFontDialog,
14903        result: *mut gio::GAsyncResult,
14904        error: *mut *mut glib::GError,
14905    ) -> *mut pango::PangoFontDescription;
14906    #[cfg(feature = "v4_10")]
14907    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14908    pub fn gtk_font_dialog_get_filter(self_: *mut GtkFontDialog) -> *mut GtkFilter;
14909    #[cfg(feature = "v4_10")]
14910    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14911    pub fn gtk_font_dialog_get_font_map(self_: *mut GtkFontDialog) -> *mut pango::PangoFontMap;
14912    #[cfg(feature = "v4_10")]
14913    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14914    pub fn gtk_font_dialog_get_language(self_: *mut GtkFontDialog) -> *mut pango::PangoLanguage;
14915    #[cfg(feature = "v4_10")]
14916    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14917    pub fn gtk_font_dialog_get_modal(self_: *mut GtkFontDialog) -> gboolean;
14918    #[cfg(feature = "v4_10")]
14919    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14920    pub fn gtk_font_dialog_get_title(self_: *mut GtkFontDialog) -> *const c_char;
14921    #[cfg(feature = "v4_10")]
14922    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14923    pub fn gtk_font_dialog_set_filter(self_: *mut GtkFontDialog, filter: *mut GtkFilter);
14924    #[cfg(feature = "v4_10")]
14925    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14926    pub fn gtk_font_dialog_set_font_map(
14927        self_: *mut GtkFontDialog,
14928        fontmap: *mut pango::PangoFontMap,
14929    );
14930    #[cfg(feature = "v4_10")]
14931    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14932    pub fn gtk_font_dialog_set_language(
14933        self_: *mut GtkFontDialog,
14934        language: *mut pango::PangoLanguage,
14935    );
14936    #[cfg(feature = "v4_10")]
14937    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14938    pub fn gtk_font_dialog_set_modal(self_: *mut GtkFontDialog, modal: gboolean);
14939    #[cfg(feature = "v4_10")]
14940    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14941    pub fn gtk_font_dialog_set_title(self_: *mut GtkFontDialog, title: *const c_char);
14942
14943    //=========================================================================
14944    // GtkFontDialogButton
14945    //=========================================================================
14946    #[cfg(feature = "v4_10")]
14947    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14948    pub fn gtk_font_dialog_button_get_type() -> GType;
14949    #[cfg(feature = "v4_10")]
14950    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14951    pub fn gtk_font_dialog_button_new(dialog: *mut GtkFontDialog) -> *mut GtkWidget;
14952    #[cfg(feature = "v4_10")]
14953    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14954    pub fn gtk_font_dialog_button_get_dialog(self_: *mut GtkFontDialogButton)
14955    -> *mut GtkFontDialog;
14956    #[cfg(feature = "v4_10")]
14957    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14958    pub fn gtk_font_dialog_button_get_font_desc(
14959        self_: *mut GtkFontDialogButton,
14960    ) -> *mut pango::PangoFontDescription;
14961    #[cfg(feature = "v4_10")]
14962    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14963    pub fn gtk_font_dialog_button_get_font_features(
14964        self_: *mut GtkFontDialogButton,
14965    ) -> *const c_char;
14966    #[cfg(feature = "v4_10")]
14967    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14968    pub fn gtk_font_dialog_button_get_language(
14969        self_: *mut GtkFontDialogButton,
14970    ) -> *mut pango::PangoLanguage;
14971    #[cfg(feature = "v4_10")]
14972    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14973    pub fn gtk_font_dialog_button_get_level(self_: *mut GtkFontDialogButton) -> GtkFontLevel;
14974    #[cfg(feature = "v4_10")]
14975    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14976    pub fn gtk_font_dialog_button_get_use_font(self_: *mut GtkFontDialogButton) -> gboolean;
14977    #[cfg(feature = "v4_10")]
14978    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14979    pub fn gtk_font_dialog_button_get_use_size(self_: *mut GtkFontDialogButton) -> gboolean;
14980    #[cfg(feature = "v4_10")]
14981    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14982    pub fn gtk_font_dialog_button_set_dialog(
14983        self_: *mut GtkFontDialogButton,
14984        dialog: *mut GtkFontDialog,
14985    );
14986    #[cfg(feature = "v4_10")]
14987    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14988    pub fn gtk_font_dialog_button_set_font_desc(
14989        self_: *mut GtkFontDialogButton,
14990        font_desc: *const pango::PangoFontDescription,
14991    );
14992    #[cfg(feature = "v4_10")]
14993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
14994    pub fn gtk_font_dialog_button_set_font_features(
14995        self_: *mut GtkFontDialogButton,
14996        font_features: *const c_char,
14997    );
14998    #[cfg(feature = "v4_10")]
14999    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15000    pub fn gtk_font_dialog_button_set_language(
15001        self_: *mut GtkFontDialogButton,
15002        language: *mut pango::PangoLanguage,
15003    );
15004    #[cfg(feature = "v4_10")]
15005    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15006    pub fn gtk_font_dialog_button_set_level(self_: *mut GtkFontDialogButton, level: GtkFontLevel);
15007    #[cfg(feature = "v4_10")]
15008    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15009    pub fn gtk_font_dialog_button_set_use_font(self_: *mut GtkFontDialogButton, use_font: gboolean);
15010    #[cfg(feature = "v4_10")]
15011    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15012    pub fn gtk_font_dialog_button_set_use_size(self_: *mut GtkFontDialogButton, use_size: gboolean);
15013
15014    //=========================================================================
15015    // GtkFrame
15016    //=========================================================================
15017    pub fn gtk_frame_get_type() -> GType;
15018    pub fn gtk_frame_new(label: *const c_char) -> *mut GtkWidget;
15019    pub fn gtk_frame_get_child(frame: *mut GtkFrame) -> *mut GtkWidget;
15020    pub fn gtk_frame_get_label(frame: *mut GtkFrame) -> *const c_char;
15021    pub fn gtk_frame_get_label_align(frame: *mut GtkFrame) -> c_float;
15022    pub fn gtk_frame_get_label_widget(frame: *mut GtkFrame) -> *mut GtkWidget;
15023    pub fn gtk_frame_set_child(frame: *mut GtkFrame, child: *mut GtkWidget);
15024    pub fn gtk_frame_set_label(frame: *mut GtkFrame, label: *const c_char);
15025    pub fn gtk_frame_set_label_align(frame: *mut GtkFrame, xalign: c_float);
15026    pub fn gtk_frame_set_label_widget(frame: *mut GtkFrame, label_widget: *mut GtkWidget);
15027
15028    //=========================================================================
15029    // GtkGLArea
15030    //=========================================================================
15031    pub fn gtk_gl_area_get_type() -> GType;
15032    pub fn gtk_gl_area_new() -> *mut GtkWidget;
15033    pub fn gtk_gl_area_attach_buffers(area: *mut GtkGLArea);
15034    #[cfg(feature = "v4_12")]
15035    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15036    pub fn gtk_gl_area_get_allowed_apis(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
15037    #[cfg(feature = "v4_12")]
15038    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15039    pub fn gtk_gl_area_get_api(area: *mut GtkGLArea) -> gdk::GdkGLAPI;
15040    pub fn gtk_gl_area_get_auto_render(area: *mut GtkGLArea) -> gboolean;
15041    pub fn gtk_gl_area_get_context(area: *mut GtkGLArea) -> *mut gdk::GdkGLContext;
15042    pub fn gtk_gl_area_get_error(area: *mut GtkGLArea) -> *mut glib::GError;
15043    pub fn gtk_gl_area_get_has_depth_buffer(area: *mut GtkGLArea) -> gboolean;
15044    pub fn gtk_gl_area_get_has_stencil_buffer(area: *mut GtkGLArea) -> gboolean;
15045    pub fn gtk_gl_area_get_required_version(
15046        area: *mut GtkGLArea,
15047        major: *mut c_int,
15048        minor: *mut c_int,
15049    );
15050    pub fn gtk_gl_area_get_use_es(area: *mut GtkGLArea) -> gboolean;
15051    pub fn gtk_gl_area_make_current(area: *mut GtkGLArea);
15052    pub fn gtk_gl_area_queue_render(area: *mut GtkGLArea);
15053    #[cfg(feature = "v4_12")]
15054    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15055    pub fn gtk_gl_area_set_allowed_apis(area: *mut GtkGLArea, apis: gdk::GdkGLAPI);
15056    pub fn gtk_gl_area_set_auto_render(area: *mut GtkGLArea, auto_render: gboolean);
15057    pub fn gtk_gl_area_set_error(area: *mut GtkGLArea, error: *const glib::GError);
15058    pub fn gtk_gl_area_set_has_depth_buffer(area: *mut GtkGLArea, has_depth_buffer: gboolean);
15059    pub fn gtk_gl_area_set_has_stencil_buffer(area: *mut GtkGLArea, has_stencil_buffer: gboolean);
15060    pub fn gtk_gl_area_set_required_version(area: *mut GtkGLArea, major: c_int, minor: c_int);
15061    pub fn gtk_gl_area_set_use_es(area: *mut GtkGLArea, use_es: gboolean);
15062
15063    //=========================================================================
15064    // GtkGesture
15065    //=========================================================================
15066    pub fn gtk_gesture_get_type() -> GType;
15067    pub fn gtk_gesture_get_bounding_box(
15068        gesture: *mut GtkGesture,
15069        rect: *mut gdk::GdkRectangle,
15070    ) -> gboolean;
15071    pub fn gtk_gesture_get_bounding_box_center(
15072        gesture: *mut GtkGesture,
15073        x: *mut c_double,
15074        y: *mut c_double,
15075    ) -> gboolean;
15076    pub fn gtk_gesture_get_device(gesture: *mut GtkGesture) -> *mut gdk::GdkDevice;
15077    pub fn gtk_gesture_get_group(gesture: *mut GtkGesture) -> *mut glib::GList;
15078    pub fn gtk_gesture_get_last_event(
15079        gesture: *mut GtkGesture,
15080        sequence: *mut gdk::GdkEventSequence,
15081    ) -> *mut gdk::GdkEvent;
15082    pub fn gtk_gesture_get_last_updated_sequence(
15083        gesture: *mut GtkGesture,
15084    ) -> *mut gdk::GdkEventSequence;
15085    pub fn gtk_gesture_get_point(
15086        gesture: *mut GtkGesture,
15087        sequence: *mut gdk::GdkEventSequence,
15088        x: *mut c_double,
15089        y: *mut c_double,
15090    ) -> gboolean;
15091    pub fn gtk_gesture_get_sequence_state(
15092        gesture: *mut GtkGesture,
15093        sequence: *mut gdk::GdkEventSequence,
15094    ) -> GtkEventSequenceState;
15095    pub fn gtk_gesture_get_sequences(gesture: *mut GtkGesture) -> *mut glib::GList;
15096    pub fn gtk_gesture_group(group_gesture: *mut GtkGesture, gesture: *mut GtkGesture);
15097    pub fn gtk_gesture_handles_sequence(
15098        gesture: *mut GtkGesture,
15099        sequence: *mut gdk::GdkEventSequence,
15100    ) -> gboolean;
15101    pub fn gtk_gesture_is_active(gesture: *mut GtkGesture) -> gboolean;
15102    pub fn gtk_gesture_is_grouped_with(
15103        gesture: *mut GtkGesture,
15104        other: *mut GtkGesture,
15105    ) -> gboolean;
15106    pub fn gtk_gesture_is_recognized(gesture: *mut GtkGesture) -> gboolean;
15107    pub fn gtk_gesture_set_sequence_state(
15108        gesture: *mut GtkGesture,
15109        sequence: *mut gdk::GdkEventSequence,
15110        state: GtkEventSequenceState,
15111    ) -> gboolean;
15112    pub fn gtk_gesture_set_state(
15113        gesture: *mut GtkGesture,
15114        state: GtkEventSequenceState,
15115    ) -> gboolean;
15116    pub fn gtk_gesture_ungroup(gesture: *mut GtkGesture);
15117
15118    //=========================================================================
15119    // GtkGestureClick
15120    //=========================================================================
15121    pub fn gtk_gesture_click_get_type() -> GType;
15122    pub fn gtk_gesture_click_new() -> *mut GtkGesture;
15123
15124    //=========================================================================
15125    // GtkGestureDrag
15126    //=========================================================================
15127    pub fn gtk_gesture_drag_get_type() -> GType;
15128    pub fn gtk_gesture_drag_new() -> *mut GtkGesture;
15129    pub fn gtk_gesture_drag_get_offset(
15130        gesture: *mut GtkGestureDrag,
15131        x: *mut c_double,
15132        y: *mut c_double,
15133    ) -> gboolean;
15134    pub fn gtk_gesture_drag_get_start_point(
15135        gesture: *mut GtkGestureDrag,
15136        x: *mut c_double,
15137        y: *mut c_double,
15138    ) -> gboolean;
15139
15140    //=========================================================================
15141    // GtkGestureLongPress
15142    //=========================================================================
15143    pub fn gtk_gesture_long_press_get_type() -> GType;
15144    pub fn gtk_gesture_long_press_new() -> *mut GtkGesture;
15145    pub fn gtk_gesture_long_press_get_delay_factor(gesture: *mut GtkGestureLongPress) -> c_double;
15146    pub fn gtk_gesture_long_press_set_delay_factor(
15147        gesture: *mut GtkGestureLongPress,
15148        delay_factor: c_double,
15149    );
15150
15151    //=========================================================================
15152    // GtkGesturePan
15153    //=========================================================================
15154    pub fn gtk_gesture_pan_get_type() -> GType;
15155    pub fn gtk_gesture_pan_new(orientation: GtkOrientation) -> *mut GtkGesture;
15156    pub fn gtk_gesture_pan_get_orientation(gesture: *mut GtkGesturePan) -> GtkOrientation;
15157    pub fn gtk_gesture_pan_set_orientation(
15158        gesture: *mut GtkGesturePan,
15159        orientation: GtkOrientation,
15160    );
15161
15162    //=========================================================================
15163    // GtkGestureRotate
15164    //=========================================================================
15165    pub fn gtk_gesture_rotate_get_type() -> GType;
15166    pub fn gtk_gesture_rotate_new() -> *mut GtkGesture;
15167    pub fn gtk_gesture_rotate_get_angle_delta(gesture: *mut GtkGestureRotate) -> c_double;
15168
15169    //=========================================================================
15170    // GtkGestureSingle
15171    //=========================================================================
15172    pub fn gtk_gesture_single_get_type() -> GType;
15173    pub fn gtk_gesture_single_get_button(gesture: *mut GtkGestureSingle) -> c_uint;
15174    pub fn gtk_gesture_single_get_current_button(gesture: *mut GtkGestureSingle) -> c_uint;
15175    pub fn gtk_gesture_single_get_current_sequence(
15176        gesture: *mut GtkGestureSingle,
15177    ) -> *mut gdk::GdkEventSequence;
15178    pub fn gtk_gesture_single_get_exclusive(gesture: *mut GtkGestureSingle) -> gboolean;
15179    pub fn gtk_gesture_single_get_touch_only(gesture: *mut GtkGestureSingle) -> gboolean;
15180    pub fn gtk_gesture_single_set_button(gesture: *mut GtkGestureSingle, button: c_uint);
15181    pub fn gtk_gesture_single_set_exclusive(gesture: *mut GtkGestureSingle, exclusive: gboolean);
15182    pub fn gtk_gesture_single_set_touch_only(gesture: *mut GtkGestureSingle, touch_only: gboolean);
15183
15184    //=========================================================================
15185    // GtkGestureStylus
15186    //=========================================================================
15187    pub fn gtk_gesture_stylus_get_type() -> GType;
15188    pub fn gtk_gesture_stylus_new() -> *mut GtkGesture;
15189    pub fn gtk_gesture_stylus_get_axes(
15190        gesture: *mut GtkGestureStylus,
15191        axes: *mut gdk::GdkAxisUse,
15192        values: *mut *mut c_double,
15193    ) -> gboolean;
15194    pub fn gtk_gesture_stylus_get_axis(
15195        gesture: *mut GtkGestureStylus,
15196        axis: gdk::GdkAxisUse,
15197        value: *mut c_double,
15198    ) -> gboolean;
15199    pub fn gtk_gesture_stylus_get_backlog(
15200        gesture: *mut GtkGestureStylus,
15201        backlog: *mut *mut gdk::GdkTimeCoord,
15202        n_elems: *mut c_uint,
15203    ) -> gboolean;
15204    pub fn gtk_gesture_stylus_get_device_tool(
15205        gesture: *mut GtkGestureStylus,
15206    ) -> *mut gdk::GdkDeviceTool;
15207    #[cfg(feature = "v4_10")]
15208    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15209    pub fn gtk_gesture_stylus_get_stylus_only(gesture: *mut GtkGestureStylus) -> gboolean;
15210    #[cfg(feature = "v4_10")]
15211    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
15212    pub fn gtk_gesture_stylus_set_stylus_only(
15213        gesture: *mut GtkGestureStylus,
15214        stylus_only: gboolean,
15215    );
15216
15217    //=========================================================================
15218    // GtkGestureSwipe
15219    //=========================================================================
15220    pub fn gtk_gesture_swipe_get_type() -> GType;
15221    pub fn gtk_gesture_swipe_new() -> *mut GtkGesture;
15222    pub fn gtk_gesture_swipe_get_velocity(
15223        gesture: *mut GtkGestureSwipe,
15224        velocity_x: *mut c_double,
15225        velocity_y: *mut c_double,
15226    ) -> gboolean;
15227
15228    //=========================================================================
15229    // GtkGestureZoom
15230    //=========================================================================
15231    pub fn gtk_gesture_zoom_get_type() -> GType;
15232    pub fn gtk_gesture_zoom_new() -> *mut GtkGesture;
15233    pub fn gtk_gesture_zoom_get_scale_delta(gesture: *mut GtkGestureZoom) -> c_double;
15234
15235    //=========================================================================
15236    // GtkGraphicsOffload
15237    //=========================================================================
15238    #[cfg(feature = "v4_14")]
15239    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15240    pub fn gtk_graphics_offload_get_type() -> GType;
15241    #[cfg(feature = "v4_14")]
15242    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15243    pub fn gtk_graphics_offload_new(child: *mut GtkWidget) -> *mut GtkWidget;
15244    #[cfg(feature = "v4_16")]
15245    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15246    pub fn gtk_graphics_offload_get_black_background(self_: *mut GtkGraphicsOffload) -> gboolean;
15247    #[cfg(feature = "v4_14")]
15248    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15249    pub fn gtk_graphics_offload_get_child(self_: *mut GtkGraphicsOffload) -> *mut GtkWidget;
15250    #[cfg(feature = "v4_14")]
15251    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15252    pub fn gtk_graphics_offload_get_enabled(
15253        self_: *mut GtkGraphicsOffload,
15254    ) -> GtkGraphicsOffloadEnabled;
15255    #[cfg(feature = "v4_16")]
15256    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
15257    pub fn gtk_graphics_offload_set_black_background(
15258        self_: *mut GtkGraphicsOffload,
15259        value: gboolean,
15260    );
15261    #[cfg(feature = "v4_14")]
15262    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15263    pub fn gtk_graphics_offload_set_child(self_: *mut GtkGraphicsOffload, child: *mut GtkWidget);
15264    #[cfg(feature = "v4_14")]
15265    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15266    pub fn gtk_graphics_offload_set_enabled(
15267        self_: *mut GtkGraphicsOffload,
15268        enabled: GtkGraphicsOffloadEnabled,
15269    );
15270
15271    //=========================================================================
15272    // GtkGrid
15273    //=========================================================================
15274    pub fn gtk_grid_get_type() -> GType;
15275    pub fn gtk_grid_new() -> *mut GtkWidget;
15276    pub fn gtk_grid_attach(
15277        grid: *mut GtkGrid,
15278        child: *mut GtkWidget,
15279        column: c_int,
15280        row: c_int,
15281        width: c_int,
15282        height: c_int,
15283    );
15284    pub fn gtk_grid_attach_next_to(
15285        grid: *mut GtkGrid,
15286        child: *mut GtkWidget,
15287        sibling: *mut GtkWidget,
15288        side: GtkPositionType,
15289        width: c_int,
15290        height: c_int,
15291    );
15292    pub fn gtk_grid_get_baseline_row(grid: *mut GtkGrid) -> c_int;
15293    pub fn gtk_grid_get_child_at(grid: *mut GtkGrid, column: c_int, row: c_int) -> *mut GtkWidget;
15294    pub fn gtk_grid_get_column_homogeneous(grid: *mut GtkGrid) -> gboolean;
15295    pub fn gtk_grid_get_column_spacing(grid: *mut GtkGrid) -> c_uint;
15296    pub fn gtk_grid_get_row_baseline_position(
15297        grid: *mut GtkGrid,
15298        row: c_int,
15299    ) -> GtkBaselinePosition;
15300    pub fn gtk_grid_get_row_homogeneous(grid: *mut GtkGrid) -> gboolean;
15301    pub fn gtk_grid_get_row_spacing(grid: *mut GtkGrid) -> c_uint;
15302    pub fn gtk_grid_insert_column(grid: *mut GtkGrid, position: c_int);
15303    pub fn gtk_grid_insert_next_to(
15304        grid: *mut GtkGrid,
15305        sibling: *mut GtkWidget,
15306        side: GtkPositionType,
15307    );
15308    pub fn gtk_grid_insert_row(grid: *mut GtkGrid, position: c_int);
15309    pub fn gtk_grid_query_child(
15310        grid: *mut GtkGrid,
15311        child: *mut GtkWidget,
15312        column: *mut c_int,
15313        row: *mut c_int,
15314        width: *mut c_int,
15315        height: *mut c_int,
15316    );
15317    pub fn gtk_grid_remove(grid: *mut GtkGrid, child: *mut GtkWidget);
15318    pub fn gtk_grid_remove_column(grid: *mut GtkGrid, position: c_int);
15319    pub fn gtk_grid_remove_row(grid: *mut GtkGrid, position: c_int);
15320    pub fn gtk_grid_set_baseline_row(grid: *mut GtkGrid, row: c_int);
15321    pub fn gtk_grid_set_column_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15322    pub fn gtk_grid_set_column_spacing(grid: *mut GtkGrid, spacing: c_uint);
15323    pub fn gtk_grid_set_row_baseline_position(
15324        grid: *mut GtkGrid,
15325        row: c_int,
15326        pos: GtkBaselinePosition,
15327    );
15328    pub fn gtk_grid_set_row_homogeneous(grid: *mut GtkGrid, homogeneous: gboolean);
15329    pub fn gtk_grid_set_row_spacing(grid: *mut GtkGrid, spacing: c_uint);
15330
15331    //=========================================================================
15332    // GtkGridLayout
15333    //=========================================================================
15334    pub fn gtk_grid_layout_get_type() -> GType;
15335    pub fn gtk_grid_layout_new() -> *mut GtkLayoutManager;
15336    pub fn gtk_grid_layout_get_baseline_row(grid: *mut GtkGridLayout) -> c_int;
15337    pub fn gtk_grid_layout_get_column_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15338    pub fn gtk_grid_layout_get_column_spacing(grid: *mut GtkGridLayout) -> c_uint;
15339    pub fn gtk_grid_layout_get_row_baseline_position(
15340        grid: *mut GtkGridLayout,
15341        row: c_int,
15342    ) -> GtkBaselinePosition;
15343    pub fn gtk_grid_layout_get_row_homogeneous(grid: *mut GtkGridLayout) -> gboolean;
15344    pub fn gtk_grid_layout_get_row_spacing(grid: *mut GtkGridLayout) -> c_uint;
15345    pub fn gtk_grid_layout_set_baseline_row(grid: *mut GtkGridLayout, row: c_int);
15346    pub fn gtk_grid_layout_set_column_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15347    pub fn gtk_grid_layout_set_column_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15348    pub fn gtk_grid_layout_set_row_baseline_position(
15349        grid: *mut GtkGridLayout,
15350        row: c_int,
15351        pos: GtkBaselinePosition,
15352    );
15353    pub fn gtk_grid_layout_set_row_homogeneous(grid: *mut GtkGridLayout, homogeneous: gboolean);
15354    pub fn gtk_grid_layout_set_row_spacing(grid: *mut GtkGridLayout, spacing: c_uint);
15355
15356    //=========================================================================
15357    // GtkGridLayoutChild
15358    //=========================================================================
15359    pub fn gtk_grid_layout_child_get_type() -> GType;
15360    pub fn gtk_grid_layout_child_get_column(child: *mut GtkGridLayoutChild) -> c_int;
15361    pub fn gtk_grid_layout_child_get_column_span(child: *mut GtkGridLayoutChild) -> c_int;
15362    pub fn gtk_grid_layout_child_get_row(child: *mut GtkGridLayoutChild) -> c_int;
15363    pub fn gtk_grid_layout_child_get_row_span(child: *mut GtkGridLayoutChild) -> c_int;
15364    pub fn gtk_grid_layout_child_set_column(child: *mut GtkGridLayoutChild, column: c_int);
15365    pub fn gtk_grid_layout_child_set_column_span(child: *mut GtkGridLayoutChild, span: c_int);
15366    pub fn gtk_grid_layout_child_set_row(child: *mut GtkGridLayoutChild, row: c_int);
15367    pub fn gtk_grid_layout_child_set_row_span(child: *mut GtkGridLayoutChild, span: c_int);
15368
15369    //=========================================================================
15370    // GtkGridView
15371    //=========================================================================
15372    pub fn gtk_grid_view_get_type() -> GType;
15373    pub fn gtk_grid_view_new(
15374        model: *mut GtkSelectionModel,
15375        factory: *mut GtkListItemFactory,
15376    ) -> *mut GtkWidget;
15377    pub fn gtk_grid_view_get_enable_rubberband(self_: *mut GtkGridView) -> gboolean;
15378    pub fn gtk_grid_view_get_factory(self_: *mut GtkGridView) -> *mut GtkListItemFactory;
15379    pub fn gtk_grid_view_get_max_columns(self_: *mut GtkGridView) -> c_uint;
15380    pub fn gtk_grid_view_get_min_columns(self_: *mut GtkGridView) -> c_uint;
15381    pub fn gtk_grid_view_get_model(self_: *mut GtkGridView) -> *mut GtkSelectionModel;
15382    pub fn gtk_grid_view_get_single_click_activate(self_: *mut GtkGridView) -> gboolean;
15383    #[cfg(feature = "v4_12")]
15384    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15385    pub fn gtk_grid_view_get_tab_behavior(self_: *mut GtkGridView) -> GtkListTabBehavior;
15386    #[cfg(feature = "v4_12")]
15387    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15388    pub fn gtk_grid_view_scroll_to(
15389        self_: *mut GtkGridView,
15390        pos: c_uint,
15391        flags: GtkListScrollFlags,
15392        scroll: *mut GtkScrollInfo,
15393    );
15394    pub fn gtk_grid_view_set_enable_rubberband(
15395        self_: *mut GtkGridView,
15396        enable_rubberband: gboolean,
15397    );
15398    pub fn gtk_grid_view_set_factory(self_: *mut GtkGridView, factory: *mut GtkListItemFactory);
15399    pub fn gtk_grid_view_set_max_columns(self_: *mut GtkGridView, max_columns: c_uint);
15400    pub fn gtk_grid_view_set_min_columns(self_: *mut GtkGridView, min_columns: c_uint);
15401    pub fn gtk_grid_view_set_model(self_: *mut GtkGridView, model: *mut GtkSelectionModel);
15402    pub fn gtk_grid_view_set_single_click_activate(
15403        self_: *mut GtkGridView,
15404        single_click_activate: gboolean,
15405    );
15406    #[cfg(feature = "v4_12")]
15407    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
15408    pub fn gtk_grid_view_set_tab_behavior(
15409        self_: *mut GtkGridView,
15410        tab_behavior: GtkListTabBehavior,
15411    );
15412
15413    //=========================================================================
15414    // GtkHeaderBar
15415    //=========================================================================
15416    pub fn gtk_header_bar_get_type() -> GType;
15417    pub fn gtk_header_bar_new() -> *mut GtkWidget;
15418    pub fn gtk_header_bar_get_decoration_layout(bar: *mut GtkHeaderBar) -> *const c_char;
15419    pub fn gtk_header_bar_get_show_title_buttons(bar: *mut GtkHeaderBar) -> gboolean;
15420    pub fn gtk_header_bar_get_title_widget(bar: *mut GtkHeaderBar) -> *mut GtkWidget;
15421    #[cfg(feature = "v4_18")]
15422    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15423    pub fn gtk_header_bar_get_use_native_controls(bar: *mut GtkHeaderBar) -> gboolean;
15424    pub fn gtk_header_bar_pack_end(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15425    pub fn gtk_header_bar_pack_start(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15426    pub fn gtk_header_bar_remove(bar: *mut GtkHeaderBar, child: *mut GtkWidget);
15427    pub fn gtk_header_bar_set_decoration_layout(bar: *mut GtkHeaderBar, layout: *const c_char);
15428    pub fn gtk_header_bar_set_show_title_buttons(bar: *mut GtkHeaderBar, setting: gboolean);
15429    pub fn gtk_header_bar_set_title_widget(bar: *mut GtkHeaderBar, title_widget: *mut GtkWidget);
15430    #[cfg(feature = "v4_18")]
15431    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
15432    pub fn gtk_header_bar_set_use_native_controls(bar: *mut GtkHeaderBar, setting: gboolean);
15433
15434    //=========================================================================
15435    // GtkIMContext
15436    //=========================================================================
15437    pub fn gtk_im_context_get_type() -> GType;
15438    #[cfg(feature = "v4_14")]
15439    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
15440    pub fn gtk_im_context_activate_osk(
15441        context: *mut GtkIMContext,
15442        event: *mut gdk::GdkEvent,
15443    ) -> gboolean;
15444    pub fn gtk_im_context_delete_surrounding(
15445        context: *mut GtkIMContext,
15446        offset: c_int,
15447        n_chars: c_int,
15448    ) -> gboolean;
15449    pub fn gtk_im_context_filter_key(
15450        context: *mut GtkIMContext,
15451        press: gboolean,
15452        surface: *mut gdk::GdkSurface,
15453        device: *mut gdk::GdkDevice,
15454        time: u32,
15455        keycode: c_uint,
15456        state: gdk::GdkModifierType,
15457        group: c_int,
15458    ) -> gboolean;
15459    pub fn gtk_im_context_filter_keypress(
15460        context: *mut GtkIMContext,
15461        event: *mut gdk::GdkEvent,
15462    ) -> gboolean;
15463    pub fn gtk_im_context_focus_in(context: *mut GtkIMContext);
15464    pub fn gtk_im_context_focus_out(context: *mut GtkIMContext);
15465    pub fn gtk_im_context_get_preedit_string(
15466        context: *mut GtkIMContext,
15467        str: *mut *mut c_char,
15468        attrs: *mut *mut pango::PangoAttrList,
15469        cursor_pos: *mut c_int,
15470    );
15471    pub fn gtk_im_context_get_surrounding(
15472        context: *mut GtkIMContext,
15473        text: *mut *mut c_char,
15474        cursor_index: *mut c_int,
15475    ) -> gboolean;
15476    #[cfg(feature = "v4_2")]
15477    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15478    pub fn gtk_im_context_get_surrounding_with_selection(
15479        context: *mut GtkIMContext,
15480        text: *mut *mut c_char,
15481        cursor_index: *mut c_int,
15482        anchor_index: *mut c_int,
15483    ) -> gboolean;
15484    pub fn gtk_im_context_reset(context: *mut GtkIMContext);
15485    pub fn gtk_im_context_set_client_widget(context: *mut GtkIMContext, widget: *mut GtkWidget);
15486    pub fn gtk_im_context_set_cursor_location(
15487        context: *mut GtkIMContext,
15488        area: *const gdk::GdkRectangle,
15489    );
15490    pub fn gtk_im_context_set_surrounding(
15491        context: *mut GtkIMContext,
15492        text: *const c_char,
15493        len: c_int,
15494        cursor_index: c_int,
15495    );
15496    #[cfg(feature = "v4_2")]
15497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15498    pub fn gtk_im_context_set_surrounding_with_selection(
15499        context: *mut GtkIMContext,
15500        text: *const c_char,
15501        len: c_int,
15502        cursor_index: c_int,
15503        anchor_index: c_int,
15504    );
15505    pub fn gtk_im_context_set_use_preedit(context: *mut GtkIMContext, use_preedit: gboolean);
15506
15507    //=========================================================================
15508    // GtkIMContextSimple
15509    //=========================================================================
15510    pub fn gtk_im_context_simple_get_type() -> GType;
15511    pub fn gtk_im_context_simple_new() -> *mut GtkIMContext;
15512    pub fn gtk_im_context_simple_add_compose_file(
15513        context_simple: *mut GtkIMContextSimple,
15514        compose_file: *const c_char,
15515    );
15516    pub fn gtk_im_context_simple_add_table(
15517        context_simple: *mut GtkIMContextSimple,
15518        data: *mut u16,
15519        max_seq_len: c_int,
15520        n_seqs: c_int,
15521    );
15522
15523    //=========================================================================
15524    // GtkIMMulticontext
15525    //=========================================================================
15526    pub fn gtk_im_multicontext_get_type() -> GType;
15527    pub fn gtk_im_multicontext_new() -> *mut GtkIMContext;
15528    pub fn gtk_im_multicontext_get_context_id(context: *mut GtkIMMulticontext) -> *const c_char;
15529    pub fn gtk_im_multicontext_set_context_id(
15530        context: *mut GtkIMMulticontext,
15531        context_id: *const c_char,
15532    );
15533
15534    //=========================================================================
15535    // GtkIconPaintable
15536    //=========================================================================
15537    pub fn gtk_icon_paintable_get_type() -> GType;
15538    pub fn gtk_icon_paintable_new_for_file(
15539        file: *mut gio::GFile,
15540        size: c_int,
15541        scale: c_int,
15542    ) -> *mut GtkIconPaintable;
15543    pub fn gtk_icon_paintable_get_file(self_: *mut GtkIconPaintable) -> *mut gio::GFile;
15544    pub fn gtk_icon_paintable_get_icon_name(self_: *mut GtkIconPaintable) -> *const c_char;
15545    pub fn gtk_icon_paintable_is_symbolic(self_: *mut GtkIconPaintable) -> gboolean;
15546
15547    //=========================================================================
15548    // GtkIconTheme
15549    //=========================================================================
15550    pub fn gtk_icon_theme_get_type() -> GType;
15551    pub fn gtk_icon_theme_new() -> *mut GtkIconTheme;
15552    pub fn gtk_icon_theme_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkIconTheme;
15553    pub fn gtk_icon_theme_add_resource_path(self_: *mut GtkIconTheme, path: *const c_char);
15554    pub fn gtk_icon_theme_add_search_path(self_: *mut GtkIconTheme, path: *const c_char);
15555    pub fn gtk_icon_theme_get_display(self_: *mut GtkIconTheme) -> *mut gdk::GdkDisplay;
15556    pub fn gtk_icon_theme_get_icon_names(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15557    pub fn gtk_icon_theme_get_icon_sizes(
15558        self_: *mut GtkIconTheme,
15559        icon_name: *const c_char,
15560    ) -> *mut c_int;
15561    pub fn gtk_icon_theme_get_resource_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15562    pub fn gtk_icon_theme_get_search_path(self_: *mut GtkIconTheme) -> *mut *mut c_char;
15563    pub fn gtk_icon_theme_get_theme_name(self_: *mut GtkIconTheme) -> *mut c_char;
15564    #[cfg(feature = "v4_2")]
15565    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
15566    pub fn gtk_icon_theme_has_gicon(self_: *mut GtkIconTheme, gicon: *mut gio::GIcon) -> gboolean;
15567    pub fn gtk_icon_theme_has_icon(self_: *mut GtkIconTheme, icon_name: *const c_char) -> gboolean;
15568    pub fn gtk_icon_theme_lookup_by_gicon(
15569        self_: *mut GtkIconTheme,
15570        icon: *mut gio::GIcon,
15571        size: c_int,
15572        scale: c_int,
15573        direction: GtkTextDirection,
15574        flags: GtkIconLookupFlags,
15575    ) -> *mut GtkIconPaintable;
15576    pub fn gtk_icon_theme_lookup_icon(
15577        self_: *mut GtkIconTheme,
15578        icon_name: *const c_char,
15579        fallbacks: *mut *const c_char,
15580        size: c_int,
15581        scale: c_int,
15582        direction: GtkTextDirection,
15583        flags: GtkIconLookupFlags,
15584    ) -> *mut GtkIconPaintable;
15585    pub fn gtk_icon_theme_set_resource_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15586    pub fn gtk_icon_theme_set_search_path(self_: *mut GtkIconTheme, path: *const *const c_char);
15587    pub fn gtk_icon_theme_set_theme_name(self_: *mut GtkIconTheme, theme_name: *const c_char);
15588
15589    //=========================================================================
15590    // GtkIconView
15591    //=========================================================================
15592    pub fn gtk_icon_view_get_type() -> GType;
15593    pub fn gtk_icon_view_new() -> *mut GtkWidget;
15594    pub fn gtk_icon_view_new_with_area(area: *mut GtkCellArea) -> *mut GtkWidget;
15595    pub fn gtk_icon_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
15596    pub fn gtk_icon_view_create_drag_icon(
15597        icon_view: *mut GtkIconView,
15598        path: *mut GtkTreePath,
15599    ) -> *mut gdk::GdkPaintable;
15600    pub fn gtk_icon_view_enable_model_drag_dest(
15601        icon_view: *mut GtkIconView,
15602        formats: *mut gdk::GdkContentFormats,
15603        actions: gdk::GdkDragAction,
15604    );
15605    pub fn gtk_icon_view_enable_model_drag_source(
15606        icon_view: *mut GtkIconView,
15607        start_button_mask: gdk::GdkModifierType,
15608        formats: *mut gdk::GdkContentFormats,
15609        actions: gdk::GdkDragAction,
15610    );
15611    pub fn gtk_icon_view_get_activate_on_single_click(icon_view: *mut GtkIconView) -> gboolean;
15612    pub fn gtk_icon_view_get_cell_rect(
15613        icon_view: *mut GtkIconView,
15614        path: *mut GtkTreePath,
15615        cell: *mut GtkCellRenderer,
15616        rect: *mut gdk::GdkRectangle,
15617    ) -> gboolean;
15618    pub fn gtk_icon_view_get_column_spacing(icon_view: *mut GtkIconView) -> c_int;
15619    pub fn gtk_icon_view_get_columns(icon_view: *mut GtkIconView) -> c_int;
15620    pub fn gtk_icon_view_get_cursor(
15621        icon_view: *mut GtkIconView,
15622        path: *mut *mut GtkTreePath,
15623        cell: *mut *mut GtkCellRenderer,
15624    ) -> gboolean;
15625    pub fn gtk_icon_view_get_dest_item_at_pos(
15626        icon_view: *mut GtkIconView,
15627        drag_x: c_int,
15628        drag_y: c_int,
15629        path: *mut *mut GtkTreePath,
15630        pos: *mut GtkIconViewDropPosition,
15631    ) -> gboolean;
15632    pub fn gtk_icon_view_get_drag_dest_item(
15633        icon_view: *mut GtkIconView,
15634        path: *mut *mut GtkTreePath,
15635        pos: *mut GtkIconViewDropPosition,
15636    );
15637    pub fn gtk_icon_view_get_item_at_pos(
15638        icon_view: *mut GtkIconView,
15639        x: c_int,
15640        y: c_int,
15641        path: *mut *mut GtkTreePath,
15642        cell: *mut *mut GtkCellRenderer,
15643    ) -> gboolean;
15644    pub fn gtk_icon_view_get_item_column(
15645        icon_view: *mut GtkIconView,
15646        path: *mut GtkTreePath,
15647    ) -> c_int;
15648    pub fn gtk_icon_view_get_item_orientation(icon_view: *mut GtkIconView) -> GtkOrientation;
15649    pub fn gtk_icon_view_get_item_padding(icon_view: *mut GtkIconView) -> c_int;
15650    pub fn gtk_icon_view_get_item_row(icon_view: *mut GtkIconView, path: *mut GtkTreePath)
15651    -> c_int;
15652    pub fn gtk_icon_view_get_item_width(icon_view: *mut GtkIconView) -> c_int;
15653    pub fn gtk_icon_view_get_margin(icon_view: *mut GtkIconView) -> c_int;
15654    pub fn gtk_icon_view_get_markup_column(icon_view: *mut GtkIconView) -> c_int;
15655    pub fn gtk_icon_view_get_model(icon_view: *mut GtkIconView) -> *mut GtkTreeModel;
15656    pub fn gtk_icon_view_get_path_at_pos(
15657        icon_view: *mut GtkIconView,
15658        x: c_int,
15659        y: c_int,
15660    ) -> *mut GtkTreePath;
15661    pub fn gtk_icon_view_get_pixbuf_column(icon_view: *mut GtkIconView) -> c_int;
15662    pub fn gtk_icon_view_get_reorderable(icon_view: *mut GtkIconView) -> gboolean;
15663    pub fn gtk_icon_view_get_row_spacing(icon_view: *mut GtkIconView) -> c_int;
15664    pub fn gtk_icon_view_get_selected_items(icon_view: *mut GtkIconView) -> *mut glib::GList;
15665    pub fn gtk_icon_view_get_selection_mode(icon_view: *mut GtkIconView) -> GtkSelectionMode;
15666    pub fn gtk_icon_view_get_spacing(icon_view: *mut GtkIconView) -> c_int;
15667    pub fn gtk_icon_view_get_text_column(icon_view: *mut GtkIconView) -> c_int;
15668    pub fn gtk_icon_view_get_tooltip_column(icon_view: *mut GtkIconView) -> c_int;
15669    pub fn gtk_icon_view_get_tooltip_context(
15670        icon_view: *mut GtkIconView,
15671        x: c_int,
15672        y: c_int,
15673        keyboard_tip: gboolean,
15674        model: *mut *mut GtkTreeModel,
15675        path: *mut *mut GtkTreePath,
15676        iter: *mut GtkTreeIter,
15677    ) -> gboolean;
15678    pub fn gtk_icon_view_get_visible_range(
15679        icon_view: *mut GtkIconView,
15680        start_path: *mut *mut GtkTreePath,
15681        end_path: *mut *mut GtkTreePath,
15682    ) -> gboolean;
15683    pub fn gtk_icon_view_item_activated(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15684    pub fn gtk_icon_view_path_is_selected(
15685        icon_view: *mut GtkIconView,
15686        path: *mut GtkTreePath,
15687    ) -> gboolean;
15688    pub fn gtk_icon_view_scroll_to_path(
15689        icon_view: *mut GtkIconView,
15690        path: *mut GtkTreePath,
15691        use_align: gboolean,
15692        row_align: c_float,
15693        col_align: c_float,
15694    );
15695    pub fn gtk_icon_view_select_all(icon_view: *mut GtkIconView);
15696    pub fn gtk_icon_view_select_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15697    pub fn gtk_icon_view_selected_foreach(
15698        icon_view: *mut GtkIconView,
15699        func: GtkIconViewForeachFunc,
15700        data: gpointer,
15701    );
15702    pub fn gtk_icon_view_set_activate_on_single_click(
15703        icon_view: *mut GtkIconView,
15704        single: gboolean,
15705    );
15706    pub fn gtk_icon_view_set_column_spacing(icon_view: *mut GtkIconView, column_spacing: c_int);
15707    pub fn gtk_icon_view_set_columns(icon_view: *mut GtkIconView, columns: c_int);
15708    pub fn gtk_icon_view_set_cursor(
15709        icon_view: *mut GtkIconView,
15710        path: *mut GtkTreePath,
15711        cell: *mut GtkCellRenderer,
15712        start_editing: gboolean,
15713    );
15714    pub fn gtk_icon_view_set_drag_dest_item(
15715        icon_view: *mut GtkIconView,
15716        path: *mut GtkTreePath,
15717        pos: GtkIconViewDropPosition,
15718    );
15719    pub fn gtk_icon_view_set_item_orientation(
15720        icon_view: *mut GtkIconView,
15721        orientation: GtkOrientation,
15722    );
15723    pub fn gtk_icon_view_set_item_padding(icon_view: *mut GtkIconView, item_padding: c_int);
15724    pub fn gtk_icon_view_set_item_width(icon_view: *mut GtkIconView, item_width: c_int);
15725    pub fn gtk_icon_view_set_margin(icon_view: *mut GtkIconView, margin: c_int);
15726    pub fn gtk_icon_view_set_markup_column(icon_view: *mut GtkIconView, column: c_int);
15727    pub fn gtk_icon_view_set_model(icon_view: *mut GtkIconView, model: *mut GtkTreeModel);
15728    pub fn gtk_icon_view_set_pixbuf_column(icon_view: *mut GtkIconView, column: c_int);
15729    pub fn gtk_icon_view_set_reorderable(icon_view: *mut GtkIconView, reorderable: gboolean);
15730    pub fn gtk_icon_view_set_row_spacing(icon_view: *mut GtkIconView, row_spacing: c_int);
15731    pub fn gtk_icon_view_set_selection_mode(icon_view: *mut GtkIconView, mode: GtkSelectionMode);
15732    pub fn gtk_icon_view_set_spacing(icon_view: *mut GtkIconView, spacing: c_int);
15733    pub fn gtk_icon_view_set_text_column(icon_view: *mut GtkIconView, column: c_int);
15734    pub fn gtk_icon_view_set_tooltip_cell(
15735        icon_view: *mut GtkIconView,
15736        tooltip: *mut GtkTooltip,
15737        path: *mut GtkTreePath,
15738        cell: *mut GtkCellRenderer,
15739    );
15740    pub fn gtk_icon_view_set_tooltip_column(icon_view: *mut GtkIconView, column: c_int);
15741    pub fn gtk_icon_view_set_tooltip_item(
15742        icon_view: *mut GtkIconView,
15743        tooltip: *mut GtkTooltip,
15744        path: *mut GtkTreePath,
15745    );
15746    pub fn gtk_icon_view_unselect_all(icon_view: *mut GtkIconView);
15747    pub fn gtk_icon_view_unselect_path(icon_view: *mut GtkIconView, path: *mut GtkTreePath);
15748    pub fn gtk_icon_view_unset_model_drag_dest(icon_view: *mut GtkIconView);
15749    pub fn gtk_icon_view_unset_model_drag_source(icon_view: *mut GtkIconView);
15750
15751    //=========================================================================
15752    // GtkImage
15753    //=========================================================================
15754    pub fn gtk_image_get_type() -> GType;
15755    pub fn gtk_image_new() -> *mut GtkWidget;
15756    pub fn gtk_image_new_from_file(filename: *const c_char) -> *mut GtkWidget;
15757    pub fn gtk_image_new_from_gicon(icon: *mut gio::GIcon) -> *mut GtkWidget;
15758    pub fn gtk_image_new_from_icon_name(icon_name: *const c_char) -> *mut GtkWidget;
15759    pub fn gtk_image_new_from_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
15760    pub fn gtk_image_new_from_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
15761    pub fn gtk_image_new_from_resource(resource_path: *const c_char) -> *mut GtkWidget;
15762    pub fn gtk_image_clear(image: *mut GtkImage);
15763    pub fn gtk_image_get_gicon(image: *mut GtkImage) -> *mut gio::GIcon;
15764    pub fn gtk_image_get_icon_name(image: *mut GtkImage) -> *const c_char;
15765    pub fn gtk_image_get_icon_size(image: *mut GtkImage) -> GtkIconSize;
15766    pub fn gtk_image_get_paintable(image: *mut GtkImage) -> *mut gdk::GdkPaintable;
15767    pub fn gtk_image_get_pixel_size(image: *mut GtkImage) -> c_int;
15768    pub fn gtk_image_get_storage_type(image: *mut GtkImage) -> GtkImageType;
15769    pub fn gtk_image_set_from_file(image: *mut GtkImage, filename: *const c_char);
15770    pub fn gtk_image_set_from_gicon(image: *mut GtkImage, icon: *mut gio::GIcon);
15771    pub fn gtk_image_set_from_icon_name(image: *mut GtkImage, icon_name: *const c_char);
15772    pub fn gtk_image_set_from_paintable(image: *mut GtkImage, paintable: *mut gdk::GdkPaintable);
15773    pub fn gtk_image_set_from_pixbuf(image: *mut GtkImage, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
15774    pub fn gtk_image_set_from_resource(image: *mut GtkImage, resource_path: *const c_char);
15775    pub fn gtk_image_set_icon_size(image: *mut GtkImage, icon_size: GtkIconSize);
15776    pub fn gtk_image_set_pixel_size(image: *mut GtkImage, pixel_size: c_int);
15777
15778    //=========================================================================
15779    // GtkInfoBar
15780    //=========================================================================
15781    pub fn gtk_info_bar_get_type() -> GType;
15782    pub fn gtk_info_bar_new() -> *mut GtkWidget;
15783    pub fn gtk_info_bar_new_with_buttons(first_button_text: *const c_char, ...) -> *mut GtkWidget;
15784    pub fn gtk_info_bar_add_action_widget(
15785        info_bar: *mut GtkInfoBar,
15786        child: *mut GtkWidget,
15787        response_id: GtkResponseType,
15788    );
15789    pub fn gtk_info_bar_add_button(
15790        info_bar: *mut GtkInfoBar,
15791        button_text: *const c_char,
15792        response_id: GtkResponseType,
15793    ) -> *mut GtkButton;
15794    pub fn gtk_info_bar_add_buttons(
15795        info_bar: *mut GtkInfoBar,
15796        first_button_text: *const c_char,
15797        ...
15798    );
15799    pub fn gtk_info_bar_add_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15800    pub fn gtk_info_bar_get_message_type(info_bar: *mut GtkInfoBar) -> GtkMessageType;
15801    pub fn gtk_info_bar_get_revealed(info_bar: *mut GtkInfoBar) -> gboolean;
15802    pub fn gtk_info_bar_get_show_close_button(info_bar: *mut GtkInfoBar) -> gboolean;
15803    pub fn gtk_info_bar_remove_action_widget(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15804    pub fn gtk_info_bar_remove_child(info_bar: *mut GtkInfoBar, widget: *mut GtkWidget);
15805    pub fn gtk_info_bar_response(info_bar: *mut GtkInfoBar, response_id: GtkResponseType);
15806    pub fn gtk_info_bar_set_default_response(
15807        info_bar: *mut GtkInfoBar,
15808        response_id: GtkResponseType,
15809    );
15810    pub fn gtk_info_bar_set_message_type(info_bar: *mut GtkInfoBar, message_type: GtkMessageType);
15811    pub fn gtk_info_bar_set_response_sensitive(
15812        info_bar: *mut GtkInfoBar,
15813        response_id: GtkResponseType,
15814        setting: gboolean,
15815    );
15816    pub fn gtk_info_bar_set_revealed(info_bar: *mut GtkInfoBar, revealed: gboolean);
15817    pub fn gtk_info_bar_set_show_close_button(info_bar: *mut GtkInfoBar, setting: gboolean);
15818
15819    //=========================================================================
15820    // GtkInscription
15821    //=========================================================================
15822    #[cfg(feature = "v4_8")]
15823    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15824    pub fn gtk_inscription_get_type() -> GType;
15825    #[cfg(feature = "v4_8")]
15826    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15827    pub fn gtk_inscription_new(text: *const c_char) -> *mut GtkWidget;
15828    #[cfg(feature = "v4_8")]
15829    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15830    pub fn gtk_inscription_get_attributes(self_: *mut GtkInscription) -> *mut pango::PangoAttrList;
15831    #[cfg(feature = "v4_8")]
15832    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15833    pub fn gtk_inscription_get_min_chars(self_: *mut GtkInscription) -> c_uint;
15834    #[cfg(feature = "v4_8")]
15835    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15836    pub fn gtk_inscription_get_min_lines(self_: *mut GtkInscription) -> c_uint;
15837    #[cfg(feature = "v4_8")]
15838    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15839    pub fn gtk_inscription_get_nat_chars(self_: *mut GtkInscription) -> c_uint;
15840    #[cfg(feature = "v4_8")]
15841    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15842    pub fn gtk_inscription_get_nat_lines(self_: *mut GtkInscription) -> c_uint;
15843    #[cfg(feature = "v4_8")]
15844    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15845    pub fn gtk_inscription_get_text(self_: *mut GtkInscription) -> *const c_char;
15846    #[cfg(feature = "v4_8")]
15847    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15848    pub fn gtk_inscription_get_text_overflow(self_: *mut GtkInscription) -> GtkInscriptionOverflow;
15849    #[cfg(feature = "v4_8")]
15850    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15851    pub fn gtk_inscription_get_wrap_mode(self_: *mut GtkInscription) -> pango::PangoWrapMode;
15852    #[cfg(feature = "v4_8")]
15853    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15854    pub fn gtk_inscription_get_xalign(self_: *mut GtkInscription) -> c_float;
15855    #[cfg(feature = "v4_8")]
15856    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15857    pub fn gtk_inscription_get_yalign(self_: *mut GtkInscription) -> c_float;
15858    #[cfg(feature = "v4_8")]
15859    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15860    pub fn gtk_inscription_set_attributes(
15861        self_: *mut GtkInscription,
15862        attrs: *mut pango::PangoAttrList,
15863    );
15864    #[cfg(feature = "v4_8")]
15865    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15866    pub fn gtk_inscription_set_markup(self_: *mut GtkInscription, markup: *const c_char);
15867    #[cfg(feature = "v4_8")]
15868    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15869    pub fn gtk_inscription_set_min_chars(self_: *mut GtkInscription, min_chars: c_uint);
15870    #[cfg(feature = "v4_8")]
15871    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15872    pub fn gtk_inscription_set_min_lines(self_: *mut GtkInscription, min_lines: c_uint);
15873    #[cfg(feature = "v4_8")]
15874    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15875    pub fn gtk_inscription_set_nat_chars(self_: *mut GtkInscription, nat_chars: c_uint);
15876    #[cfg(feature = "v4_8")]
15877    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15878    pub fn gtk_inscription_set_nat_lines(self_: *mut GtkInscription, nat_lines: c_uint);
15879    #[cfg(feature = "v4_8")]
15880    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15881    pub fn gtk_inscription_set_text(self_: *mut GtkInscription, text: *const c_char);
15882    #[cfg(feature = "v4_8")]
15883    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15884    pub fn gtk_inscription_set_text_overflow(
15885        self_: *mut GtkInscription,
15886        overflow: GtkInscriptionOverflow,
15887    );
15888    #[cfg(feature = "v4_8")]
15889    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15890    pub fn gtk_inscription_set_wrap_mode(
15891        self_: *mut GtkInscription,
15892        wrap_mode: pango::PangoWrapMode,
15893    );
15894    #[cfg(feature = "v4_8")]
15895    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15896    pub fn gtk_inscription_set_xalign(self_: *mut GtkInscription, xalign: c_float);
15897    #[cfg(feature = "v4_8")]
15898    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15899    pub fn gtk_inscription_set_yalign(self_: *mut GtkInscription, yalign: c_float);
15900
15901    //=========================================================================
15902    // GtkKeyvalTrigger
15903    //=========================================================================
15904    pub fn gtk_keyval_trigger_get_type() -> GType;
15905    pub fn gtk_keyval_trigger_new(
15906        keyval: c_uint,
15907        modifiers: gdk::GdkModifierType,
15908    ) -> *mut GtkShortcutTrigger;
15909    pub fn gtk_keyval_trigger_get_keyval(self_: *mut GtkKeyvalTrigger) -> c_uint;
15910    pub fn gtk_keyval_trigger_get_modifiers(self_: *mut GtkKeyvalTrigger) -> gdk::GdkModifierType;
15911
15912    //=========================================================================
15913    // GtkLabel
15914    //=========================================================================
15915    pub fn gtk_label_get_type() -> GType;
15916    pub fn gtk_label_new(str: *const c_char) -> *mut GtkWidget;
15917    pub fn gtk_label_new_with_mnemonic(str: *const c_char) -> *mut GtkWidget;
15918    pub fn gtk_label_get_attributes(self_: *mut GtkLabel) -> *mut pango::PangoAttrList;
15919    pub fn gtk_label_get_current_uri(self_: *mut GtkLabel) -> *const c_char;
15920    pub fn gtk_label_get_ellipsize(self_: *mut GtkLabel) -> pango::PangoEllipsizeMode;
15921    pub fn gtk_label_get_extra_menu(self_: *mut GtkLabel) -> *mut gio::GMenuModel;
15922    pub fn gtk_label_get_justify(self_: *mut GtkLabel) -> GtkJustification;
15923    pub fn gtk_label_get_label(self_: *mut GtkLabel) -> *const c_char;
15924    pub fn gtk_label_get_layout(self_: *mut GtkLabel) -> *mut pango::PangoLayout;
15925    pub fn gtk_label_get_layout_offsets(self_: *mut GtkLabel, x: *mut c_int, y: *mut c_int);
15926    pub fn gtk_label_get_lines(self_: *mut GtkLabel) -> c_int;
15927    pub fn gtk_label_get_max_width_chars(self_: *mut GtkLabel) -> c_int;
15928    pub fn gtk_label_get_mnemonic_keyval(self_: *mut GtkLabel) -> c_uint;
15929    pub fn gtk_label_get_mnemonic_widget(self_: *mut GtkLabel) -> *mut GtkWidget;
15930    #[cfg(feature = "v4_6")]
15931    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15932    pub fn gtk_label_get_natural_wrap_mode(self_: *mut GtkLabel) -> GtkNaturalWrapMode;
15933    pub fn gtk_label_get_selectable(self_: *mut GtkLabel) -> gboolean;
15934    pub fn gtk_label_get_selection_bounds(
15935        self_: *mut GtkLabel,
15936        start: *mut c_int,
15937        end: *mut c_int,
15938    ) -> gboolean;
15939    pub fn gtk_label_get_single_line_mode(self_: *mut GtkLabel) -> gboolean;
15940    #[cfg(feature = "v4_8")]
15941    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15942    pub fn gtk_label_get_tabs(self_: *mut GtkLabel) -> *mut pango::PangoTabArray;
15943    pub fn gtk_label_get_text(self_: *mut GtkLabel) -> *const c_char;
15944    pub fn gtk_label_get_use_markup(self_: *mut GtkLabel) -> gboolean;
15945    pub fn gtk_label_get_use_underline(self_: *mut GtkLabel) -> gboolean;
15946    pub fn gtk_label_get_width_chars(self_: *mut GtkLabel) -> c_int;
15947    pub fn gtk_label_get_wrap(self_: *mut GtkLabel) -> gboolean;
15948    pub fn gtk_label_get_wrap_mode(self_: *mut GtkLabel) -> pango::PangoWrapMode;
15949    pub fn gtk_label_get_xalign(self_: *mut GtkLabel) -> c_float;
15950    pub fn gtk_label_get_yalign(self_: *mut GtkLabel) -> c_float;
15951    pub fn gtk_label_select_region(self_: *mut GtkLabel, start_offset: c_int, end_offset: c_int);
15952    pub fn gtk_label_set_attributes(self_: *mut GtkLabel, attrs: *mut pango::PangoAttrList);
15953    pub fn gtk_label_set_ellipsize(self_: *mut GtkLabel, mode: pango::PangoEllipsizeMode);
15954    pub fn gtk_label_set_extra_menu(self_: *mut GtkLabel, model: *mut gio::GMenuModel);
15955    pub fn gtk_label_set_justify(self_: *mut GtkLabel, jtype: GtkJustification);
15956    pub fn gtk_label_set_label(self_: *mut GtkLabel, str: *const c_char);
15957    pub fn gtk_label_set_lines(self_: *mut GtkLabel, lines: c_int);
15958    pub fn gtk_label_set_markup(self_: *mut GtkLabel, str: *const c_char);
15959    pub fn gtk_label_set_markup_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15960    pub fn gtk_label_set_max_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15961    pub fn gtk_label_set_mnemonic_widget(self_: *mut GtkLabel, widget: *mut GtkWidget);
15962    #[cfg(feature = "v4_6")]
15963    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
15964    pub fn gtk_label_set_natural_wrap_mode(self_: *mut GtkLabel, wrap_mode: GtkNaturalWrapMode);
15965    pub fn gtk_label_set_selectable(self_: *mut GtkLabel, setting: gboolean);
15966    pub fn gtk_label_set_single_line_mode(self_: *mut GtkLabel, single_line_mode: gboolean);
15967    #[cfg(feature = "v4_8")]
15968    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
15969    pub fn gtk_label_set_tabs(self_: *mut GtkLabel, tabs: *mut pango::PangoTabArray);
15970    pub fn gtk_label_set_text(self_: *mut GtkLabel, str: *const c_char);
15971    pub fn gtk_label_set_text_with_mnemonic(self_: *mut GtkLabel, str: *const c_char);
15972    pub fn gtk_label_set_use_markup(self_: *mut GtkLabel, setting: gboolean);
15973    pub fn gtk_label_set_use_underline(self_: *mut GtkLabel, setting: gboolean);
15974    pub fn gtk_label_set_width_chars(self_: *mut GtkLabel, n_chars: c_int);
15975    pub fn gtk_label_set_wrap(self_: *mut GtkLabel, wrap: gboolean);
15976    pub fn gtk_label_set_wrap_mode(self_: *mut GtkLabel, wrap_mode: pango::PangoWrapMode);
15977    pub fn gtk_label_set_xalign(self_: *mut GtkLabel, xalign: c_float);
15978    pub fn gtk_label_set_yalign(self_: *mut GtkLabel, yalign: c_float);
15979
15980    //=========================================================================
15981    // GtkLayoutChild
15982    //=========================================================================
15983    pub fn gtk_layout_child_get_type() -> GType;
15984    pub fn gtk_layout_child_get_child_widget(layout_child: *mut GtkLayoutChild) -> *mut GtkWidget;
15985    pub fn gtk_layout_child_get_layout_manager(
15986        layout_child: *mut GtkLayoutChild,
15987    ) -> *mut GtkLayoutManager;
15988
15989    //=========================================================================
15990    // GtkLayoutManager
15991    //=========================================================================
15992    pub fn gtk_layout_manager_get_type() -> GType;
15993    pub fn gtk_layout_manager_allocate(
15994        manager: *mut GtkLayoutManager,
15995        widget: *mut GtkWidget,
15996        width: c_int,
15997        height: c_int,
15998        baseline: c_int,
15999    );
16000    pub fn gtk_layout_manager_get_layout_child(
16001        manager: *mut GtkLayoutManager,
16002        child: *mut GtkWidget,
16003    ) -> *mut GtkLayoutChild;
16004    pub fn gtk_layout_manager_get_request_mode(
16005        manager: *mut GtkLayoutManager,
16006    ) -> GtkSizeRequestMode;
16007    pub fn gtk_layout_manager_get_widget(manager: *mut GtkLayoutManager) -> *mut GtkWidget;
16008    pub fn gtk_layout_manager_layout_changed(manager: *mut GtkLayoutManager);
16009    pub fn gtk_layout_manager_measure(
16010        manager: *mut GtkLayoutManager,
16011        widget: *mut GtkWidget,
16012        orientation: GtkOrientation,
16013        for_size: c_int,
16014        minimum: *mut c_int,
16015        natural: *mut c_int,
16016        minimum_baseline: *mut c_int,
16017        natural_baseline: *mut c_int,
16018    );
16019
16020    //=========================================================================
16021    // GtkLevelBar
16022    //=========================================================================
16023    pub fn gtk_level_bar_get_type() -> GType;
16024    pub fn gtk_level_bar_new() -> *mut GtkWidget;
16025    pub fn gtk_level_bar_new_for_interval(
16026        min_value: c_double,
16027        max_value: c_double,
16028    ) -> *mut GtkWidget;
16029    pub fn gtk_level_bar_add_offset_value(
16030        self_: *mut GtkLevelBar,
16031        name: *const c_char,
16032        value: c_double,
16033    );
16034    pub fn gtk_level_bar_get_inverted(self_: *mut GtkLevelBar) -> gboolean;
16035    pub fn gtk_level_bar_get_max_value(self_: *mut GtkLevelBar) -> c_double;
16036    pub fn gtk_level_bar_get_min_value(self_: *mut GtkLevelBar) -> c_double;
16037    pub fn gtk_level_bar_get_mode(self_: *mut GtkLevelBar) -> GtkLevelBarMode;
16038    pub fn gtk_level_bar_get_offset_value(
16039        self_: *mut GtkLevelBar,
16040        name: *const c_char,
16041        value: *mut c_double,
16042    ) -> gboolean;
16043    pub fn gtk_level_bar_get_value(self_: *mut GtkLevelBar) -> c_double;
16044    pub fn gtk_level_bar_remove_offset_value(self_: *mut GtkLevelBar, name: *const c_char);
16045    pub fn gtk_level_bar_set_inverted(self_: *mut GtkLevelBar, inverted: gboolean);
16046    pub fn gtk_level_bar_set_max_value(self_: *mut GtkLevelBar, value: c_double);
16047    pub fn gtk_level_bar_set_min_value(self_: *mut GtkLevelBar, value: c_double);
16048    pub fn gtk_level_bar_set_mode(self_: *mut GtkLevelBar, mode: GtkLevelBarMode);
16049    pub fn gtk_level_bar_set_value(self_: *mut GtkLevelBar, value: c_double);
16050
16051    //=========================================================================
16052    // GtkLinkButton
16053    //=========================================================================
16054    pub fn gtk_link_button_get_type() -> GType;
16055    pub fn gtk_link_button_new(uri: *const c_char) -> *mut GtkWidget;
16056    pub fn gtk_link_button_new_with_label(
16057        uri: *const c_char,
16058        label: *const c_char,
16059    ) -> *mut GtkWidget;
16060    pub fn gtk_link_button_get_uri(link_button: *mut GtkLinkButton) -> *const c_char;
16061    pub fn gtk_link_button_get_visited(link_button: *mut GtkLinkButton) -> gboolean;
16062    pub fn gtk_link_button_set_uri(link_button: *mut GtkLinkButton, uri: *const c_char);
16063    pub fn gtk_link_button_set_visited(link_button: *mut GtkLinkButton, visited: gboolean);
16064
16065    //=========================================================================
16066    // GtkListBase
16067    //=========================================================================
16068    pub fn gtk_list_base_get_type() -> GType;
16069
16070    //=========================================================================
16071    // GtkListBox
16072    //=========================================================================
16073    pub fn gtk_list_box_get_type() -> GType;
16074    pub fn gtk_list_box_new() -> *mut GtkWidget;
16075    pub fn gtk_list_box_append(box_: *mut GtkListBox, child: *mut GtkWidget);
16076    pub fn gtk_list_box_bind_model(
16077        box_: *mut GtkListBox,
16078        model: *mut gio::GListModel,
16079        create_widget_func: GtkListBoxCreateWidgetFunc,
16080        user_data: gpointer,
16081        user_data_free_func: glib::GDestroyNotify,
16082    );
16083    pub fn gtk_list_box_drag_highlight_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16084    pub fn gtk_list_box_drag_unhighlight_row(box_: *mut GtkListBox);
16085    pub fn gtk_list_box_get_activate_on_single_click(box_: *mut GtkListBox) -> gboolean;
16086    pub fn gtk_list_box_get_adjustment(box_: *mut GtkListBox) -> *mut GtkAdjustment;
16087    pub fn gtk_list_box_get_row_at_index(
16088        box_: *mut GtkListBox,
16089        index_: c_int,
16090    ) -> *mut GtkListBoxRow;
16091    pub fn gtk_list_box_get_row_at_y(box_: *mut GtkListBox, y: c_int) -> *mut GtkListBoxRow;
16092    pub fn gtk_list_box_get_selected_row(box_: *mut GtkListBox) -> *mut GtkListBoxRow;
16093    pub fn gtk_list_box_get_selected_rows(box_: *mut GtkListBox) -> *mut glib::GList;
16094    pub fn gtk_list_box_get_selection_mode(box_: *mut GtkListBox) -> GtkSelectionMode;
16095    pub fn gtk_list_box_get_show_separators(box_: *mut GtkListBox) -> gboolean;
16096    #[cfg(feature = "v4_18")]
16097    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16098    pub fn gtk_list_box_get_tab_behavior(box_: *mut GtkListBox) -> GtkListTabBehavior;
16099    pub fn gtk_list_box_insert(box_: *mut GtkListBox, child: *mut GtkWidget, position: c_int);
16100    pub fn gtk_list_box_invalidate_filter(box_: *mut GtkListBox);
16101    pub fn gtk_list_box_invalidate_headers(box_: *mut GtkListBox);
16102    pub fn gtk_list_box_invalidate_sort(box_: *mut GtkListBox);
16103    pub fn gtk_list_box_prepend(box_: *mut GtkListBox, child: *mut GtkWidget);
16104    pub fn gtk_list_box_remove(box_: *mut GtkListBox, child: *mut GtkWidget);
16105    #[cfg(feature = "v4_12")]
16106    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16107    pub fn gtk_list_box_remove_all(box_: *mut GtkListBox);
16108    pub fn gtk_list_box_select_all(box_: *mut GtkListBox);
16109    pub fn gtk_list_box_select_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16110    pub fn gtk_list_box_selected_foreach(
16111        box_: *mut GtkListBox,
16112        func: GtkListBoxForeachFunc,
16113        data: gpointer,
16114    );
16115    pub fn gtk_list_box_set_activate_on_single_click(box_: *mut GtkListBox, single: gboolean);
16116    pub fn gtk_list_box_set_adjustment(box_: *mut GtkListBox, adjustment: *mut GtkAdjustment);
16117    pub fn gtk_list_box_set_filter_func(
16118        box_: *mut GtkListBox,
16119        filter_func: GtkListBoxFilterFunc,
16120        user_data: gpointer,
16121        destroy: glib::GDestroyNotify,
16122    );
16123    pub fn gtk_list_box_set_header_func(
16124        box_: *mut GtkListBox,
16125        update_header: GtkListBoxUpdateHeaderFunc,
16126        user_data: gpointer,
16127        destroy: glib::GDestroyNotify,
16128    );
16129    pub fn gtk_list_box_set_placeholder(box_: *mut GtkListBox, placeholder: *mut GtkWidget);
16130    pub fn gtk_list_box_set_selection_mode(box_: *mut GtkListBox, mode: GtkSelectionMode);
16131    pub fn gtk_list_box_set_show_separators(box_: *mut GtkListBox, show_separators: gboolean);
16132    pub fn gtk_list_box_set_sort_func(
16133        box_: *mut GtkListBox,
16134        sort_func: GtkListBoxSortFunc,
16135        user_data: gpointer,
16136        destroy: glib::GDestroyNotify,
16137    );
16138    #[cfg(feature = "v4_18")]
16139    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
16140    pub fn gtk_list_box_set_tab_behavior(box_: *mut GtkListBox, behavior: GtkListTabBehavior);
16141    pub fn gtk_list_box_unselect_all(box_: *mut GtkListBox);
16142    pub fn gtk_list_box_unselect_row(box_: *mut GtkListBox, row: *mut GtkListBoxRow);
16143
16144    //=========================================================================
16145    // GtkListBoxRow
16146    //=========================================================================
16147    pub fn gtk_list_box_row_get_type() -> GType;
16148    pub fn gtk_list_box_row_new() -> *mut GtkWidget;
16149    pub fn gtk_list_box_row_changed(row: *mut GtkListBoxRow);
16150    pub fn gtk_list_box_row_get_activatable(row: *mut GtkListBoxRow) -> gboolean;
16151    pub fn gtk_list_box_row_get_child(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16152    pub fn gtk_list_box_row_get_header(row: *mut GtkListBoxRow) -> *mut GtkWidget;
16153    pub fn gtk_list_box_row_get_index(row: *mut GtkListBoxRow) -> c_int;
16154    pub fn gtk_list_box_row_get_selectable(row: *mut GtkListBoxRow) -> gboolean;
16155    pub fn gtk_list_box_row_is_selected(row: *mut GtkListBoxRow) -> gboolean;
16156    pub fn gtk_list_box_row_set_activatable(row: *mut GtkListBoxRow, activatable: gboolean);
16157    pub fn gtk_list_box_row_set_child(row: *mut GtkListBoxRow, child: *mut GtkWidget);
16158    pub fn gtk_list_box_row_set_header(row: *mut GtkListBoxRow, header: *mut GtkWidget);
16159    pub fn gtk_list_box_row_set_selectable(row: *mut GtkListBoxRow, selectable: gboolean);
16160
16161    //=========================================================================
16162    // GtkListHeader
16163    //=========================================================================
16164    #[cfg(feature = "v4_12")]
16165    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16166    pub fn gtk_list_header_get_type() -> GType;
16167    #[cfg(feature = "v4_12")]
16168    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16169    pub fn gtk_list_header_get_child(self_: *mut GtkListHeader) -> *mut GtkWidget;
16170    #[cfg(feature = "v4_12")]
16171    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16172    pub fn gtk_list_header_get_end(self_: *mut GtkListHeader) -> c_uint;
16173    #[cfg(feature = "v4_12")]
16174    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16175    pub fn gtk_list_header_get_item(self_: *mut GtkListHeader) -> *mut gobject::GObject;
16176    #[cfg(feature = "v4_12")]
16177    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16178    pub fn gtk_list_header_get_n_items(self_: *mut GtkListHeader) -> c_uint;
16179    #[cfg(feature = "v4_12")]
16180    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16181    pub fn gtk_list_header_get_start(self_: *mut GtkListHeader) -> c_uint;
16182    #[cfg(feature = "v4_12")]
16183    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16184    pub fn gtk_list_header_set_child(self_: *mut GtkListHeader, child: *mut GtkWidget);
16185
16186    //=========================================================================
16187    // GtkListItem
16188    //=========================================================================
16189    pub fn gtk_list_item_get_type() -> GType;
16190    #[cfg(feature = "v4_12")]
16191    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16192    pub fn gtk_list_item_get_accessible_description(self_: *mut GtkListItem) -> *const c_char;
16193    #[cfg(feature = "v4_12")]
16194    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16195    pub fn gtk_list_item_get_accessible_label(self_: *mut GtkListItem) -> *const c_char;
16196    pub fn gtk_list_item_get_activatable(self_: *mut GtkListItem) -> gboolean;
16197    pub fn gtk_list_item_get_child(self_: *mut GtkListItem) -> *mut GtkWidget;
16198    #[cfg(feature = "v4_12")]
16199    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16200    pub fn gtk_list_item_get_focusable(self_: *mut GtkListItem) -> gboolean;
16201    pub fn gtk_list_item_get_item(self_: *mut GtkListItem) -> *mut gobject::GObject;
16202    pub fn gtk_list_item_get_position(self_: *mut GtkListItem) -> c_uint;
16203    pub fn gtk_list_item_get_selectable(self_: *mut GtkListItem) -> gboolean;
16204    pub fn gtk_list_item_get_selected(self_: *mut GtkListItem) -> gboolean;
16205    #[cfg(feature = "v4_12")]
16206    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16207    pub fn gtk_list_item_set_accessible_description(
16208        self_: *mut GtkListItem,
16209        description: *const c_char,
16210    );
16211    #[cfg(feature = "v4_12")]
16212    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16213    pub fn gtk_list_item_set_accessible_label(self_: *mut GtkListItem, label: *const c_char);
16214    pub fn gtk_list_item_set_activatable(self_: *mut GtkListItem, activatable: gboolean);
16215    pub fn gtk_list_item_set_child(self_: *mut GtkListItem, child: *mut GtkWidget);
16216    #[cfg(feature = "v4_12")]
16217    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16218    pub fn gtk_list_item_set_focusable(self_: *mut GtkListItem, focusable: gboolean);
16219    pub fn gtk_list_item_set_selectable(self_: *mut GtkListItem, selectable: gboolean);
16220
16221    //=========================================================================
16222    // GtkListItemFactory
16223    //=========================================================================
16224    pub fn gtk_list_item_factory_get_type() -> GType;
16225
16226    //=========================================================================
16227    // GtkListStore
16228    //=========================================================================
16229    pub fn gtk_list_store_get_type() -> GType;
16230    pub fn gtk_list_store_new(n_columns: c_int, ...) -> *mut GtkListStore;
16231    pub fn gtk_list_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkListStore;
16232    pub fn gtk_list_store_append(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16233    pub fn gtk_list_store_clear(list_store: *mut GtkListStore);
16234    pub fn gtk_list_store_insert(
16235        list_store: *mut GtkListStore,
16236        iter: *mut GtkTreeIter,
16237        position: c_int,
16238    );
16239    pub fn gtk_list_store_insert_after(
16240        list_store: *mut GtkListStore,
16241        iter: *mut GtkTreeIter,
16242        sibling: *mut GtkTreeIter,
16243    );
16244    pub fn gtk_list_store_insert_before(
16245        list_store: *mut GtkListStore,
16246        iter: *mut GtkTreeIter,
16247        sibling: *mut GtkTreeIter,
16248    );
16249    pub fn gtk_list_store_insert_with_values(
16250        list_store: *mut GtkListStore,
16251        iter: *mut GtkTreeIter,
16252        position: c_int,
16253        ...
16254    );
16255    pub fn gtk_list_store_insert_with_valuesv(
16256        list_store: *mut GtkListStore,
16257        iter: *mut GtkTreeIter,
16258        position: c_int,
16259        columns: *mut c_int,
16260        values: *mut gobject::GValue,
16261        n_values: c_int,
16262    );
16263    pub fn gtk_list_store_iter_is_valid(
16264        list_store: *mut GtkListStore,
16265        iter: *mut GtkTreeIter,
16266    ) -> gboolean;
16267    pub fn gtk_list_store_move_after(
16268        store: *mut GtkListStore,
16269        iter: *mut GtkTreeIter,
16270        position: *mut GtkTreeIter,
16271    );
16272    pub fn gtk_list_store_move_before(
16273        store: *mut GtkListStore,
16274        iter: *mut GtkTreeIter,
16275        position: *mut GtkTreeIter,
16276    );
16277    pub fn gtk_list_store_prepend(list_store: *mut GtkListStore, iter: *mut GtkTreeIter);
16278    pub fn gtk_list_store_remove(list_store: *mut GtkListStore, iter: *mut GtkTreeIter)
16279    -> gboolean;
16280    pub fn gtk_list_store_reorder(store: *mut GtkListStore, new_order: *mut c_int);
16281    pub fn gtk_list_store_set(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, ...);
16282    pub fn gtk_list_store_set_column_types(
16283        list_store: *mut GtkListStore,
16284        n_columns: c_int,
16285        types: *mut GType,
16286    );
16287    //pub fn gtk_list_store_set_valist(list_store: *mut GtkListStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
16288    pub fn gtk_list_store_set_value(
16289        list_store: *mut GtkListStore,
16290        iter: *mut GtkTreeIter,
16291        column: c_int,
16292        value: *mut gobject::GValue,
16293    );
16294    pub fn gtk_list_store_set_valuesv(
16295        list_store: *mut GtkListStore,
16296        iter: *mut GtkTreeIter,
16297        columns: *mut c_int,
16298        values: *mut gobject::GValue,
16299        n_values: c_int,
16300    );
16301    pub fn gtk_list_store_swap(store: *mut GtkListStore, a: *mut GtkTreeIter, b: *mut GtkTreeIter);
16302
16303    //=========================================================================
16304    // GtkListView
16305    //=========================================================================
16306    pub fn gtk_list_view_get_type() -> GType;
16307    pub fn gtk_list_view_new(
16308        model: *mut GtkSelectionModel,
16309        factory: *mut GtkListItemFactory,
16310    ) -> *mut GtkWidget;
16311    pub fn gtk_list_view_get_enable_rubberband(self_: *mut GtkListView) -> gboolean;
16312    pub fn gtk_list_view_get_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16313    #[cfg(feature = "v4_12")]
16314    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16315    pub fn gtk_list_view_get_header_factory(self_: *mut GtkListView) -> *mut GtkListItemFactory;
16316    pub fn gtk_list_view_get_model(self_: *mut GtkListView) -> *mut GtkSelectionModel;
16317    pub fn gtk_list_view_get_show_separators(self_: *mut GtkListView) -> gboolean;
16318    pub fn gtk_list_view_get_single_click_activate(self_: *mut GtkListView) -> gboolean;
16319    #[cfg(feature = "v4_12")]
16320    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16321    pub fn gtk_list_view_get_tab_behavior(self_: *mut GtkListView) -> GtkListTabBehavior;
16322    #[cfg(feature = "v4_12")]
16323    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16324    pub fn gtk_list_view_scroll_to(
16325        self_: *mut GtkListView,
16326        pos: c_uint,
16327        flags: GtkListScrollFlags,
16328        scroll: *mut GtkScrollInfo,
16329    );
16330    pub fn gtk_list_view_set_enable_rubberband(
16331        self_: *mut GtkListView,
16332        enable_rubberband: gboolean,
16333    );
16334    pub fn gtk_list_view_set_factory(self_: *mut GtkListView, factory: *mut GtkListItemFactory);
16335    #[cfg(feature = "v4_12")]
16336    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16337    pub fn gtk_list_view_set_header_factory(
16338        self_: *mut GtkListView,
16339        factory: *mut GtkListItemFactory,
16340    );
16341    pub fn gtk_list_view_set_model(self_: *mut GtkListView, model: *mut GtkSelectionModel);
16342    pub fn gtk_list_view_set_show_separators(self_: *mut GtkListView, show_separators: gboolean);
16343    pub fn gtk_list_view_set_single_click_activate(
16344        self_: *mut GtkListView,
16345        single_click_activate: gboolean,
16346    );
16347    #[cfg(feature = "v4_12")]
16348    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16349    pub fn gtk_list_view_set_tab_behavior(
16350        self_: *mut GtkListView,
16351        tab_behavior: GtkListTabBehavior,
16352    );
16353
16354    //=========================================================================
16355    // GtkLockButton
16356    //=========================================================================
16357    pub fn gtk_lock_button_get_type() -> GType;
16358    pub fn gtk_lock_button_new(permission: *mut gio::GPermission) -> *mut GtkWidget;
16359    pub fn gtk_lock_button_get_permission(button: *mut GtkLockButton) -> *mut gio::GPermission;
16360    pub fn gtk_lock_button_set_permission(
16361        button: *mut GtkLockButton,
16362        permission: *mut gio::GPermission,
16363    );
16364
16365    //=========================================================================
16366    // GtkMapListModel
16367    //=========================================================================
16368    pub fn gtk_map_list_model_get_type() -> GType;
16369    pub fn gtk_map_list_model_new(
16370        model: *mut gio::GListModel,
16371        map_func: GtkMapListModelMapFunc,
16372        user_data: gpointer,
16373        user_destroy: glib::GDestroyNotify,
16374    ) -> *mut GtkMapListModel;
16375    pub fn gtk_map_list_model_get_model(self_: *mut GtkMapListModel) -> *mut gio::GListModel;
16376    pub fn gtk_map_list_model_has_map(self_: *mut GtkMapListModel) -> gboolean;
16377    pub fn gtk_map_list_model_set_map_func(
16378        self_: *mut GtkMapListModel,
16379        map_func: GtkMapListModelMapFunc,
16380        user_data: gpointer,
16381        user_destroy: glib::GDestroyNotify,
16382    );
16383    pub fn gtk_map_list_model_set_model(self_: *mut GtkMapListModel, model: *mut gio::GListModel);
16384
16385    //=========================================================================
16386    // GtkMediaControls
16387    //=========================================================================
16388    pub fn gtk_media_controls_get_type() -> GType;
16389    pub fn gtk_media_controls_new(stream: *mut GtkMediaStream) -> *mut GtkWidget;
16390    pub fn gtk_media_controls_get_media_stream(
16391        controls: *mut GtkMediaControls,
16392    ) -> *mut GtkMediaStream;
16393    pub fn gtk_media_controls_set_media_stream(
16394        controls: *mut GtkMediaControls,
16395        stream: *mut GtkMediaStream,
16396    );
16397
16398    //=========================================================================
16399    // GtkMediaFile
16400    //=========================================================================
16401    pub fn gtk_media_file_get_type() -> GType;
16402    pub fn gtk_media_file_new() -> *mut GtkMediaFile;
16403    pub fn gtk_media_file_new_for_file(file: *mut gio::GFile) -> *mut GtkMediaFile;
16404    pub fn gtk_media_file_new_for_filename(filename: *const c_char) -> *mut GtkMediaFile;
16405    pub fn gtk_media_file_new_for_input_stream(stream: *mut gio::GInputStream)
16406    -> *mut GtkMediaFile;
16407    pub fn gtk_media_file_new_for_resource(resource_path: *const c_char) -> *mut GtkMediaFile;
16408    pub fn gtk_media_file_clear(self_: *mut GtkMediaFile);
16409    pub fn gtk_media_file_get_file(self_: *mut GtkMediaFile) -> *mut gio::GFile;
16410    pub fn gtk_media_file_get_input_stream(self_: *mut GtkMediaFile) -> *mut gio::GInputStream;
16411    pub fn gtk_media_file_set_file(self_: *mut GtkMediaFile, file: *mut gio::GFile);
16412    pub fn gtk_media_file_set_filename(self_: *mut GtkMediaFile, filename: *const c_char);
16413    pub fn gtk_media_file_set_input_stream(
16414        self_: *mut GtkMediaFile,
16415        stream: *mut gio::GInputStream,
16416    );
16417    pub fn gtk_media_file_set_resource(self_: *mut GtkMediaFile, resource_path: *const c_char);
16418
16419    //=========================================================================
16420    // GtkMediaStream
16421    //=========================================================================
16422    pub fn gtk_media_stream_get_type() -> GType;
16423    pub fn gtk_media_stream_ended(self_: *mut GtkMediaStream);
16424    pub fn gtk_media_stream_error(
16425        self_: *mut GtkMediaStream,
16426        domain: glib::GQuark,
16427        code: c_int,
16428        format: *const c_char,
16429        ...
16430    );
16431    //pub fn gtk_media_stream_error_valist(self_: *mut GtkMediaStream, domain: glib::GQuark, code: c_int, format: *const c_char, args: /*Unimplemented*/va_list);
16432    pub fn gtk_media_stream_gerror(self_: *mut GtkMediaStream, error: *mut glib::GError);
16433    pub fn gtk_media_stream_get_duration(self_: *mut GtkMediaStream) -> i64;
16434    pub fn gtk_media_stream_get_ended(self_: *mut GtkMediaStream) -> gboolean;
16435    pub fn gtk_media_stream_get_error(self_: *mut GtkMediaStream) -> *const glib::GError;
16436    pub fn gtk_media_stream_get_loop(self_: *mut GtkMediaStream) -> gboolean;
16437    pub fn gtk_media_stream_get_muted(self_: *mut GtkMediaStream) -> gboolean;
16438    pub fn gtk_media_stream_get_playing(self_: *mut GtkMediaStream) -> gboolean;
16439    pub fn gtk_media_stream_get_timestamp(self_: *mut GtkMediaStream) -> i64;
16440    pub fn gtk_media_stream_get_volume(self_: *mut GtkMediaStream) -> c_double;
16441    pub fn gtk_media_stream_has_audio(self_: *mut GtkMediaStream) -> gboolean;
16442    pub fn gtk_media_stream_has_video(self_: *mut GtkMediaStream) -> gboolean;
16443    pub fn gtk_media_stream_is_prepared(self_: *mut GtkMediaStream) -> gboolean;
16444    pub fn gtk_media_stream_is_seekable(self_: *mut GtkMediaStream) -> gboolean;
16445    pub fn gtk_media_stream_is_seeking(self_: *mut GtkMediaStream) -> gboolean;
16446    pub fn gtk_media_stream_pause(self_: *mut GtkMediaStream);
16447    pub fn gtk_media_stream_play(self_: *mut GtkMediaStream);
16448    pub fn gtk_media_stream_prepared(
16449        self_: *mut GtkMediaStream,
16450        has_audio: gboolean,
16451        has_video: gboolean,
16452        seekable: gboolean,
16453        duration: i64,
16454    );
16455    pub fn gtk_media_stream_realize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16456    pub fn gtk_media_stream_seek(self_: *mut GtkMediaStream, timestamp: i64);
16457    pub fn gtk_media_stream_seek_failed(self_: *mut GtkMediaStream);
16458    pub fn gtk_media_stream_seek_success(self_: *mut GtkMediaStream);
16459    pub fn gtk_media_stream_set_loop(self_: *mut GtkMediaStream, loop_: gboolean);
16460    pub fn gtk_media_stream_set_muted(self_: *mut GtkMediaStream, muted: gboolean);
16461    pub fn gtk_media_stream_set_playing(self_: *mut GtkMediaStream, playing: gboolean);
16462    pub fn gtk_media_stream_set_volume(self_: *mut GtkMediaStream, volume: c_double);
16463    #[cfg(feature = "v4_4")]
16464    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16465    pub fn gtk_media_stream_stream_ended(self_: *mut GtkMediaStream);
16466    #[cfg(feature = "v4_4")]
16467    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16468    pub fn gtk_media_stream_stream_prepared(
16469        self_: *mut GtkMediaStream,
16470        has_audio: gboolean,
16471        has_video: gboolean,
16472        seekable: gboolean,
16473        duration: i64,
16474    );
16475    #[cfg(feature = "v4_4")]
16476    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16477    pub fn gtk_media_stream_stream_unprepared(self_: *mut GtkMediaStream);
16478    pub fn gtk_media_stream_unprepared(self_: *mut GtkMediaStream);
16479    pub fn gtk_media_stream_unrealize(self_: *mut GtkMediaStream, surface: *mut gdk::GdkSurface);
16480    pub fn gtk_media_stream_update(self_: *mut GtkMediaStream, timestamp: i64);
16481
16482    //=========================================================================
16483    // GtkMenuButton
16484    //=========================================================================
16485    pub fn gtk_menu_button_get_type() -> GType;
16486    pub fn gtk_menu_button_new() -> *mut GtkWidget;
16487    #[cfg(feature = "v4_10")]
16488    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16489    pub fn gtk_menu_button_get_active(menu_button: *mut GtkMenuButton) -> gboolean;
16490    #[cfg(feature = "v4_4")]
16491    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16492    pub fn gtk_menu_button_get_always_show_arrow(menu_button: *mut GtkMenuButton) -> gboolean;
16493    #[cfg(feature = "v4_12")]
16494    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16495    pub fn gtk_menu_button_get_can_shrink(menu_button: *mut GtkMenuButton) -> gboolean;
16496    #[cfg(feature = "v4_6")]
16497    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16498    pub fn gtk_menu_button_get_child(menu_button: *mut GtkMenuButton) -> *mut GtkWidget;
16499    pub fn gtk_menu_button_get_direction(menu_button: *mut GtkMenuButton) -> GtkArrowType;
16500    pub fn gtk_menu_button_get_has_frame(menu_button: *mut GtkMenuButton) -> gboolean;
16501    pub fn gtk_menu_button_get_icon_name(menu_button: *mut GtkMenuButton) -> *const c_char;
16502    pub fn gtk_menu_button_get_label(menu_button: *mut GtkMenuButton) -> *const c_char;
16503    pub fn gtk_menu_button_get_menu_model(menu_button: *mut GtkMenuButton) -> *mut gio::GMenuModel;
16504    pub fn gtk_menu_button_get_popover(menu_button: *mut GtkMenuButton) -> *mut GtkPopover;
16505    #[cfg(feature = "v4_4")]
16506    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16507    pub fn gtk_menu_button_get_primary(menu_button: *mut GtkMenuButton) -> gboolean;
16508    pub fn gtk_menu_button_get_use_underline(menu_button: *mut GtkMenuButton) -> gboolean;
16509    pub fn gtk_menu_button_popdown(menu_button: *mut GtkMenuButton);
16510    pub fn gtk_menu_button_popup(menu_button: *mut GtkMenuButton);
16511    #[cfg(feature = "v4_10")]
16512    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
16513    pub fn gtk_menu_button_set_active(menu_button: *mut GtkMenuButton, active: gboolean);
16514    #[cfg(feature = "v4_4")]
16515    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16516    pub fn gtk_menu_button_set_always_show_arrow(
16517        menu_button: *mut GtkMenuButton,
16518        always_show_arrow: gboolean,
16519    );
16520    #[cfg(feature = "v4_12")]
16521    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
16522    pub fn gtk_menu_button_set_can_shrink(menu_button: *mut GtkMenuButton, can_shrink: gboolean);
16523    #[cfg(feature = "v4_6")]
16524    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
16525    pub fn gtk_menu_button_set_child(menu_button: *mut GtkMenuButton, child: *mut GtkWidget);
16526    pub fn gtk_menu_button_set_create_popup_func(
16527        menu_button: *mut GtkMenuButton,
16528        func: GtkMenuButtonCreatePopupFunc,
16529        user_data: gpointer,
16530        destroy_notify: glib::GDestroyNotify,
16531    );
16532    pub fn gtk_menu_button_set_direction(menu_button: *mut GtkMenuButton, direction: GtkArrowType);
16533    pub fn gtk_menu_button_set_has_frame(menu_button: *mut GtkMenuButton, has_frame: gboolean);
16534    pub fn gtk_menu_button_set_icon_name(menu_button: *mut GtkMenuButton, icon_name: *const c_char);
16535    pub fn gtk_menu_button_set_label(menu_button: *mut GtkMenuButton, label: *const c_char);
16536    pub fn gtk_menu_button_set_menu_model(
16537        menu_button: *mut GtkMenuButton,
16538        menu_model: *mut gio::GMenuModel,
16539    );
16540    pub fn gtk_menu_button_set_popover(menu_button: *mut GtkMenuButton, popover: *mut GtkPopover);
16541    #[cfg(feature = "v4_4")]
16542    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
16543    pub fn gtk_menu_button_set_primary(menu_button: *mut GtkMenuButton, primary: gboolean);
16544    pub fn gtk_menu_button_set_use_underline(
16545        menu_button: *mut GtkMenuButton,
16546        use_underline: gboolean,
16547    );
16548
16549    //=========================================================================
16550    // GtkMessageDialog
16551    //=========================================================================
16552    pub fn gtk_message_dialog_get_type() -> GType;
16553    pub fn gtk_message_dialog_new(
16554        parent: *mut GtkWindow,
16555        flags: GtkDialogFlags,
16556        type_: GtkMessageType,
16557        buttons: GtkButtonsType,
16558        message_format: *const c_char,
16559        ...
16560    ) -> *mut GtkWidget;
16561    pub fn gtk_message_dialog_new_with_markup(
16562        parent: *mut GtkWindow,
16563        flags: GtkDialogFlags,
16564        type_: GtkMessageType,
16565        buttons: GtkButtonsType,
16566        message_format: *const c_char,
16567        ...
16568    ) -> *mut GtkWidget;
16569    pub fn gtk_message_dialog_format_secondary_markup(
16570        message_dialog: *mut GtkMessageDialog,
16571        message_format: *const c_char,
16572        ...
16573    );
16574    pub fn gtk_message_dialog_format_secondary_text(
16575        message_dialog: *mut GtkMessageDialog,
16576        message_format: *const c_char,
16577        ...
16578    );
16579    pub fn gtk_message_dialog_get_message_area(
16580        message_dialog: *mut GtkMessageDialog,
16581    ) -> *mut GtkWidget;
16582    pub fn gtk_message_dialog_set_markup(message_dialog: *mut GtkMessageDialog, str: *const c_char);
16583
16584    //=========================================================================
16585    // GtkMnemonicAction
16586    //=========================================================================
16587    pub fn gtk_mnemonic_action_get_type() -> GType;
16588    pub fn gtk_mnemonic_action_get() -> *mut GtkMnemonicAction;
16589
16590    //=========================================================================
16591    // GtkMnemonicTrigger
16592    //=========================================================================
16593    pub fn gtk_mnemonic_trigger_get_type() -> GType;
16594    pub fn gtk_mnemonic_trigger_new(keyval: c_uint) -> *mut GtkMnemonicTrigger;
16595    pub fn gtk_mnemonic_trigger_get_keyval(self_: *mut GtkMnemonicTrigger) -> c_uint;
16596
16597    //=========================================================================
16598    // GtkMountOperation
16599    //=========================================================================
16600    pub fn gtk_mount_operation_get_type() -> GType;
16601    pub fn gtk_mount_operation_new(parent: *mut GtkWindow) -> *mut gio::GMountOperation;
16602    pub fn gtk_mount_operation_get_display(op: *mut GtkMountOperation) -> *mut gdk::GdkDisplay;
16603    pub fn gtk_mount_operation_get_parent(op: *mut GtkMountOperation) -> *mut GtkWindow;
16604    pub fn gtk_mount_operation_is_showing(op: *mut GtkMountOperation) -> gboolean;
16605    pub fn gtk_mount_operation_set_display(
16606        op: *mut GtkMountOperation,
16607        display: *mut gdk::GdkDisplay,
16608    );
16609    pub fn gtk_mount_operation_set_parent(op: *mut GtkMountOperation, parent: *mut GtkWindow);
16610
16611    //=========================================================================
16612    // GtkMultiFilter
16613    //=========================================================================
16614    pub fn gtk_multi_filter_get_type() -> GType;
16615    pub fn gtk_multi_filter_append(self_: *mut GtkMultiFilter, filter: *mut GtkFilter);
16616    pub fn gtk_multi_filter_remove(self_: *mut GtkMultiFilter, position: c_uint);
16617
16618    //=========================================================================
16619    // GtkMultiSelection
16620    //=========================================================================
16621    pub fn gtk_multi_selection_get_type() -> GType;
16622    pub fn gtk_multi_selection_new(model: *mut gio::GListModel) -> *mut GtkMultiSelection;
16623    pub fn gtk_multi_selection_get_model(self_: *mut GtkMultiSelection) -> *mut gio::GListModel;
16624    pub fn gtk_multi_selection_set_model(
16625        self_: *mut GtkMultiSelection,
16626        model: *mut gio::GListModel,
16627    );
16628
16629    //=========================================================================
16630    // GtkMultiSorter
16631    //=========================================================================
16632    pub fn gtk_multi_sorter_get_type() -> GType;
16633    pub fn gtk_multi_sorter_new() -> *mut GtkMultiSorter;
16634    pub fn gtk_multi_sorter_append(self_: *mut GtkMultiSorter, sorter: *mut GtkSorter);
16635    pub fn gtk_multi_sorter_remove(self_: *mut GtkMultiSorter, position: c_uint);
16636
16637    //=========================================================================
16638    // GtkNamedAction
16639    //=========================================================================
16640    pub fn gtk_named_action_get_type() -> GType;
16641    pub fn gtk_named_action_new(name: *const c_char) -> *mut GtkNamedAction;
16642    pub fn gtk_named_action_get_action_name(self_: *mut GtkNamedAction) -> *const c_char;
16643
16644    //=========================================================================
16645    // GtkNativeDialog
16646    //=========================================================================
16647    pub fn gtk_native_dialog_get_type() -> GType;
16648    pub fn gtk_native_dialog_destroy(self_: *mut GtkNativeDialog);
16649    pub fn gtk_native_dialog_get_modal(self_: *mut GtkNativeDialog) -> gboolean;
16650    pub fn gtk_native_dialog_get_title(self_: *mut GtkNativeDialog) -> *const c_char;
16651    pub fn gtk_native_dialog_get_transient_for(self_: *mut GtkNativeDialog) -> *mut GtkWindow;
16652    pub fn gtk_native_dialog_get_visible(self_: *mut GtkNativeDialog) -> gboolean;
16653    pub fn gtk_native_dialog_hide(self_: *mut GtkNativeDialog);
16654    pub fn gtk_native_dialog_set_modal(self_: *mut GtkNativeDialog, modal: gboolean);
16655    pub fn gtk_native_dialog_set_title(self_: *mut GtkNativeDialog, title: *const c_char);
16656    pub fn gtk_native_dialog_set_transient_for(self_: *mut GtkNativeDialog, parent: *mut GtkWindow);
16657    pub fn gtk_native_dialog_show(self_: *mut GtkNativeDialog);
16658
16659    //=========================================================================
16660    // GtkNeverTrigger
16661    //=========================================================================
16662    pub fn gtk_never_trigger_get_type() -> GType;
16663    pub fn gtk_never_trigger_get() -> *mut GtkNeverTrigger;
16664
16665    //=========================================================================
16666    // GtkNoSelection
16667    //=========================================================================
16668    pub fn gtk_no_selection_get_type() -> GType;
16669    pub fn gtk_no_selection_new(model: *mut gio::GListModel) -> *mut GtkNoSelection;
16670    pub fn gtk_no_selection_get_model(self_: *mut GtkNoSelection) -> *mut gio::GListModel;
16671    pub fn gtk_no_selection_set_model(self_: *mut GtkNoSelection, model: *mut gio::GListModel);
16672
16673    //=========================================================================
16674    // GtkNotebook
16675    //=========================================================================
16676    pub fn gtk_notebook_get_type() -> GType;
16677    pub fn gtk_notebook_new() -> *mut GtkWidget;
16678    pub fn gtk_notebook_append_page(
16679        notebook: *mut GtkNotebook,
16680        child: *mut GtkWidget,
16681        tab_label: *mut GtkWidget,
16682    ) -> c_int;
16683    pub fn gtk_notebook_append_page_menu(
16684        notebook: *mut GtkNotebook,
16685        child: *mut GtkWidget,
16686        tab_label: *mut GtkWidget,
16687        menu_label: *mut GtkWidget,
16688    ) -> c_int;
16689    pub fn gtk_notebook_detach_tab(notebook: *mut GtkNotebook, child: *mut GtkWidget);
16690    pub fn gtk_notebook_get_action_widget(
16691        notebook: *mut GtkNotebook,
16692        pack_type: GtkPackType,
16693    ) -> *mut GtkWidget;
16694    pub fn gtk_notebook_get_current_page(notebook: *mut GtkNotebook) -> c_int;
16695    pub fn gtk_notebook_get_group_name(notebook: *mut GtkNotebook) -> *const c_char;
16696    pub fn gtk_notebook_get_menu_label(
16697        notebook: *mut GtkNotebook,
16698        child: *mut GtkWidget,
16699    ) -> *mut GtkWidget;
16700    pub fn gtk_notebook_get_menu_label_text(
16701        notebook: *mut GtkNotebook,
16702        child: *mut GtkWidget,
16703    ) -> *const c_char;
16704    pub fn gtk_notebook_get_n_pages(notebook: *mut GtkNotebook) -> c_int;
16705    pub fn gtk_notebook_get_nth_page(notebook: *mut GtkNotebook, page_num: c_int)
16706    -> *mut GtkWidget;
16707    pub fn gtk_notebook_get_page(
16708        notebook: *mut GtkNotebook,
16709        child: *mut GtkWidget,
16710    ) -> *mut GtkNotebookPage;
16711    pub fn gtk_notebook_get_pages(notebook: *mut GtkNotebook) -> *mut gio::GListModel;
16712    pub fn gtk_notebook_get_scrollable(notebook: *mut GtkNotebook) -> gboolean;
16713    pub fn gtk_notebook_get_show_border(notebook: *mut GtkNotebook) -> gboolean;
16714    pub fn gtk_notebook_get_show_tabs(notebook: *mut GtkNotebook) -> gboolean;
16715    pub fn gtk_notebook_get_tab_detachable(
16716        notebook: *mut GtkNotebook,
16717        child: *mut GtkWidget,
16718    ) -> gboolean;
16719    pub fn gtk_notebook_get_tab_label(
16720        notebook: *mut GtkNotebook,
16721        child: *mut GtkWidget,
16722    ) -> *mut GtkWidget;
16723    pub fn gtk_notebook_get_tab_label_text(
16724        notebook: *mut GtkNotebook,
16725        child: *mut GtkWidget,
16726    ) -> *const c_char;
16727    pub fn gtk_notebook_get_tab_pos(notebook: *mut GtkNotebook) -> GtkPositionType;
16728    pub fn gtk_notebook_get_tab_reorderable(
16729        notebook: *mut GtkNotebook,
16730        child: *mut GtkWidget,
16731    ) -> gboolean;
16732    pub fn gtk_notebook_insert_page(
16733        notebook: *mut GtkNotebook,
16734        child: *mut GtkWidget,
16735        tab_label: *mut GtkWidget,
16736        position: c_int,
16737    ) -> c_int;
16738    pub fn gtk_notebook_insert_page_menu(
16739        notebook: *mut GtkNotebook,
16740        child: *mut GtkWidget,
16741        tab_label: *mut GtkWidget,
16742        menu_label: *mut GtkWidget,
16743        position: c_int,
16744    ) -> c_int;
16745    pub fn gtk_notebook_next_page(notebook: *mut GtkNotebook);
16746    pub fn gtk_notebook_page_num(notebook: *mut GtkNotebook, child: *mut GtkWidget) -> c_int;
16747    pub fn gtk_notebook_popup_disable(notebook: *mut GtkNotebook);
16748    pub fn gtk_notebook_popup_enable(notebook: *mut GtkNotebook);
16749    pub fn gtk_notebook_prepend_page(
16750        notebook: *mut GtkNotebook,
16751        child: *mut GtkWidget,
16752        tab_label: *mut GtkWidget,
16753    ) -> c_int;
16754    pub fn gtk_notebook_prepend_page_menu(
16755        notebook: *mut GtkNotebook,
16756        child: *mut GtkWidget,
16757        tab_label: *mut GtkWidget,
16758        menu_label: *mut GtkWidget,
16759    ) -> c_int;
16760    pub fn gtk_notebook_prev_page(notebook: *mut GtkNotebook);
16761    pub fn gtk_notebook_remove_page(notebook: *mut GtkNotebook, page_num: c_int);
16762    pub fn gtk_notebook_reorder_child(
16763        notebook: *mut GtkNotebook,
16764        child: *mut GtkWidget,
16765        position: c_int,
16766    );
16767    pub fn gtk_notebook_set_action_widget(
16768        notebook: *mut GtkNotebook,
16769        widget: *mut GtkWidget,
16770        pack_type: GtkPackType,
16771    );
16772    pub fn gtk_notebook_set_current_page(notebook: *mut GtkNotebook, page_num: c_int);
16773    pub fn gtk_notebook_set_group_name(notebook: *mut GtkNotebook, group_name: *const c_char);
16774    pub fn gtk_notebook_set_menu_label(
16775        notebook: *mut GtkNotebook,
16776        child: *mut GtkWidget,
16777        menu_label: *mut GtkWidget,
16778    );
16779    pub fn gtk_notebook_set_menu_label_text(
16780        notebook: *mut GtkNotebook,
16781        child: *mut GtkWidget,
16782        menu_text: *const c_char,
16783    );
16784    pub fn gtk_notebook_set_scrollable(notebook: *mut GtkNotebook, scrollable: gboolean);
16785    pub fn gtk_notebook_set_show_border(notebook: *mut GtkNotebook, show_border: gboolean);
16786    pub fn gtk_notebook_set_show_tabs(notebook: *mut GtkNotebook, show_tabs: gboolean);
16787    pub fn gtk_notebook_set_tab_detachable(
16788        notebook: *mut GtkNotebook,
16789        child: *mut GtkWidget,
16790        detachable: gboolean,
16791    );
16792    pub fn gtk_notebook_set_tab_label(
16793        notebook: *mut GtkNotebook,
16794        child: *mut GtkWidget,
16795        tab_label: *mut GtkWidget,
16796    );
16797    pub fn gtk_notebook_set_tab_label_text(
16798        notebook: *mut GtkNotebook,
16799        child: *mut GtkWidget,
16800        tab_text: *const c_char,
16801    );
16802    pub fn gtk_notebook_set_tab_pos(notebook: *mut GtkNotebook, pos: GtkPositionType);
16803    pub fn gtk_notebook_set_tab_reorderable(
16804        notebook: *mut GtkNotebook,
16805        child: *mut GtkWidget,
16806        reorderable: gboolean,
16807    );
16808
16809    //=========================================================================
16810    // GtkNotebookPage
16811    //=========================================================================
16812    pub fn gtk_notebook_page_get_type() -> GType;
16813    pub fn gtk_notebook_page_get_child(page: *mut GtkNotebookPage) -> *mut GtkWidget;
16814
16815    //=========================================================================
16816    // GtkNothingAction
16817    //=========================================================================
16818    pub fn gtk_nothing_action_get_type() -> GType;
16819    pub fn gtk_nothing_action_get() -> *mut GtkNothingAction;
16820
16821    //=========================================================================
16822    // GtkNumericSorter
16823    //=========================================================================
16824    pub fn gtk_numeric_sorter_get_type() -> GType;
16825    pub fn gtk_numeric_sorter_new(expression: *mut GtkExpression) -> *mut GtkNumericSorter;
16826    pub fn gtk_numeric_sorter_get_expression(self_: *mut GtkNumericSorter) -> *mut GtkExpression;
16827    pub fn gtk_numeric_sorter_get_sort_order(self_: *mut GtkNumericSorter) -> GtkSortType;
16828    pub fn gtk_numeric_sorter_set_expression(
16829        self_: *mut GtkNumericSorter,
16830        expression: *mut GtkExpression,
16831    );
16832    pub fn gtk_numeric_sorter_set_sort_order(self_: *mut GtkNumericSorter, sort_order: GtkSortType);
16833
16834    //=========================================================================
16835    // GtkObjectExpression
16836    //=========================================================================
16837    pub fn gtk_object_expression_get_type() -> GType;
16838    pub fn gtk_object_expression_new(object: *mut gobject::GObject) -> *mut GtkObjectExpression;
16839    pub fn gtk_object_expression_get_object(
16840        expression: *mut GtkObjectExpression,
16841    ) -> *mut gobject::GObject;
16842
16843    //=========================================================================
16844    // GtkOverlay
16845    //=========================================================================
16846    pub fn gtk_overlay_get_type() -> GType;
16847    pub fn gtk_overlay_new() -> *mut GtkWidget;
16848    pub fn gtk_overlay_add_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16849    pub fn gtk_overlay_get_child(overlay: *mut GtkOverlay) -> *mut GtkWidget;
16850    pub fn gtk_overlay_get_clip_overlay(
16851        overlay: *mut GtkOverlay,
16852        widget: *mut GtkWidget,
16853    ) -> gboolean;
16854    pub fn gtk_overlay_get_measure_overlay(
16855        overlay: *mut GtkOverlay,
16856        widget: *mut GtkWidget,
16857    ) -> gboolean;
16858    pub fn gtk_overlay_remove_overlay(overlay: *mut GtkOverlay, widget: *mut GtkWidget);
16859    pub fn gtk_overlay_set_child(overlay: *mut GtkOverlay, child: *mut GtkWidget);
16860    pub fn gtk_overlay_set_clip_overlay(
16861        overlay: *mut GtkOverlay,
16862        widget: *mut GtkWidget,
16863        clip_overlay: gboolean,
16864    );
16865    pub fn gtk_overlay_set_measure_overlay(
16866        overlay: *mut GtkOverlay,
16867        widget: *mut GtkWidget,
16868        measure: gboolean,
16869    );
16870
16871    //=========================================================================
16872    // GtkOverlayLayout
16873    //=========================================================================
16874    pub fn gtk_overlay_layout_get_type() -> GType;
16875    pub fn gtk_overlay_layout_new() -> *mut GtkLayoutManager;
16876
16877    //=========================================================================
16878    // GtkOverlayLayoutChild
16879    //=========================================================================
16880    pub fn gtk_overlay_layout_child_get_type() -> GType;
16881    pub fn gtk_overlay_layout_child_get_clip_overlay(child: *mut GtkOverlayLayoutChild)
16882    -> gboolean;
16883    pub fn gtk_overlay_layout_child_get_measure(child: *mut GtkOverlayLayoutChild) -> gboolean;
16884    pub fn gtk_overlay_layout_child_set_clip_overlay(
16885        child: *mut GtkOverlayLayoutChild,
16886        clip_overlay: gboolean,
16887    );
16888    pub fn gtk_overlay_layout_child_set_measure(
16889        child: *mut GtkOverlayLayoutChild,
16890        measure: gboolean,
16891    );
16892
16893    //=========================================================================
16894    // GtkPadController
16895    //=========================================================================
16896    pub fn gtk_pad_controller_get_type() -> GType;
16897    pub fn gtk_pad_controller_new(
16898        group: *mut gio::GActionGroup,
16899        pad: *mut gdk::GdkDevice,
16900    ) -> *mut GtkPadController;
16901    pub fn gtk_pad_controller_set_action(
16902        controller: *mut GtkPadController,
16903        type_: GtkPadActionType,
16904        index: c_int,
16905        mode: c_int,
16906        label: *const c_char,
16907        action_name: *const c_char,
16908    );
16909    pub fn gtk_pad_controller_set_action_entries(
16910        controller: *mut GtkPadController,
16911        entries: *const GtkPadActionEntry,
16912        n_entries: c_int,
16913    );
16914
16915    //=========================================================================
16916    // GtkPageSetup
16917    //=========================================================================
16918    pub fn gtk_page_setup_get_type() -> GType;
16919    pub fn gtk_page_setup_new() -> *mut GtkPageSetup;
16920    pub fn gtk_page_setup_new_from_file(
16921        file_name: *const c_char,
16922        error: *mut *mut glib::GError,
16923    ) -> *mut GtkPageSetup;
16924    pub fn gtk_page_setup_new_from_gvariant(variant: *mut glib::GVariant) -> *mut GtkPageSetup;
16925    pub fn gtk_page_setup_new_from_key_file(
16926        key_file: *mut glib::GKeyFile,
16927        group_name: *const c_char,
16928        error: *mut *mut glib::GError,
16929    ) -> *mut GtkPageSetup;
16930    pub fn gtk_page_setup_copy(other: *mut GtkPageSetup) -> *mut GtkPageSetup;
16931    pub fn gtk_page_setup_get_bottom_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16932    pub fn gtk_page_setup_get_left_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16933    pub fn gtk_page_setup_get_orientation(setup: *mut GtkPageSetup) -> GtkPageOrientation;
16934    pub fn gtk_page_setup_get_page_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16935    pub fn gtk_page_setup_get_page_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16936    pub fn gtk_page_setup_get_paper_height(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16937    pub fn gtk_page_setup_get_paper_size(setup: *mut GtkPageSetup) -> *mut GtkPaperSize;
16938    pub fn gtk_page_setup_get_paper_width(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16939    pub fn gtk_page_setup_get_right_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16940    pub fn gtk_page_setup_get_top_margin(setup: *mut GtkPageSetup, unit: GtkUnit) -> c_double;
16941    pub fn gtk_page_setup_load_file(
16942        setup: *mut GtkPageSetup,
16943        file_name: *const c_char,
16944        error: *mut *mut glib::GError,
16945    ) -> gboolean;
16946    pub fn gtk_page_setup_load_key_file(
16947        setup: *mut GtkPageSetup,
16948        key_file: *mut glib::GKeyFile,
16949        group_name: *const c_char,
16950        error: *mut *mut glib::GError,
16951    ) -> gboolean;
16952    pub fn gtk_page_setup_set_bottom_margin(
16953        setup: *mut GtkPageSetup,
16954        margin: c_double,
16955        unit: GtkUnit,
16956    );
16957    pub fn gtk_page_setup_set_left_margin(
16958        setup: *mut GtkPageSetup,
16959        margin: c_double,
16960        unit: GtkUnit,
16961    );
16962    pub fn gtk_page_setup_set_orientation(
16963        setup: *mut GtkPageSetup,
16964        orientation: GtkPageOrientation,
16965    );
16966    pub fn gtk_page_setup_set_paper_size(setup: *mut GtkPageSetup, size: *mut GtkPaperSize);
16967    pub fn gtk_page_setup_set_paper_size_and_default_margins(
16968        setup: *mut GtkPageSetup,
16969        size: *mut GtkPaperSize,
16970    );
16971    pub fn gtk_page_setup_set_right_margin(
16972        setup: *mut GtkPageSetup,
16973        margin: c_double,
16974        unit: GtkUnit,
16975    );
16976    pub fn gtk_page_setup_set_top_margin(setup: *mut GtkPageSetup, margin: c_double, unit: GtkUnit);
16977    pub fn gtk_page_setup_to_file(
16978        setup: *mut GtkPageSetup,
16979        file_name: *const c_char,
16980        error: *mut *mut glib::GError,
16981    ) -> gboolean;
16982    pub fn gtk_page_setup_to_gvariant(setup: *mut GtkPageSetup) -> *mut glib::GVariant;
16983    pub fn gtk_page_setup_to_key_file(
16984        setup: *mut GtkPageSetup,
16985        key_file: *mut glib::GKeyFile,
16986        group_name: *const c_char,
16987    );
16988
16989    //=========================================================================
16990    // GtkPageSetupUnixDialog
16991    //=========================================================================
16992    pub fn gtk_page_setup_unix_dialog_get_type() -> GType;
16993    pub fn gtk_page_setup_unix_dialog_new(
16994        title: *const c_char,
16995        parent: *mut GtkWindow,
16996    ) -> *mut GtkWidget;
16997    pub fn gtk_page_setup_unix_dialog_get_page_setup(
16998        dialog: *mut GtkPageSetupUnixDialog,
16999    ) -> *mut GtkPageSetup;
17000    pub fn gtk_page_setup_unix_dialog_get_print_settings(
17001        dialog: *mut GtkPageSetupUnixDialog,
17002    ) -> *mut GtkPrintSettings;
17003    pub fn gtk_page_setup_unix_dialog_set_page_setup(
17004        dialog: *mut GtkPageSetupUnixDialog,
17005        page_setup: *mut GtkPageSetup,
17006    );
17007    pub fn gtk_page_setup_unix_dialog_set_print_settings(
17008        dialog: *mut GtkPageSetupUnixDialog,
17009        print_settings: *mut GtkPrintSettings,
17010    );
17011
17012    //=========================================================================
17013    // GtkPaned
17014    //=========================================================================
17015    pub fn gtk_paned_get_type() -> GType;
17016    pub fn gtk_paned_new(orientation: GtkOrientation) -> *mut GtkWidget;
17017    pub fn gtk_paned_get_end_child(paned: *mut GtkPaned) -> *mut GtkWidget;
17018    pub fn gtk_paned_get_position(paned: *mut GtkPaned) -> c_int;
17019    pub fn gtk_paned_get_resize_end_child(paned: *mut GtkPaned) -> gboolean;
17020    pub fn gtk_paned_get_resize_start_child(paned: *mut GtkPaned) -> gboolean;
17021    pub fn gtk_paned_get_shrink_end_child(paned: *mut GtkPaned) -> gboolean;
17022    pub fn gtk_paned_get_shrink_start_child(paned: *mut GtkPaned) -> gboolean;
17023    pub fn gtk_paned_get_start_child(paned: *mut GtkPaned) -> *mut GtkWidget;
17024    pub fn gtk_paned_get_wide_handle(paned: *mut GtkPaned) -> gboolean;
17025    pub fn gtk_paned_set_end_child(paned: *mut GtkPaned, child: *mut GtkWidget);
17026    pub fn gtk_paned_set_position(paned: *mut GtkPaned, position: c_int);
17027    pub fn gtk_paned_set_resize_end_child(paned: *mut GtkPaned, resize: gboolean);
17028    pub fn gtk_paned_set_resize_start_child(paned: *mut GtkPaned, resize: gboolean);
17029    pub fn gtk_paned_set_shrink_end_child(paned: *mut GtkPaned, resize: gboolean);
17030    pub fn gtk_paned_set_shrink_start_child(paned: *mut GtkPaned, resize: gboolean);
17031    pub fn gtk_paned_set_start_child(paned: *mut GtkPaned, child: *mut GtkWidget);
17032    pub fn gtk_paned_set_wide_handle(paned: *mut GtkPaned, wide: gboolean);
17033
17034    //=========================================================================
17035    // GtkParamSpecExpression
17036    //=========================================================================
17037    pub fn gtk_param_expression_get_type() -> GType;
17038
17039    //=========================================================================
17040    // GtkPasswordEntry
17041    //=========================================================================
17042    pub fn gtk_password_entry_get_type() -> GType;
17043    pub fn gtk_password_entry_new() -> *mut GtkWidget;
17044    pub fn gtk_password_entry_get_extra_menu(entry: *mut GtkPasswordEntry) -> *mut gio::GMenuModel;
17045    pub fn gtk_password_entry_get_show_peek_icon(entry: *mut GtkPasswordEntry) -> gboolean;
17046    pub fn gtk_password_entry_set_extra_menu(
17047        entry: *mut GtkPasswordEntry,
17048        model: *mut gio::GMenuModel,
17049    );
17050    pub fn gtk_password_entry_set_show_peek_icon(
17051        entry: *mut GtkPasswordEntry,
17052        show_peek_icon: gboolean,
17053    );
17054
17055    //=========================================================================
17056    // GtkPasswordEntryBuffer
17057    //=========================================================================
17058    #[cfg(feature = "v4_4")]
17059    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17060    pub fn gtk_password_entry_buffer_get_type() -> GType;
17061    #[cfg(feature = "v4_4")]
17062    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
17063    pub fn gtk_password_entry_buffer_new() -> *mut GtkEntryBuffer;
17064
17065    //=========================================================================
17066    // GtkPicture
17067    //=========================================================================
17068    pub fn gtk_picture_get_type() -> GType;
17069    pub fn gtk_picture_new() -> *mut GtkWidget;
17070    pub fn gtk_picture_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
17071    pub fn gtk_picture_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
17072    pub fn gtk_picture_new_for_paintable(paintable: *mut gdk::GdkPaintable) -> *mut GtkWidget;
17073    pub fn gtk_picture_new_for_pixbuf(pixbuf: *mut gdk_pixbuf::GdkPixbuf) -> *mut GtkWidget;
17074    pub fn gtk_picture_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
17075    pub fn gtk_picture_get_alternative_text(self_: *mut GtkPicture) -> *const c_char;
17076    pub fn gtk_picture_get_can_shrink(self_: *mut GtkPicture) -> gboolean;
17077    #[cfg(feature = "v4_8")]
17078    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17079    pub fn gtk_picture_get_content_fit(self_: *mut GtkPicture) -> GtkContentFit;
17080    pub fn gtk_picture_get_file(self_: *mut GtkPicture) -> *mut gio::GFile;
17081    #[cfg(feature = "v4_22")]
17082    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17083    pub fn gtk_picture_get_isolate_contents(self_: *mut GtkPicture) -> gboolean;
17084    pub fn gtk_picture_get_keep_aspect_ratio(self_: *mut GtkPicture) -> gboolean;
17085    pub fn gtk_picture_get_paintable(self_: *mut GtkPicture) -> *mut gdk::GdkPaintable;
17086    pub fn gtk_picture_set_alternative_text(
17087        self_: *mut GtkPicture,
17088        alternative_text: *const c_char,
17089    );
17090    pub fn gtk_picture_set_can_shrink(self_: *mut GtkPicture, can_shrink: gboolean);
17091    #[cfg(feature = "v4_8")]
17092    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
17093    pub fn gtk_picture_set_content_fit(self_: *mut GtkPicture, content_fit: GtkContentFit);
17094    pub fn gtk_picture_set_file(self_: *mut GtkPicture, file: *mut gio::GFile);
17095    pub fn gtk_picture_set_filename(self_: *mut GtkPicture, filename: *const c_char);
17096    #[cfg(feature = "v4_22")]
17097    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17098    pub fn gtk_picture_set_isolate_contents(self_: *mut GtkPicture, isolate_contents: gboolean);
17099    pub fn gtk_picture_set_keep_aspect_ratio(self_: *mut GtkPicture, keep_aspect_ratio: gboolean);
17100    pub fn gtk_picture_set_paintable(self_: *mut GtkPicture, paintable: *mut gdk::GdkPaintable);
17101    pub fn gtk_picture_set_pixbuf(self_: *mut GtkPicture, pixbuf: *mut gdk_pixbuf::GdkPixbuf);
17102    pub fn gtk_picture_set_resource(self_: *mut GtkPicture, resource_path: *const c_char);
17103
17104    //=========================================================================
17105    // GtkPopover
17106    //=========================================================================
17107    pub fn gtk_popover_get_type() -> GType;
17108    pub fn gtk_popover_new() -> *mut GtkWidget;
17109    pub fn gtk_popover_get_autohide(popover: *mut GtkPopover) -> gboolean;
17110    pub fn gtk_popover_get_cascade_popdown(popover: *mut GtkPopover) -> gboolean;
17111    pub fn gtk_popover_get_child(popover: *mut GtkPopover) -> *mut GtkWidget;
17112    pub fn gtk_popover_get_has_arrow(popover: *mut GtkPopover) -> gboolean;
17113    pub fn gtk_popover_get_mnemonics_visible(popover: *mut GtkPopover) -> gboolean;
17114    pub fn gtk_popover_get_offset(
17115        popover: *mut GtkPopover,
17116        x_offset: *mut c_int,
17117        y_offset: *mut c_int,
17118    );
17119    pub fn gtk_popover_get_pointing_to(
17120        popover: *mut GtkPopover,
17121        rect: *mut gdk::GdkRectangle,
17122    ) -> gboolean;
17123    pub fn gtk_popover_get_position(popover: *mut GtkPopover) -> GtkPositionType;
17124    pub fn gtk_popover_popdown(popover: *mut GtkPopover);
17125    pub fn gtk_popover_popup(popover: *mut GtkPopover);
17126    pub fn gtk_popover_present(popover: *mut GtkPopover);
17127    pub fn gtk_popover_set_autohide(popover: *mut GtkPopover, autohide: gboolean);
17128    pub fn gtk_popover_set_cascade_popdown(popover: *mut GtkPopover, cascade_popdown: gboolean);
17129    pub fn gtk_popover_set_child(popover: *mut GtkPopover, child: *mut GtkWidget);
17130    pub fn gtk_popover_set_default_widget(popover: *mut GtkPopover, widget: *mut GtkWidget);
17131    pub fn gtk_popover_set_has_arrow(popover: *mut GtkPopover, has_arrow: gboolean);
17132    pub fn gtk_popover_set_mnemonics_visible(popover: *mut GtkPopover, mnemonics_visible: gboolean);
17133    pub fn gtk_popover_set_offset(popover: *mut GtkPopover, x_offset: c_int, y_offset: c_int);
17134    pub fn gtk_popover_set_pointing_to(popover: *mut GtkPopover, rect: *const gdk::GdkRectangle);
17135    pub fn gtk_popover_set_position(popover: *mut GtkPopover, position: GtkPositionType);
17136
17137    //=========================================================================
17138    // GtkPopoverBin
17139    //=========================================================================
17140    #[cfg(feature = "v4_22")]
17141    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17142    pub fn gtk_popover_bin_get_type() -> GType;
17143    #[cfg(feature = "v4_22")]
17144    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17145    pub fn gtk_popover_bin_new() -> *mut GtkWidget;
17146    #[cfg(feature = "v4_22")]
17147    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17148    pub fn gtk_popover_bin_get_child(self_: *mut GtkPopoverBin) -> *mut GtkWidget;
17149    #[cfg(feature = "v4_22")]
17150    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17151    pub fn gtk_popover_bin_get_handle_input(self_: *mut GtkPopoverBin) -> gboolean;
17152    #[cfg(feature = "v4_22")]
17153    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17154    pub fn gtk_popover_bin_get_menu_model(self_: *mut GtkPopoverBin) -> *mut gio::GMenuModel;
17155    #[cfg(feature = "v4_22")]
17156    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17157    pub fn gtk_popover_bin_get_popover(self_: *mut GtkPopoverBin) -> *mut GtkPopover;
17158    #[cfg(feature = "v4_22")]
17159    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17160    pub fn gtk_popover_bin_popdown(self_: *mut GtkPopoverBin);
17161    #[cfg(feature = "v4_22")]
17162    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17163    pub fn gtk_popover_bin_popup(self_: *mut GtkPopoverBin);
17164    #[cfg(feature = "v4_22")]
17165    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17166    pub fn gtk_popover_bin_set_child(self_: *mut GtkPopoverBin, child: *mut GtkWidget);
17167    #[cfg(feature = "v4_22")]
17168    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17169    pub fn gtk_popover_bin_set_handle_input(self_: *mut GtkPopoverBin, handle_input: gboolean);
17170    #[cfg(feature = "v4_22")]
17171    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17172    pub fn gtk_popover_bin_set_menu_model(self_: *mut GtkPopoverBin, model: *mut gio::GMenuModel);
17173    #[cfg(feature = "v4_22")]
17174    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
17175    pub fn gtk_popover_bin_set_popover(self_: *mut GtkPopoverBin, popover: *mut GtkPopover);
17176
17177    //=========================================================================
17178    // GtkPopoverMenu
17179    //=========================================================================
17180    pub fn gtk_popover_menu_get_type() -> GType;
17181    pub fn gtk_popover_menu_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17182    pub fn gtk_popover_menu_new_from_model_full(
17183        model: *mut gio::GMenuModel,
17184        flags: GtkPopoverMenuFlags,
17185    ) -> *mut GtkWidget;
17186    pub fn gtk_popover_menu_add_child(
17187        popover: *mut GtkPopoverMenu,
17188        child: *mut GtkWidget,
17189        id: *const c_char,
17190    ) -> gboolean;
17191    #[cfg(feature = "v4_14")]
17192    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17193    pub fn gtk_popover_menu_get_flags(popover: *mut GtkPopoverMenu) -> GtkPopoverMenuFlags;
17194    pub fn gtk_popover_menu_get_menu_model(popover: *mut GtkPopoverMenu) -> *mut gio::GMenuModel;
17195    pub fn gtk_popover_menu_remove_child(
17196        popover: *mut GtkPopoverMenu,
17197        child: *mut GtkWidget,
17198    ) -> gboolean;
17199    #[cfg(feature = "v4_14")]
17200    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17201    pub fn gtk_popover_menu_set_flags(popover: *mut GtkPopoverMenu, flags: GtkPopoverMenuFlags);
17202    pub fn gtk_popover_menu_set_menu_model(
17203        popover: *mut GtkPopoverMenu,
17204        model: *mut gio::GMenuModel,
17205    );
17206
17207    //=========================================================================
17208    // GtkPopoverMenuBar
17209    //=========================================================================
17210    pub fn gtk_popover_menu_bar_get_type() -> GType;
17211    pub fn gtk_popover_menu_bar_new_from_model(model: *mut gio::GMenuModel) -> *mut GtkWidget;
17212    pub fn gtk_popover_menu_bar_add_child(
17213        bar: *mut GtkPopoverMenuBar,
17214        child: *mut GtkWidget,
17215        id: *const c_char,
17216    ) -> gboolean;
17217    pub fn gtk_popover_menu_bar_get_menu_model(bar: *mut GtkPopoverMenuBar)
17218    -> *mut gio::GMenuModel;
17219    pub fn gtk_popover_menu_bar_remove_child(
17220        bar: *mut GtkPopoverMenuBar,
17221        child: *mut GtkWidget,
17222    ) -> gboolean;
17223    pub fn gtk_popover_menu_bar_set_menu_model(
17224        bar: *mut GtkPopoverMenuBar,
17225        model: *mut gio::GMenuModel,
17226    );
17227
17228    //=========================================================================
17229    // GtkPrintContext
17230    //=========================================================================
17231    pub fn gtk_print_context_get_type() -> GType;
17232    pub fn gtk_print_context_create_pango_context(
17233        context: *mut GtkPrintContext,
17234    ) -> *mut pango::PangoContext;
17235    pub fn gtk_print_context_create_pango_layout(
17236        context: *mut GtkPrintContext,
17237    ) -> *mut pango::PangoLayout;
17238    pub fn gtk_print_context_get_cairo_context(
17239        context: *mut GtkPrintContext,
17240    ) -> *mut cairo::cairo_t;
17241    pub fn gtk_print_context_get_dpi_x(context: *mut GtkPrintContext) -> c_double;
17242    pub fn gtk_print_context_get_dpi_y(context: *mut GtkPrintContext) -> c_double;
17243    pub fn gtk_print_context_get_hard_margins(
17244        context: *mut GtkPrintContext,
17245        top: *mut c_double,
17246        bottom: *mut c_double,
17247        left: *mut c_double,
17248        right: *mut c_double,
17249    ) -> gboolean;
17250    pub fn gtk_print_context_get_height(context: *mut GtkPrintContext) -> c_double;
17251    pub fn gtk_print_context_get_page_setup(context: *mut GtkPrintContext) -> *mut GtkPageSetup;
17252    pub fn gtk_print_context_get_pango_fontmap(
17253        context: *mut GtkPrintContext,
17254    ) -> *mut pango::PangoFontMap;
17255    pub fn gtk_print_context_get_width(context: *mut GtkPrintContext) -> c_double;
17256    pub fn gtk_print_context_set_cairo_context(
17257        context: *mut GtkPrintContext,
17258        cr: *mut cairo::cairo_t,
17259        dpi_x: c_double,
17260        dpi_y: c_double,
17261    );
17262
17263    //=========================================================================
17264    // GtkPrintDialog
17265    //=========================================================================
17266    #[cfg(feature = "v4_14")]
17267    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17268    pub fn gtk_print_dialog_get_type() -> GType;
17269    #[cfg(feature = "v4_14")]
17270    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17271    pub fn gtk_print_dialog_new() -> *mut GtkPrintDialog;
17272    #[cfg(feature = "v4_14")]
17273    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17274    pub fn gtk_print_dialog_get_accept_label(self_: *mut GtkPrintDialog) -> *const c_char;
17275    #[cfg(feature = "v4_14")]
17276    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17277    pub fn gtk_print_dialog_get_modal(self_: *mut GtkPrintDialog) -> gboolean;
17278    #[cfg(feature = "v4_14")]
17279    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17280    pub fn gtk_print_dialog_get_page_setup(self_: *mut GtkPrintDialog) -> *mut GtkPageSetup;
17281    #[cfg(feature = "v4_14")]
17282    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17283    pub fn gtk_print_dialog_get_print_settings(self_: *mut GtkPrintDialog)
17284    -> *mut GtkPrintSettings;
17285    #[cfg(feature = "v4_14")]
17286    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17287    pub fn gtk_print_dialog_get_title(self_: *mut GtkPrintDialog) -> *const c_char;
17288    #[cfg(feature = "v4_14")]
17289    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17290    pub fn gtk_print_dialog_print(
17291        self_: *mut GtkPrintDialog,
17292        parent: *mut GtkWindow,
17293        setup: *mut GtkPrintSetup,
17294        cancellable: *mut gio::GCancellable,
17295        callback: gio::GAsyncReadyCallback,
17296        user_data: gpointer,
17297    );
17298    #[cfg(feature = "v4_14")]
17299    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17300    pub fn gtk_print_dialog_print_file(
17301        self_: *mut GtkPrintDialog,
17302        parent: *mut GtkWindow,
17303        setup: *mut GtkPrintSetup,
17304        file: *mut gio::GFile,
17305        cancellable: *mut gio::GCancellable,
17306        callback: gio::GAsyncReadyCallback,
17307        user_data: gpointer,
17308    );
17309    #[cfg(feature = "v4_14")]
17310    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17311    pub fn gtk_print_dialog_print_file_finish(
17312        self_: *mut GtkPrintDialog,
17313        result: *mut gio::GAsyncResult,
17314        error: *mut *mut glib::GError,
17315    ) -> gboolean;
17316    #[cfg(feature = "v4_14")]
17317    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17318    pub fn gtk_print_dialog_print_finish(
17319        self_: *mut GtkPrintDialog,
17320        result: *mut gio::GAsyncResult,
17321        error: *mut *mut glib::GError,
17322    ) -> *mut gio::GOutputStream;
17323    #[cfg(feature = "v4_14")]
17324    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17325    pub fn gtk_print_dialog_set_accept_label(
17326        self_: *mut GtkPrintDialog,
17327        accept_label: *const c_char,
17328    );
17329    #[cfg(feature = "v4_14")]
17330    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17331    pub fn gtk_print_dialog_set_modal(self_: *mut GtkPrintDialog, modal: gboolean);
17332    #[cfg(feature = "v4_14")]
17333    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17334    pub fn gtk_print_dialog_set_page_setup(
17335        self_: *mut GtkPrintDialog,
17336        page_setup: *mut GtkPageSetup,
17337    );
17338    #[cfg(feature = "v4_14")]
17339    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17340    pub fn gtk_print_dialog_set_print_settings(
17341        self_: *mut GtkPrintDialog,
17342        print_settings: *mut GtkPrintSettings,
17343    );
17344    #[cfg(feature = "v4_14")]
17345    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17346    pub fn gtk_print_dialog_set_title(self_: *mut GtkPrintDialog, title: *const c_char);
17347    #[cfg(feature = "v4_14")]
17348    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17349    pub fn gtk_print_dialog_setup(
17350        self_: *mut GtkPrintDialog,
17351        parent: *mut GtkWindow,
17352        cancellable: *mut gio::GCancellable,
17353        callback: gio::GAsyncReadyCallback,
17354        user_data: gpointer,
17355    );
17356    #[cfg(feature = "v4_14")]
17357    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
17358    pub fn gtk_print_dialog_setup_finish(
17359        self_: *mut GtkPrintDialog,
17360        result: *mut gio::GAsyncResult,
17361        error: *mut *mut glib::GError,
17362    ) -> *mut GtkPrintSetup;
17363
17364    //=========================================================================
17365    // GtkPrintJob
17366    //=========================================================================
17367    pub fn gtk_print_job_get_type() -> GType;
17368    pub fn gtk_print_job_new(
17369        title: *const c_char,
17370        printer: *mut GtkPrinter,
17371        settings: *mut GtkPrintSettings,
17372        page_setup: *mut GtkPageSetup,
17373    ) -> *mut GtkPrintJob;
17374    pub fn gtk_print_job_get_collate(job: *mut GtkPrintJob) -> gboolean;
17375    pub fn gtk_print_job_get_n_up(job: *mut GtkPrintJob) -> c_uint;
17376    pub fn gtk_print_job_get_n_up_layout(job: *mut GtkPrintJob) -> GtkNumberUpLayout;
17377    pub fn gtk_print_job_get_num_copies(job: *mut GtkPrintJob) -> c_int;
17378    pub fn gtk_print_job_get_page_ranges(
17379        job: *mut GtkPrintJob,
17380        n_ranges: *mut c_int,
17381    ) -> *mut GtkPageRange;
17382    pub fn gtk_print_job_get_page_set(job: *mut GtkPrintJob) -> GtkPageSet;
17383    pub fn gtk_print_job_get_pages(job: *mut GtkPrintJob) -> GtkPrintPages;
17384    pub fn gtk_print_job_get_printer(job: *mut GtkPrintJob) -> *mut GtkPrinter;
17385    pub fn gtk_print_job_get_reverse(job: *mut GtkPrintJob) -> gboolean;
17386    pub fn gtk_print_job_get_rotate(job: *mut GtkPrintJob) -> gboolean;
17387    pub fn gtk_print_job_get_scale(job: *mut GtkPrintJob) -> c_double;
17388    pub fn gtk_print_job_get_settings(job: *mut GtkPrintJob) -> *mut GtkPrintSettings;
17389    pub fn gtk_print_job_get_status(job: *mut GtkPrintJob) -> GtkPrintStatus;
17390    pub fn gtk_print_job_get_surface(
17391        job: *mut GtkPrintJob,
17392        error: *mut *mut glib::GError,
17393    ) -> *mut cairo::cairo_surface_t;
17394    pub fn gtk_print_job_get_title(job: *mut GtkPrintJob) -> *const c_char;
17395    pub fn gtk_print_job_get_track_print_status(job: *mut GtkPrintJob) -> gboolean;
17396    pub fn gtk_print_job_send(
17397        job: *mut GtkPrintJob,
17398        callback: GtkPrintJobCompleteFunc,
17399        user_data: gpointer,
17400        dnotify: glib::GDestroyNotify,
17401    );
17402    pub fn gtk_print_job_set_collate(job: *mut GtkPrintJob, collate: gboolean);
17403    pub fn gtk_print_job_set_n_up(job: *mut GtkPrintJob, n_up: c_uint);
17404    pub fn gtk_print_job_set_n_up_layout(job: *mut GtkPrintJob, layout: GtkNumberUpLayout);
17405    pub fn gtk_print_job_set_num_copies(job: *mut GtkPrintJob, num_copies: c_int);
17406    pub fn gtk_print_job_set_page_ranges(
17407        job: *mut GtkPrintJob,
17408        ranges: *mut GtkPageRange,
17409        n_ranges: c_int,
17410    );
17411    pub fn gtk_print_job_set_page_set(job: *mut GtkPrintJob, page_set: GtkPageSet);
17412    pub fn gtk_print_job_set_pages(job: *mut GtkPrintJob, pages: GtkPrintPages);
17413    pub fn gtk_print_job_set_reverse(job: *mut GtkPrintJob, reverse: gboolean);
17414    pub fn gtk_print_job_set_rotate(job: *mut GtkPrintJob, rotate: gboolean);
17415    pub fn gtk_print_job_set_scale(job: *mut GtkPrintJob, scale: c_double);
17416    pub fn gtk_print_job_set_source_fd(
17417        job: *mut GtkPrintJob,
17418        fd: c_int,
17419        error: *mut *mut glib::GError,
17420    ) -> gboolean;
17421    pub fn gtk_print_job_set_source_file(
17422        job: *mut GtkPrintJob,
17423        filename: *const c_char,
17424        error: *mut *mut glib::GError,
17425    ) -> gboolean;
17426    pub fn gtk_print_job_set_track_print_status(job: *mut GtkPrintJob, track_status: gboolean);
17427
17428    //=========================================================================
17429    // GtkPrintOperation
17430    //=========================================================================
17431    pub fn gtk_print_operation_get_type() -> GType;
17432    pub fn gtk_print_operation_new() -> *mut GtkPrintOperation;
17433    pub fn gtk_print_operation_cancel(op: *mut GtkPrintOperation);
17434    pub fn gtk_print_operation_draw_page_finish(op: *mut GtkPrintOperation);
17435    pub fn gtk_print_operation_get_default_page_setup(
17436        op: *mut GtkPrintOperation,
17437    ) -> *mut GtkPageSetup;
17438    pub fn gtk_print_operation_get_embed_page_setup(op: *mut GtkPrintOperation) -> gboolean;
17439    pub fn gtk_print_operation_get_error(op: *mut GtkPrintOperation, error: *mut *mut glib::GError);
17440    pub fn gtk_print_operation_get_has_selection(op: *mut GtkPrintOperation) -> gboolean;
17441    pub fn gtk_print_operation_get_n_pages_to_print(op: *mut GtkPrintOperation) -> c_int;
17442    pub fn gtk_print_operation_get_print_settings(
17443        op: *mut GtkPrintOperation,
17444    ) -> *mut GtkPrintSettings;
17445    pub fn gtk_print_operation_get_status(op: *mut GtkPrintOperation) -> GtkPrintStatus;
17446    pub fn gtk_print_operation_get_status_string(op: *mut GtkPrintOperation) -> *const c_char;
17447    pub fn gtk_print_operation_get_support_selection(op: *mut GtkPrintOperation) -> gboolean;
17448    pub fn gtk_print_operation_is_finished(op: *mut GtkPrintOperation) -> gboolean;
17449    pub fn gtk_print_operation_run(
17450        op: *mut GtkPrintOperation,
17451        action: GtkPrintOperationAction,
17452        parent: *mut GtkWindow,
17453        error: *mut *mut glib::GError,
17454    ) -> GtkPrintOperationResult;
17455    pub fn gtk_print_operation_set_allow_async(op: *mut GtkPrintOperation, allow_async: gboolean);
17456    pub fn gtk_print_operation_set_current_page(op: *mut GtkPrintOperation, current_page: c_int);
17457    pub fn gtk_print_operation_set_custom_tab_label(
17458        op: *mut GtkPrintOperation,
17459        label: *const c_char,
17460    );
17461    pub fn gtk_print_operation_set_default_page_setup(
17462        op: *mut GtkPrintOperation,
17463        default_page_setup: *mut GtkPageSetup,
17464    );
17465    pub fn gtk_print_operation_set_defer_drawing(op: *mut GtkPrintOperation);
17466    pub fn gtk_print_operation_set_embed_page_setup(op: *mut GtkPrintOperation, embed: gboolean);
17467    pub fn gtk_print_operation_set_export_filename(
17468        op: *mut GtkPrintOperation,
17469        filename: *const c_char,
17470    );
17471    pub fn gtk_print_operation_set_has_selection(
17472        op: *mut GtkPrintOperation,
17473        has_selection: gboolean,
17474    );
17475    pub fn gtk_print_operation_set_job_name(op: *mut GtkPrintOperation, job_name: *const c_char);
17476    pub fn gtk_print_operation_set_n_pages(op: *mut GtkPrintOperation, n_pages: c_int);
17477    pub fn gtk_print_operation_set_print_settings(
17478        op: *mut GtkPrintOperation,
17479        print_settings: *mut GtkPrintSettings,
17480    );
17481    pub fn gtk_print_operation_set_show_progress(
17482        op: *mut GtkPrintOperation,
17483        show_progress: gboolean,
17484    );
17485    pub fn gtk_print_operation_set_support_selection(
17486        op: *mut GtkPrintOperation,
17487        support_selection: gboolean,
17488    );
17489    pub fn gtk_print_operation_set_track_print_status(
17490        op: *mut GtkPrintOperation,
17491        track_status: gboolean,
17492    );
17493    pub fn gtk_print_operation_set_unit(op: *mut GtkPrintOperation, unit: GtkUnit);
17494    pub fn gtk_print_operation_set_use_full_page(op: *mut GtkPrintOperation, full_page: gboolean);
17495
17496    //=========================================================================
17497    // GtkPrintSettings
17498    //=========================================================================
17499    pub fn gtk_print_settings_get_type() -> GType;
17500    pub fn gtk_print_settings_new() -> *mut GtkPrintSettings;
17501    pub fn gtk_print_settings_new_from_file(
17502        file_name: *const c_char,
17503        error: *mut *mut glib::GError,
17504    ) -> *mut GtkPrintSettings;
17505    pub fn gtk_print_settings_new_from_gvariant(
17506        variant: *mut glib::GVariant,
17507    ) -> *mut GtkPrintSettings;
17508    pub fn gtk_print_settings_new_from_key_file(
17509        key_file: *mut glib::GKeyFile,
17510        group_name: *const c_char,
17511        error: *mut *mut glib::GError,
17512    ) -> *mut GtkPrintSettings;
17513    pub fn gtk_print_settings_copy(other: *mut GtkPrintSettings) -> *mut GtkPrintSettings;
17514    pub fn gtk_print_settings_foreach(
17515        settings: *mut GtkPrintSettings,
17516        func: GtkPrintSettingsFunc,
17517        user_data: gpointer,
17518    );
17519    pub fn gtk_print_settings_get(
17520        settings: *mut GtkPrintSettings,
17521        key: *const c_char,
17522    ) -> *const c_char;
17523    pub fn gtk_print_settings_get_bool(
17524        settings: *mut GtkPrintSettings,
17525        key: *const c_char,
17526    ) -> gboolean;
17527    pub fn gtk_print_settings_get_collate(settings: *mut GtkPrintSettings) -> gboolean;
17528    pub fn gtk_print_settings_get_default_source(settings: *mut GtkPrintSettings) -> *const c_char;
17529    pub fn gtk_print_settings_get_dither(settings: *mut GtkPrintSettings) -> *const c_char;
17530    pub fn gtk_print_settings_get_double(
17531        settings: *mut GtkPrintSettings,
17532        key: *const c_char,
17533    ) -> c_double;
17534    pub fn gtk_print_settings_get_double_with_default(
17535        settings: *mut GtkPrintSettings,
17536        key: *const c_char,
17537        def: c_double,
17538    ) -> c_double;
17539    pub fn gtk_print_settings_get_duplex(settings: *mut GtkPrintSettings) -> GtkPrintDuplex;
17540    pub fn gtk_print_settings_get_finishings(settings: *mut GtkPrintSettings) -> *const c_char;
17541    pub fn gtk_print_settings_get_int(settings: *mut GtkPrintSettings, key: *const c_char)
17542    -> c_int;
17543    pub fn gtk_print_settings_get_int_with_default(
17544        settings: *mut GtkPrintSettings,
17545        key: *const c_char,
17546        def: c_int,
17547    ) -> c_int;
17548    pub fn gtk_print_settings_get_length(
17549        settings: *mut GtkPrintSettings,
17550        key: *const c_char,
17551        unit: GtkUnit,
17552    ) -> c_double;
17553    pub fn gtk_print_settings_get_media_type(settings: *mut GtkPrintSettings) -> *const c_char;
17554    pub fn gtk_print_settings_get_n_copies(settings: *mut GtkPrintSettings) -> c_int;
17555    pub fn gtk_print_settings_get_number_up(settings: *mut GtkPrintSettings) -> c_int;
17556    pub fn gtk_print_settings_get_number_up_layout(
17557        settings: *mut GtkPrintSettings,
17558    ) -> GtkNumberUpLayout;
17559    pub fn gtk_print_settings_get_orientation(
17560        settings: *mut GtkPrintSettings,
17561    ) -> GtkPageOrientation;
17562    pub fn gtk_print_settings_get_output_bin(settings: *mut GtkPrintSettings) -> *const c_char;
17563    pub fn gtk_print_settings_get_page_ranges(
17564        settings: *mut GtkPrintSettings,
17565        num_ranges: *mut c_int,
17566    ) -> *mut GtkPageRange;
17567    pub fn gtk_print_settings_get_page_set(settings: *mut GtkPrintSettings) -> GtkPageSet;
17568    pub fn gtk_print_settings_get_paper_height(
17569        settings: *mut GtkPrintSettings,
17570        unit: GtkUnit,
17571    ) -> c_double;
17572    pub fn gtk_print_settings_get_paper_size(settings: *mut GtkPrintSettings) -> *mut GtkPaperSize;
17573    pub fn gtk_print_settings_get_paper_width(
17574        settings: *mut GtkPrintSettings,
17575        unit: GtkUnit,
17576    ) -> c_double;
17577    pub fn gtk_print_settings_get_print_pages(settings: *mut GtkPrintSettings) -> GtkPrintPages;
17578    pub fn gtk_print_settings_get_printer(settings: *mut GtkPrintSettings) -> *const c_char;
17579    pub fn gtk_print_settings_get_printer_lpi(settings: *mut GtkPrintSettings) -> c_double;
17580    pub fn gtk_print_settings_get_quality(settings: *mut GtkPrintSettings) -> GtkPrintQuality;
17581    pub fn gtk_print_settings_get_resolution(settings: *mut GtkPrintSettings) -> c_int;
17582    pub fn gtk_print_settings_get_resolution_x(settings: *mut GtkPrintSettings) -> c_int;
17583    pub fn gtk_print_settings_get_resolution_y(settings: *mut GtkPrintSettings) -> c_int;
17584    pub fn gtk_print_settings_get_reverse(settings: *mut GtkPrintSettings) -> gboolean;
17585    pub fn gtk_print_settings_get_scale(settings: *mut GtkPrintSettings) -> c_double;
17586    pub fn gtk_print_settings_get_use_color(settings: *mut GtkPrintSettings) -> gboolean;
17587    pub fn gtk_print_settings_has_key(
17588        settings: *mut GtkPrintSettings,
17589        key: *const c_char,
17590    ) -> gboolean;
17591    pub fn gtk_print_settings_load_file(
17592        settings: *mut GtkPrintSettings,
17593        file_name: *const c_char,
17594        error: *mut *mut glib::GError,
17595    ) -> gboolean;
17596    pub fn gtk_print_settings_load_key_file(
17597        settings: *mut GtkPrintSettings,
17598        key_file: *mut glib::GKeyFile,
17599        group_name: *const c_char,
17600        error: *mut *mut glib::GError,
17601    ) -> gboolean;
17602    pub fn gtk_print_settings_set(
17603        settings: *mut GtkPrintSettings,
17604        key: *const c_char,
17605        value: *const c_char,
17606    );
17607    pub fn gtk_print_settings_set_bool(
17608        settings: *mut GtkPrintSettings,
17609        key: *const c_char,
17610        value: gboolean,
17611    );
17612    pub fn gtk_print_settings_set_collate(settings: *mut GtkPrintSettings, collate: gboolean);
17613    pub fn gtk_print_settings_set_default_source(
17614        settings: *mut GtkPrintSettings,
17615        default_source: *const c_char,
17616    );
17617    pub fn gtk_print_settings_set_dither(settings: *mut GtkPrintSettings, dither: *const c_char);
17618    pub fn gtk_print_settings_set_double(
17619        settings: *mut GtkPrintSettings,
17620        key: *const c_char,
17621        value: c_double,
17622    );
17623    pub fn gtk_print_settings_set_duplex(settings: *mut GtkPrintSettings, duplex: GtkPrintDuplex);
17624    pub fn gtk_print_settings_set_finishings(
17625        settings: *mut GtkPrintSettings,
17626        finishings: *const c_char,
17627    );
17628    pub fn gtk_print_settings_set_int(
17629        settings: *mut GtkPrintSettings,
17630        key: *const c_char,
17631        value: c_int,
17632    );
17633    pub fn gtk_print_settings_set_length(
17634        settings: *mut GtkPrintSettings,
17635        key: *const c_char,
17636        value: c_double,
17637        unit: GtkUnit,
17638    );
17639    pub fn gtk_print_settings_set_media_type(
17640        settings: *mut GtkPrintSettings,
17641        media_type: *const c_char,
17642    );
17643    pub fn gtk_print_settings_set_n_copies(settings: *mut GtkPrintSettings, num_copies: c_int);
17644    pub fn gtk_print_settings_set_number_up(settings: *mut GtkPrintSettings, number_up: c_int);
17645    pub fn gtk_print_settings_set_number_up_layout(
17646        settings: *mut GtkPrintSettings,
17647        number_up_layout: GtkNumberUpLayout,
17648    );
17649    pub fn gtk_print_settings_set_orientation(
17650        settings: *mut GtkPrintSettings,
17651        orientation: GtkPageOrientation,
17652    );
17653    pub fn gtk_print_settings_set_output_bin(
17654        settings: *mut GtkPrintSettings,
17655        output_bin: *const c_char,
17656    );
17657    pub fn gtk_print_settings_set_page_ranges(
17658        settings: *mut GtkPrintSettings,
17659        page_ranges: *mut GtkPageRange,
17660        num_ranges: c_int,
17661    );
17662    pub fn gtk_print_settings_set_page_set(settings: *mut GtkPrintSettings, page_set: GtkPageSet);
17663    pub fn gtk_print_settings_set_paper_height(
17664        settings: *mut GtkPrintSettings,
17665        height: c_double,
17666        unit: GtkUnit,
17667    );
17668    pub fn gtk_print_settings_set_paper_size(
17669        settings: *mut GtkPrintSettings,
17670        paper_size: *mut GtkPaperSize,
17671    );
17672    pub fn gtk_print_settings_set_paper_width(
17673        settings: *mut GtkPrintSettings,
17674        width: c_double,
17675        unit: GtkUnit,
17676    );
17677    pub fn gtk_print_settings_set_print_pages(
17678        settings: *mut GtkPrintSettings,
17679        pages: GtkPrintPages,
17680    );
17681    pub fn gtk_print_settings_set_printer(settings: *mut GtkPrintSettings, printer: *const c_char);
17682    pub fn gtk_print_settings_set_printer_lpi(settings: *mut GtkPrintSettings, lpi: c_double);
17683    pub fn gtk_print_settings_set_quality(
17684        settings: *mut GtkPrintSettings,
17685        quality: GtkPrintQuality,
17686    );
17687    pub fn gtk_print_settings_set_resolution(settings: *mut GtkPrintSettings, resolution: c_int);
17688    pub fn gtk_print_settings_set_resolution_xy(
17689        settings: *mut GtkPrintSettings,
17690        resolution_x: c_int,
17691        resolution_y: c_int,
17692    );
17693    pub fn gtk_print_settings_set_reverse(settings: *mut GtkPrintSettings, reverse: gboolean);
17694    pub fn gtk_print_settings_set_scale(settings: *mut GtkPrintSettings, scale: c_double);
17695    pub fn gtk_print_settings_set_use_color(settings: *mut GtkPrintSettings, use_color: gboolean);
17696    pub fn gtk_print_settings_to_file(
17697        settings: *mut GtkPrintSettings,
17698        file_name: *const c_char,
17699        error: *mut *mut glib::GError,
17700    ) -> gboolean;
17701    pub fn gtk_print_settings_to_gvariant(settings: *mut GtkPrintSettings) -> *mut glib::GVariant;
17702    pub fn gtk_print_settings_to_key_file(
17703        settings: *mut GtkPrintSettings,
17704        key_file: *mut glib::GKeyFile,
17705        group_name: *const c_char,
17706    );
17707    pub fn gtk_print_settings_unset(settings: *mut GtkPrintSettings, key: *const c_char);
17708
17709    //=========================================================================
17710    // GtkPrintUnixDialog
17711    //=========================================================================
17712    pub fn gtk_print_unix_dialog_get_type() -> GType;
17713    pub fn gtk_print_unix_dialog_new(
17714        title: *const c_char,
17715        parent: *mut GtkWindow,
17716    ) -> *mut GtkWidget;
17717    pub fn gtk_print_unix_dialog_add_custom_tab(
17718        dialog: *mut GtkPrintUnixDialog,
17719        child: *mut GtkWidget,
17720        tab_label: *mut GtkWidget,
17721    );
17722    pub fn gtk_print_unix_dialog_get_current_page(dialog: *mut GtkPrintUnixDialog) -> c_int;
17723    pub fn gtk_print_unix_dialog_get_embed_page_setup(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17724    pub fn gtk_print_unix_dialog_get_has_selection(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17725    pub fn gtk_print_unix_dialog_get_manual_capabilities(
17726        dialog: *mut GtkPrintUnixDialog,
17727    ) -> GtkPrintCapabilities;
17728    pub fn gtk_print_unix_dialog_get_page_setup(
17729        dialog: *mut GtkPrintUnixDialog,
17730    ) -> *mut GtkPageSetup;
17731    pub fn gtk_print_unix_dialog_get_page_setup_set(dialog: *mut GtkPrintUnixDialog) -> gboolean;
17732    pub fn gtk_print_unix_dialog_get_selected_printer(
17733        dialog: *mut GtkPrintUnixDialog,
17734    ) -> *mut GtkPrinter;
17735    pub fn gtk_print_unix_dialog_get_settings(
17736        dialog: *mut GtkPrintUnixDialog,
17737    ) -> *mut GtkPrintSettings;
17738    pub fn gtk_print_unix_dialog_get_support_selection(dialog: *mut GtkPrintUnixDialog)
17739    -> gboolean;
17740    pub fn gtk_print_unix_dialog_set_current_page(
17741        dialog: *mut GtkPrintUnixDialog,
17742        current_page: c_int,
17743    );
17744    pub fn gtk_print_unix_dialog_set_embed_page_setup(
17745        dialog: *mut GtkPrintUnixDialog,
17746        embed: gboolean,
17747    );
17748    pub fn gtk_print_unix_dialog_set_has_selection(
17749        dialog: *mut GtkPrintUnixDialog,
17750        has_selection: gboolean,
17751    );
17752    pub fn gtk_print_unix_dialog_set_manual_capabilities(
17753        dialog: *mut GtkPrintUnixDialog,
17754        capabilities: GtkPrintCapabilities,
17755    );
17756    pub fn gtk_print_unix_dialog_set_page_setup(
17757        dialog: *mut GtkPrintUnixDialog,
17758        page_setup: *mut GtkPageSetup,
17759    );
17760    pub fn gtk_print_unix_dialog_set_settings(
17761        dialog: *mut GtkPrintUnixDialog,
17762        settings: *mut GtkPrintSettings,
17763    );
17764    pub fn gtk_print_unix_dialog_set_support_selection(
17765        dialog: *mut GtkPrintUnixDialog,
17766        support_selection: gboolean,
17767    );
17768
17769    //=========================================================================
17770    // GtkPrinter
17771    //=========================================================================
17772    pub fn gtk_printer_get_type() -> GType;
17773    pub fn gtk_printer_new(
17774        name: *const c_char,
17775        backend: *mut GtkPrintBackend,
17776        virtual_: gboolean,
17777    ) -> *mut GtkPrinter;
17778    pub fn gtk_printer_accepts_pdf(printer: *mut GtkPrinter) -> gboolean;
17779    pub fn gtk_printer_accepts_ps(printer: *mut GtkPrinter) -> gboolean;
17780    pub fn gtk_printer_compare(a: *mut GtkPrinter, b: *mut GtkPrinter) -> c_int;
17781    pub fn gtk_printer_get_backend(printer: *mut GtkPrinter) -> *mut GtkPrintBackend;
17782    pub fn gtk_printer_get_capabilities(printer: *mut GtkPrinter) -> GtkPrintCapabilities;
17783    pub fn gtk_printer_get_default_page_size(printer: *mut GtkPrinter) -> *mut GtkPageSetup;
17784    pub fn gtk_printer_get_description(printer: *mut GtkPrinter) -> *const c_char;
17785    pub fn gtk_printer_get_hard_margins(
17786        printer: *mut GtkPrinter,
17787        top: *mut c_double,
17788        bottom: *mut c_double,
17789        left: *mut c_double,
17790        right: *mut c_double,
17791    ) -> gboolean;
17792    pub fn gtk_printer_get_hard_margins_for_paper_size(
17793        printer: *mut GtkPrinter,
17794        paper_size: *mut GtkPaperSize,
17795        top: *mut c_double,
17796        bottom: *mut c_double,
17797        left: *mut c_double,
17798        right: *mut c_double,
17799    ) -> gboolean;
17800    pub fn gtk_printer_get_icon_name(printer: *mut GtkPrinter) -> *const c_char;
17801    pub fn gtk_printer_get_job_count(printer: *mut GtkPrinter) -> c_int;
17802    pub fn gtk_printer_get_location(printer: *mut GtkPrinter) -> *const c_char;
17803    pub fn gtk_printer_get_name(printer: *mut GtkPrinter) -> *const c_char;
17804    pub fn gtk_printer_get_state_message(printer: *mut GtkPrinter) -> *const c_char;
17805    pub fn gtk_printer_has_details(printer: *mut GtkPrinter) -> gboolean;
17806    pub fn gtk_printer_is_accepting_jobs(printer: *mut GtkPrinter) -> gboolean;
17807    pub fn gtk_printer_is_active(printer: *mut GtkPrinter) -> gboolean;
17808    pub fn gtk_printer_is_default(printer: *mut GtkPrinter) -> gboolean;
17809    pub fn gtk_printer_is_paused(printer: *mut GtkPrinter) -> gboolean;
17810    pub fn gtk_printer_is_virtual(printer: *mut GtkPrinter) -> gboolean;
17811    pub fn gtk_printer_list_papers(printer: *mut GtkPrinter) -> *mut glib::GList;
17812    pub fn gtk_printer_request_details(printer: *mut GtkPrinter);
17813
17814    //=========================================================================
17815    // GtkProgressBar
17816    //=========================================================================
17817    pub fn gtk_progress_bar_get_type() -> GType;
17818    pub fn gtk_progress_bar_new() -> *mut GtkWidget;
17819    pub fn gtk_progress_bar_get_ellipsize(pbar: *mut GtkProgressBar) -> pango::PangoEllipsizeMode;
17820    pub fn gtk_progress_bar_get_fraction(pbar: *mut GtkProgressBar) -> c_double;
17821    pub fn gtk_progress_bar_get_inverted(pbar: *mut GtkProgressBar) -> gboolean;
17822    pub fn gtk_progress_bar_get_pulse_step(pbar: *mut GtkProgressBar) -> c_double;
17823    pub fn gtk_progress_bar_get_show_text(pbar: *mut GtkProgressBar) -> gboolean;
17824    pub fn gtk_progress_bar_get_text(pbar: *mut GtkProgressBar) -> *const c_char;
17825    pub fn gtk_progress_bar_pulse(pbar: *mut GtkProgressBar);
17826    pub fn gtk_progress_bar_set_ellipsize(
17827        pbar: *mut GtkProgressBar,
17828        mode: pango::PangoEllipsizeMode,
17829    );
17830    pub fn gtk_progress_bar_set_fraction(pbar: *mut GtkProgressBar, fraction: c_double);
17831    pub fn gtk_progress_bar_set_inverted(pbar: *mut GtkProgressBar, inverted: gboolean);
17832    pub fn gtk_progress_bar_set_pulse_step(pbar: *mut GtkProgressBar, fraction: c_double);
17833    pub fn gtk_progress_bar_set_show_text(pbar: *mut GtkProgressBar, show_text: gboolean);
17834    pub fn gtk_progress_bar_set_text(pbar: *mut GtkProgressBar, text: *const c_char);
17835
17836    //=========================================================================
17837    // GtkPropertyExpression
17838    //=========================================================================
17839    pub fn gtk_property_expression_get_type() -> GType;
17840    pub fn gtk_property_expression_new(
17841        this_type: GType,
17842        expression: *mut GtkExpression,
17843        property_name: *const c_char,
17844    ) -> *mut GtkPropertyExpression;
17845    pub fn gtk_property_expression_new_for_pspec(
17846        expression: *mut GtkExpression,
17847        pspec: *mut gobject::GParamSpec,
17848    ) -> *mut GtkPropertyExpression;
17849    pub fn gtk_property_expression_get_expression(
17850        expression: *mut GtkPropertyExpression,
17851    ) -> *mut GtkExpression;
17852    pub fn gtk_property_expression_get_pspec(
17853        expression: *mut GtkPropertyExpression,
17854    ) -> *mut gobject::GParamSpec;
17855
17856    //=========================================================================
17857    // GtkRange
17858    //=========================================================================
17859    pub fn gtk_range_get_type() -> GType;
17860    pub fn gtk_range_get_adjustment(range: *mut GtkRange) -> *mut GtkAdjustment;
17861    pub fn gtk_range_get_fill_level(range: *mut GtkRange) -> c_double;
17862    pub fn gtk_range_get_flippable(range: *mut GtkRange) -> gboolean;
17863    pub fn gtk_range_get_inverted(range: *mut GtkRange) -> gboolean;
17864    pub fn gtk_range_get_range_rect(range: *mut GtkRange, range_rect: *mut gdk::GdkRectangle);
17865    pub fn gtk_range_get_restrict_to_fill_level(range: *mut GtkRange) -> gboolean;
17866    pub fn gtk_range_get_round_digits(range: *mut GtkRange) -> c_int;
17867    pub fn gtk_range_get_show_fill_level(range: *mut GtkRange) -> gboolean;
17868    pub fn gtk_range_get_slider_range(
17869        range: *mut GtkRange,
17870        slider_start: *mut c_int,
17871        slider_end: *mut c_int,
17872    );
17873    pub fn gtk_range_get_slider_size_fixed(range: *mut GtkRange) -> gboolean;
17874    pub fn gtk_range_get_value(range: *mut GtkRange) -> c_double;
17875    pub fn gtk_range_set_adjustment(range: *mut GtkRange, adjustment: *mut GtkAdjustment);
17876    pub fn gtk_range_set_fill_level(range: *mut GtkRange, fill_level: c_double);
17877    pub fn gtk_range_set_flippable(range: *mut GtkRange, flippable: gboolean);
17878    pub fn gtk_range_set_increments(range: *mut GtkRange, step: c_double, page: c_double);
17879    pub fn gtk_range_set_inverted(range: *mut GtkRange, setting: gboolean);
17880    pub fn gtk_range_set_range(range: *mut GtkRange, min: c_double, max: c_double);
17881    pub fn gtk_range_set_restrict_to_fill_level(
17882        range: *mut GtkRange,
17883        restrict_to_fill_level: gboolean,
17884    );
17885    pub fn gtk_range_set_round_digits(range: *mut GtkRange, round_digits: c_int);
17886    pub fn gtk_range_set_show_fill_level(range: *mut GtkRange, show_fill_level: gboolean);
17887    pub fn gtk_range_set_slider_size_fixed(range: *mut GtkRange, size_fixed: gboolean);
17888    pub fn gtk_range_set_value(range: *mut GtkRange, value: c_double);
17889
17890    //=========================================================================
17891    // GtkRecentManager
17892    //=========================================================================
17893    pub fn gtk_recent_manager_get_type() -> GType;
17894    pub fn gtk_recent_manager_new() -> *mut GtkRecentManager;
17895    pub fn gtk_recent_manager_get_default() -> *mut GtkRecentManager;
17896    pub fn gtk_recent_manager_add_full(
17897        manager: *mut GtkRecentManager,
17898        uri: *const c_char,
17899        recent_data: *const GtkRecentData,
17900    ) -> gboolean;
17901    pub fn gtk_recent_manager_add_item(
17902        manager: *mut GtkRecentManager,
17903        uri: *const c_char,
17904    ) -> gboolean;
17905    pub fn gtk_recent_manager_get_items(manager: *mut GtkRecentManager) -> *mut glib::GList;
17906    pub fn gtk_recent_manager_has_item(
17907        manager: *mut GtkRecentManager,
17908        uri: *const c_char,
17909    ) -> gboolean;
17910    pub fn gtk_recent_manager_lookup_item(
17911        manager: *mut GtkRecentManager,
17912        uri: *const c_char,
17913        error: *mut *mut glib::GError,
17914    ) -> *mut GtkRecentInfo;
17915    pub fn gtk_recent_manager_move_item(
17916        manager: *mut GtkRecentManager,
17917        uri: *const c_char,
17918        new_uri: *const c_char,
17919        error: *mut *mut glib::GError,
17920    ) -> gboolean;
17921    pub fn gtk_recent_manager_purge_items(
17922        manager: *mut GtkRecentManager,
17923        error: *mut *mut glib::GError,
17924    ) -> c_int;
17925    pub fn gtk_recent_manager_remove_item(
17926        manager: *mut GtkRecentManager,
17927        uri: *const c_char,
17928        error: *mut *mut glib::GError,
17929    ) -> gboolean;
17930
17931    //=========================================================================
17932    // GtkRevealer
17933    //=========================================================================
17934    pub fn gtk_revealer_get_type() -> GType;
17935    pub fn gtk_revealer_new() -> *mut GtkWidget;
17936    pub fn gtk_revealer_get_child(revealer: *mut GtkRevealer) -> *mut GtkWidget;
17937    pub fn gtk_revealer_get_child_revealed(revealer: *mut GtkRevealer) -> gboolean;
17938    pub fn gtk_revealer_get_reveal_child(revealer: *mut GtkRevealer) -> gboolean;
17939    pub fn gtk_revealer_get_transition_duration(revealer: *mut GtkRevealer) -> c_uint;
17940    pub fn gtk_revealer_get_transition_type(
17941        revealer: *mut GtkRevealer,
17942    ) -> GtkRevealerTransitionType;
17943    pub fn gtk_revealer_set_child(revealer: *mut GtkRevealer, child: *mut GtkWidget);
17944    pub fn gtk_revealer_set_reveal_child(revealer: *mut GtkRevealer, reveal_child: gboolean);
17945    pub fn gtk_revealer_set_transition_duration(revealer: *mut GtkRevealer, duration: c_uint);
17946    pub fn gtk_revealer_set_transition_type(
17947        revealer: *mut GtkRevealer,
17948        transition: GtkRevealerTransitionType,
17949    );
17950
17951    //=========================================================================
17952    // GtkScale
17953    //=========================================================================
17954    pub fn gtk_scale_get_type() -> GType;
17955    pub fn gtk_scale_new(
17956        orientation: GtkOrientation,
17957        adjustment: *mut GtkAdjustment,
17958    ) -> *mut GtkWidget;
17959    pub fn gtk_scale_new_with_range(
17960        orientation: GtkOrientation,
17961        min: c_double,
17962        max: c_double,
17963        step: c_double,
17964    ) -> *mut GtkWidget;
17965    pub fn gtk_scale_add_mark(
17966        scale: *mut GtkScale,
17967        value: c_double,
17968        position: GtkPositionType,
17969        markup: *const c_char,
17970    );
17971    pub fn gtk_scale_clear_marks(scale: *mut GtkScale);
17972    pub fn gtk_scale_get_digits(scale: *mut GtkScale) -> c_int;
17973    pub fn gtk_scale_get_draw_value(scale: *mut GtkScale) -> gboolean;
17974    pub fn gtk_scale_get_has_origin(scale: *mut GtkScale) -> gboolean;
17975    pub fn gtk_scale_get_layout(scale: *mut GtkScale) -> *mut pango::PangoLayout;
17976    pub fn gtk_scale_get_layout_offsets(scale: *mut GtkScale, x: *mut c_int, y: *mut c_int);
17977    pub fn gtk_scale_get_value_pos(scale: *mut GtkScale) -> GtkPositionType;
17978    pub fn gtk_scale_set_digits(scale: *mut GtkScale, digits: c_int);
17979    pub fn gtk_scale_set_draw_value(scale: *mut GtkScale, draw_value: gboolean);
17980    pub fn gtk_scale_set_format_value_func(
17981        scale: *mut GtkScale,
17982        func: GtkScaleFormatValueFunc,
17983        user_data: gpointer,
17984        destroy_notify: glib::GDestroyNotify,
17985    );
17986    pub fn gtk_scale_set_has_origin(scale: *mut GtkScale, has_origin: gboolean);
17987    pub fn gtk_scale_set_value_pos(scale: *mut GtkScale, pos: GtkPositionType);
17988
17989    //=========================================================================
17990    // GtkScaleButton
17991    //=========================================================================
17992    pub fn gtk_scale_button_get_type() -> GType;
17993    pub fn gtk_scale_button_new(
17994        min: c_double,
17995        max: c_double,
17996        step: c_double,
17997        icons: *mut *const c_char,
17998    ) -> *mut GtkWidget;
17999    #[cfg(feature = "v4_10")]
18000    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18001    pub fn gtk_scale_button_get_active(button: *mut GtkScaleButton) -> gboolean;
18002    pub fn gtk_scale_button_get_adjustment(button: *mut GtkScaleButton) -> *mut GtkAdjustment;
18003    #[cfg(feature = "v4_14")]
18004    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18005    pub fn gtk_scale_button_get_has_frame(button: *mut GtkScaleButton) -> gboolean;
18006    pub fn gtk_scale_button_get_minus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
18007    pub fn gtk_scale_button_get_plus_button(button: *mut GtkScaleButton) -> *mut GtkButton;
18008    pub fn gtk_scale_button_get_popup(button: *mut GtkScaleButton) -> *mut GtkWidget;
18009    pub fn gtk_scale_button_get_value(button: *mut GtkScaleButton) -> c_double;
18010    pub fn gtk_scale_button_set_adjustment(
18011        button: *mut GtkScaleButton,
18012        adjustment: *mut GtkAdjustment,
18013    );
18014    #[cfg(feature = "v4_14")]
18015    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18016    pub fn gtk_scale_button_set_has_frame(button: *mut GtkScaleButton, has_frame: gboolean);
18017    pub fn gtk_scale_button_set_icons(button: *mut GtkScaleButton, icons: *mut *const c_char);
18018    pub fn gtk_scale_button_set_value(button: *mut GtkScaleButton, value: c_double);
18019
18020    //=========================================================================
18021    // GtkScrollbar
18022    //=========================================================================
18023    pub fn gtk_scrollbar_get_type() -> GType;
18024    pub fn gtk_scrollbar_new(
18025        orientation: GtkOrientation,
18026        adjustment: *mut GtkAdjustment,
18027    ) -> *mut GtkWidget;
18028    pub fn gtk_scrollbar_get_adjustment(self_: *mut GtkScrollbar) -> *mut GtkAdjustment;
18029    pub fn gtk_scrollbar_set_adjustment(self_: *mut GtkScrollbar, adjustment: *mut GtkAdjustment);
18030
18031    //=========================================================================
18032    // GtkScrolledWindow
18033    //=========================================================================
18034    pub fn gtk_scrolled_window_get_type() -> GType;
18035    pub fn gtk_scrolled_window_new() -> *mut GtkWidget;
18036    pub fn gtk_scrolled_window_get_child(scrolled_window: *mut GtkScrolledWindow)
18037    -> *mut GtkWidget;
18038    pub fn gtk_scrolled_window_get_hadjustment(
18039        scrolled_window: *mut GtkScrolledWindow,
18040    ) -> *mut GtkAdjustment;
18041    pub fn gtk_scrolled_window_get_has_frame(scrolled_window: *mut GtkScrolledWindow) -> gboolean;
18042    pub fn gtk_scrolled_window_get_hscrollbar(
18043        scrolled_window: *mut GtkScrolledWindow,
18044    ) -> *mut GtkWidget;
18045    pub fn gtk_scrolled_window_get_kinetic_scrolling(
18046        scrolled_window: *mut GtkScrolledWindow,
18047    ) -> gboolean;
18048    pub fn gtk_scrolled_window_get_max_content_height(
18049        scrolled_window: *mut GtkScrolledWindow,
18050    ) -> c_int;
18051    pub fn gtk_scrolled_window_get_max_content_width(
18052        scrolled_window: *mut GtkScrolledWindow,
18053    ) -> c_int;
18054    pub fn gtk_scrolled_window_get_min_content_height(
18055        scrolled_window: *mut GtkScrolledWindow,
18056    ) -> c_int;
18057    pub fn gtk_scrolled_window_get_min_content_width(
18058        scrolled_window: *mut GtkScrolledWindow,
18059    ) -> c_int;
18060    pub fn gtk_scrolled_window_get_overlay_scrolling(
18061        scrolled_window: *mut GtkScrolledWindow,
18062    ) -> gboolean;
18063    pub fn gtk_scrolled_window_get_placement(
18064        scrolled_window: *mut GtkScrolledWindow,
18065    ) -> GtkCornerType;
18066    pub fn gtk_scrolled_window_get_policy(
18067        scrolled_window: *mut GtkScrolledWindow,
18068        hscrollbar_policy: *mut GtkPolicyType,
18069        vscrollbar_policy: *mut GtkPolicyType,
18070    );
18071    pub fn gtk_scrolled_window_get_propagate_natural_height(
18072        scrolled_window: *mut GtkScrolledWindow,
18073    ) -> gboolean;
18074    pub fn gtk_scrolled_window_get_propagate_natural_width(
18075        scrolled_window: *mut GtkScrolledWindow,
18076    ) -> gboolean;
18077    pub fn gtk_scrolled_window_get_vadjustment(
18078        scrolled_window: *mut GtkScrolledWindow,
18079    ) -> *mut GtkAdjustment;
18080    pub fn gtk_scrolled_window_get_vscrollbar(
18081        scrolled_window: *mut GtkScrolledWindow,
18082    ) -> *mut GtkWidget;
18083    pub fn gtk_scrolled_window_set_child(
18084        scrolled_window: *mut GtkScrolledWindow,
18085        child: *mut GtkWidget,
18086    );
18087    pub fn gtk_scrolled_window_set_hadjustment(
18088        scrolled_window: *mut GtkScrolledWindow,
18089        hadjustment: *mut GtkAdjustment,
18090    );
18091    pub fn gtk_scrolled_window_set_has_frame(
18092        scrolled_window: *mut GtkScrolledWindow,
18093        has_frame: gboolean,
18094    );
18095    pub fn gtk_scrolled_window_set_kinetic_scrolling(
18096        scrolled_window: *mut GtkScrolledWindow,
18097        kinetic_scrolling: gboolean,
18098    );
18099    pub fn gtk_scrolled_window_set_max_content_height(
18100        scrolled_window: *mut GtkScrolledWindow,
18101        height: c_int,
18102    );
18103    pub fn gtk_scrolled_window_set_max_content_width(
18104        scrolled_window: *mut GtkScrolledWindow,
18105        width: c_int,
18106    );
18107    pub fn gtk_scrolled_window_set_min_content_height(
18108        scrolled_window: *mut GtkScrolledWindow,
18109        height: c_int,
18110    );
18111    pub fn gtk_scrolled_window_set_min_content_width(
18112        scrolled_window: *mut GtkScrolledWindow,
18113        width: c_int,
18114    );
18115    pub fn gtk_scrolled_window_set_overlay_scrolling(
18116        scrolled_window: *mut GtkScrolledWindow,
18117        overlay_scrolling: gboolean,
18118    );
18119    pub fn gtk_scrolled_window_set_placement(
18120        scrolled_window: *mut GtkScrolledWindow,
18121        window_placement: GtkCornerType,
18122    );
18123    pub fn gtk_scrolled_window_set_policy(
18124        scrolled_window: *mut GtkScrolledWindow,
18125        hscrollbar_policy: GtkPolicyType,
18126        vscrollbar_policy: GtkPolicyType,
18127    );
18128    pub fn gtk_scrolled_window_set_propagate_natural_height(
18129        scrolled_window: *mut GtkScrolledWindow,
18130        propagate: gboolean,
18131    );
18132    pub fn gtk_scrolled_window_set_propagate_natural_width(
18133        scrolled_window: *mut GtkScrolledWindow,
18134        propagate: gboolean,
18135    );
18136    pub fn gtk_scrolled_window_set_vadjustment(
18137        scrolled_window: *mut GtkScrolledWindow,
18138        vadjustment: *mut GtkAdjustment,
18139    );
18140    pub fn gtk_scrolled_window_unset_placement(scrolled_window: *mut GtkScrolledWindow);
18141
18142    //=========================================================================
18143    // GtkSearchBar
18144    //=========================================================================
18145    pub fn gtk_search_bar_get_type() -> GType;
18146    pub fn gtk_search_bar_new() -> *mut GtkWidget;
18147    pub fn gtk_search_bar_connect_entry(bar: *mut GtkSearchBar, entry: *mut GtkEditable);
18148    pub fn gtk_search_bar_get_child(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18149    pub fn gtk_search_bar_get_key_capture_widget(bar: *mut GtkSearchBar) -> *mut GtkWidget;
18150    pub fn gtk_search_bar_get_search_mode(bar: *mut GtkSearchBar) -> gboolean;
18151    pub fn gtk_search_bar_get_show_close_button(bar: *mut GtkSearchBar) -> gboolean;
18152    pub fn gtk_search_bar_set_child(bar: *mut GtkSearchBar, child: *mut GtkWidget);
18153    pub fn gtk_search_bar_set_key_capture_widget(bar: *mut GtkSearchBar, widget: *mut GtkWidget);
18154    pub fn gtk_search_bar_set_search_mode(bar: *mut GtkSearchBar, search_mode: gboolean);
18155    pub fn gtk_search_bar_set_show_close_button(bar: *mut GtkSearchBar, visible: gboolean);
18156
18157    //=========================================================================
18158    // GtkSearchEntry
18159    //=========================================================================
18160    pub fn gtk_search_entry_get_type() -> GType;
18161    pub fn gtk_search_entry_new() -> *mut GtkWidget;
18162    #[cfg(feature = "v4_14")]
18163    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18164    pub fn gtk_search_entry_get_input_hints(entry: *mut GtkSearchEntry) -> GtkInputHints;
18165    #[cfg(feature = "v4_14")]
18166    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18167    pub fn gtk_search_entry_get_input_purpose(entry: *mut GtkSearchEntry) -> GtkInputPurpose;
18168    pub fn gtk_search_entry_get_key_capture_widget(entry: *mut GtkSearchEntry) -> *mut GtkWidget;
18169    #[cfg(feature = "v4_10")]
18170    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18171    pub fn gtk_search_entry_get_placeholder_text(entry: *mut GtkSearchEntry) -> *const c_char;
18172    #[cfg(feature = "v4_8")]
18173    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18174    pub fn gtk_search_entry_get_search_delay(entry: *mut GtkSearchEntry) -> c_uint;
18175    #[cfg(feature = "v4_14")]
18176    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18177    pub fn gtk_search_entry_set_input_hints(entry: *mut GtkSearchEntry, hints: GtkInputHints);
18178    #[cfg(feature = "v4_14")]
18179    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18180    pub fn gtk_search_entry_set_input_purpose(entry: *mut GtkSearchEntry, purpose: GtkInputPurpose);
18181    pub fn gtk_search_entry_set_key_capture_widget(
18182        entry: *mut GtkSearchEntry,
18183        widget: *mut GtkWidget,
18184    );
18185    #[cfg(feature = "v4_10")]
18186    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18187    pub fn gtk_search_entry_set_placeholder_text(entry: *mut GtkSearchEntry, text: *const c_char);
18188    #[cfg(feature = "v4_8")]
18189    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
18190    pub fn gtk_search_entry_set_search_delay(entry: *mut GtkSearchEntry, delay: c_uint);
18191
18192    //=========================================================================
18193    // GtkSelectionFilterModel
18194    //=========================================================================
18195    pub fn gtk_selection_filter_model_get_type() -> GType;
18196    pub fn gtk_selection_filter_model_new(
18197        model: *mut GtkSelectionModel,
18198    ) -> *mut GtkSelectionFilterModel;
18199    pub fn gtk_selection_filter_model_get_model(
18200        self_: *mut GtkSelectionFilterModel,
18201    ) -> *mut GtkSelectionModel;
18202    pub fn gtk_selection_filter_model_set_model(
18203        self_: *mut GtkSelectionFilterModel,
18204        model: *mut GtkSelectionModel,
18205    );
18206
18207    //=========================================================================
18208    // GtkSeparator
18209    //=========================================================================
18210    pub fn gtk_separator_get_type() -> GType;
18211    pub fn gtk_separator_new(orientation: GtkOrientation) -> *mut GtkWidget;
18212
18213    //=========================================================================
18214    // GtkSettings
18215    //=========================================================================
18216    pub fn gtk_settings_get_type() -> GType;
18217    pub fn gtk_settings_get_default() -> *mut GtkSettings;
18218    pub fn gtk_settings_get_for_display(display: *mut gdk::GdkDisplay) -> *mut GtkSettings;
18219    pub fn gtk_settings_reset_property(settings: *mut GtkSettings, name: *const c_char);
18220
18221    //=========================================================================
18222    // GtkShortcut
18223    //=========================================================================
18224    pub fn gtk_shortcut_get_type() -> GType;
18225    pub fn gtk_shortcut_new(
18226        trigger: *mut GtkShortcutTrigger,
18227        action: *mut GtkShortcutAction,
18228    ) -> *mut GtkShortcut;
18229    pub fn gtk_shortcut_new_with_arguments(
18230        trigger: *mut GtkShortcutTrigger,
18231        action: *mut GtkShortcutAction,
18232        format_string: *const c_char,
18233        ...
18234    ) -> *mut GtkShortcut;
18235    pub fn gtk_shortcut_get_action(self_: *mut GtkShortcut) -> *mut GtkShortcutAction;
18236    pub fn gtk_shortcut_get_arguments(self_: *mut GtkShortcut) -> *mut glib::GVariant;
18237    pub fn gtk_shortcut_get_trigger(self_: *mut GtkShortcut) -> *mut GtkShortcutTrigger;
18238    pub fn gtk_shortcut_set_action(self_: *mut GtkShortcut, action: *mut GtkShortcutAction);
18239    pub fn gtk_shortcut_set_arguments(self_: *mut GtkShortcut, args: *mut glib::GVariant);
18240    pub fn gtk_shortcut_set_trigger(self_: *mut GtkShortcut, trigger: *mut GtkShortcutTrigger);
18241
18242    //=========================================================================
18243    // GtkShortcutAction
18244    //=========================================================================
18245    pub fn gtk_shortcut_action_get_type() -> GType;
18246    pub fn gtk_shortcut_action_parse_string(string: *const c_char) -> *mut GtkShortcutAction;
18247    pub fn gtk_shortcut_action_activate(
18248        self_: *mut GtkShortcutAction,
18249        flags: GtkShortcutActionFlags,
18250        widget: *mut GtkWidget,
18251        args: *mut glib::GVariant,
18252    ) -> gboolean;
18253    pub fn gtk_shortcut_action_print(self_: *mut GtkShortcutAction, string: *mut glib::GString);
18254    pub fn gtk_shortcut_action_to_string(self_: *mut GtkShortcutAction) -> *mut c_char;
18255
18256    //=========================================================================
18257    // GtkShortcutController
18258    //=========================================================================
18259    pub fn gtk_shortcut_controller_get_type() -> GType;
18260    pub fn gtk_shortcut_controller_new() -> *mut GtkEventController;
18261    pub fn gtk_shortcut_controller_new_for_model(
18262        model: *mut gio::GListModel,
18263    ) -> *mut GtkEventController;
18264    pub fn gtk_shortcut_controller_add_shortcut(
18265        self_: *mut GtkShortcutController,
18266        shortcut: *mut GtkShortcut,
18267    );
18268    pub fn gtk_shortcut_controller_get_mnemonics_modifiers(
18269        self_: *mut GtkShortcutController,
18270    ) -> gdk::GdkModifierType;
18271    pub fn gtk_shortcut_controller_get_scope(self_: *mut GtkShortcutController)
18272    -> GtkShortcutScope;
18273    pub fn gtk_shortcut_controller_remove_shortcut(
18274        self_: *mut GtkShortcutController,
18275        shortcut: *mut GtkShortcut,
18276    );
18277    pub fn gtk_shortcut_controller_set_mnemonics_modifiers(
18278        self_: *mut GtkShortcutController,
18279        modifiers: gdk::GdkModifierType,
18280    );
18281    pub fn gtk_shortcut_controller_set_scope(
18282        self_: *mut GtkShortcutController,
18283        scope: GtkShortcutScope,
18284    );
18285
18286    //=========================================================================
18287    // GtkShortcutLabel
18288    //=========================================================================
18289    pub fn gtk_shortcut_label_get_type() -> GType;
18290    pub fn gtk_shortcut_label_new(accelerator: *const c_char) -> *mut GtkWidget;
18291    pub fn gtk_shortcut_label_get_accelerator(self_: *mut GtkShortcutLabel) -> *const c_char;
18292    pub fn gtk_shortcut_label_get_disabled_text(self_: *mut GtkShortcutLabel) -> *const c_char;
18293    pub fn gtk_shortcut_label_set_accelerator(
18294        self_: *mut GtkShortcutLabel,
18295        accelerator: *const c_char,
18296    );
18297    pub fn gtk_shortcut_label_set_disabled_text(
18298        self_: *mut GtkShortcutLabel,
18299        disabled_text: *const c_char,
18300    );
18301
18302    //=========================================================================
18303    // GtkShortcutTrigger
18304    //=========================================================================
18305    pub fn gtk_shortcut_trigger_get_type() -> GType;
18306    pub fn gtk_shortcut_trigger_parse_string(string: *const c_char) -> *mut GtkShortcutTrigger;
18307    pub fn gtk_shortcut_trigger_compare(trigger1: gconstpointer, trigger2: gconstpointer) -> c_int;
18308    pub fn gtk_shortcut_trigger_equal(trigger1: gconstpointer, trigger2: gconstpointer)
18309    -> gboolean;
18310    pub fn gtk_shortcut_trigger_hash(trigger: gconstpointer) -> c_uint;
18311    pub fn gtk_shortcut_trigger_print(self_: *mut GtkShortcutTrigger, string: *mut glib::GString);
18312    pub fn gtk_shortcut_trigger_print_label(
18313        self_: *mut GtkShortcutTrigger,
18314        display: *mut gdk::GdkDisplay,
18315        string: *mut glib::GString,
18316    ) -> gboolean;
18317    pub fn gtk_shortcut_trigger_to_label(
18318        self_: *mut GtkShortcutTrigger,
18319        display: *mut gdk::GdkDisplay,
18320    ) -> *mut c_char;
18321    pub fn gtk_shortcut_trigger_to_string(self_: *mut GtkShortcutTrigger) -> *mut c_char;
18322    pub fn gtk_shortcut_trigger_trigger(
18323        self_: *mut GtkShortcutTrigger,
18324        event: *mut gdk::GdkEvent,
18325        enable_mnemonics: gboolean,
18326    ) -> gdk::GdkKeyMatch;
18327
18328    //=========================================================================
18329    // GtkShortcutsGroup
18330    //=========================================================================
18331    pub fn gtk_shortcuts_group_get_type() -> GType;
18332    #[cfg(feature = "v4_14")]
18333    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18334    pub fn gtk_shortcuts_group_add_shortcut(
18335        self_: *mut GtkShortcutsGroup,
18336        shortcut: *mut GtkShortcutsShortcut,
18337    );
18338
18339    //=========================================================================
18340    // GtkShortcutsSection
18341    //=========================================================================
18342    pub fn gtk_shortcuts_section_get_type() -> GType;
18343    #[cfg(feature = "v4_14")]
18344    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18345    pub fn gtk_shortcuts_section_add_group(
18346        self_: *mut GtkShortcutsSection,
18347        group: *mut GtkShortcutsGroup,
18348    );
18349
18350    //=========================================================================
18351    // GtkShortcutsShortcut
18352    //=========================================================================
18353    pub fn gtk_shortcuts_shortcut_get_type() -> GType;
18354
18355    //=========================================================================
18356    // GtkShortcutsWindow
18357    //=========================================================================
18358    pub fn gtk_shortcuts_window_get_type() -> GType;
18359    #[cfg(feature = "v4_14")]
18360    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18361    pub fn gtk_shortcuts_window_add_section(
18362        self_: *mut GtkShortcutsWindow,
18363        section: *mut GtkShortcutsSection,
18364    );
18365
18366    //=========================================================================
18367    // GtkSignalAction
18368    //=========================================================================
18369    pub fn gtk_signal_action_get_type() -> GType;
18370    pub fn gtk_signal_action_new(signal_name: *const c_char) -> *mut GtkSignalAction;
18371    pub fn gtk_signal_action_get_signal_name(self_: *mut GtkSignalAction) -> *const c_char;
18372
18373    //=========================================================================
18374    // GtkSignalListItemFactory
18375    //=========================================================================
18376    pub fn gtk_signal_list_item_factory_get_type() -> GType;
18377    pub fn gtk_signal_list_item_factory_new() -> *mut GtkListItemFactory;
18378
18379    //=========================================================================
18380    // GtkSingleSelection
18381    //=========================================================================
18382    pub fn gtk_single_selection_get_type() -> GType;
18383    pub fn gtk_single_selection_new(model: *mut gio::GListModel) -> *mut GtkSingleSelection;
18384    pub fn gtk_single_selection_get_autoselect(self_: *mut GtkSingleSelection) -> gboolean;
18385    pub fn gtk_single_selection_get_can_unselect(self_: *mut GtkSingleSelection) -> gboolean;
18386    pub fn gtk_single_selection_get_model(self_: *mut GtkSingleSelection) -> *mut gio::GListModel;
18387    pub fn gtk_single_selection_get_selected(self_: *mut GtkSingleSelection) -> c_uint;
18388    pub fn gtk_single_selection_get_selected_item(
18389        self_: *mut GtkSingleSelection,
18390    ) -> *mut gobject::GObject;
18391    pub fn gtk_single_selection_set_autoselect(
18392        self_: *mut GtkSingleSelection,
18393        autoselect: gboolean,
18394    );
18395    pub fn gtk_single_selection_set_can_unselect(
18396        self_: *mut GtkSingleSelection,
18397        can_unselect: gboolean,
18398    );
18399    pub fn gtk_single_selection_set_model(
18400        self_: *mut GtkSingleSelection,
18401        model: *mut gio::GListModel,
18402    );
18403    pub fn gtk_single_selection_set_selected(self_: *mut GtkSingleSelection, position: c_uint);
18404
18405    //=========================================================================
18406    // GtkSizeGroup
18407    //=========================================================================
18408    pub fn gtk_size_group_get_type() -> GType;
18409    pub fn gtk_size_group_new(mode: GtkSizeGroupMode) -> *mut GtkSizeGroup;
18410    pub fn gtk_size_group_add_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18411    pub fn gtk_size_group_get_mode(size_group: *mut GtkSizeGroup) -> GtkSizeGroupMode;
18412    pub fn gtk_size_group_get_widgets(size_group: *mut GtkSizeGroup) -> *mut glib::GSList;
18413    pub fn gtk_size_group_remove_widget(size_group: *mut GtkSizeGroup, widget: *mut GtkWidget);
18414    pub fn gtk_size_group_set_mode(size_group: *mut GtkSizeGroup, mode: GtkSizeGroupMode);
18415
18416    //=========================================================================
18417    // GtkSliceListModel
18418    //=========================================================================
18419    pub fn gtk_slice_list_model_get_type() -> GType;
18420    pub fn gtk_slice_list_model_new(
18421        model: *mut gio::GListModel,
18422        offset: c_uint,
18423        size: c_uint,
18424    ) -> *mut GtkSliceListModel;
18425    pub fn gtk_slice_list_model_get_model(self_: *mut GtkSliceListModel) -> *mut gio::GListModel;
18426    pub fn gtk_slice_list_model_get_offset(self_: *mut GtkSliceListModel) -> c_uint;
18427    pub fn gtk_slice_list_model_get_size(self_: *mut GtkSliceListModel) -> c_uint;
18428    pub fn gtk_slice_list_model_set_model(
18429        self_: *mut GtkSliceListModel,
18430        model: *mut gio::GListModel,
18431    );
18432    pub fn gtk_slice_list_model_set_offset(self_: *mut GtkSliceListModel, offset: c_uint);
18433    pub fn gtk_slice_list_model_set_size(self_: *mut GtkSliceListModel, size: c_uint);
18434
18435    //=========================================================================
18436    // GtkSnapshot
18437    //=========================================================================
18438    pub fn gtk_snapshot_get_type() -> GType;
18439    pub fn gtk_snapshot_new() -> *mut GtkSnapshot;
18440    pub fn gtk_snapshot_append_border(
18441        snapshot: *mut GtkSnapshot,
18442        outline: *const gsk::GskRoundedRect,
18443        border_width: *const [c_float; 4],
18444        border_color: *const [gdk::GdkRGBA; 4],
18445    );
18446    pub fn gtk_snapshot_append_cairo(
18447        snapshot: *mut GtkSnapshot,
18448        bounds: *const graphene::graphene_rect_t,
18449    ) -> *mut cairo::cairo_t;
18450    pub fn gtk_snapshot_append_color(
18451        snapshot: *mut GtkSnapshot,
18452        color: *const gdk::GdkRGBA,
18453        bounds: *const graphene::graphene_rect_t,
18454    );
18455    pub fn gtk_snapshot_append_conic_gradient(
18456        snapshot: *mut GtkSnapshot,
18457        bounds: *const graphene::graphene_rect_t,
18458        center: *const graphene::graphene_point_t,
18459        rotation: c_float,
18460        stops: *const gsk::GskColorStop,
18461        n_stops: size_t,
18462    );
18463    #[cfg(feature = "v4_14")]
18464    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18465    pub fn gtk_snapshot_append_fill(
18466        snapshot: *mut GtkSnapshot,
18467        path: *mut gsk::GskPath,
18468        fill_rule: gsk::GskFillRule,
18469        color: *const gdk::GdkRGBA,
18470    );
18471    pub fn gtk_snapshot_append_inset_shadow(
18472        snapshot: *mut GtkSnapshot,
18473        outline: *const gsk::GskRoundedRect,
18474        color: *const gdk::GdkRGBA,
18475        dx: c_float,
18476        dy: c_float,
18477        spread: c_float,
18478        blur_radius: c_float,
18479    );
18480    pub fn gtk_snapshot_append_layout(
18481        snapshot: *mut GtkSnapshot,
18482        layout: *mut pango::PangoLayout,
18483        color: *const gdk::GdkRGBA,
18484    );
18485    pub fn gtk_snapshot_append_linear_gradient(
18486        snapshot: *mut GtkSnapshot,
18487        bounds: *const graphene::graphene_rect_t,
18488        start_point: *const graphene::graphene_point_t,
18489        end_point: *const graphene::graphene_point_t,
18490        stops: *const gsk::GskColorStop,
18491        n_stops: size_t,
18492    );
18493    pub fn gtk_snapshot_append_node(snapshot: *mut GtkSnapshot, node: *mut gsk::GskRenderNode);
18494    pub fn gtk_snapshot_append_outset_shadow(
18495        snapshot: *mut GtkSnapshot,
18496        outline: *const gsk::GskRoundedRect,
18497        color: *const gdk::GdkRGBA,
18498        dx: c_float,
18499        dy: c_float,
18500        spread: c_float,
18501        blur_radius: c_float,
18502    );
18503    #[cfg(feature = "v4_22")]
18504    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18505    pub fn gtk_snapshot_append_paste(
18506        snapshot: *mut GtkSnapshot,
18507        bounds: *const graphene::graphene_rect_t,
18508        nth: size_t,
18509    );
18510    pub fn gtk_snapshot_append_radial_gradient(
18511        snapshot: *mut GtkSnapshot,
18512        bounds: *const graphene::graphene_rect_t,
18513        center: *const graphene::graphene_point_t,
18514        hradius: c_float,
18515        vradius: c_float,
18516        start: c_float,
18517        end: c_float,
18518        stops: *const gsk::GskColorStop,
18519        n_stops: size_t,
18520    );
18521    pub fn gtk_snapshot_append_repeating_linear_gradient(
18522        snapshot: *mut GtkSnapshot,
18523        bounds: *const graphene::graphene_rect_t,
18524        start_point: *const graphene::graphene_point_t,
18525        end_point: *const graphene::graphene_point_t,
18526        stops: *const gsk::GskColorStop,
18527        n_stops: size_t,
18528    );
18529    pub fn gtk_snapshot_append_repeating_radial_gradient(
18530        snapshot: *mut GtkSnapshot,
18531        bounds: *const graphene::graphene_rect_t,
18532        center: *const graphene::graphene_point_t,
18533        hradius: c_float,
18534        vradius: c_float,
18535        start: c_float,
18536        end: c_float,
18537        stops: *const gsk::GskColorStop,
18538        n_stops: size_t,
18539    );
18540    #[cfg(feature = "v4_10")]
18541    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18542    pub fn gtk_snapshot_append_scaled_texture(
18543        snapshot: *mut GtkSnapshot,
18544        texture: *mut gdk::GdkTexture,
18545        filter: gsk::GskScalingFilter,
18546        bounds: *const graphene::graphene_rect_t,
18547    );
18548    #[cfg(feature = "v4_14")]
18549    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18550    pub fn gtk_snapshot_append_stroke(
18551        snapshot: *mut GtkSnapshot,
18552        path: *mut gsk::GskPath,
18553        stroke: *const gsk::GskStroke,
18554        color: *const gdk::GdkRGBA,
18555    );
18556    pub fn gtk_snapshot_append_texture(
18557        snapshot: *mut GtkSnapshot,
18558        texture: *mut gdk::GdkTexture,
18559        bounds: *const graphene::graphene_rect_t,
18560    );
18561    pub fn gtk_snapshot_free_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18562    pub fn gtk_snapshot_free_to_paintable(
18563        snapshot: *mut GtkSnapshot,
18564        size: *const graphene::graphene_size_t,
18565    ) -> *mut gdk::GdkPaintable;
18566    pub fn gtk_snapshot_gl_shader_pop_texture(snapshot: *mut GtkSnapshot);
18567    pub fn gtk_snapshot_perspective(snapshot: *mut GtkSnapshot, depth: c_float);
18568    pub fn gtk_snapshot_pop(snapshot: *mut GtkSnapshot);
18569    pub fn gtk_snapshot_push_blend(snapshot: *mut GtkSnapshot, blend_mode: gsk::GskBlendMode);
18570    pub fn gtk_snapshot_push_blur(snapshot: *mut GtkSnapshot, radius: c_double);
18571    pub fn gtk_snapshot_push_clip(
18572        snapshot: *mut GtkSnapshot,
18573        bounds: *const graphene::graphene_rect_t,
18574    );
18575    pub fn gtk_snapshot_push_color_matrix(
18576        snapshot: *mut GtkSnapshot,
18577        color_matrix: *const graphene::graphene_matrix_t,
18578        color_offset: *const graphene::graphene_vec4_t,
18579    );
18580    #[cfg(feature = "v4_20")]
18581    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
18582    pub fn gtk_snapshot_push_component_transfer(
18583        snapshot: *mut GtkSnapshot,
18584        red: *const gsk::GskComponentTransfer,
18585        green: *const gsk::GskComponentTransfer,
18586        blue: *const gsk::GskComponentTransfer,
18587        alpha: *const gsk::GskComponentTransfer,
18588    );
18589    #[cfg(feature = "v4_22")]
18590    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18591    pub fn gtk_snapshot_push_composite(snapshot: *mut GtkSnapshot, op: gsk::GskPorterDuff);
18592    #[cfg(feature = "v4_22")]
18593    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18594    pub fn gtk_snapshot_push_copy(snapshot: *mut GtkSnapshot);
18595    pub fn gtk_snapshot_push_cross_fade(snapshot: *mut GtkSnapshot, progress: c_double);
18596    pub fn gtk_snapshot_push_debug(snapshot: *mut GtkSnapshot, message: *const c_char, ...);
18597    #[cfg(feature = "v4_14")]
18598    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18599    pub fn gtk_snapshot_push_fill(
18600        snapshot: *mut GtkSnapshot,
18601        path: *mut gsk::GskPath,
18602        fill_rule: gsk::GskFillRule,
18603    );
18604    pub fn gtk_snapshot_push_gl_shader(
18605        snapshot: *mut GtkSnapshot,
18606        shader: *mut gsk::GskGLShader,
18607        bounds: *const graphene::graphene_rect_t,
18608        take_args: *mut glib::GBytes,
18609    );
18610    #[cfg(feature = "v4_22")]
18611    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
18612    pub fn gtk_snapshot_push_isolation(snapshot: *mut GtkSnapshot, features: gsk::GskIsolation);
18613    #[cfg(feature = "v4_10")]
18614    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18615    pub fn gtk_snapshot_push_mask(snapshot: *mut GtkSnapshot, mask_mode: gsk::GskMaskMode);
18616    pub fn gtk_snapshot_push_opacity(snapshot: *mut GtkSnapshot, opacity: c_double);
18617    pub fn gtk_snapshot_push_repeat(
18618        snapshot: *mut GtkSnapshot,
18619        bounds: *const graphene::graphene_rect_t,
18620        child_bounds: *const graphene::graphene_rect_t,
18621    );
18622    pub fn gtk_snapshot_push_rounded_clip(
18623        snapshot: *mut GtkSnapshot,
18624        bounds: *const gsk::GskRoundedRect,
18625    );
18626    pub fn gtk_snapshot_push_shadow(
18627        snapshot: *mut GtkSnapshot,
18628        shadow: *const gsk::GskShadow,
18629        n_shadows: size_t,
18630    );
18631    #[cfg(feature = "v4_14")]
18632    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18633    pub fn gtk_snapshot_push_stroke(
18634        snapshot: *mut GtkSnapshot,
18635        path: *mut gsk::GskPath,
18636        stroke: *const gsk::GskStroke,
18637    );
18638    pub fn gtk_snapshot_render_background(
18639        snapshot: *mut GtkSnapshot,
18640        context: *mut GtkStyleContext,
18641        x: c_double,
18642        y: c_double,
18643        width: c_double,
18644        height: c_double,
18645    );
18646    pub fn gtk_snapshot_render_focus(
18647        snapshot: *mut GtkSnapshot,
18648        context: *mut GtkStyleContext,
18649        x: c_double,
18650        y: c_double,
18651        width: c_double,
18652        height: c_double,
18653    );
18654    pub fn gtk_snapshot_render_frame(
18655        snapshot: *mut GtkSnapshot,
18656        context: *mut GtkStyleContext,
18657        x: c_double,
18658        y: c_double,
18659        width: c_double,
18660        height: c_double,
18661    );
18662    pub fn gtk_snapshot_render_insertion_cursor(
18663        snapshot: *mut GtkSnapshot,
18664        context: *mut GtkStyleContext,
18665        x: c_double,
18666        y: c_double,
18667        layout: *mut pango::PangoLayout,
18668        index: c_int,
18669        direction: pango::PangoDirection,
18670    );
18671    pub fn gtk_snapshot_render_layout(
18672        snapshot: *mut GtkSnapshot,
18673        context: *mut GtkStyleContext,
18674        x: c_double,
18675        y: c_double,
18676        layout: *mut pango::PangoLayout,
18677    );
18678    pub fn gtk_snapshot_restore(snapshot: *mut GtkSnapshot);
18679    pub fn gtk_snapshot_rotate(snapshot: *mut GtkSnapshot, angle: c_float);
18680    pub fn gtk_snapshot_rotate_3d(
18681        snapshot: *mut GtkSnapshot,
18682        angle: c_float,
18683        axis: *const graphene::graphene_vec3_t,
18684    );
18685    pub fn gtk_snapshot_save(snapshot: *mut GtkSnapshot);
18686    pub fn gtk_snapshot_scale(snapshot: *mut GtkSnapshot, factor_x: c_float, factor_y: c_float);
18687    pub fn gtk_snapshot_scale_3d(
18688        snapshot: *mut GtkSnapshot,
18689        factor_x: c_float,
18690        factor_y: c_float,
18691        factor_z: c_float,
18692    );
18693    pub fn gtk_snapshot_to_node(snapshot: *mut GtkSnapshot) -> *mut gsk::GskRenderNode;
18694    pub fn gtk_snapshot_to_paintable(
18695        snapshot: *mut GtkSnapshot,
18696        size: *const graphene::graphene_size_t,
18697    ) -> *mut gdk::GdkPaintable;
18698    pub fn gtk_snapshot_transform(snapshot: *mut GtkSnapshot, transform: *mut gsk::GskTransform);
18699    pub fn gtk_snapshot_transform_matrix(
18700        snapshot: *mut GtkSnapshot,
18701        matrix: *const graphene::graphene_matrix_t,
18702    );
18703    pub fn gtk_snapshot_translate(
18704        snapshot: *mut GtkSnapshot,
18705        point: *const graphene::graphene_point_t,
18706    );
18707    pub fn gtk_snapshot_translate_3d(
18708        snapshot: *mut GtkSnapshot,
18709        point: *const graphene::graphene_point3d_t,
18710    );
18711
18712    //=========================================================================
18713    // GtkSortListModel
18714    //=========================================================================
18715    pub fn gtk_sort_list_model_get_type() -> GType;
18716    pub fn gtk_sort_list_model_new(
18717        model: *mut gio::GListModel,
18718        sorter: *mut GtkSorter,
18719    ) -> *mut GtkSortListModel;
18720    pub fn gtk_sort_list_model_get_incremental(self_: *mut GtkSortListModel) -> gboolean;
18721    pub fn gtk_sort_list_model_get_model(self_: *mut GtkSortListModel) -> *mut gio::GListModel;
18722    pub fn gtk_sort_list_model_get_pending(self_: *mut GtkSortListModel) -> c_uint;
18723    #[cfg(feature = "v4_12")]
18724    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18725    pub fn gtk_sort_list_model_get_section_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18726    pub fn gtk_sort_list_model_get_sorter(self_: *mut GtkSortListModel) -> *mut GtkSorter;
18727    pub fn gtk_sort_list_model_set_incremental(self_: *mut GtkSortListModel, incremental: gboolean);
18728    pub fn gtk_sort_list_model_set_model(self_: *mut GtkSortListModel, model: *mut gio::GListModel);
18729    #[cfg(feature = "v4_12")]
18730    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
18731    pub fn gtk_sort_list_model_set_section_sorter(
18732        self_: *mut GtkSortListModel,
18733        sorter: *mut GtkSorter,
18734    );
18735    pub fn gtk_sort_list_model_set_sorter(self_: *mut GtkSortListModel, sorter: *mut GtkSorter);
18736
18737    //=========================================================================
18738    // GtkSorter
18739    //=========================================================================
18740    pub fn gtk_sorter_get_type() -> GType;
18741    pub fn gtk_sorter_changed(self_: *mut GtkSorter, change: GtkSorterChange);
18742    pub fn gtk_sorter_compare(
18743        self_: *mut GtkSorter,
18744        item1: *mut gobject::GObject,
18745        item2: *mut gobject::GObject,
18746    ) -> GtkOrdering;
18747    pub fn gtk_sorter_get_order(self_: *mut GtkSorter) -> GtkSorterOrder;
18748
18749    //=========================================================================
18750    // GtkSpinButton
18751    //=========================================================================
18752    pub fn gtk_spin_button_get_type() -> GType;
18753    pub fn gtk_spin_button_new(
18754        adjustment: *mut GtkAdjustment,
18755        climb_rate: c_double,
18756        digits: c_uint,
18757    ) -> *mut GtkWidget;
18758    pub fn gtk_spin_button_new_with_range(
18759        min: c_double,
18760        max: c_double,
18761        step: c_double,
18762    ) -> *mut GtkWidget;
18763    pub fn gtk_spin_button_configure(
18764        spin_button: *mut GtkSpinButton,
18765        adjustment: *mut GtkAdjustment,
18766        climb_rate: c_double,
18767        digits: c_uint,
18768    );
18769    #[cfg(feature = "v4_14")]
18770    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18771    pub fn gtk_spin_button_get_activates_default(spin_button: *mut GtkSpinButton) -> gboolean;
18772    pub fn gtk_spin_button_get_adjustment(spin_button: *mut GtkSpinButton) -> *mut GtkAdjustment;
18773    pub fn gtk_spin_button_get_climb_rate(spin_button: *mut GtkSpinButton) -> c_double;
18774    pub fn gtk_spin_button_get_digits(spin_button: *mut GtkSpinButton) -> c_uint;
18775    pub fn gtk_spin_button_get_increments(
18776        spin_button: *mut GtkSpinButton,
18777        step: *mut c_double,
18778        page: *mut c_double,
18779    );
18780    pub fn gtk_spin_button_get_numeric(spin_button: *mut GtkSpinButton) -> gboolean;
18781    pub fn gtk_spin_button_get_range(
18782        spin_button: *mut GtkSpinButton,
18783        min: *mut c_double,
18784        max: *mut c_double,
18785    );
18786    pub fn gtk_spin_button_get_snap_to_ticks(spin_button: *mut GtkSpinButton) -> gboolean;
18787    pub fn gtk_spin_button_get_update_policy(
18788        spin_button: *mut GtkSpinButton,
18789    ) -> GtkSpinButtonUpdatePolicy;
18790    pub fn gtk_spin_button_get_value(spin_button: *mut GtkSpinButton) -> c_double;
18791    pub fn gtk_spin_button_get_value_as_int(spin_button: *mut GtkSpinButton) -> c_int;
18792    pub fn gtk_spin_button_get_wrap(spin_button: *mut GtkSpinButton) -> gboolean;
18793    #[cfg(feature = "v4_14")]
18794    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
18795    pub fn gtk_spin_button_set_activates_default(
18796        spin_button: *mut GtkSpinButton,
18797        activates_default: gboolean,
18798    );
18799    pub fn gtk_spin_button_set_adjustment(
18800        spin_button: *mut GtkSpinButton,
18801        adjustment: *mut GtkAdjustment,
18802    );
18803    pub fn gtk_spin_button_set_climb_rate(spin_button: *mut GtkSpinButton, climb_rate: c_double);
18804    pub fn gtk_spin_button_set_digits(spin_button: *mut GtkSpinButton, digits: c_uint);
18805    pub fn gtk_spin_button_set_increments(
18806        spin_button: *mut GtkSpinButton,
18807        step: c_double,
18808        page: c_double,
18809    );
18810    pub fn gtk_spin_button_set_numeric(spin_button: *mut GtkSpinButton, numeric: gboolean);
18811    pub fn gtk_spin_button_set_range(spin_button: *mut GtkSpinButton, min: c_double, max: c_double);
18812    pub fn gtk_spin_button_set_snap_to_ticks(
18813        spin_button: *mut GtkSpinButton,
18814        snap_to_ticks: gboolean,
18815    );
18816    pub fn gtk_spin_button_set_update_policy(
18817        spin_button: *mut GtkSpinButton,
18818        policy: GtkSpinButtonUpdatePolicy,
18819    );
18820    pub fn gtk_spin_button_set_value(spin_button: *mut GtkSpinButton, value: c_double);
18821    pub fn gtk_spin_button_set_wrap(spin_button: *mut GtkSpinButton, wrap: gboolean);
18822    pub fn gtk_spin_button_spin(
18823        spin_button: *mut GtkSpinButton,
18824        direction: GtkSpinType,
18825        increment: c_double,
18826    );
18827    pub fn gtk_spin_button_update(spin_button: *mut GtkSpinButton);
18828
18829    //=========================================================================
18830    // GtkSpinner
18831    //=========================================================================
18832    pub fn gtk_spinner_get_type() -> GType;
18833    pub fn gtk_spinner_new() -> *mut GtkWidget;
18834    pub fn gtk_spinner_get_spinning(spinner: *mut GtkSpinner) -> gboolean;
18835    pub fn gtk_spinner_set_spinning(spinner: *mut GtkSpinner, spinning: gboolean);
18836    pub fn gtk_spinner_start(spinner: *mut GtkSpinner);
18837    pub fn gtk_spinner_stop(spinner: *mut GtkSpinner);
18838
18839    //=========================================================================
18840    // GtkStack
18841    //=========================================================================
18842    pub fn gtk_stack_get_type() -> GType;
18843    pub fn gtk_stack_new() -> *mut GtkWidget;
18844    pub fn gtk_stack_add_child(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18845    pub fn gtk_stack_add_named(
18846        stack: *mut GtkStack,
18847        child: *mut GtkWidget,
18848        name: *const c_char,
18849    ) -> *mut GtkStackPage;
18850    pub fn gtk_stack_add_titled(
18851        stack: *mut GtkStack,
18852        child: *mut GtkWidget,
18853        name: *const c_char,
18854        title: *const c_char,
18855    ) -> *mut GtkStackPage;
18856    pub fn gtk_stack_get_child_by_name(stack: *mut GtkStack, name: *const c_char)
18857    -> *mut GtkWidget;
18858    pub fn gtk_stack_get_hhomogeneous(stack: *mut GtkStack) -> gboolean;
18859    pub fn gtk_stack_get_interpolate_size(stack: *mut GtkStack) -> gboolean;
18860    pub fn gtk_stack_get_page(stack: *mut GtkStack, child: *mut GtkWidget) -> *mut GtkStackPage;
18861    pub fn gtk_stack_get_pages(stack: *mut GtkStack) -> *mut GtkSelectionModel;
18862    pub fn gtk_stack_get_transition_duration(stack: *mut GtkStack) -> c_uint;
18863    pub fn gtk_stack_get_transition_running(stack: *mut GtkStack) -> gboolean;
18864    pub fn gtk_stack_get_transition_type(stack: *mut GtkStack) -> GtkStackTransitionType;
18865    pub fn gtk_stack_get_vhomogeneous(stack: *mut GtkStack) -> gboolean;
18866    pub fn gtk_stack_get_visible_child(stack: *mut GtkStack) -> *mut GtkWidget;
18867    pub fn gtk_stack_get_visible_child_name(stack: *mut GtkStack) -> *const c_char;
18868    pub fn gtk_stack_remove(stack: *mut GtkStack, child: *mut GtkWidget);
18869    pub fn gtk_stack_set_hhomogeneous(stack: *mut GtkStack, hhomogeneous: gboolean);
18870    pub fn gtk_stack_set_interpolate_size(stack: *mut GtkStack, interpolate_size: gboolean);
18871    pub fn gtk_stack_set_transition_duration(stack: *mut GtkStack, duration: c_uint);
18872    pub fn gtk_stack_set_transition_type(stack: *mut GtkStack, transition: GtkStackTransitionType);
18873    pub fn gtk_stack_set_vhomogeneous(stack: *mut GtkStack, vhomogeneous: gboolean);
18874    pub fn gtk_stack_set_visible_child(stack: *mut GtkStack, child: *mut GtkWidget);
18875    pub fn gtk_stack_set_visible_child_full(
18876        stack: *mut GtkStack,
18877        name: *const c_char,
18878        transition: GtkStackTransitionType,
18879    );
18880    pub fn gtk_stack_set_visible_child_name(stack: *mut GtkStack, name: *const c_char);
18881
18882    //=========================================================================
18883    // GtkStackPage
18884    //=========================================================================
18885    pub fn gtk_stack_page_get_type() -> GType;
18886    pub fn gtk_stack_page_get_child(self_: *mut GtkStackPage) -> *mut GtkWidget;
18887    pub fn gtk_stack_page_get_icon_name(self_: *mut GtkStackPage) -> *const c_char;
18888    pub fn gtk_stack_page_get_name(self_: *mut GtkStackPage) -> *const c_char;
18889    pub fn gtk_stack_page_get_needs_attention(self_: *mut GtkStackPage) -> gboolean;
18890    pub fn gtk_stack_page_get_title(self_: *mut GtkStackPage) -> *const c_char;
18891    pub fn gtk_stack_page_get_use_underline(self_: *mut GtkStackPage) -> gboolean;
18892    pub fn gtk_stack_page_get_visible(self_: *mut GtkStackPage) -> gboolean;
18893    pub fn gtk_stack_page_set_icon_name(self_: *mut GtkStackPage, setting: *const c_char);
18894    pub fn gtk_stack_page_set_name(self_: *mut GtkStackPage, setting: *const c_char);
18895    pub fn gtk_stack_page_set_needs_attention(self_: *mut GtkStackPage, setting: gboolean);
18896    pub fn gtk_stack_page_set_title(self_: *mut GtkStackPage, setting: *const c_char);
18897    pub fn gtk_stack_page_set_use_underline(self_: *mut GtkStackPage, setting: gboolean);
18898    pub fn gtk_stack_page_set_visible(self_: *mut GtkStackPage, visible: gboolean);
18899
18900    //=========================================================================
18901    // GtkStackSidebar
18902    //=========================================================================
18903    pub fn gtk_stack_sidebar_get_type() -> GType;
18904    pub fn gtk_stack_sidebar_new() -> *mut GtkWidget;
18905    pub fn gtk_stack_sidebar_get_stack(self_: *mut GtkStackSidebar) -> *mut GtkStack;
18906    pub fn gtk_stack_sidebar_set_stack(self_: *mut GtkStackSidebar, stack: *mut GtkStack);
18907
18908    //=========================================================================
18909    // GtkStackSwitcher
18910    //=========================================================================
18911    pub fn gtk_stack_switcher_get_type() -> GType;
18912    pub fn gtk_stack_switcher_new() -> *mut GtkWidget;
18913    pub fn gtk_stack_switcher_get_stack(switcher: *mut GtkStackSwitcher) -> *mut GtkStack;
18914    pub fn gtk_stack_switcher_set_stack(switcher: *mut GtkStackSwitcher, stack: *mut GtkStack);
18915
18916    //=========================================================================
18917    // GtkStatusbar
18918    //=========================================================================
18919    pub fn gtk_statusbar_get_type() -> GType;
18920    pub fn gtk_statusbar_new() -> *mut GtkWidget;
18921    pub fn gtk_statusbar_get_context_id(
18922        statusbar: *mut GtkStatusbar,
18923        context_description: *const c_char,
18924    ) -> c_uint;
18925    pub fn gtk_statusbar_pop(statusbar: *mut GtkStatusbar, context_id: c_uint);
18926    pub fn gtk_statusbar_push(
18927        statusbar: *mut GtkStatusbar,
18928        context_id: c_uint,
18929        text: *const c_char,
18930    ) -> c_uint;
18931    pub fn gtk_statusbar_remove(
18932        statusbar: *mut GtkStatusbar,
18933        context_id: c_uint,
18934        message_id: c_uint,
18935    );
18936    pub fn gtk_statusbar_remove_all(statusbar: *mut GtkStatusbar, context_id: c_uint);
18937
18938    //=========================================================================
18939    // GtkStringFilter
18940    //=========================================================================
18941    pub fn gtk_string_filter_get_type() -> GType;
18942    pub fn gtk_string_filter_new(expression: *mut GtkExpression) -> *mut GtkStringFilter;
18943    pub fn gtk_string_filter_get_expression(self_: *mut GtkStringFilter) -> *mut GtkExpression;
18944    pub fn gtk_string_filter_get_ignore_case(self_: *mut GtkStringFilter) -> gboolean;
18945    pub fn gtk_string_filter_get_match_mode(
18946        self_: *mut GtkStringFilter,
18947    ) -> GtkStringFilterMatchMode;
18948    pub fn gtk_string_filter_get_search(self_: *mut GtkStringFilter) -> *const c_char;
18949    pub fn gtk_string_filter_set_expression(
18950        self_: *mut GtkStringFilter,
18951        expression: *mut GtkExpression,
18952    );
18953    pub fn gtk_string_filter_set_ignore_case(self_: *mut GtkStringFilter, ignore_case: gboolean);
18954    pub fn gtk_string_filter_set_match_mode(
18955        self_: *mut GtkStringFilter,
18956        mode: GtkStringFilterMatchMode,
18957    );
18958    pub fn gtk_string_filter_set_search(self_: *mut GtkStringFilter, search: *const c_char);
18959
18960    //=========================================================================
18961    // GtkStringList
18962    //=========================================================================
18963    pub fn gtk_string_list_get_type() -> GType;
18964    pub fn gtk_string_list_new(strings: *const *const c_char) -> *mut GtkStringList;
18965    pub fn gtk_string_list_append(self_: *mut GtkStringList, string: *const c_char);
18966    #[cfg(feature = "v4_18")]
18967    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
18968    pub fn gtk_string_list_find(self_: *mut GtkStringList, string: *const c_char) -> c_uint;
18969    pub fn gtk_string_list_get_string(self_: *mut GtkStringList, position: c_uint)
18970    -> *const c_char;
18971    pub fn gtk_string_list_remove(self_: *mut GtkStringList, position: c_uint);
18972    pub fn gtk_string_list_splice(
18973        self_: *mut GtkStringList,
18974        position: c_uint,
18975        n_removals: c_uint,
18976        additions: *const *const c_char,
18977    );
18978    pub fn gtk_string_list_take(self_: *mut GtkStringList, string: *mut c_char);
18979
18980    //=========================================================================
18981    // GtkStringObject
18982    //=========================================================================
18983    pub fn gtk_string_object_get_type() -> GType;
18984    pub fn gtk_string_object_new(string: *const c_char) -> *mut GtkStringObject;
18985    pub fn gtk_string_object_get_string(self_: *mut GtkStringObject) -> *const c_char;
18986
18987    //=========================================================================
18988    // GtkStringSorter
18989    //=========================================================================
18990    pub fn gtk_string_sorter_get_type() -> GType;
18991    pub fn gtk_string_sorter_new(expression: *mut GtkExpression) -> *mut GtkStringSorter;
18992    #[cfg(feature = "v4_10")]
18993    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18994    pub fn gtk_string_sorter_get_collation(self_: *mut GtkStringSorter) -> GtkCollation;
18995    pub fn gtk_string_sorter_get_expression(self_: *mut GtkStringSorter) -> *mut GtkExpression;
18996    pub fn gtk_string_sorter_get_ignore_case(self_: *mut GtkStringSorter) -> gboolean;
18997    #[cfg(feature = "v4_10")]
18998    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
18999    pub fn gtk_string_sorter_set_collation(self_: *mut GtkStringSorter, collation: GtkCollation);
19000    pub fn gtk_string_sorter_set_expression(
19001        self_: *mut GtkStringSorter,
19002        expression: *mut GtkExpression,
19003    );
19004    pub fn gtk_string_sorter_set_ignore_case(self_: *mut GtkStringSorter, ignore_case: gboolean);
19005
19006    //=========================================================================
19007    // GtkStyleContext
19008    //=========================================================================
19009    pub fn gtk_style_context_get_type() -> GType;
19010    pub fn gtk_style_context_add_provider_for_display(
19011        display: *mut gdk::GdkDisplay,
19012        provider: *mut GtkStyleProvider,
19013        priority: c_uint,
19014    );
19015    pub fn gtk_style_context_remove_provider_for_display(
19016        display: *mut gdk::GdkDisplay,
19017        provider: *mut GtkStyleProvider,
19018    );
19019    pub fn gtk_style_context_add_class(context: *mut GtkStyleContext, class_name: *const c_char);
19020    pub fn gtk_style_context_add_provider(
19021        context: *mut GtkStyleContext,
19022        provider: *mut GtkStyleProvider,
19023        priority: c_uint,
19024    );
19025    pub fn gtk_style_context_get_border(context: *mut GtkStyleContext, border: *mut GtkBorder);
19026    pub fn gtk_style_context_get_color(context: *mut GtkStyleContext, color: *mut gdk::GdkRGBA);
19027    pub fn gtk_style_context_get_display(context: *mut GtkStyleContext) -> *mut gdk::GdkDisplay;
19028    pub fn gtk_style_context_get_margin(context: *mut GtkStyleContext, margin: *mut GtkBorder);
19029    pub fn gtk_style_context_get_padding(context: *mut GtkStyleContext, padding: *mut GtkBorder);
19030    pub fn gtk_style_context_get_scale(context: *mut GtkStyleContext) -> c_int;
19031    pub fn gtk_style_context_get_state(context: *mut GtkStyleContext) -> GtkStateFlags;
19032    pub fn gtk_style_context_has_class(
19033        context: *mut GtkStyleContext,
19034        class_name: *const c_char,
19035    ) -> gboolean;
19036    pub fn gtk_style_context_lookup_color(
19037        context: *mut GtkStyleContext,
19038        color_name: *const c_char,
19039        color: *mut gdk::GdkRGBA,
19040    ) -> gboolean;
19041    pub fn gtk_style_context_remove_class(context: *mut GtkStyleContext, class_name: *const c_char);
19042    pub fn gtk_style_context_remove_provider(
19043        context: *mut GtkStyleContext,
19044        provider: *mut GtkStyleProvider,
19045    );
19046    pub fn gtk_style_context_restore(context: *mut GtkStyleContext);
19047    pub fn gtk_style_context_save(context: *mut GtkStyleContext);
19048    pub fn gtk_style_context_set_display(
19049        context: *mut GtkStyleContext,
19050        display: *mut gdk::GdkDisplay,
19051    );
19052    pub fn gtk_style_context_set_scale(context: *mut GtkStyleContext, scale: c_int);
19053    pub fn gtk_style_context_set_state(context: *mut GtkStyleContext, flags: GtkStateFlags);
19054    pub fn gtk_style_context_to_string(
19055        context: *mut GtkStyleContext,
19056        flags: GtkStyleContextPrintFlags,
19057    ) -> *mut c_char;
19058
19059    //=========================================================================
19060    // GtkSvg
19061    //=========================================================================
19062    #[cfg(feature = "v4_22")]
19063    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19064    pub fn gtk_svg_get_type() -> GType;
19065    #[cfg(feature = "v4_22")]
19066    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19067    pub fn gtk_svg_new() -> *mut GtkSvg;
19068    #[cfg(feature = "v4_22")]
19069    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19070    pub fn gtk_svg_new_from_bytes(bytes: *mut glib::GBytes) -> *mut GtkSvg;
19071    #[cfg(feature = "v4_22")]
19072    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19073    pub fn gtk_svg_new_from_resource(path: *const c_char) -> *mut GtkSvg;
19074    #[cfg(feature = "v4_22")]
19075    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19076    pub fn gtk_svg_get_features(self_: *mut GtkSvg) -> GtkSvgFeatures;
19077    #[cfg(feature = "v4_22")]
19078    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19079    pub fn gtk_svg_get_n_states(self_: *mut GtkSvg) -> c_uint;
19080    #[cfg(feature = "v4_22")]
19081    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19082    pub fn gtk_svg_get_state(self_: *mut GtkSvg) -> c_uint;
19083    #[cfg(feature = "v4_22")]
19084    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19085    pub fn gtk_svg_get_weight(self_: *mut GtkSvg) -> c_double;
19086    #[cfg(feature = "v4_22")]
19087    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19088    pub fn gtk_svg_load_from_bytes(self_: *mut GtkSvg, bytes: *mut glib::GBytes);
19089    #[cfg(feature = "v4_22")]
19090    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19091    pub fn gtk_svg_load_from_resource(self_: *mut GtkSvg, path: *const c_char);
19092    #[cfg(feature = "v4_22")]
19093    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19094    pub fn gtk_svg_pause(self_: *mut GtkSvg);
19095    #[cfg(feature = "v4_22")]
19096    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19097    pub fn gtk_svg_play(self_: *mut GtkSvg);
19098    #[cfg(feature = "v4_22")]
19099    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19100    pub fn gtk_svg_serialize(self_: *mut GtkSvg) -> *mut glib::GBytes;
19101    #[cfg(feature = "v4_22")]
19102    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19103    pub fn gtk_svg_set_features(self_: *mut GtkSvg, features: GtkSvgFeatures);
19104    #[cfg(feature = "v4_22")]
19105    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19106    pub fn gtk_svg_set_frame_clock(self_: *mut GtkSvg, clock: *mut gdk::GdkFrameClock);
19107    #[cfg(feature = "v4_22")]
19108    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19109    pub fn gtk_svg_set_state(self_: *mut GtkSvg, state: c_uint);
19110    #[cfg(feature = "v4_22")]
19111    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19112    pub fn gtk_svg_set_weight(self_: *mut GtkSvg, weight: c_double);
19113    #[cfg(feature = "v4_22")]
19114    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
19115    pub fn gtk_svg_write_to_file(
19116        self_: *mut GtkSvg,
19117        filename: *const c_char,
19118        error: *mut *mut glib::GError,
19119    ) -> gboolean;
19120
19121    //=========================================================================
19122    // GtkSwitch
19123    //=========================================================================
19124    pub fn gtk_switch_get_type() -> GType;
19125    pub fn gtk_switch_new() -> *mut GtkWidget;
19126    pub fn gtk_switch_get_active(self_: *mut GtkSwitch) -> gboolean;
19127    pub fn gtk_switch_get_state(self_: *mut GtkSwitch) -> gboolean;
19128    pub fn gtk_switch_set_active(self_: *mut GtkSwitch, is_active: gboolean);
19129    pub fn gtk_switch_set_state(self_: *mut GtkSwitch, state: gboolean);
19130
19131    //=========================================================================
19132    // GtkText
19133    //=========================================================================
19134    pub fn gtk_text_get_type() -> GType;
19135    pub fn gtk_text_new() -> *mut GtkWidget;
19136    pub fn gtk_text_new_with_buffer(buffer: *mut GtkEntryBuffer) -> *mut GtkWidget;
19137    #[cfg(feature = "v4_4")]
19138    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19139    pub fn gtk_text_compute_cursor_extents(
19140        self_: *mut GtkText,
19141        position: size_t,
19142        strong: *mut graphene::graphene_rect_t,
19143        weak: *mut graphene::graphene_rect_t,
19144    );
19145    pub fn gtk_text_get_activates_default(self_: *mut GtkText) -> gboolean;
19146    pub fn gtk_text_get_attributes(self_: *mut GtkText) -> *mut pango::PangoAttrList;
19147    pub fn gtk_text_get_buffer(self_: *mut GtkText) -> *mut GtkEntryBuffer;
19148    pub fn gtk_text_get_enable_emoji_completion(self_: *mut GtkText) -> gboolean;
19149    pub fn gtk_text_get_extra_menu(self_: *mut GtkText) -> *mut gio::GMenuModel;
19150    pub fn gtk_text_get_input_hints(self_: *mut GtkText) -> GtkInputHints;
19151    pub fn gtk_text_get_input_purpose(self_: *mut GtkText) -> GtkInputPurpose;
19152    pub fn gtk_text_get_invisible_char(self_: *mut GtkText) -> u32;
19153    pub fn gtk_text_get_max_length(self_: *mut GtkText) -> c_int;
19154    pub fn gtk_text_get_overwrite_mode(self_: *mut GtkText) -> gboolean;
19155    pub fn gtk_text_get_placeholder_text(self_: *mut GtkText) -> *const c_char;
19156    pub fn gtk_text_get_propagate_text_width(self_: *mut GtkText) -> gboolean;
19157    pub fn gtk_text_get_tabs(self_: *mut GtkText) -> *mut pango::PangoTabArray;
19158    pub fn gtk_text_get_text_length(self_: *mut GtkText) -> u16;
19159    pub fn gtk_text_get_truncate_multiline(self_: *mut GtkText) -> gboolean;
19160    pub fn gtk_text_get_visibility(self_: *mut GtkText) -> gboolean;
19161    pub fn gtk_text_grab_focus_without_selecting(self_: *mut GtkText) -> gboolean;
19162    pub fn gtk_text_set_activates_default(self_: *mut GtkText, activates: gboolean);
19163    pub fn gtk_text_set_attributes(self_: *mut GtkText, attrs: *mut pango::PangoAttrList);
19164    pub fn gtk_text_set_buffer(self_: *mut GtkText, buffer: *mut GtkEntryBuffer);
19165    pub fn gtk_text_set_enable_emoji_completion(
19166        self_: *mut GtkText,
19167        enable_emoji_completion: gboolean,
19168    );
19169    pub fn gtk_text_set_extra_menu(self_: *mut GtkText, model: *mut gio::GMenuModel);
19170    pub fn gtk_text_set_input_hints(self_: *mut GtkText, hints: GtkInputHints);
19171    pub fn gtk_text_set_input_purpose(self_: *mut GtkText, purpose: GtkInputPurpose);
19172    pub fn gtk_text_set_invisible_char(self_: *mut GtkText, ch: u32);
19173    pub fn gtk_text_set_max_length(self_: *mut GtkText, length: c_int);
19174    pub fn gtk_text_set_overwrite_mode(self_: *mut GtkText, overwrite: gboolean);
19175    pub fn gtk_text_set_placeholder_text(self_: *mut GtkText, text: *const c_char);
19176    pub fn gtk_text_set_propagate_text_width(self_: *mut GtkText, propagate_text_width: gboolean);
19177    pub fn gtk_text_set_tabs(self_: *mut GtkText, tabs: *mut pango::PangoTabArray);
19178    pub fn gtk_text_set_truncate_multiline(self_: *mut GtkText, truncate_multiline: gboolean);
19179    pub fn gtk_text_set_visibility(self_: *mut GtkText, visible: gboolean);
19180    pub fn gtk_text_unset_invisible_char(self_: *mut GtkText);
19181
19182    //=========================================================================
19183    // GtkTextBuffer
19184    //=========================================================================
19185    pub fn gtk_text_buffer_get_type() -> GType;
19186    pub fn gtk_text_buffer_new(table: *mut GtkTextTagTable) -> *mut GtkTextBuffer;
19187    #[cfg(feature = "v4_16")]
19188    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19189    pub fn gtk_text_buffer_add_commit_notify(
19190        buffer: *mut GtkTextBuffer,
19191        flags: GtkTextBufferNotifyFlags,
19192        commit_notify: GtkTextBufferCommitNotify,
19193        user_data: gpointer,
19194        destroy: glib::GDestroyNotify,
19195    ) -> c_uint;
19196    pub fn gtk_text_buffer_add_mark(
19197        buffer: *mut GtkTextBuffer,
19198        mark: *mut GtkTextMark,
19199        where_: *const GtkTextIter,
19200    );
19201    pub fn gtk_text_buffer_add_selection_clipboard(
19202        buffer: *mut GtkTextBuffer,
19203        clipboard: *mut gdk::GdkClipboard,
19204    );
19205    pub fn gtk_text_buffer_apply_tag(
19206        buffer: *mut GtkTextBuffer,
19207        tag: *mut GtkTextTag,
19208        start: *const GtkTextIter,
19209        end: *const GtkTextIter,
19210    );
19211    pub fn gtk_text_buffer_apply_tag_by_name(
19212        buffer: *mut GtkTextBuffer,
19213        name: *const c_char,
19214        start: *const GtkTextIter,
19215        end: *const GtkTextIter,
19216    );
19217    pub fn gtk_text_buffer_backspace(
19218        buffer: *mut GtkTextBuffer,
19219        iter: *mut GtkTextIter,
19220        interactive: gboolean,
19221        default_editable: gboolean,
19222    ) -> gboolean;
19223    pub fn gtk_text_buffer_begin_irreversible_action(buffer: *mut GtkTextBuffer);
19224    pub fn gtk_text_buffer_begin_user_action(buffer: *mut GtkTextBuffer);
19225    pub fn gtk_text_buffer_copy_clipboard(
19226        buffer: *mut GtkTextBuffer,
19227        clipboard: *mut gdk::GdkClipboard,
19228    );
19229    pub fn gtk_text_buffer_create_child_anchor(
19230        buffer: *mut GtkTextBuffer,
19231        iter: *mut GtkTextIter,
19232    ) -> *mut GtkTextChildAnchor;
19233    pub fn gtk_text_buffer_create_mark(
19234        buffer: *mut GtkTextBuffer,
19235        mark_name: *const c_char,
19236        where_: *const GtkTextIter,
19237        left_gravity: gboolean,
19238    ) -> *mut GtkTextMark;
19239    pub fn gtk_text_buffer_create_tag(
19240        buffer: *mut GtkTextBuffer,
19241        tag_name: *const c_char,
19242        first_property_name: *const c_char,
19243        ...
19244    ) -> *mut GtkTextTag;
19245    pub fn gtk_text_buffer_cut_clipboard(
19246        buffer: *mut GtkTextBuffer,
19247        clipboard: *mut gdk::GdkClipboard,
19248        default_editable: gboolean,
19249    );
19250    pub fn gtk_text_buffer_delete(
19251        buffer: *mut GtkTextBuffer,
19252        start: *mut GtkTextIter,
19253        end: *mut GtkTextIter,
19254    );
19255    pub fn gtk_text_buffer_delete_interactive(
19256        buffer: *mut GtkTextBuffer,
19257        start_iter: *mut GtkTextIter,
19258        end_iter: *mut GtkTextIter,
19259        default_editable: gboolean,
19260    ) -> gboolean;
19261    pub fn gtk_text_buffer_delete_mark(buffer: *mut GtkTextBuffer, mark: *mut GtkTextMark);
19262    pub fn gtk_text_buffer_delete_mark_by_name(buffer: *mut GtkTextBuffer, name: *const c_char);
19263    pub fn gtk_text_buffer_delete_selection(
19264        buffer: *mut GtkTextBuffer,
19265        interactive: gboolean,
19266        default_editable: gboolean,
19267    ) -> gboolean;
19268    pub fn gtk_text_buffer_end_irreversible_action(buffer: *mut GtkTextBuffer);
19269    pub fn gtk_text_buffer_end_user_action(buffer: *mut GtkTextBuffer);
19270    pub fn gtk_text_buffer_get_bounds(
19271        buffer: *mut GtkTextBuffer,
19272        start: *mut GtkTextIter,
19273        end: *mut GtkTextIter,
19274    );
19275    pub fn gtk_text_buffer_get_can_redo(buffer: *mut GtkTextBuffer) -> gboolean;
19276    pub fn gtk_text_buffer_get_can_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19277    pub fn gtk_text_buffer_get_char_count(buffer: *mut GtkTextBuffer) -> c_int;
19278    pub fn gtk_text_buffer_get_enable_undo(buffer: *mut GtkTextBuffer) -> gboolean;
19279    pub fn gtk_text_buffer_get_end_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19280    pub fn gtk_text_buffer_get_has_selection(buffer: *mut GtkTextBuffer) -> gboolean;
19281    pub fn gtk_text_buffer_get_insert(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19282    pub fn gtk_text_buffer_get_iter_at_child_anchor(
19283        buffer: *mut GtkTextBuffer,
19284        iter: *mut GtkTextIter,
19285        anchor: *mut GtkTextChildAnchor,
19286    );
19287    pub fn gtk_text_buffer_get_iter_at_line(
19288        buffer: *mut GtkTextBuffer,
19289        iter: *mut GtkTextIter,
19290        line_number: c_int,
19291    ) -> gboolean;
19292    pub fn gtk_text_buffer_get_iter_at_line_index(
19293        buffer: *mut GtkTextBuffer,
19294        iter: *mut GtkTextIter,
19295        line_number: c_int,
19296        byte_index: c_int,
19297    ) -> gboolean;
19298    pub fn gtk_text_buffer_get_iter_at_line_offset(
19299        buffer: *mut GtkTextBuffer,
19300        iter: *mut GtkTextIter,
19301        line_number: c_int,
19302        char_offset: c_int,
19303    ) -> gboolean;
19304    pub fn gtk_text_buffer_get_iter_at_mark(
19305        buffer: *mut GtkTextBuffer,
19306        iter: *mut GtkTextIter,
19307        mark: *mut GtkTextMark,
19308    );
19309    pub fn gtk_text_buffer_get_iter_at_offset(
19310        buffer: *mut GtkTextBuffer,
19311        iter: *mut GtkTextIter,
19312        char_offset: c_int,
19313    );
19314    pub fn gtk_text_buffer_get_line_count(buffer: *mut GtkTextBuffer) -> c_int;
19315    pub fn gtk_text_buffer_get_mark(
19316        buffer: *mut GtkTextBuffer,
19317        name: *const c_char,
19318    ) -> *mut GtkTextMark;
19319    pub fn gtk_text_buffer_get_max_undo_levels(buffer: *mut GtkTextBuffer) -> c_uint;
19320    pub fn gtk_text_buffer_get_modified(buffer: *mut GtkTextBuffer) -> gboolean;
19321    pub fn gtk_text_buffer_get_selection_bound(buffer: *mut GtkTextBuffer) -> *mut GtkTextMark;
19322    pub fn gtk_text_buffer_get_selection_bounds(
19323        buffer: *mut GtkTextBuffer,
19324        start: *mut GtkTextIter,
19325        end: *mut GtkTextIter,
19326    ) -> gboolean;
19327    pub fn gtk_text_buffer_get_selection_content(
19328        buffer: *mut GtkTextBuffer,
19329    ) -> *mut gdk::GdkContentProvider;
19330    pub fn gtk_text_buffer_get_slice(
19331        buffer: *mut GtkTextBuffer,
19332        start: *const GtkTextIter,
19333        end: *const GtkTextIter,
19334        include_hidden_chars: gboolean,
19335    ) -> *mut c_char;
19336    pub fn gtk_text_buffer_get_start_iter(buffer: *mut GtkTextBuffer, iter: *mut GtkTextIter);
19337    pub fn gtk_text_buffer_get_tag_table(buffer: *mut GtkTextBuffer) -> *mut GtkTextTagTable;
19338    pub fn gtk_text_buffer_get_text(
19339        buffer: *mut GtkTextBuffer,
19340        start: *const GtkTextIter,
19341        end: *const GtkTextIter,
19342        include_hidden_chars: gboolean,
19343    ) -> *mut c_char;
19344    pub fn gtk_text_buffer_insert(
19345        buffer: *mut GtkTextBuffer,
19346        iter: *mut GtkTextIter,
19347        text: *const c_char,
19348        len: c_int,
19349    );
19350    pub fn gtk_text_buffer_insert_at_cursor(
19351        buffer: *mut GtkTextBuffer,
19352        text: *const c_char,
19353        len: c_int,
19354    );
19355    pub fn gtk_text_buffer_insert_child_anchor(
19356        buffer: *mut GtkTextBuffer,
19357        iter: *mut GtkTextIter,
19358        anchor: *mut GtkTextChildAnchor,
19359    );
19360    pub fn gtk_text_buffer_insert_interactive(
19361        buffer: *mut GtkTextBuffer,
19362        iter: *mut GtkTextIter,
19363        text: *const c_char,
19364        len: c_int,
19365        default_editable: gboolean,
19366    ) -> gboolean;
19367    pub fn gtk_text_buffer_insert_interactive_at_cursor(
19368        buffer: *mut GtkTextBuffer,
19369        text: *const c_char,
19370        len: c_int,
19371        default_editable: gboolean,
19372    ) -> gboolean;
19373    pub fn gtk_text_buffer_insert_markup(
19374        buffer: *mut GtkTextBuffer,
19375        iter: *mut GtkTextIter,
19376        markup: *const c_char,
19377        len: c_int,
19378    );
19379    pub fn gtk_text_buffer_insert_paintable(
19380        buffer: *mut GtkTextBuffer,
19381        iter: *mut GtkTextIter,
19382        paintable: *mut gdk::GdkPaintable,
19383    );
19384    pub fn gtk_text_buffer_insert_range(
19385        buffer: *mut GtkTextBuffer,
19386        iter: *mut GtkTextIter,
19387        start: *const GtkTextIter,
19388        end: *const GtkTextIter,
19389    );
19390    pub fn gtk_text_buffer_insert_range_interactive(
19391        buffer: *mut GtkTextBuffer,
19392        iter: *mut GtkTextIter,
19393        start: *const GtkTextIter,
19394        end: *const GtkTextIter,
19395        default_editable: gboolean,
19396    ) -> gboolean;
19397    pub fn gtk_text_buffer_insert_with_tags(
19398        buffer: *mut GtkTextBuffer,
19399        iter: *mut GtkTextIter,
19400        text: *const c_char,
19401        len: c_int,
19402        first_tag: *mut GtkTextTag,
19403        ...
19404    );
19405    pub fn gtk_text_buffer_insert_with_tags_by_name(
19406        buffer: *mut GtkTextBuffer,
19407        iter: *mut GtkTextIter,
19408        text: *const c_char,
19409        len: c_int,
19410        first_tag_name: *const c_char,
19411        ...
19412    );
19413    pub fn gtk_text_buffer_move_mark(
19414        buffer: *mut GtkTextBuffer,
19415        mark: *mut GtkTextMark,
19416        where_: *const GtkTextIter,
19417    );
19418    pub fn gtk_text_buffer_move_mark_by_name(
19419        buffer: *mut GtkTextBuffer,
19420        name: *const c_char,
19421        where_: *const GtkTextIter,
19422    );
19423    pub fn gtk_text_buffer_paste_clipboard(
19424        buffer: *mut GtkTextBuffer,
19425        clipboard: *mut gdk::GdkClipboard,
19426        override_location: *mut GtkTextIter,
19427        default_editable: gboolean,
19428    );
19429    pub fn gtk_text_buffer_place_cursor(buffer: *mut GtkTextBuffer, where_: *const GtkTextIter);
19430    pub fn gtk_text_buffer_redo(buffer: *mut GtkTextBuffer);
19431    pub fn gtk_text_buffer_remove_all_tags(
19432        buffer: *mut GtkTextBuffer,
19433        start: *const GtkTextIter,
19434        end: *const GtkTextIter,
19435    );
19436    #[cfg(feature = "v4_16")]
19437    #[cfg_attr(docsrs, doc(cfg(feature = "v4_16")))]
19438    pub fn gtk_text_buffer_remove_commit_notify(
19439        buffer: *mut GtkTextBuffer,
19440        commit_notify_handler: c_uint,
19441    );
19442    pub fn gtk_text_buffer_remove_selection_clipboard(
19443        buffer: *mut GtkTextBuffer,
19444        clipboard: *mut gdk::GdkClipboard,
19445    );
19446    pub fn gtk_text_buffer_remove_tag(
19447        buffer: *mut GtkTextBuffer,
19448        tag: *mut GtkTextTag,
19449        start: *const GtkTextIter,
19450        end: *const GtkTextIter,
19451    );
19452    pub fn gtk_text_buffer_remove_tag_by_name(
19453        buffer: *mut GtkTextBuffer,
19454        name: *const c_char,
19455        start: *const GtkTextIter,
19456        end: *const GtkTextIter,
19457    );
19458    pub fn gtk_text_buffer_select_range(
19459        buffer: *mut GtkTextBuffer,
19460        ins: *const GtkTextIter,
19461        bound: *const GtkTextIter,
19462    );
19463    pub fn gtk_text_buffer_set_enable_undo(buffer: *mut GtkTextBuffer, enable_undo: gboolean);
19464    pub fn gtk_text_buffer_set_max_undo_levels(buffer: *mut GtkTextBuffer, max_undo_levels: c_uint);
19465    pub fn gtk_text_buffer_set_modified(buffer: *mut GtkTextBuffer, setting: gboolean);
19466    pub fn gtk_text_buffer_set_text(buffer: *mut GtkTextBuffer, text: *const c_char, len: c_int);
19467    pub fn gtk_text_buffer_undo(buffer: *mut GtkTextBuffer);
19468
19469    //=========================================================================
19470    // GtkTextChildAnchor
19471    //=========================================================================
19472    pub fn gtk_text_child_anchor_get_type() -> GType;
19473    pub fn gtk_text_child_anchor_new() -> *mut GtkTextChildAnchor;
19474    #[cfg(feature = "v4_6")]
19475    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19476    pub fn gtk_text_child_anchor_new_with_replacement(
19477        character: *const c_char,
19478    ) -> *mut GtkTextChildAnchor;
19479    pub fn gtk_text_child_anchor_get_deleted(anchor: *mut GtkTextChildAnchor) -> gboolean;
19480    pub fn gtk_text_child_anchor_get_widgets(
19481        anchor: *mut GtkTextChildAnchor,
19482        out_len: *mut c_uint,
19483    ) -> *mut *mut GtkWidget;
19484
19485    //=========================================================================
19486    // GtkTextMark
19487    //=========================================================================
19488    pub fn gtk_text_mark_get_type() -> GType;
19489    pub fn gtk_text_mark_new(name: *const c_char, left_gravity: gboolean) -> *mut GtkTextMark;
19490    pub fn gtk_text_mark_get_buffer(mark: *mut GtkTextMark) -> *mut GtkTextBuffer;
19491    pub fn gtk_text_mark_get_deleted(mark: *mut GtkTextMark) -> gboolean;
19492    pub fn gtk_text_mark_get_left_gravity(mark: *mut GtkTextMark) -> gboolean;
19493    pub fn gtk_text_mark_get_name(mark: *mut GtkTextMark) -> *const c_char;
19494    pub fn gtk_text_mark_get_visible(mark: *mut GtkTextMark) -> gboolean;
19495    pub fn gtk_text_mark_set_visible(mark: *mut GtkTextMark, setting: gboolean);
19496
19497    //=========================================================================
19498    // GtkTextTag
19499    //=========================================================================
19500    pub fn gtk_text_tag_get_type() -> GType;
19501    pub fn gtk_text_tag_new(name: *const c_char) -> *mut GtkTextTag;
19502    pub fn gtk_text_tag_changed(tag: *mut GtkTextTag, size_changed: gboolean);
19503    pub fn gtk_text_tag_get_priority(tag: *mut GtkTextTag) -> c_int;
19504    pub fn gtk_text_tag_set_priority(tag: *mut GtkTextTag, priority: c_int);
19505
19506    //=========================================================================
19507    // GtkTextTagTable
19508    //=========================================================================
19509    pub fn gtk_text_tag_table_get_type() -> GType;
19510    pub fn gtk_text_tag_table_new() -> *mut GtkTextTagTable;
19511    pub fn gtk_text_tag_table_add(table: *mut GtkTextTagTable, tag: *mut GtkTextTag) -> gboolean;
19512    pub fn gtk_text_tag_table_foreach(
19513        table: *mut GtkTextTagTable,
19514        func: GtkTextTagTableForeach,
19515        data: gpointer,
19516    );
19517    pub fn gtk_text_tag_table_get_size(table: *mut GtkTextTagTable) -> c_int;
19518    pub fn gtk_text_tag_table_lookup(
19519        table: *mut GtkTextTagTable,
19520        name: *const c_char,
19521    ) -> *mut GtkTextTag;
19522    pub fn gtk_text_tag_table_remove(table: *mut GtkTextTagTable, tag: *mut GtkTextTag);
19523
19524    //=========================================================================
19525    // GtkTextView
19526    //=========================================================================
19527    pub fn gtk_text_view_get_type() -> GType;
19528    pub fn gtk_text_view_new() -> *mut GtkWidget;
19529    pub fn gtk_text_view_new_with_buffer(buffer: *mut GtkTextBuffer) -> *mut GtkWidget;
19530    pub fn gtk_text_view_add_child_at_anchor(
19531        text_view: *mut GtkTextView,
19532        child: *mut GtkWidget,
19533        anchor: *mut GtkTextChildAnchor,
19534    );
19535    pub fn gtk_text_view_add_overlay(
19536        text_view: *mut GtkTextView,
19537        child: *mut GtkWidget,
19538        xpos: c_int,
19539        ypos: c_int,
19540    );
19541    pub fn gtk_text_view_backward_display_line(
19542        text_view: *mut GtkTextView,
19543        iter: *mut GtkTextIter,
19544    ) -> gboolean;
19545    pub fn gtk_text_view_backward_display_line_start(
19546        text_view: *mut GtkTextView,
19547        iter: *mut GtkTextIter,
19548    ) -> gboolean;
19549    pub fn gtk_text_view_buffer_to_window_coords(
19550        text_view: *mut GtkTextView,
19551        win: GtkTextWindowType,
19552        buffer_x: c_int,
19553        buffer_y: c_int,
19554        window_x: *mut c_int,
19555        window_y: *mut c_int,
19556    );
19557    pub fn gtk_text_view_forward_display_line(
19558        text_view: *mut GtkTextView,
19559        iter: *mut GtkTextIter,
19560    ) -> gboolean;
19561    pub fn gtk_text_view_forward_display_line_end(
19562        text_view: *mut GtkTextView,
19563        iter: *mut GtkTextIter,
19564    ) -> gboolean;
19565    pub fn gtk_text_view_get_accepts_tab(text_view: *mut GtkTextView) -> gboolean;
19566    pub fn gtk_text_view_get_bottom_margin(text_view: *mut GtkTextView) -> c_int;
19567    pub fn gtk_text_view_get_buffer(text_view: *mut GtkTextView) -> *mut GtkTextBuffer;
19568    pub fn gtk_text_view_get_cursor_locations(
19569        text_view: *mut GtkTextView,
19570        iter: *const GtkTextIter,
19571        strong: *mut gdk::GdkRectangle,
19572        weak: *mut gdk::GdkRectangle,
19573    );
19574    pub fn gtk_text_view_get_cursor_visible(text_view: *mut GtkTextView) -> gboolean;
19575    pub fn gtk_text_view_get_editable(text_view: *mut GtkTextView) -> gboolean;
19576    pub fn gtk_text_view_get_extra_menu(text_view: *mut GtkTextView) -> *mut gio::GMenuModel;
19577    pub fn gtk_text_view_get_gutter(
19578        text_view: *mut GtkTextView,
19579        win: GtkTextWindowType,
19580    ) -> *mut GtkWidget;
19581    pub fn gtk_text_view_get_indent(text_view: *mut GtkTextView) -> c_int;
19582    pub fn gtk_text_view_get_input_hints(text_view: *mut GtkTextView) -> GtkInputHints;
19583    pub fn gtk_text_view_get_input_purpose(text_view: *mut GtkTextView) -> GtkInputPurpose;
19584    pub fn gtk_text_view_get_iter_at_location(
19585        text_view: *mut GtkTextView,
19586        iter: *mut GtkTextIter,
19587        x: c_int,
19588        y: c_int,
19589    ) -> gboolean;
19590    pub fn gtk_text_view_get_iter_at_position(
19591        text_view: *mut GtkTextView,
19592        iter: *mut GtkTextIter,
19593        trailing: *mut c_int,
19594        x: c_int,
19595        y: c_int,
19596    ) -> gboolean;
19597    pub fn gtk_text_view_get_iter_location(
19598        text_view: *mut GtkTextView,
19599        iter: *const GtkTextIter,
19600        location: *mut gdk::GdkRectangle,
19601    );
19602    pub fn gtk_text_view_get_justification(text_view: *mut GtkTextView) -> GtkJustification;
19603    pub fn gtk_text_view_get_left_margin(text_view: *mut GtkTextView) -> c_int;
19604    pub fn gtk_text_view_get_line_at_y(
19605        text_view: *mut GtkTextView,
19606        target_iter: *mut GtkTextIter,
19607        y: c_int,
19608        line_top: *mut c_int,
19609    );
19610    pub fn gtk_text_view_get_line_yrange(
19611        text_view: *mut GtkTextView,
19612        iter: *const GtkTextIter,
19613        y: *mut c_int,
19614        height: *mut c_int,
19615    );
19616    #[cfg(feature = "v4_4")]
19617    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19618    pub fn gtk_text_view_get_ltr_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19619    pub fn gtk_text_view_get_monospace(text_view: *mut GtkTextView) -> gboolean;
19620    pub fn gtk_text_view_get_overwrite(text_view: *mut GtkTextView) -> gboolean;
19621    pub fn gtk_text_view_get_pixels_above_lines(text_view: *mut GtkTextView) -> c_int;
19622    pub fn gtk_text_view_get_pixels_below_lines(text_view: *mut GtkTextView) -> c_int;
19623    pub fn gtk_text_view_get_pixels_inside_wrap(text_view: *mut GtkTextView) -> c_int;
19624    pub fn gtk_text_view_get_right_margin(text_view: *mut GtkTextView) -> c_int;
19625    #[cfg(feature = "v4_4")]
19626    #[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
19627    pub fn gtk_text_view_get_rtl_context(text_view: *mut GtkTextView) -> *mut pango::PangoContext;
19628    pub fn gtk_text_view_get_tabs(text_view: *mut GtkTextView) -> *mut pango::PangoTabArray;
19629    pub fn gtk_text_view_get_top_margin(text_view: *mut GtkTextView) -> c_int;
19630    #[cfg(feature = "v4_18")]
19631    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
19632    pub fn gtk_text_view_get_visible_offset(
19633        text_view: *mut GtkTextView,
19634        x_offset: *mut c_double,
19635        y_offset: *mut c_double,
19636    );
19637    pub fn gtk_text_view_get_visible_rect(
19638        text_view: *mut GtkTextView,
19639        visible_rect: *mut gdk::GdkRectangle,
19640    );
19641    pub fn gtk_text_view_get_wrap_mode(text_view: *mut GtkTextView) -> GtkWrapMode;
19642    pub fn gtk_text_view_im_context_filter_keypress(
19643        text_view: *mut GtkTextView,
19644        event: *mut gdk::GdkEvent,
19645    ) -> gboolean;
19646    pub fn gtk_text_view_move_mark_onscreen(
19647        text_view: *mut GtkTextView,
19648        mark: *mut GtkTextMark,
19649    ) -> gboolean;
19650    pub fn gtk_text_view_move_overlay(
19651        text_view: *mut GtkTextView,
19652        child: *mut GtkWidget,
19653        xpos: c_int,
19654        ypos: c_int,
19655    );
19656    pub fn gtk_text_view_move_visually(
19657        text_view: *mut GtkTextView,
19658        iter: *mut GtkTextIter,
19659        count: c_int,
19660    ) -> gboolean;
19661    pub fn gtk_text_view_place_cursor_onscreen(text_view: *mut GtkTextView) -> gboolean;
19662    pub fn gtk_text_view_remove(text_view: *mut GtkTextView, child: *mut GtkWidget);
19663    pub fn gtk_text_view_reset_cursor_blink(text_view: *mut GtkTextView);
19664    pub fn gtk_text_view_reset_im_context(text_view: *mut GtkTextView);
19665    pub fn gtk_text_view_scroll_mark_onscreen(text_view: *mut GtkTextView, mark: *mut GtkTextMark);
19666    pub fn gtk_text_view_scroll_to_iter(
19667        text_view: *mut GtkTextView,
19668        iter: *mut GtkTextIter,
19669        within_margin: c_double,
19670        use_align: gboolean,
19671        xalign: c_double,
19672        yalign: c_double,
19673    ) -> gboolean;
19674    pub fn gtk_text_view_scroll_to_mark(
19675        text_view: *mut GtkTextView,
19676        mark: *mut GtkTextMark,
19677        within_margin: c_double,
19678        use_align: gboolean,
19679        xalign: c_double,
19680        yalign: c_double,
19681    );
19682    pub fn gtk_text_view_set_accepts_tab(text_view: *mut GtkTextView, accepts_tab: gboolean);
19683    pub fn gtk_text_view_set_bottom_margin(text_view: *mut GtkTextView, bottom_margin: c_int);
19684    pub fn gtk_text_view_set_buffer(text_view: *mut GtkTextView, buffer: *mut GtkTextBuffer);
19685    pub fn gtk_text_view_set_cursor_visible(text_view: *mut GtkTextView, setting: gboolean);
19686    pub fn gtk_text_view_set_editable(text_view: *mut GtkTextView, setting: gboolean);
19687    pub fn gtk_text_view_set_extra_menu(text_view: *mut GtkTextView, model: *mut gio::GMenuModel);
19688    pub fn gtk_text_view_set_gutter(
19689        text_view: *mut GtkTextView,
19690        win: GtkTextWindowType,
19691        widget: *mut GtkWidget,
19692    );
19693    pub fn gtk_text_view_set_indent(text_view: *mut GtkTextView, indent: c_int);
19694    pub fn gtk_text_view_set_input_hints(text_view: *mut GtkTextView, hints: GtkInputHints);
19695    pub fn gtk_text_view_set_input_purpose(text_view: *mut GtkTextView, purpose: GtkInputPurpose);
19696    pub fn gtk_text_view_set_justification(
19697        text_view: *mut GtkTextView,
19698        justification: GtkJustification,
19699    );
19700    pub fn gtk_text_view_set_left_margin(text_view: *mut GtkTextView, left_margin: c_int);
19701    pub fn gtk_text_view_set_monospace(text_view: *mut GtkTextView, monospace: gboolean);
19702    pub fn gtk_text_view_set_overwrite(text_view: *mut GtkTextView, overwrite: gboolean);
19703    pub fn gtk_text_view_set_pixels_above_lines(
19704        text_view: *mut GtkTextView,
19705        pixels_above_lines: c_int,
19706    );
19707    pub fn gtk_text_view_set_pixels_below_lines(
19708        text_view: *mut GtkTextView,
19709        pixels_below_lines: c_int,
19710    );
19711    pub fn gtk_text_view_set_pixels_inside_wrap(
19712        text_view: *mut GtkTextView,
19713        pixels_inside_wrap: c_int,
19714    );
19715    pub fn gtk_text_view_set_right_margin(text_view: *mut GtkTextView, right_margin: c_int);
19716    pub fn gtk_text_view_set_tabs(text_view: *mut GtkTextView, tabs: *mut pango::PangoTabArray);
19717    pub fn gtk_text_view_set_top_margin(text_view: *mut GtkTextView, top_margin: c_int);
19718    pub fn gtk_text_view_set_wrap_mode(text_view: *mut GtkTextView, wrap_mode: GtkWrapMode);
19719    pub fn gtk_text_view_starts_display_line(
19720        text_view: *mut GtkTextView,
19721        iter: *const GtkTextIter,
19722    ) -> gboolean;
19723    pub fn gtk_text_view_window_to_buffer_coords(
19724        text_view: *mut GtkTextView,
19725        win: GtkTextWindowType,
19726        window_x: c_int,
19727        window_y: c_int,
19728        buffer_x: *mut c_int,
19729        buffer_y: *mut c_int,
19730    );
19731
19732    //=========================================================================
19733    // GtkToggleButton
19734    //=========================================================================
19735    pub fn gtk_toggle_button_get_type() -> GType;
19736    pub fn gtk_toggle_button_new() -> *mut GtkWidget;
19737    pub fn gtk_toggle_button_new_with_label(label: *const c_char) -> *mut GtkWidget;
19738    pub fn gtk_toggle_button_new_with_mnemonic(label: *const c_char) -> *mut GtkWidget;
19739    pub fn gtk_toggle_button_get_active(toggle_button: *mut GtkToggleButton) -> gboolean;
19740    pub fn gtk_toggle_button_set_active(toggle_button: *mut GtkToggleButton, is_active: gboolean);
19741    pub fn gtk_toggle_button_set_group(
19742        toggle_button: *mut GtkToggleButton,
19743        group: *mut GtkToggleButton,
19744    );
19745    pub fn gtk_toggle_button_toggled(toggle_button: *mut GtkToggleButton);
19746
19747    //=========================================================================
19748    // GtkTooltip
19749    //=========================================================================
19750    pub fn gtk_tooltip_get_type() -> GType;
19751    pub fn gtk_tooltip_set_custom(tooltip: *mut GtkTooltip, custom_widget: *mut GtkWidget);
19752    pub fn gtk_tooltip_set_icon(tooltip: *mut GtkTooltip, paintable: *mut gdk::GdkPaintable);
19753    pub fn gtk_tooltip_set_icon_from_gicon(tooltip: *mut GtkTooltip, gicon: *mut gio::GIcon);
19754    pub fn gtk_tooltip_set_icon_from_icon_name(tooltip: *mut GtkTooltip, icon_name: *const c_char);
19755    pub fn gtk_tooltip_set_markup(tooltip: *mut GtkTooltip, markup: *const c_char);
19756    pub fn gtk_tooltip_set_text(tooltip: *mut GtkTooltip, text: *const c_char);
19757    pub fn gtk_tooltip_set_tip_area(tooltip: *mut GtkTooltip, rect: *const gdk::GdkRectangle);
19758
19759    //=========================================================================
19760    // GtkTreeExpander
19761    //=========================================================================
19762    pub fn gtk_tree_expander_get_type() -> GType;
19763    pub fn gtk_tree_expander_new() -> *mut GtkWidget;
19764    pub fn gtk_tree_expander_get_child(self_: *mut GtkTreeExpander) -> *mut GtkWidget;
19765    #[cfg(feature = "v4_10")]
19766    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19767    pub fn gtk_tree_expander_get_hide_expander(self_: *mut GtkTreeExpander) -> gboolean;
19768    #[cfg(feature = "v4_10")]
19769    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19770    pub fn gtk_tree_expander_get_indent_for_depth(self_: *mut GtkTreeExpander) -> gboolean;
19771    #[cfg(feature = "v4_6")]
19772    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19773    pub fn gtk_tree_expander_get_indent_for_icon(self_: *mut GtkTreeExpander) -> gboolean;
19774    pub fn gtk_tree_expander_get_item(self_: *mut GtkTreeExpander) -> *mut gobject::GObject;
19775    pub fn gtk_tree_expander_get_list_row(self_: *mut GtkTreeExpander) -> *mut GtkTreeListRow;
19776    pub fn gtk_tree_expander_set_child(self_: *mut GtkTreeExpander, child: *mut GtkWidget);
19777    #[cfg(feature = "v4_10")]
19778    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19779    pub fn gtk_tree_expander_set_hide_expander(
19780        self_: *mut GtkTreeExpander,
19781        hide_expander: gboolean,
19782    );
19783    #[cfg(feature = "v4_10")]
19784    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
19785    pub fn gtk_tree_expander_set_indent_for_depth(
19786        self_: *mut GtkTreeExpander,
19787        indent_for_depth: gboolean,
19788    );
19789    #[cfg(feature = "v4_6")]
19790    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
19791    pub fn gtk_tree_expander_set_indent_for_icon(
19792        self_: *mut GtkTreeExpander,
19793        indent_for_icon: gboolean,
19794    );
19795    pub fn gtk_tree_expander_set_list_row(
19796        self_: *mut GtkTreeExpander,
19797        list_row: *mut GtkTreeListRow,
19798    );
19799
19800    //=========================================================================
19801    // GtkTreeListModel
19802    //=========================================================================
19803    pub fn gtk_tree_list_model_get_type() -> GType;
19804    pub fn gtk_tree_list_model_new(
19805        root: *mut gio::GListModel,
19806        passthrough: gboolean,
19807        autoexpand: gboolean,
19808        create_func: GtkTreeListModelCreateModelFunc,
19809        user_data: gpointer,
19810        user_destroy: glib::GDestroyNotify,
19811    ) -> *mut GtkTreeListModel;
19812    pub fn gtk_tree_list_model_get_autoexpand(self_: *mut GtkTreeListModel) -> gboolean;
19813    pub fn gtk_tree_list_model_get_child_row(
19814        self_: *mut GtkTreeListModel,
19815        position: c_uint,
19816    ) -> *mut GtkTreeListRow;
19817    pub fn gtk_tree_list_model_get_model(self_: *mut GtkTreeListModel) -> *mut gio::GListModel;
19818    pub fn gtk_tree_list_model_get_passthrough(self_: *mut GtkTreeListModel) -> gboolean;
19819    pub fn gtk_tree_list_model_get_row(
19820        self_: *mut GtkTreeListModel,
19821        position: c_uint,
19822    ) -> *mut GtkTreeListRow;
19823    pub fn gtk_tree_list_model_set_autoexpand(self_: *mut GtkTreeListModel, autoexpand: gboolean);
19824
19825    //=========================================================================
19826    // GtkTreeListRow
19827    //=========================================================================
19828    pub fn gtk_tree_list_row_get_type() -> GType;
19829    pub fn gtk_tree_list_row_get_child_row(
19830        self_: *mut GtkTreeListRow,
19831        position: c_uint,
19832    ) -> *mut GtkTreeListRow;
19833    pub fn gtk_tree_list_row_get_children(self_: *mut GtkTreeListRow) -> *mut gio::GListModel;
19834    pub fn gtk_tree_list_row_get_depth(self_: *mut GtkTreeListRow) -> c_uint;
19835    pub fn gtk_tree_list_row_get_expanded(self_: *mut GtkTreeListRow) -> gboolean;
19836    pub fn gtk_tree_list_row_get_item(self_: *mut GtkTreeListRow) -> *mut gobject::GObject;
19837    pub fn gtk_tree_list_row_get_parent(self_: *mut GtkTreeListRow) -> *mut GtkTreeListRow;
19838    pub fn gtk_tree_list_row_get_position(self_: *mut GtkTreeListRow) -> c_uint;
19839    pub fn gtk_tree_list_row_is_expandable(self_: *mut GtkTreeListRow) -> gboolean;
19840    pub fn gtk_tree_list_row_set_expanded(self_: *mut GtkTreeListRow, expanded: gboolean);
19841
19842    //=========================================================================
19843    // GtkTreeListRowSorter
19844    //=========================================================================
19845    pub fn gtk_tree_list_row_sorter_get_type() -> GType;
19846    pub fn gtk_tree_list_row_sorter_new(sorter: *mut GtkSorter) -> *mut GtkTreeListRowSorter;
19847    pub fn gtk_tree_list_row_sorter_get_sorter(self_: *mut GtkTreeListRowSorter) -> *mut GtkSorter;
19848    pub fn gtk_tree_list_row_sorter_set_sorter(
19849        self_: *mut GtkTreeListRowSorter,
19850        sorter: *mut GtkSorter,
19851    );
19852
19853    //=========================================================================
19854    // GtkTreeModelFilter
19855    //=========================================================================
19856    pub fn gtk_tree_model_filter_get_type() -> GType;
19857    pub fn gtk_tree_model_filter_clear_cache(filter: *mut GtkTreeModelFilter);
19858    pub fn gtk_tree_model_filter_convert_child_iter_to_iter(
19859        filter: *mut GtkTreeModelFilter,
19860        filter_iter: *mut GtkTreeIter,
19861        child_iter: *mut GtkTreeIter,
19862    ) -> gboolean;
19863    pub fn gtk_tree_model_filter_convert_child_path_to_path(
19864        filter: *mut GtkTreeModelFilter,
19865        child_path: *mut GtkTreePath,
19866    ) -> *mut GtkTreePath;
19867    pub fn gtk_tree_model_filter_convert_iter_to_child_iter(
19868        filter: *mut GtkTreeModelFilter,
19869        child_iter: *mut GtkTreeIter,
19870        filter_iter: *mut GtkTreeIter,
19871    );
19872    pub fn gtk_tree_model_filter_convert_path_to_child_path(
19873        filter: *mut GtkTreeModelFilter,
19874        filter_path: *mut GtkTreePath,
19875    ) -> *mut GtkTreePath;
19876    pub fn gtk_tree_model_filter_get_model(filter: *mut GtkTreeModelFilter) -> *mut GtkTreeModel;
19877    pub fn gtk_tree_model_filter_refilter(filter: *mut GtkTreeModelFilter);
19878    pub fn gtk_tree_model_filter_set_modify_func(
19879        filter: *mut GtkTreeModelFilter,
19880        n_columns: c_int,
19881        types: *mut GType,
19882        func: GtkTreeModelFilterModifyFunc,
19883        data: gpointer,
19884        destroy: glib::GDestroyNotify,
19885    );
19886    pub fn gtk_tree_model_filter_set_visible_column(filter: *mut GtkTreeModelFilter, column: c_int);
19887    pub fn gtk_tree_model_filter_set_visible_func(
19888        filter: *mut GtkTreeModelFilter,
19889        func: GtkTreeModelFilterVisibleFunc,
19890        data: gpointer,
19891        destroy: glib::GDestroyNotify,
19892    );
19893
19894    //=========================================================================
19895    // GtkTreeModelSort
19896    //=========================================================================
19897    pub fn gtk_tree_model_sort_get_type() -> GType;
19898    pub fn gtk_tree_model_sort_new_with_model(
19899        child_model: *mut GtkTreeModel,
19900    ) -> *mut GtkTreeModelSort;
19901    pub fn gtk_tree_model_sort_clear_cache(tree_model_sort: *mut GtkTreeModelSort);
19902    pub fn gtk_tree_model_sort_convert_child_iter_to_iter(
19903        tree_model_sort: *mut GtkTreeModelSort,
19904        sort_iter: *mut GtkTreeIter,
19905        child_iter: *mut GtkTreeIter,
19906    ) -> gboolean;
19907    pub fn gtk_tree_model_sort_convert_child_path_to_path(
19908        tree_model_sort: *mut GtkTreeModelSort,
19909        child_path: *mut GtkTreePath,
19910    ) -> *mut GtkTreePath;
19911    pub fn gtk_tree_model_sort_convert_iter_to_child_iter(
19912        tree_model_sort: *mut GtkTreeModelSort,
19913        child_iter: *mut GtkTreeIter,
19914        sorted_iter: *mut GtkTreeIter,
19915    );
19916    pub fn gtk_tree_model_sort_convert_path_to_child_path(
19917        tree_model_sort: *mut GtkTreeModelSort,
19918        sorted_path: *mut GtkTreePath,
19919    ) -> *mut GtkTreePath;
19920    pub fn gtk_tree_model_sort_get_model(tree_model: *mut GtkTreeModelSort) -> *mut GtkTreeModel;
19921    pub fn gtk_tree_model_sort_iter_is_valid(
19922        tree_model_sort: *mut GtkTreeModelSort,
19923        iter: *mut GtkTreeIter,
19924    ) -> gboolean;
19925    pub fn gtk_tree_model_sort_reset_default_sort_func(tree_model_sort: *mut GtkTreeModelSort);
19926
19927    //=========================================================================
19928    // GtkTreeSelection
19929    //=========================================================================
19930    pub fn gtk_tree_selection_get_type() -> GType;
19931    pub fn gtk_tree_selection_count_selected_rows(selection: *mut GtkTreeSelection) -> c_int;
19932    pub fn gtk_tree_selection_get_mode(selection: *mut GtkTreeSelection) -> GtkSelectionMode;
19933    pub fn gtk_tree_selection_get_select_function(
19934        selection: *mut GtkTreeSelection,
19935    ) -> GtkTreeSelectionFunc;
19936    pub fn gtk_tree_selection_get_selected(
19937        selection: *mut GtkTreeSelection,
19938        model: *mut *mut GtkTreeModel,
19939        iter: *mut GtkTreeIter,
19940    ) -> gboolean;
19941    pub fn gtk_tree_selection_get_selected_rows(
19942        selection: *mut GtkTreeSelection,
19943        model: *mut *mut GtkTreeModel,
19944    ) -> *mut glib::GList;
19945    pub fn gtk_tree_selection_get_tree_view(selection: *mut GtkTreeSelection) -> *mut GtkTreeView;
19946    pub fn gtk_tree_selection_get_user_data(selection: *mut GtkTreeSelection) -> gpointer;
19947    pub fn gtk_tree_selection_iter_is_selected(
19948        selection: *mut GtkTreeSelection,
19949        iter: *mut GtkTreeIter,
19950    ) -> gboolean;
19951    pub fn gtk_tree_selection_path_is_selected(
19952        selection: *mut GtkTreeSelection,
19953        path: *mut GtkTreePath,
19954    ) -> gboolean;
19955    pub fn gtk_tree_selection_select_all(selection: *mut GtkTreeSelection);
19956    pub fn gtk_tree_selection_select_iter(selection: *mut GtkTreeSelection, iter: *mut GtkTreeIter);
19957    pub fn gtk_tree_selection_select_path(selection: *mut GtkTreeSelection, path: *mut GtkTreePath);
19958    pub fn gtk_tree_selection_select_range(
19959        selection: *mut GtkTreeSelection,
19960        start_path: *mut GtkTreePath,
19961        end_path: *mut GtkTreePath,
19962    );
19963    pub fn gtk_tree_selection_selected_foreach(
19964        selection: *mut GtkTreeSelection,
19965        func: GtkTreeSelectionForeachFunc,
19966        data: gpointer,
19967    );
19968    pub fn gtk_tree_selection_set_mode(selection: *mut GtkTreeSelection, type_: GtkSelectionMode);
19969    pub fn gtk_tree_selection_set_select_function(
19970        selection: *mut GtkTreeSelection,
19971        func: GtkTreeSelectionFunc,
19972        data: gpointer,
19973        destroy: glib::GDestroyNotify,
19974    );
19975    pub fn gtk_tree_selection_unselect_all(selection: *mut GtkTreeSelection);
19976    pub fn gtk_tree_selection_unselect_iter(
19977        selection: *mut GtkTreeSelection,
19978        iter: *mut GtkTreeIter,
19979    );
19980    pub fn gtk_tree_selection_unselect_path(
19981        selection: *mut GtkTreeSelection,
19982        path: *mut GtkTreePath,
19983    );
19984    pub fn gtk_tree_selection_unselect_range(
19985        selection: *mut GtkTreeSelection,
19986        start_path: *mut GtkTreePath,
19987        end_path: *mut GtkTreePath,
19988    );
19989
19990    //=========================================================================
19991    // GtkTreeStore
19992    //=========================================================================
19993    pub fn gtk_tree_store_get_type() -> GType;
19994    pub fn gtk_tree_store_new(n_columns: c_int, ...) -> *mut GtkTreeStore;
19995    pub fn gtk_tree_store_newv(n_columns: c_int, types: *mut GType) -> *mut GtkTreeStore;
19996    pub fn gtk_tree_store_append(
19997        tree_store: *mut GtkTreeStore,
19998        iter: *mut GtkTreeIter,
19999        parent: *mut GtkTreeIter,
20000    );
20001    pub fn gtk_tree_store_clear(tree_store: *mut GtkTreeStore);
20002    pub fn gtk_tree_store_insert(
20003        tree_store: *mut GtkTreeStore,
20004        iter: *mut GtkTreeIter,
20005        parent: *mut GtkTreeIter,
20006        position: c_int,
20007    );
20008    pub fn gtk_tree_store_insert_after(
20009        tree_store: *mut GtkTreeStore,
20010        iter: *mut GtkTreeIter,
20011        parent: *mut GtkTreeIter,
20012        sibling: *mut GtkTreeIter,
20013    );
20014    pub fn gtk_tree_store_insert_before(
20015        tree_store: *mut GtkTreeStore,
20016        iter: *mut GtkTreeIter,
20017        parent: *mut GtkTreeIter,
20018        sibling: *mut GtkTreeIter,
20019    );
20020    pub fn gtk_tree_store_insert_with_values(
20021        tree_store: *mut GtkTreeStore,
20022        iter: *mut GtkTreeIter,
20023        parent: *mut GtkTreeIter,
20024        position: c_int,
20025        ...
20026    );
20027    pub fn gtk_tree_store_insert_with_valuesv(
20028        tree_store: *mut GtkTreeStore,
20029        iter: *mut GtkTreeIter,
20030        parent: *mut GtkTreeIter,
20031        position: c_int,
20032        columns: *mut c_int,
20033        values: *mut gobject::GValue,
20034        n_values: c_int,
20035    );
20036    pub fn gtk_tree_store_is_ancestor(
20037        tree_store: *mut GtkTreeStore,
20038        iter: *mut GtkTreeIter,
20039        descendant: *mut GtkTreeIter,
20040    ) -> gboolean;
20041    pub fn gtk_tree_store_iter_depth(
20042        tree_store: *mut GtkTreeStore,
20043        iter: *mut GtkTreeIter,
20044    ) -> c_int;
20045    pub fn gtk_tree_store_iter_is_valid(
20046        tree_store: *mut GtkTreeStore,
20047        iter: *mut GtkTreeIter,
20048    ) -> gboolean;
20049    pub fn gtk_tree_store_move_after(
20050        tree_store: *mut GtkTreeStore,
20051        iter: *mut GtkTreeIter,
20052        position: *mut GtkTreeIter,
20053    );
20054    pub fn gtk_tree_store_move_before(
20055        tree_store: *mut GtkTreeStore,
20056        iter: *mut GtkTreeIter,
20057        position: *mut GtkTreeIter,
20058    );
20059    pub fn gtk_tree_store_prepend(
20060        tree_store: *mut GtkTreeStore,
20061        iter: *mut GtkTreeIter,
20062        parent: *mut GtkTreeIter,
20063    );
20064    pub fn gtk_tree_store_remove(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter)
20065    -> gboolean;
20066    pub fn gtk_tree_store_reorder(
20067        tree_store: *mut GtkTreeStore,
20068        parent: *mut GtkTreeIter,
20069        new_order: *mut c_int,
20070    );
20071    pub fn gtk_tree_store_set(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, ...);
20072    pub fn gtk_tree_store_set_column_types(
20073        tree_store: *mut GtkTreeStore,
20074        n_columns: c_int,
20075        types: *mut GType,
20076    );
20077    //pub fn gtk_tree_store_set_valist(tree_store: *mut GtkTreeStore, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
20078    pub fn gtk_tree_store_set_value(
20079        tree_store: *mut GtkTreeStore,
20080        iter: *mut GtkTreeIter,
20081        column: c_int,
20082        value: *mut gobject::GValue,
20083    );
20084    pub fn gtk_tree_store_set_valuesv(
20085        tree_store: *mut GtkTreeStore,
20086        iter: *mut GtkTreeIter,
20087        columns: *mut c_int,
20088        values: *mut gobject::GValue,
20089        n_values: c_int,
20090    );
20091    pub fn gtk_tree_store_swap(
20092        tree_store: *mut GtkTreeStore,
20093        a: *mut GtkTreeIter,
20094        b: *mut GtkTreeIter,
20095    );
20096
20097    //=========================================================================
20098    // GtkTreeView
20099    //=========================================================================
20100    pub fn gtk_tree_view_get_type() -> GType;
20101    pub fn gtk_tree_view_new() -> *mut GtkWidget;
20102    pub fn gtk_tree_view_new_with_model(model: *mut GtkTreeModel) -> *mut GtkWidget;
20103    pub fn gtk_tree_view_append_column(
20104        tree_view: *mut GtkTreeView,
20105        column: *mut GtkTreeViewColumn,
20106    ) -> c_int;
20107    pub fn gtk_tree_view_collapse_all(tree_view: *mut GtkTreeView);
20108    pub fn gtk_tree_view_collapse_row(
20109        tree_view: *mut GtkTreeView,
20110        path: *mut GtkTreePath,
20111    ) -> gboolean;
20112    pub fn gtk_tree_view_columns_autosize(tree_view: *mut GtkTreeView);
20113    pub fn gtk_tree_view_convert_bin_window_to_tree_coords(
20114        tree_view: *mut GtkTreeView,
20115        bx: c_int,
20116        by: c_int,
20117        tx: *mut c_int,
20118        ty: *mut c_int,
20119    );
20120    pub fn gtk_tree_view_convert_bin_window_to_widget_coords(
20121        tree_view: *mut GtkTreeView,
20122        bx: c_int,
20123        by: c_int,
20124        wx: *mut c_int,
20125        wy: *mut c_int,
20126    );
20127    pub fn gtk_tree_view_convert_tree_to_bin_window_coords(
20128        tree_view: *mut GtkTreeView,
20129        tx: c_int,
20130        ty: c_int,
20131        bx: *mut c_int,
20132        by: *mut c_int,
20133    );
20134    pub fn gtk_tree_view_convert_tree_to_widget_coords(
20135        tree_view: *mut GtkTreeView,
20136        tx: c_int,
20137        ty: c_int,
20138        wx: *mut c_int,
20139        wy: *mut c_int,
20140    );
20141    pub fn gtk_tree_view_convert_widget_to_bin_window_coords(
20142        tree_view: *mut GtkTreeView,
20143        wx: c_int,
20144        wy: c_int,
20145        bx: *mut c_int,
20146        by: *mut c_int,
20147    );
20148    pub fn gtk_tree_view_convert_widget_to_tree_coords(
20149        tree_view: *mut GtkTreeView,
20150        wx: c_int,
20151        wy: c_int,
20152        tx: *mut c_int,
20153        ty: *mut c_int,
20154    );
20155    pub fn gtk_tree_view_create_row_drag_icon(
20156        tree_view: *mut GtkTreeView,
20157        path: *mut GtkTreePath,
20158    ) -> *mut gdk::GdkPaintable;
20159    pub fn gtk_tree_view_enable_model_drag_dest(
20160        tree_view: *mut GtkTreeView,
20161        formats: *mut gdk::GdkContentFormats,
20162        actions: gdk::GdkDragAction,
20163    );
20164    pub fn gtk_tree_view_enable_model_drag_source(
20165        tree_view: *mut GtkTreeView,
20166        start_button_mask: gdk::GdkModifierType,
20167        formats: *mut gdk::GdkContentFormats,
20168        actions: gdk::GdkDragAction,
20169    );
20170    pub fn gtk_tree_view_expand_all(tree_view: *mut GtkTreeView);
20171    pub fn gtk_tree_view_expand_row(
20172        tree_view: *mut GtkTreeView,
20173        path: *mut GtkTreePath,
20174        open_all: gboolean,
20175    ) -> gboolean;
20176    pub fn gtk_tree_view_expand_to_path(tree_view: *mut GtkTreeView, path: *mut GtkTreePath);
20177    pub fn gtk_tree_view_get_activate_on_single_click(tree_view: *mut GtkTreeView) -> gboolean;
20178    pub fn gtk_tree_view_get_background_area(
20179        tree_view: *mut GtkTreeView,
20180        path: *mut GtkTreePath,
20181        column: *mut GtkTreeViewColumn,
20182        rect: *mut gdk::GdkRectangle,
20183    );
20184    pub fn gtk_tree_view_get_cell_area(
20185        tree_view: *mut GtkTreeView,
20186        path: *mut GtkTreePath,
20187        column: *mut GtkTreeViewColumn,
20188        rect: *mut gdk::GdkRectangle,
20189    );
20190    pub fn gtk_tree_view_get_column(
20191        tree_view: *mut GtkTreeView,
20192        n: c_int,
20193    ) -> *mut GtkTreeViewColumn;
20194    pub fn gtk_tree_view_get_columns(tree_view: *mut GtkTreeView) -> *mut glib::GList;
20195    pub fn gtk_tree_view_get_cursor(
20196        tree_view: *mut GtkTreeView,
20197        path: *mut *mut GtkTreePath,
20198        focus_column: *mut *mut GtkTreeViewColumn,
20199    );
20200    pub fn gtk_tree_view_get_dest_row_at_pos(
20201        tree_view: *mut GtkTreeView,
20202        drag_x: c_int,
20203        drag_y: c_int,
20204        path: *mut *mut GtkTreePath,
20205        pos: *mut GtkTreeViewDropPosition,
20206    ) -> gboolean;
20207    pub fn gtk_tree_view_get_drag_dest_row(
20208        tree_view: *mut GtkTreeView,
20209        path: *mut *mut GtkTreePath,
20210        pos: *mut GtkTreeViewDropPosition,
20211    );
20212    pub fn gtk_tree_view_get_enable_search(tree_view: *mut GtkTreeView) -> gboolean;
20213    pub fn gtk_tree_view_get_enable_tree_lines(tree_view: *mut GtkTreeView) -> gboolean;
20214    pub fn gtk_tree_view_get_expander_column(tree_view: *mut GtkTreeView)
20215    -> *mut GtkTreeViewColumn;
20216    pub fn gtk_tree_view_get_fixed_height_mode(tree_view: *mut GtkTreeView) -> gboolean;
20217    pub fn gtk_tree_view_get_grid_lines(tree_view: *mut GtkTreeView) -> GtkTreeViewGridLines;
20218    pub fn gtk_tree_view_get_headers_clickable(tree_view: *mut GtkTreeView) -> gboolean;
20219    pub fn gtk_tree_view_get_headers_visible(tree_view: *mut GtkTreeView) -> gboolean;
20220    pub fn gtk_tree_view_get_hover_expand(tree_view: *mut GtkTreeView) -> gboolean;
20221    pub fn gtk_tree_view_get_hover_selection(tree_view: *mut GtkTreeView) -> gboolean;
20222    pub fn gtk_tree_view_get_level_indentation(tree_view: *mut GtkTreeView) -> c_int;
20223    pub fn gtk_tree_view_get_model(tree_view: *mut GtkTreeView) -> *mut GtkTreeModel;
20224    pub fn gtk_tree_view_get_n_columns(tree_view: *mut GtkTreeView) -> c_uint;
20225    pub fn gtk_tree_view_get_path_at_pos(
20226        tree_view: *mut GtkTreeView,
20227        x: c_int,
20228        y: c_int,
20229        path: *mut *mut GtkTreePath,
20230        column: *mut *mut GtkTreeViewColumn,
20231        cell_x: *mut c_int,
20232        cell_y: *mut c_int,
20233    ) -> gboolean;
20234    pub fn gtk_tree_view_get_reorderable(tree_view: *mut GtkTreeView) -> gboolean;
20235    pub fn gtk_tree_view_get_row_separator_func(
20236        tree_view: *mut GtkTreeView,
20237    ) -> GtkTreeViewRowSeparatorFunc;
20238    pub fn gtk_tree_view_get_rubber_banding(tree_view: *mut GtkTreeView) -> gboolean;
20239    pub fn gtk_tree_view_get_search_column(tree_view: *mut GtkTreeView) -> c_int;
20240    pub fn gtk_tree_view_get_search_entry(tree_view: *mut GtkTreeView) -> *mut GtkEditable;
20241    pub fn gtk_tree_view_get_search_equal_func(
20242        tree_view: *mut GtkTreeView,
20243    ) -> GtkTreeViewSearchEqualFunc;
20244    pub fn gtk_tree_view_get_selection(tree_view: *mut GtkTreeView) -> *mut GtkTreeSelection;
20245    pub fn gtk_tree_view_get_show_expanders(tree_view: *mut GtkTreeView) -> gboolean;
20246    pub fn gtk_tree_view_get_tooltip_column(tree_view: *mut GtkTreeView) -> c_int;
20247    pub fn gtk_tree_view_get_tooltip_context(
20248        tree_view: *mut GtkTreeView,
20249        x: c_int,
20250        y: c_int,
20251        keyboard_tip: gboolean,
20252        model: *mut *mut GtkTreeModel,
20253        path: *mut *mut GtkTreePath,
20254        iter: *mut GtkTreeIter,
20255    ) -> gboolean;
20256    pub fn gtk_tree_view_get_visible_range(
20257        tree_view: *mut GtkTreeView,
20258        start_path: *mut *mut GtkTreePath,
20259        end_path: *mut *mut GtkTreePath,
20260    ) -> gboolean;
20261    pub fn gtk_tree_view_get_visible_rect(
20262        tree_view: *mut GtkTreeView,
20263        visible_rect: *mut gdk::GdkRectangle,
20264    );
20265    pub fn gtk_tree_view_insert_column(
20266        tree_view: *mut GtkTreeView,
20267        column: *mut GtkTreeViewColumn,
20268        position: c_int,
20269    ) -> c_int;
20270    pub fn gtk_tree_view_insert_column_with_attributes(
20271        tree_view: *mut GtkTreeView,
20272        position: c_int,
20273        title: *const c_char,
20274        cell: *mut GtkCellRenderer,
20275        ...
20276    ) -> c_int;
20277    pub fn gtk_tree_view_insert_column_with_data_func(
20278        tree_view: *mut GtkTreeView,
20279        position: c_int,
20280        title: *const c_char,
20281        cell: *mut GtkCellRenderer,
20282        func: GtkTreeCellDataFunc,
20283        data: gpointer,
20284        dnotify: glib::GDestroyNotify,
20285    ) -> c_int;
20286    pub fn gtk_tree_view_is_blank_at_pos(
20287        tree_view: *mut GtkTreeView,
20288        x: c_int,
20289        y: c_int,
20290        path: *mut *mut GtkTreePath,
20291        column: *mut *mut GtkTreeViewColumn,
20292        cell_x: *mut c_int,
20293        cell_y: *mut c_int,
20294    ) -> gboolean;
20295    pub fn gtk_tree_view_is_rubber_banding_active(tree_view: *mut GtkTreeView) -> gboolean;
20296    pub fn gtk_tree_view_map_expanded_rows(
20297        tree_view: *mut GtkTreeView,
20298        func: GtkTreeViewMappingFunc,
20299        data: gpointer,
20300    );
20301    pub fn gtk_tree_view_move_column_after(
20302        tree_view: *mut GtkTreeView,
20303        column: *mut GtkTreeViewColumn,
20304        base_column: *mut GtkTreeViewColumn,
20305    );
20306    pub fn gtk_tree_view_remove_column(
20307        tree_view: *mut GtkTreeView,
20308        column: *mut GtkTreeViewColumn,
20309    ) -> c_int;
20310    pub fn gtk_tree_view_row_activated(
20311        tree_view: *mut GtkTreeView,
20312        path: *mut GtkTreePath,
20313        column: *mut GtkTreeViewColumn,
20314    );
20315    pub fn gtk_tree_view_row_expanded(
20316        tree_view: *mut GtkTreeView,
20317        path: *mut GtkTreePath,
20318    ) -> gboolean;
20319    pub fn gtk_tree_view_scroll_to_cell(
20320        tree_view: *mut GtkTreeView,
20321        path: *mut GtkTreePath,
20322        column: *mut GtkTreeViewColumn,
20323        use_align: gboolean,
20324        row_align: c_float,
20325        col_align: c_float,
20326    );
20327    pub fn gtk_tree_view_scroll_to_point(tree_view: *mut GtkTreeView, tree_x: c_int, tree_y: c_int);
20328    pub fn gtk_tree_view_set_activate_on_single_click(
20329        tree_view: *mut GtkTreeView,
20330        single: gboolean,
20331    );
20332    pub fn gtk_tree_view_set_column_drag_function(
20333        tree_view: *mut GtkTreeView,
20334        func: GtkTreeViewColumnDropFunc,
20335        user_data: gpointer,
20336        destroy: glib::GDestroyNotify,
20337    );
20338    pub fn gtk_tree_view_set_cursor(
20339        tree_view: *mut GtkTreeView,
20340        path: *mut GtkTreePath,
20341        focus_column: *mut GtkTreeViewColumn,
20342        start_editing: gboolean,
20343    );
20344    pub fn gtk_tree_view_set_cursor_on_cell(
20345        tree_view: *mut GtkTreeView,
20346        path: *mut GtkTreePath,
20347        focus_column: *mut GtkTreeViewColumn,
20348        focus_cell: *mut GtkCellRenderer,
20349        start_editing: gboolean,
20350    );
20351    pub fn gtk_tree_view_set_drag_dest_row(
20352        tree_view: *mut GtkTreeView,
20353        path: *mut GtkTreePath,
20354        pos: GtkTreeViewDropPosition,
20355    );
20356    pub fn gtk_tree_view_set_enable_search(tree_view: *mut GtkTreeView, enable_search: gboolean);
20357    pub fn gtk_tree_view_set_enable_tree_lines(tree_view: *mut GtkTreeView, enabled: gboolean);
20358    pub fn gtk_tree_view_set_expander_column(
20359        tree_view: *mut GtkTreeView,
20360        column: *mut GtkTreeViewColumn,
20361    );
20362    pub fn gtk_tree_view_set_fixed_height_mode(tree_view: *mut GtkTreeView, enable: gboolean);
20363    pub fn gtk_tree_view_set_grid_lines(
20364        tree_view: *mut GtkTreeView,
20365        grid_lines: GtkTreeViewGridLines,
20366    );
20367    pub fn gtk_tree_view_set_headers_clickable(tree_view: *mut GtkTreeView, setting: gboolean);
20368    pub fn gtk_tree_view_set_headers_visible(
20369        tree_view: *mut GtkTreeView,
20370        headers_visible: gboolean,
20371    );
20372    pub fn gtk_tree_view_set_hover_expand(tree_view: *mut GtkTreeView, expand: gboolean);
20373    pub fn gtk_tree_view_set_hover_selection(tree_view: *mut GtkTreeView, hover: gboolean);
20374    pub fn gtk_tree_view_set_level_indentation(tree_view: *mut GtkTreeView, indentation: c_int);
20375    pub fn gtk_tree_view_set_model(tree_view: *mut GtkTreeView, model: *mut GtkTreeModel);
20376    pub fn gtk_tree_view_set_reorderable(tree_view: *mut GtkTreeView, reorderable: gboolean);
20377    pub fn gtk_tree_view_set_row_separator_func(
20378        tree_view: *mut GtkTreeView,
20379        func: GtkTreeViewRowSeparatorFunc,
20380        data: gpointer,
20381        destroy: glib::GDestroyNotify,
20382    );
20383    pub fn gtk_tree_view_set_rubber_banding(tree_view: *mut GtkTreeView, enable: gboolean);
20384    pub fn gtk_tree_view_set_search_column(tree_view: *mut GtkTreeView, column: c_int);
20385    pub fn gtk_tree_view_set_search_entry(tree_view: *mut GtkTreeView, entry: *mut GtkEditable);
20386    pub fn gtk_tree_view_set_search_equal_func(
20387        tree_view: *mut GtkTreeView,
20388        search_equal_func: GtkTreeViewSearchEqualFunc,
20389        search_user_data: gpointer,
20390        search_destroy: glib::GDestroyNotify,
20391    );
20392    pub fn gtk_tree_view_set_show_expanders(tree_view: *mut GtkTreeView, enabled: gboolean);
20393    pub fn gtk_tree_view_set_tooltip_cell(
20394        tree_view: *mut GtkTreeView,
20395        tooltip: *mut GtkTooltip,
20396        path: *mut GtkTreePath,
20397        column: *mut GtkTreeViewColumn,
20398        cell: *mut GtkCellRenderer,
20399    );
20400    pub fn gtk_tree_view_set_tooltip_column(tree_view: *mut GtkTreeView, column: c_int);
20401    pub fn gtk_tree_view_set_tooltip_row(
20402        tree_view: *mut GtkTreeView,
20403        tooltip: *mut GtkTooltip,
20404        path: *mut GtkTreePath,
20405    );
20406    pub fn gtk_tree_view_unset_rows_drag_dest(tree_view: *mut GtkTreeView);
20407    pub fn gtk_tree_view_unset_rows_drag_source(tree_view: *mut GtkTreeView);
20408
20409    //=========================================================================
20410    // GtkTreeViewColumn
20411    //=========================================================================
20412    pub fn gtk_tree_view_column_get_type() -> GType;
20413    pub fn gtk_tree_view_column_new() -> *mut GtkTreeViewColumn;
20414    pub fn gtk_tree_view_column_new_with_area(area: *mut GtkCellArea) -> *mut GtkTreeViewColumn;
20415    pub fn gtk_tree_view_column_new_with_attributes(
20416        title: *const c_char,
20417        cell: *mut GtkCellRenderer,
20418        ...
20419    ) -> *mut GtkTreeViewColumn;
20420    pub fn gtk_tree_view_column_add_attribute(
20421        tree_column: *mut GtkTreeViewColumn,
20422        cell_renderer: *mut GtkCellRenderer,
20423        attribute: *const c_char,
20424        column: c_int,
20425    );
20426    pub fn gtk_tree_view_column_cell_get_position(
20427        tree_column: *mut GtkTreeViewColumn,
20428        cell_renderer: *mut GtkCellRenderer,
20429        x_offset: *mut c_int,
20430        width: *mut c_int,
20431    ) -> gboolean;
20432    pub fn gtk_tree_view_column_cell_get_size(
20433        tree_column: *mut GtkTreeViewColumn,
20434        x_offset: *mut c_int,
20435        y_offset: *mut c_int,
20436        width: *mut c_int,
20437        height: *mut c_int,
20438    );
20439    pub fn gtk_tree_view_column_cell_is_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20440    pub fn gtk_tree_view_column_cell_set_cell_data(
20441        tree_column: *mut GtkTreeViewColumn,
20442        tree_model: *mut GtkTreeModel,
20443        iter: *mut GtkTreeIter,
20444        is_expander: gboolean,
20445        is_expanded: gboolean,
20446    );
20447    pub fn gtk_tree_view_column_clear(tree_column: *mut GtkTreeViewColumn);
20448    pub fn gtk_tree_view_column_clear_attributes(
20449        tree_column: *mut GtkTreeViewColumn,
20450        cell_renderer: *mut GtkCellRenderer,
20451    );
20452    pub fn gtk_tree_view_column_clicked(tree_column: *mut GtkTreeViewColumn);
20453    pub fn gtk_tree_view_column_focus_cell(
20454        tree_column: *mut GtkTreeViewColumn,
20455        cell: *mut GtkCellRenderer,
20456    );
20457    pub fn gtk_tree_view_column_get_alignment(tree_column: *mut GtkTreeViewColumn) -> c_float;
20458    pub fn gtk_tree_view_column_get_button(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20459    pub fn gtk_tree_view_column_get_clickable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20460    pub fn gtk_tree_view_column_get_expand(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20461    pub fn gtk_tree_view_column_get_fixed_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20462    pub fn gtk_tree_view_column_get_max_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20463    pub fn gtk_tree_view_column_get_min_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20464    pub fn gtk_tree_view_column_get_reorderable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20465    pub fn gtk_tree_view_column_get_resizable(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20466    pub fn gtk_tree_view_column_get_sizing(
20467        tree_column: *mut GtkTreeViewColumn,
20468    ) -> GtkTreeViewColumnSizing;
20469    pub fn gtk_tree_view_column_get_sort_column_id(tree_column: *mut GtkTreeViewColumn) -> c_int;
20470    pub fn gtk_tree_view_column_get_sort_indicator(tree_column: *mut GtkTreeViewColumn)
20471    -> gboolean;
20472    pub fn gtk_tree_view_column_get_sort_order(tree_column: *mut GtkTreeViewColumn) -> GtkSortType;
20473    pub fn gtk_tree_view_column_get_spacing(tree_column: *mut GtkTreeViewColumn) -> c_int;
20474    pub fn gtk_tree_view_column_get_title(tree_column: *mut GtkTreeViewColumn) -> *const c_char;
20475    pub fn gtk_tree_view_column_get_tree_view(
20476        tree_column: *mut GtkTreeViewColumn,
20477    ) -> *mut GtkWidget;
20478    pub fn gtk_tree_view_column_get_visible(tree_column: *mut GtkTreeViewColumn) -> gboolean;
20479    pub fn gtk_tree_view_column_get_widget(tree_column: *mut GtkTreeViewColumn) -> *mut GtkWidget;
20480    pub fn gtk_tree_view_column_get_width(tree_column: *mut GtkTreeViewColumn) -> c_int;
20481    pub fn gtk_tree_view_column_get_x_offset(tree_column: *mut GtkTreeViewColumn) -> c_int;
20482    pub fn gtk_tree_view_column_pack_end(
20483        tree_column: *mut GtkTreeViewColumn,
20484        cell: *mut GtkCellRenderer,
20485        expand: gboolean,
20486    );
20487    pub fn gtk_tree_view_column_pack_start(
20488        tree_column: *mut GtkTreeViewColumn,
20489        cell: *mut GtkCellRenderer,
20490        expand: gboolean,
20491    );
20492    pub fn gtk_tree_view_column_queue_resize(tree_column: *mut GtkTreeViewColumn);
20493    pub fn gtk_tree_view_column_set_alignment(tree_column: *mut GtkTreeViewColumn, xalign: c_float);
20494    pub fn gtk_tree_view_column_set_attributes(
20495        tree_column: *mut GtkTreeViewColumn,
20496        cell_renderer: *mut GtkCellRenderer,
20497        ...
20498    );
20499    pub fn gtk_tree_view_column_set_cell_data_func(
20500        tree_column: *mut GtkTreeViewColumn,
20501        cell_renderer: *mut GtkCellRenderer,
20502        func: GtkTreeCellDataFunc,
20503        func_data: gpointer,
20504        destroy: glib::GDestroyNotify,
20505    );
20506    pub fn gtk_tree_view_column_set_clickable(
20507        tree_column: *mut GtkTreeViewColumn,
20508        clickable: gboolean,
20509    );
20510    pub fn gtk_tree_view_column_set_expand(tree_column: *mut GtkTreeViewColumn, expand: gboolean);
20511    pub fn gtk_tree_view_column_set_fixed_width(
20512        tree_column: *mut GtkTreeViewColumn,
20513        fixed_width: c_int,
20514    );
20515    pub fn gtk_tree_view_column_set_max_width(
20516        tree_column: *mut GtkTreeViewColumn,
20517        max_width: c_int,
20518    );
20519    pub fn gtk_tree_view_column_set_min_width(
20520        tree_column: *mut GtkTreeViewColumn,
20521        min_width: c_int,
20522    );
20523    pub fn gtk_tree_view_column_set_reorderable(
20524        tree_column: *mut GtkTreeViewColumn,
20525        reorderable: gboolean,
20526    );
20527    pub fn gtk_tree_view_column_set_resizable(
20528        tree_column: *mut GtkTreeViewColumn,
20529        resizable: gboolean,
20530    );
20531    pub fn gtk_tree_view_column_set_sizing(
20532        tree_column: *mut GtkTreeViewColumn,
20533        type_: GtkTreeViewColumnSizing,
20534    );
20535    pub fn gtk_tree_view_column_set_sort_column_id(
20536        tree_column: *mut GtkTreeViewColumn,
20537        sort_column_id: c_int,
20538    );
20539    pub fn gtk_tree_view_column_set_sort_indicator(
20540        tree_column: *mut GtkTreeViewColumn,
20541        setting: gboolean,
20542    );
20543    pub fn gtk_tree_view_column_set_sort_order(
20544        tree_column: *mut GtkTreeViewColumn,
20545        order: GtkSortType,
20546    );
20547    pub fn gtk_tree_view_column_set_spacing(tree_column: *mut GtkTreeViewColumn, spacing: c_int);
20548    pub fn gtk_tree_view_column_set_title(
20549        tree_column: *mut GtkTreeViewColumn,
20550        title: *const c_char,
20551    );
20552    pub fn gtk_tree_view_column_set_visible(tree_column: *mut GtkTreeViewColumn, visible: gboolean);
20553    pub fn gtk_tree_view_column_set_widget(
20554        tree_column: *mut GtkTreeViewColumn,
20555        widget: *mut GtkWidget,
20556    );
20557
20558    //=========================================================================
20559    // GtkUriLauncher
20560    //=========================================================================
20561    #[cfg(feature = "v4_10")]
20562    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20563    pub fn gtk_uri_launcher_get_type() -> GType;
20564    #[cfg(feature = "v4_10")]
20565    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20566    pub fn gtk_uri_launcher_new(uri: *const c_char) -> *mut GtkUriLauncher;
20567    #[cfg(feature = "v4_20")]
20568    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20569    pub fn gtk_uri_launcher_can_launch(
20570        self_: *mut GtkUriLauncher,
20571        parent: *mut GtkWindow,
20572    ) -> gboolean;
20573    #[cfg(feature = "v4_10")]
20574    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20575    pub fn gtk_uri_launcher_get_uri(self_: *mut GtkUriLauncher) -> *const c_char;
20576    #[cfg(feature = "v4_10")]
20577    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20578    pub fn gtk_uri_launcher_launch(
20579        self_: *mut GtkUriLauncher,
20580        parent: *mut GtkWindow,
20581        cancellable: *mut gio::GCancellable,
20582        callback: gio::GAsyncReadyCallback,
20583        user_data: gpointer,
20584    );
20585    #[cfg(feature = "v4_10")]
20586    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20587    pub fn gtk_uri_launcher_launch_finish(
20588        self_: *mut GtkUriLauncher,
20589        result: *mut gio::GAsyncResult,
20590        error: *mut *mut glib::GError,
20591    ) -> gboolean;
20592    #[cfg(feature = "v4_10")]
20593    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20594    pub fn gtk_uri_launcher_set_uri(self_: *mut GtkUriLauncher, uri: *const c_char);
20595
20596    //=========================================================================
20597    // GtkVideo
20598    //=========================================================================
20599    pub fn gtk_video_get_type() -> GType;
20600    pub fn gtk_video_new() -> *mut GtkWidget;
20601    pub fn gtk_video_new_for_file(file: *mut gio::GFile) -> *mut GtkWidget;
20602    pub fn gtk_video_new_for_filename(filename: *const c_char) -> *mut GtkWidget;
20603    pub fn gtk_video_new_for_media_stream(stream: *mut GtkMediaStream) -> *mut GtkWidget;
20604    pub fn gtk_video_new_for_resource(resource_path: *const c_char) -> *mut GtkWidget;
20605    pub fn gtk_video_get_autoplay(self_: *mut GtkVideo) -> gboolean;
20606    pub fn gtk_video_get_file(self_: *mut GtkVideo) -> *mut gio::GFile;
20607    #[cfg(feature = "v4_14")]
20608    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20609    pub fn gtk_video_get_graphics_offload(self_: *mut GtkVideo) -> GtkGraphicsOffloadEnabled;
20610    pub fn gtk_video_get_loop(self_: *mut GtkVideo) -> gboolean;
20611    pub fn gtk_video_get_media_stream(self_: *mut GtkVideo) -> *mut GtkMediaStream;
20612    pub fn gtk_video_set_autoplay(self_: *mut GtkVideo, autoplay: gboolean);
20613    pub fn gtk_video_set_file(self_: *mut GtkVideo, file: *mut gio::GFile);
20614    pub fn gtk_video_set_filename(self_: *mut GtkVideo, filename: *const c_char);
20615    #[cfg(feature = "v4_14")]
20616    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
20617    pub fn gtk_video_set_graphics_offload(self_: *mut GtkVideo, enabled: GtkGraphicsOffloadEnabled);
20618    pub fn gtk_video_set_loop(self_: *mut GtkVideo, loop_: gboolean);
20619    pub fn gtk_video_set_media_stream(self_: *mut GtkVideo, stream: *mut GtkMediaStream);
20620    pub fn gtk_video_set_resource(self_: *mut GtkVideo, resource_path: *const c_char);
20621
20622    //=========================================================================
20623    // GtkViewport
20624    //=========================================================================
20625    pub fn gtk_viewport_get_type() -> GType;
20626    pub fn gtk_viewport_new(
20627        hadjustment: *mut GtkAdjustment,
20628        vadjustment: *mut GtkAdjustment,
20629    ) -> *mut GtkWidget;
20630    pub fn gtk_viewport_get_child(viewport: *mut GtkViewport) -> *mut GtkWidget;
20631    pub fn gtk_viewport_get_scroll_to_focus(viewport: *mut GtkViewport) -> gboolean;
20632    #[cfg(feature = "v4_12")]
20633    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20634    pub fn gtk_viewport_scroll_to(
20635        viewport: *mut GtkViewport,
20636        descendant: *mut GtkWidget,
20637        scroll: *mut GtkScrollInfo,
20638    );
20639    pub fn gtk_viewport_set_child(viewport: *mut GtkViewport, child: *mut GtkWidget);
20640    pub fn gtk_viewport_set_scroll_to_focus(viewport: *mut GtkViewport, scroll_to_focus: gboolean);
20641
20642    //=========================================================================
20643    // GtkVolumeButton
20644    //=========================================================================
20645    pub fn gtk_volume_button_get_type() -> GType;
20646    pub fn gtk_volume_button_new() -> *mut GtkWidget;
20647
20648    //=========================================================================
20649    // GtkWidget
20650    //=========================================================================
20651    pub fn gtk_widget_get_type() -> GType;
20652    pub fn gtk_widget_get_default_direction() -> GtkTextDirection;
20653    pub fn gtk_widget_set_default_direction(dir: GtkTextDirection);
20654    pub fn gtk_widget_action_set_enabled(
20655        widget: *mut GtkWidget,
20656        action_name: *const c_char,
20657        enabled: gboolean,
20658    );
20659    pub fn gtk_widget_activate(widget: *mut GtkWidget) -> gboolean;
20660    pub fn gtk_widget_activate_action(
20661        widget: *mut GtkWidget,
20662        name: *const c_char,
20663        format_string: *const c_char,
20664        ...
20665    ) -> gboolean;
20666    pub fn gtk_widget_activate_action_variant(
20667        widget: *mut GtkWidget,
20668        name: *const c_char,
20669        args: *mut glib::GVariant,
20670    ) -> gboolean;
20671    pub fn gtk_widget_activate_default(widget: *mut GtkWidget);
20672    pub fn gtk_widget_add_controller(widget: *mut GtkWidget, controller: *mut GtkEventController);
20673    pub fn gtk_widget_add_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20674    pub fn gtk_widget_add_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20675    pub fn gtk_widget_add_tick_callback(
20676        widget: *mut GtkWidget,
20677        callback: GtkTickCallback,
20678        user_data: gpointer,
20679        notify: glib::GDestroyNotify,
20680    ) -> c_uint;
20681    pub fn gtk_widget_allocate(
20682        widget: *mut GtkWidget,
20683        width: c_int,
20684        height: c_int,
20685        baseline: c_int,
20686        transform: *mut gsk::GskTransform,
20687    );
20688    pub fn gtk_widget_child_focus(widget: *mut GtkWidget, direction: GtkDirectionType) -> gboolean;
20689    pub fn gtk_widget_compute_bounds(
20690        widget: *mut GtkWidget,
20691        target: *mut GtkWidget,
20692        out_bounds: *mut graphene::graphene_rect_t,
20693    ) -> gboolean;
20694    pub fn gtk_widget_compute_expand(
20695        widget: *mut GtkWidget,
20696        orientation: GtkOrientation,
20697    ) -> gboolean;
20698    pub fn gtk_widget_compute_point(
20699        widget: *mut GtkWidget,
20700        target: *mut GtkWidget,
20701        point: *const graphene::graphene_point_t,
20702        out_point: *mut graphene::graphene_point_t,
20703    ) -> gboolean;
20704    pub fn gtk_widget_compute_transform(
20705        widget: *mut GtkWidget,
20706        target: *mut GtkWidget,
20707        out_transform: *mut graphene::graphene_matrix_t,
20708    ) -> gboolean;
20709    pub fn gtk_widget_contains(widget: *mut GtkWidget, x: c_double, y: c_double) -> gboolean;
20710    pub fn gtk_widget_create_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20711    pub fn gtk_widget_create_pango_layout(
20712        widget: *mut GtkWidget,
20713        text: *const c_char,
20714    ) -> *mut pango::PangoLayout;
20715    #[cfg(feature = "v4_8")]
20716    #[cfg_attr(docsrs, doc(cfg(feature = "v4_8")))]
20717    pub fn gtk_widget_dispose_template(widget: *mut GtkWidget, widget_type: GType);
20718    pub fn gtk_drag_check_threshold(
20719        widget: *mut GtkWidget,
20720        start_x: c_int,
20721        start_y: c_int,
20722        current_x: c_int,
20723        current_y: c_int,
20724    ) -> gboolean;
20725    pub fn gtk_widget_error_bell(widget: *mut GtkWidget);
20726    pub fn gtk_widget_get_allocated_baseline(widget: *mut GtkWidget) -> c_int;
20727    pub fn gtk_widget_get_allocated_height(widget: *mut GtkWidget) -> c_int;
20728    pub fn gtk_widget_get_allocated_width(widget: *mut GtkWidget) -> c_int;
20729    pub fn gtk_widget_get_allocation(widget: *mut GtkWidget, allocation: *mut GtkAllocation);
20730    pub fn gtk_widget_get_ancestor(widget: *mut GtkWidget, widget_type: GType) -> *mut GtkWidget;
20731    #[cfg(feature = "v4_12")]
20732    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
20733    pub fn gtk_widget_get_baseline(widget: *mut GtkWidget) -> c_int;
20734    pub fn gtk_widget_get_can_focus(widget: *mut GtkWidget) -> gboolean;
20735    pub fn gtk_widget_get_can_target(widget: *mut GtkWidget) -> gboolean;
20736    pub fn gtk_widget_get_child_visible(widget: *mut GtkWidget) -> gboolean;
20737    pub fn gtk_widget_get_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20738    #[cfg(feature = "v4_10")]
20739    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
20740    pub fn gtk_widget_get_color(widget: *mut GtkWidget, color: *mut gdk::GdkRGBA);
20741    pub fn gtk_widget_get_css_classes(widget: *mut GtkWidget) -> *mut *mut c_char;
20742    pub fn gtk_widget_get_css_name(self_: *mut GtkWidget) -> *const c_char;
20743    pub fn gtk_widget_get_cursor(widget: *mut GtkWidget) -> *mut gdk::GdkCursor;
20744    pub fn gtk_widget_get_direction(widget: *mut GtkWidget) -> GtkTextDirection;
20745    pub fn gtk_widget_get_display(widget: *mut GtkWidget) -> *mut gdk::GdkDisplay;
20746    pub fn gtk_widget_get_first_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20747    pub fn gtk_widget_get_focus_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20748    pub fn gtk_widget_get_focus_on_click(widget: *mut GtkWidget) -> gboolean;
20749    pub fn gtk_widget_get_focusable(widget: *mut GtkWidget) -> gboolean;
20750    pub fn gtk_widget_get_font_map(widget: *mut GtkWidget) -> *mut pango::PangoFontMap;
20751    pub fn gtk_widget_get_font_options(
20752        widget: *mut GtkWidget,
20753    ) -> *const cairo::cairo_font_options_t;
20754    pub fn gtk_widget_get_frame_clock(widget: *mut GtkWidget) -> *mut gdk::GdkFrameClock;
20755    pub fn gtk_widget_get_halign(widget: *mut GtkWidget) -> GtkAlign;
20756    pub fn gtk_widget_get_has_tooltip(widget: *mut GtkWidget) -> gboolean;
20757    pub fn gtk_widget_get_height(widget: *mut GtkWidget) -> c_int;
20758    pub fn gtk_widget_get_hexpand(widget: *mut GtkWidget) -> gboolean;
20759    pub fn gtk_widget_get_hexpand_set(widget: *mut GtkWidget) -> gboolean;
20760    pub fn gtk_widget_get_last_child(widget: *mut GtkWidget) -> *mut GtkWidget;
20761    pub fn gtk_widget_get_layout_manager(widget: *mut GtkWidget) -> *mut GtkLayoutManager;
20762    #[cfg(feature = "v4_18")]
20763    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20764    pub fn gtk_widget_get_limit_events(widget: *mut GtkWidget) -> gboolean;
20765    pub fn gtk_widget_get_mapped(widget: *mut GtkWidget) -> gboolean;
20766    pub fn gtk_widget_get_margin_bottom(widget: *mut GtkWidget) -> c_int;
20767    pub fn gtk_widget_get_margin_end(widget: *mut GtkWidget) -> c_int;
20768    pub fn gtk_widget_get_margin_start(widget: *mut GtkWidget) -> c_int;
20769    pub fn gtk_widget_get_margin_top(widget: *mut GtkWidget) -> c_int;
20770    pub fn gtk_widget_get_name(widget: *mut GtkWidget) -> *const c_char;
20771    pub fn gtk_widget_get_native(widget: *mut GtkWidget) -> *mut GtkNative;
20772    pub fn gtk_widget_get_next_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20773    pub fn gtk_widget_get_opacity(widget: *mut GtkWidget) -> c_double;
20774    pub fn gtk_widget_get_overflow(widget: *mut GtkWidget) -> GtkOverflow;
20775    pub fn gtk_widget_get_pango_context(widget: *mut GtkWidget) -> *mut pango::PangoContext;
20776    pub fn gtk_widget_get_parent(widget: *mut GtkWidget) -> *mut GtkWidget;
20777    pub fn gtk_widget_get_preferred_size(
20778        widget: *mut GtkWidget,
20779        minimum_size: *mut GtkRequisition,
20780        natural_size: *mut GtkRequisition,
20781    );
20782    pub fn gtk_widget_get_prev_sibling(widget: *mut GtkWidget) -> *mut GtkWidget;
20783    pub fn gtk_widget_get_primary_clipboard(widget: *mut GtkWidget) -> *mut gdk::GdkClipboard;
20784    pub fn gtk_widget_get_realized(widget: *mut GtkWidget) -> gboolean;
20785    pub fn gtk_widget_get_receives_default(widget: *mut GtkWidget) -> gboolean;
20786    pub fn gtk_widget_get_request_mode(widget: *mut GtkWidget) -> GtkSizeRequestMode;
20787    pub fn gtk_widget_get_root(widget: *mut GtkWidget) -> *mut GtkRoot;
20788    pub fn gtk_widget_get_scale_factor(widget: *mut GtkWidget) -> c_int;
20789    pub fn gtk_widget_get_sensitive(widget: *mut GtkWidget) -> gboolean;
20790    pub fn gtk_widget_get_settings(widget: *mut GtkWidget) -> *mut GtkSettings;
20791    pub fn gtk_widget_get_size(widget: *mut GtkWidget, orientation: GtkOrientation) -> c_int;
20792    pub fn gtk_widget_get_size_request(
20793        widget: *mut GtkWidget,
20794        width: *mut c_int,
20795        height: *mut c_int,
20796    );
20797    pub fn gtk_widget_get_state_flags(widget: *mut GtkWidget) -> GtkStateFlags;
20798    pub fn gtk_widget_get_style_context(widget: *mut GtkWidget) -> *mut GtkStyleContext;
20799    pub fn gtk_widget_get_template_child(
20800        widget: *mut GtkWidget,
20801        widget_type: GType,
20802        name: *const c_char,
20803    ) -> *mut gobject::GObject;
20804    pub fn gtk_widget_get_tooltip_markup(widget: *mut GtkWidget) -> *const c_char;
20805    pub fn gtk_widget_get_tooltip_text(widget: *mut GtkWidget) -> *const c_char;
20806    pub fn gtk_widget_get_valign(widget: *mut GtkWidget) -> GtkAlign;
20807    pub fn gtk_widget_get_vexpand(widget: *mut GtkWidget) -> gboolean;
20808    pub fn gtk_widget_get_vexpand_set(widget: *mut GtkWidget) -> gboolean;
20809    pub fn gtk_widget_get_visible(widget: *mut GtkWidget) -> gboolean;
20810    pub fn gtk_widget_get_width(widget: *mut GtkWidget) -> c_int;
20811    pub fn gtk_widget_grab_focus(widget: *mut GtkWidget) -> gboolean;
20812    pub fn gtk_widget_has_css_class(widget: *mut GtkWidget, css_class: *const c_char) -> gboolean;
20813    pub fn gtk_widget_has_default(widget: *mut GtkWidget) -> gboolean;
20814    pub fn gtk_widget_has_focus(widget: *mut GtkWidget) -> gboolean;
20815    pub fn gtk_widget_has_visible_focus(widget: *mut GtkWidget) -> gboolean;
20816    pub fn gtk_widget_hide(widget: *mut GtkWidget);
20817    pub fn gtk_widget_in_destruction(widget: *mut GtkWidget) -> gboolean;
20818    pub fn gtk_widget_init_template(widget: *mut GtkWidget);
20819    pub fn gtk_widget_insert_action_group(
20820        widget: *mut GtkWidget,
20821        name: *const c_char,
20822        group: *mut gio::GActionGroup,
20823    );
20824    pub fn gtk_widget_insert_after(
20825        widget: *mut GtkWidget,
20826        parent: *mut GtkWidget,
20827        previous_sibling: *mut GtkWidget,
20828    );
20829    pub fn gtk_widget_insert_before(
20830        widget: *mut GtkWidget,
20831        parent: *mut GtkWidget,
20832        next_sibling: *mut GtkWidget,
20833    );
20834    pub fn gtk_widget_is_ancestor(widget: *mut GtkWidget, ancestor: *mut GtkWidget) -> gboolean;
20835    pub fn gtk_widget_is_drawable(widget: *mut GtkWidget) -> gboolean;
20836    pub fn gtk_widget_is_focus(widget: *mut GtkWidget) -> gboolean;
20837    pub fn gtk_widget_is_sensitive(widget: *mut GtkWidget) -> gboolean;
20838    pub fn gtk_widget_is_visible(widget: *mut GtkWidget) -> gboolean;
20839    pub fn gtk_widget_keynav_failed(
20840        widget: *mut GtkWidget,
20841        direction: GtkDirectionType,
20842    ) -> gboolean;
20843    pub fn gtk_widget_list_mnemonic_labels(widget: *mut GtkWidget) -> *mut glib::GList;
20844    pub fn gtk_widget_map(widget: *mut GtkWidget);
20845    pub fn gtk_widget_measure(
20846        widget: *mut GtkWidget,
20847        orientation: GtkOrientation,
20848        for_size: c_int,
20849        minimum: *mut c_int,
20850        natural: *mut c_int,
20851        minimum_baseline: *mut c_int,
20852        natural_baseline: *mut c_int,
20853    );
20854    pub fn gtk_widget_mnemonic_activate(
20855        widget: *mut GtkWidget,
20856        group_cycling: gboolean,
20857    ) -> gboolean;
20858    pub fn gtk_widget_observe_children(widget: *mut GtkWidget) -> *mut gio::GListModel;
20859    pub fn gtk_widget_observe_controllers(widget: *mut GtkWidget) -> *mut gio::GListModel;
20860    pub fn gtk_widget_pick(
20861        widget: *mut GtkWidget,
20862        x: c_double,
20863        y: c_double,
20864        flags: GtkPickFlags,
20865    ) -> *mut GtkWidget;
20866    pub fn gtk_widget_queue_allocate(widget: *mut GtkWidget);
20867    pub fn gtk_widget_queue_draw(widget: *mut GtkWidget);
20868    pub fn gtk_widget_queue_resize(widget: *mut GtkWidget);
20869    pub fn gtk_widget_realize(widget: *mut GtkWidget);
20870    pub fn gtk_widget_remove_controller(
20871        widget: *mut GtkWidget,
20872        controller: *mut GtkEventController,
20873    );
20874    pub fn gtk_widget_remove_css_class(widget: *mut GtkWidget, css_class: *const c_char);
20875    pub fn gtk_widget_remove_mnemonic_label(widget: *mut GtkWidget, label: *mut GtkWidget);
20876    pub fn gtk_widget_remove_tick_callback(widget: *mut GtkWidget, id: c_uint);
20877    pub fn gtk_widget_set_can_focus(widget: *mut GtkWidget, can_focus: gboolean);
20878    pub fn gtk_widget_set_can_target(widget: *mut GtkWidget, can_target: gboolean);
20879    pub fn gtk_widget_set_child_visible(widget: *mut GtkWidget, child_visible: gboolean);
20880    pub fn gtk_widget_set_css_classes(widget: *mut GtkWidget, classes: *mut *const c_char);
20881    pub fn gtk_widget_set_cursor(widget: *mut GtkWidget, cursor: *mut gdk::GdkCursor);
20882    pub fn gtk_widget_set_cursor_from_name(widget: *mut GtkWidget, name: *const c_char);
20883    pub fn gtk_widget_set_direction(widget: *mut GtkWidget, dir: GtkTextDirection);
20884    pub fn gtk_widget_set_focus_child(widget: *mut GtkWidget, child: *mut GtkWidget);
20885    pub fn gtk_widget_set_focus_on_click(widget: *mut GtkWidget, focus_on_click: gboolean);
20886    pub fn gtk_widget_set_focusable(widget: *mut GtkWidget, focusable: gboolean);
20887    pub fn gtk_widget_set_font_map(widget: *mut GtkWidget, font_map: *mut pango::PangoFontMap);
20888    pub fn gtk_widget_set_font_options(
20889        widget: *mut GtkWidget,
20890        options: *const cairo::cairo_font_options_t,
20891    );
20892    pub fn gtk_widget_set_halign(widget: *mut GtkWidget, align: GtkAlign);
20893    pub fn gtk_widget_set_has_tooltip(widget: *mut GtkWidget, has_tooltip: gboolean);
20894    pub fn gtk_widget_set_hexpand(widget: *mut GtkWidget, expand: gboolean);
20895    pub fn gtk_widget_set_hexpand_set(widget: *mut GtkWidget, set: gboolean);
20896    pub fn gtk_widget_set_layout_manager(
20897        widget: *mut GtkWidget,
20898        layout_manager: *mut GtkLayoutManager,
20899    );
20900    #[cfg(feature = "v4_18")]
20901    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
20902    pub fn gtk_widget_set_limit_events(widget: *mut GtkWidget, limit_events: gboolean);
20903    pub fn gtk_widget_set_margin_bottom(widget: *mut GtkWidget, margin: c_int);
20904    pub fn gtk_widget_set_margin_end(widget: *mut GtkWidget, margin: c_int);
20905    pub fn gtk_widget_set_margin_start(widget: *mut GtkWidget, margin: c_int);
20906    pub fn gtk_widget_set_margin_top(widget: *mut GtkWidget, margin: c_int);
20907    pub fn gtk_widget_set_name(widget: *mut GtkWidget, name: *const c_char);
20908    pub fn gtk_widget_set_opacity(widget: *mut GtkWidget, opacity: c_double);
20909    pub fn gtk_widget_set_overflow(widget: *mut GtkWidget, overflow: GtkOverflow);
20910    pub fn gtk_widget_set_parent(widget: *mut GtkWidget, parent: *mut GtkWidget);
20911    pub fn gtk_widget_set_receives_default(widget: *mut GtkWidget, receives_default: gboolean);
20912    pub fn gtk_widget_set_sensitive(widget: *mut GtkWidget, sensitive: gboolean);
20913    pub fn gtk_widget_set_size_request(widget: *mut GtkWidget, width: c_int, height: c_int);
20914    pub fn gtk_widget_set_state_flags(
20915        widget: *mut GtkWidget,
20916        flags: GtkStateFlags,
20917        clear: gboolean,
20918    );
20919    pub fn gtk_widget_set_tooltip_markup(widget: *mut GtkWidget, markup: *const c_char);
20920    pub fn gtk_widget_set_tooltip_text(widget: *mut GtkWidget, text: *const c_char);
20921    pub fn gtk_widget_set_valign(widget: *mut GtkWidget, align: GtkAlign);
20922    pub fn gtk_widget_set_vexpand(widget: *mut GtkWidget, expand: gboolean);
20923    pub fn gtk_widget_set_vexpand_set(widget: *mut GtkWidget, set: gboolean);
20924    pub fn gtk_widget_set_visible(widget: *mut GtkWidget, visible: gboolean);
20925    pub fn gtk_widget_should_layout(widget: *mut GtkWidget) -> gboolean;
20926    pub fn gtk_widget_show(widget: *mut GtkWidget);
20927    pub fn gtk_widget_size_allocate(
20928        widget: *mut GtkWidget,
20929        allocation: *const GtkAllocation,
20930        baseline: c_int,
20931    );
20932    pub fn gtk_widget_snapshot_child(
20933        widget: *mut GtkWidget,
20934        child: *mut GtkWidget,
20935        snapshot: *mut GtkSnapshot,
20936    );
20937    pub fn gtk_widget_translate_coordinates(
20938        src_widget: *mut GtkWidget,
20939        dest_widget: *mut GtkWidget,
20940        src_x: c_double,
20941        src_y: c_double,
20942        dest_x: *mut c_double,
20943        dest_y: *mut c_double,
20944    ) -> gboolean;
20945    pub fn gtk_widget_trigger_tooltip_query(widget: *mut GtkWidget);
20946    pub fn gtk_widget_unmap(widget: *mut GtkWidget);
20947    pub fn gtk_widget_unparent(widget: *mut GtkWidget);
20948    pub fn gtk_widget_unrealize(widget: *mut GtkWidget);
20949    pub fn gtk_widget_unset_state_flags(widget: *mut GtkWidget, flags: GtkStateFlags);
20950
20951    //=========================================================================
20952    // GtkWidgetPaintable
20953    //=========================================================================
20954    pub fn gtk_widget_paintable_get_type() -> GType;
20955    pub fn gtk_widget_paintable_new(widget: *mut GtkWidget) -> *mut GtkWidgetPaintable;
20956    pub fn gtk_widget_paintable_get_widget(self_: *mut GtkWidgetPaintable) -> *mut GtkWidget;
20957    pub fn gtk_widget_paintable_set_widget(self_: *mut GtkWidgetPaintable, widget: *mut GtkWidget);
20958
20959    //=========================================================================
20960    // GtkWindow
20961    //=========================================================================
20962    pub fn gtk_window_get_type() -> GType;
20963    pub fn gtk_window_new() -> *mut GtkWidget;
20964    pub fn gtk_window_get_default_icon_name() -> *const c_char;
20965    pub fn gtk_window_get_toplevels() -> *mut gio::GListModel;
20966    pub fn gtk_window_list_toplevels() -> *mut glib::GList;
20967    pub fn gtk_window_set_auto_startup_notification(setting: gboolean);
20968    pub fn gtk_window_set_default_icon_name(name: *const c_char);
20969    pub fn gtk_window_set_interactive_debugging(enable: gboolean);
20970    pub fn gtk_window_close(window: *mut GtkWindow);
20971    pub fn gtk_window_destroy(window: *mut GtkWindow);
20972    pub fn gtk_window_fullscreen(window: *mut GtkWindow);
20973    pub fn gtk_window_fullscreen_on_monitor(window: *mut GtkWindow, monitor: *mut gdk::GdkMonitor);
20974    pub fn gtk_window_get_application(window: *mut GtkWindow) -> *mut GtkApplication;
20975    pub fn gtk_window_get_child(window: *mut GtkWindow) -> *mut GtkWidget;
20976    pub fn gtk_window_get_decorated(window: *mut GtkWindow) -> gboolean;
20977    pub fn gtk_window_get_default_size(
20978        window: *mut GtkWindow,
20979        width: *mut c_int,
20980        height: *mut c_int,
20981    );
20982    pub fn gtk_window_get_default_widget(window: *mut GtkWindow) -> *mut GtkWidget;
20983    pub fn gtk_window_get_deletable(window: *mut GtkWindow) -> gboolean;
20984    pub fn gtk_window_get_destroy_with_parent(window: *mut GtkWindow) -> gboolean;
20985    pub fn gtk_window_get_focus(window: *mut GtkWindow) -> *mut GtkWidget;
20986    pub fn gtk_window_get_focus_visible(window: *mut GtkWindow) -> gboolean;
20987    #[cfg(feature = "v4_20")]
20988    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
20989    pub fn gtk_window_get_gravity(window: *mut GtkWindow) -> GtkWindowGravity;
20990    pub fn gtk_window_get_group(window: *mut GtkWindow) -> *mut GtkWindowGroup;
20991    #[cfg(feature = "v4_2")]
20992    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
20993    pub fn gtk_window_get_handle_menubar_accel(window: *mut GtkWindow) -> gboolean;
20994    pub fn gtk_window_get_hide_on_close(window: *mut GtkWindow) -> gboolean;
20995    pub fn gtk_window_get_icon_name(window: *mut GtkWindow) -> *const c_char;
20996    pub fn gtk_window_get_mnemonics_visible(window: *mut GtkWindow) -> gboolean;
20997    pub fn gtk_window_get_modal(window: *mut GtkWindow) -> gboolean;
20998    pub fn gtk_window_get_resizable(window: *mut GtkWindow) -> gboolean;
20999    pub fn gtk_window_get_title(window: *mut GtkWindow) -> *const c_char;
21000    pub fn gtk_window_get_titlebar(window: *mut GtkWindow) -> *mut GtkWidget;
21001    pub fn gtk_window_get_transient_for(window: *mut GtkWindow) -> *mut GtkWindow;
21002    pub fn gtk_window_has_group(window: *mut GtkWindow) -> gboolean;
21003    pub fn gtk_window_is_active(window: *mut GtkWindow) -> gboolean;
21004    pub fn gtk_window_is_fullscreen(window: *mut GtkWindow) -> gboolean;
21005    pub fn gtk_window_is_maximized(window: *mut GtkWindow) -> gboolean;
21006    #[cfg(feature = "v4_12")]
21007    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21008    pub fn gtk_window_is_suspended(window: *mut GtkWindow) -> gboolean;
21009    pub fn gtk_window_maximize(window: *mut GtkWindow);
21010    pub fn gtk_window_minimize(window: *mut GtkWindow);
21011    pub fn gtk_window_present(window: *mut GtkWindow);
21012    pub fn gtk_window_present_with_time(window: *mut GtkWindow, timestamp: u32);
21013    pub fn gtk_window_set_application(window: *mut GtkWindow, application: *mut GtkApplication);
21014    pub fn gtk_window_set_child(window: *mut GtkWindow, child: *mut GtkWidget);
21015    pub fn gtk_window_set_decorated(window: *mut GtkWindow, setting: gboolean);
21016    pub fn gtk_window_set_default_size(window: *mut GtkWindow, width: c_int, height: c_int);
21017    pub fn gtk_window_set_default_widget(window: *mut GtkWindow, default_widget: *mut GtkWidget);
21018    pub fn gtk_window_set_deletable(window: *mut GtkWindow, setting: gboolean);
21019    pub fn gtk_window_set_destroy_with_parent(window: *mut GtkWindow, setting: gboolean);
21020    pub fn gtk_window_set_display(window: *mut GtkWindow, display: *mut gdk::GdkDisplay);
21021    pub fn gtk_window_set_focus(window: *mut GtkWindow, focus: *mut GtkWidget);
21022    pub fn gtk_window_set_focus_visible(window: *mut GtkWindow, setting: gboolean);
21023    #[cfg(feature = "v4_20")]
21024    #[cfg_attr(docsrs, doc(cfg(feature = "v4_20")))]
21025    pub fn gtk_window_set_gravity(window: *mut GtkWindow, gravity: GtkWindowGravity);
21026    #[cfg(feature = "v4_2")]
21027    #[cfg_attr(docsrs, doc(cfg(feature = "v4_2")))]
21028    pub fn gtk_window_set_handle_menubar_accel(
21029        window: *mut GtkWindow,
21030        handle_menubar_accel: gboolean,
21031    );
21032    pub fn gtk_window_set_hide_on_close(window: *mut GtkWindow, setting: gboolean);
21033    pub fn gtk_window_set_icon_name(window: *mut GtkWindow, name: *const c_char);
21034    pub fn gtk_window_set_mnemonics_visible(window: *mut GtkWindow, setting: gboolean);
21035    pub fn gtk_window_set_modal(window: *mut GtkWindow, modal: gboolean);
21036    pub fn gtk_window_set_resizable(window: *mut GtkWindow, resizable: gboolean);
21037    pub fn gtk_window_set_startup_id(window: *mut GtkWindow, startup_id: *const c_char);
21038    pub fn gtk_window_set_title(window: *mut GtkWindow, title: *const c_char);
21039    pub fn gtk_window_set_titlebar(window: *mut GtkWindow, titlebar: *mut GtkWidget);
21040    pub fn gtk_window_set_transient_for(window: *mut GtkWindow, parent: *mut GtkWindow);
21041    pub fn gtk_window_unfullscreen(window: *mut GtkWindow);
21042    pub fn gtk_window_unmaximize(window: *mut GtkWindow);
21043    pub fn gtk_window_unminimize(window: *mut GtkWindow);
21044
21045    //=========================================================================
21046    // GtkWindowControls
21047    //=========================================================================
21048    pub fn gtk_window_controls_get_type() -> GType;
21049    pub fn gtk_window_controls_new(side: GtkPackType) -> *mut GtkWidget;
21050    pub fn gtk_window_controls_get_decoration_layout(
21051        self_: *mut GtkWindowControls,
21052    ) -> *const c_char;
21053    pub fn gtk_window_controls_get_empty(self_: *mut GtkWindowControls) -> gboolean;
21054    pub fn gtk_window_controls_get_side(self_: *mut GtkWindowControls) -> GtkPackType;
21055    #[cfg(feature = "v4_18")]
21056    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21057    pub fn gtk_window_controls_get_use_native_controls(self_: *mut GtkWindowControls) -> gboolean;
21058    pub fn gtk_window_controls_set_decoration_layout(
21059        self_: *mut GtkWindowControls,
21060        layout: *const c_char,
21061    );
21062    pub fn gtk_window_controls_set_side(self_: *mut GtkWindowControls, side: GtkPackType);
21063    #[cfg(feature = "v4_18")]
21064    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21065    pub fn gtk_window_controls_set_use_native_controls(
21066        self_: *mut GtkWindowControls,
21067        setting: gboolean,
21068    );
21069
21070    //=========================================================================
21071    // GtkWindowGroup
21072    //=========================================================================
21073    pub fn gtk_window_group_get_type() -> GType;
21074    pub fn gtk_window_group_new() -> *mut GtkWindowGroup;
21075    pub fn gtk_window_group_add_window(window_group: *mut GtkWindowGroup, window: *mut GtkWindow);
21076    pub fn gtk_window_group_list_windows(window_group: *mut GtkWindowGroup) -> *mut glib::GList;
21077    pub fn gtk_window_group_remove_window(
21078        window_group: *mut GtkWindowGroup,
21079        window: *mut GtkWindow,
21080    );
21081
21082    //=========================================================================
21083    // GtkWindowHandle
21084    //=========================================================================
21085    pub fn gtk_window_handle_get_type() -> GType;
21086    pub fn gtk_window_handle_new() -> *mut GtkWidget;
21087    pub fn gtk_window_handle_get_child(self_: *mut GtkWindowHandle) -> *mut GtkWidget;
21088    pub fn gtk_window_handle_set_child(self_: *mut GtkWindowHandle, child: *mut GtkWidget);
21089
21090    //=========================================================================
21091    // GtkAccessible
21092    //=========================================================================
21093    pub fn gtk_accessible_get_type() -> GType;
21094    #[cfg(feature = "v4_14")]
21095    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21096    pub fn gtk_accessible_announce(
21097        self_: *mut GtkAccessible,
21098        message: *const c_char,
21099        priority: GtkAccessibleAnnouncementPriority,
21100    );
21101    #[cfg(feature = "v4_22")]
21102    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21103    pub fn gtk_accessible_get_accessible_id(self_: *mut GtkAccessible) -> *mut c_char;
21104    #[cfg(feature = "v4_10")]
21105    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21106    pub fn gtk_accessible_get_accessible_parent(self_: *mut GtkAccessible) -> *mut GtkAccessible;
21107    pub fn gtk_accessible_get_accessible_role(self_: *mut GtkAccessible) -> GtkAccessibleRole;
21108    #[cfg(feature = "v4_10")]
21109    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21110    pub fn gtk_accessible_get_at_context(self_: *mut GtkAccessible) -> *mut GtkATContext;
21111    #[cfg(feature = "v4_10")]
21112    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21113    pub fn gtk_accessible_get_bounds(
21114        self_: *mut GtkAccessible,
21115        x: *mut c_int,
21116        y: *mut c_int,
21117        width: *mut c_int,
21118        height: *mut c_int,
21119    ) -> gboolean;
21120    #[cfg(feature = "v4_10")]
21121    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21122    pub fn gtk_accessible_get_first_accessible_child(
21123        self_: *mut GtkAccessible,
21124    ) -> *mut GtkAccessible;
21125    #[cfg(feature = "v4_10")]
21126    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21127    pub fn gtk_accessible_get_next_accessible_sibling(
21128        self_: *mut GtkAccessible,
21129    ) -> *mut GtkAccessible;
21130    #[cfg(feature = "v4_10")]
21131    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21132    pub fn gtk_accessible_get_platform_state(
21133        self_: *mut GtkAccessible,
21134        state: GtkAccessiblePlatformState,
21135    ) -> gboolean;
21136    pub fn gtk_accessible_reset_property(
21137        self_: *mut GtkAccessible,
21138        property: GtkAccessibleProperty,
21139    );
21140    pub fn gtk_accessible_reset_relation(
21141        self_: *mut GtkAccessible,
21142        relation: GtkAccessibleRelation,
21143    );
21144    pub fn gtk_accessible_reset_state(self_: *mut GtkAccessible, state: GtkAccessibleState);
21145    #[cfg(feature = "v4_10")]
21146    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21147    pub fn gtk_accessible_set_accessible_parent(
21148        self_: *mut GtkAccessible,
21149        parent: *mut GtkAccessible,
21150        next_sibling: *mut GtkAccessible,
21151    );
21152    #[cfg(feature = "v4_10")]
21153    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21154    pub fn gtk_accessible_update_next_accessible_sibling(
21155        self_: *mut GtkAccessible,
21156        new_sibling: *mut GtkAccessible,
21157    );
21158    #[cfg(feature = "v4_18")]
21159    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21160    pub fn gtk_accessible_update_platform_state(
21161        self_: *mut GtkAccessible,
21162        state: GtkAccessiblePlatformState,
21163    );
21164    pub fn gtk_accessible_update_property(
21165        self_: *mut GtkAccessible,
21166        first_property: GtkAccessibleProperty,
21167        ...
21168    );
21169    pub fn gtk_accessible_update_property_value(
21170        self_: *mut GtkAccessible,
21171        n_properties: c_int,
21172        properties: *mut GtkAccessibleProperty,
21173        values: *const gobject::GValue,
21174    );
21175    pub fn gtk_accessible_update_relation(
21176        self_: *mut GtkAccessible,
21177        first_relation: GtkAccessibleRelation,
21178        ...
21179    );
21180    pub fn gtk_accessible_update_relation_value(
21181        self_: *mut GtkAccessible,
21182        n_relations: c_int,
21183        relations: *mut GtkAccessibleRelation,
21184        values: *const gobject::GValue,
21185    );
21186    pub fn gtk_accessible_update_state(
21187        self_: *mut GtkAccessible,
21188        first_state: GtkAccessibleState,
21189        ...
21190    );
21191    pub fn gtk_accessible_update_state_value(
21192        self_: *mut GtkAccessible,
21193        n_states: c_int,
21194        states: *mut GtkAccessibleState,
21195        values: *const gobject::GValue,
21196    );
21197
21198    //=========================================================================
21199    // GtkAccessibleHypertext
21200    //=========================================================================
21201    #[cfg(feature = "v4_22")]
21202    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21203    pub fn gtk_accessible_hypertext_get_type() -> GType;
21204
21205    //=========================================================================
21206    // GtkAccessibleRange
21207    //=========================================================================
21208    #[cfg(feature = "v4_10")]
21209    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21210    pub fn gtk_accessible_range_get_type() -> GType;
21211
21212    //=========================================================================
21213    // GtkAccessibleText
21214    //=========================================================================
21215    #[cfg(feature = "v4_14")]
21216    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21217    pub fn gtk_accessible_text_get_type() -> GType;
21218    #[cfg(feature = "v4_14")]
21219    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21220    pub fn gtk_accessible_text_update_caret_position(self_: *mut GtkAccessibleText);
21221    #[cfg(feature = "v4_14")]
21222    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21223    pub fn gtk_accessible_text_update_contents(
21224        self_: *mut GtkAccessibleText,
21225        change: GtkAccessibleTextContentChange,
21226        start: c_uint,
21227        end: c_uint,
21228    );
21229    #[cfg(feature = "v4_14")]
21230    #[cfg_attr(docsrs, doc(cfg(feature = "v4_14")))]
21231    pub fn gtk_accessible_text_update_selection_bound(self_: *mut GtkAccessibleText);
21232
21233    //=========================================================================
21234    // GtkActionable
21235    //=========================================================================
21236    pub fn gtk_actionable_get_type() -> GType;
21237    pub fn gtk_actionable_get_action_name(actionable: *mut GtkActionable) -> *const c_char;
21238    pub fn gtk_actionable_get_action_target_value(
21239        actionable: *mut GtkActionable,
21240    ) -> *mut glib::GVariant;
21241    pub fn gtk_actionable_set_action_name(
21242        actionable: *mut GtkActionable,
21243        action_name: *const c_char,
21244    );
21245    pub fn gtk_actionable_set_action_target(
21246        actionable: *mut GtkActionable,
21247        format_string: *const c_char,
21248        ...
21249    );
21250    pub fn gtk_actionable_set_action_target_value(
21251        actionable: *mut GtkActionable,
21252        target_value: *mut glib::GVariant,
21253    );
21254    pub fn gtk_actionable_set_detailed_action_name(
21255        actionable: *mut GtkActionable,
21256        detailed_action_name: *const c_char,
21257    );
21258
21259    //=========================================================================
21260    // GtkAppChooser
21261    //=========================================================================
21262    pub fn gtk_app_chooser_get_type() -> GType;
21263    pub fn gtk_app_chooser_get_app_info(self_: *mut GtkAppChooser) -> *mut gio::GAppInfo;
21264    pub fn gtk_app_chooser_get_content_type(self_: *mut GtkAppChooser) -> *mut c_char;
21265    pub fn gtk_app_chooser_refresh(self_: *mut GtkAppChooser);
21266
21267    //=========================================================================
21268    // GtkBuildable
21269    //=========================================================================
21270    pub fn gtk_buildable_get_type() -> GType;
21271    pub fn gtk_buildable_get_buildable_id(buildable: *mut GtkBuildable) -> *const c_char;
21272
21273    //=========================================================================
21274    // GtkBuilderScope
21275    //=========================================================================
21276    pub fn gtk_builder_scope_get_type() -> GType;
21277
21278    //=========================================================================
21279    // GtkCellEditable
21280    //=========================================================================
21281    pub fn gtk_cell_editable_get_type() -> GType;
21282    pub fn gtk_cell_editable_editing_done(cell_editable: *mut GtkCellEditable);
21283    pub fn gtk_cell_editable_remove_widget(cell_editable: *mut GtkCellEditable);
21284    pub fn gtk_cell_editable_start_editing(
21285        cell_editable: *mut GtkCellEditable,
21286        event: *mut gdk::GdkEvent,
21287    );
21288
21289    //=========================================================================
21290    // GtkCellLayout
21291    //=========================================================================
21292    pub fn gtk_cell_layout_get_type() -> GType;
21293    pub fn gtk_cell_layout_add_attribute(
21294        cell_layout: *mut GtkCellLayout,
21295        cell: *mut GtkCellRenderer,
21296        attribute: *const c_char,
21297        column: c_int,
21298    );
21299    pub fn gtk_cell_layout_clear(cell_layout: *mut GtkCellLayout);
21300    pub fn gtk_cell_layout_clear_attributes(
21301        cell_layout: *mut GtkCellLayout,
21302        cell: *mut GtkCellRenderer,
21303    );
21304    pub fn gtk_cell_layout_get_area(cell_layout: *mut GtkCellLayout) -> *mut GtkCellArea;
21305    pub fn gtk_cell_layout_get_cells(cell_layout: *mut GtkCellLayout) -> *mut glib::GList;
21306    pub fn gtk_cell_layout_pack_end(
21307        cell_layout: *mut GtkCellLayout,
21308        cell: *mut GtkCellRenderer,
21309        expand: gboolean,
21310    );
21311    pub fn gtk_cell_layout_pack_start(
21312        cell_layout: *mut GtkCellLayout,
21313        cell: *mut GtkCellRenderer,
21314        expand: gboolean,
21315    );
21316    pub fn gtk_cell_layout_reorder(
21317        cell_layout: *mut GtkCellLayout,
21318        cell: *mut GtkCellRenderer,
21319        position: c_int,
21320    );
21321    pub fn gtk_cell_layout_set_attributes(
21322        cell_layout: *mut GtkCellLayout,
21323        cell: *mut GtkCellRenderer,
21324        ...
21325    );
21326    pub fn gtk_cell_layout_set_cell_data_func(
21327        cell_layout: *mut GtkCellLayout,
21328        cell: *mut GtkCellRenderer,
21329        func: GtkCellLayoutDataFunc,
21330        func_data: gpointer,
21331        destroy: glib::GDestroyNotify,
21332    );
21333
21334    //=========================================================================
21335    // GtkColorChooser
21336    //=========================================================================
21337    pub fn gtk_color_chooser_get_type() -> GType;
21338    pub fn gtk_color_chooser_add_palette(
21339        chooser: *mut GtkColorChooser,
21340        orientation: GtkOrientation,
21341        colors_per_line: c_int,
21342        n_colors: c_int,
21343        colors: *mut gdk::GdkRGBA,
21344    );
21345    pub fn gtk_color_chooser_get_rgba(chooser: *mut GtkColorChooser, color: *mut gdk::GdkRGBA);
21346    pub fn gtk_color_chooser_get_use_alpha(chooser: *mut GtkColorChooser) -> gboolean;
21347    pub fn gtk_color_chooser_set_rgba(chooser: *mut GtkColorChooser, color: *const gdk::GdkRGBA);
21348    pub fn gtk_color_chooser_set_use_alpha(chooser: *mut GtkColorChooser, use_alpha: gboolean);
21349
21350    //=========================================================================
21351    // GtkConstraintTarget
21352    //=========================================================================
21353    pub fn gtk_constraint_target_get_type() -> GType;
21354
21355    //=========================================================================
21356    // GtkEditable
21357    //=========================================================================
21358    pub fn gtk_editable_get_type() -> GType;
21359    pub fn gtk_editable_delegate_get_property(
21360        object: *mut gobject::GObject,
21361        prop_id: c_uint,
21362        value: *mut gobject::GValue,
21363        pspec: *mut gobject::GParamSpec,
21364    ) -> gboolean;
21365    pub fn gtk_editable_delegate_set_property(
21366        object: *mut gobject::GObject,
21367        prop_id: c_uint,
21368        value: *const gobject::GValue,
21369        pspec: *mut gobject::GParamSpec,
21370    ) -> gboolean;
21371    pub fn gtk_editable_install_properties(
21372        object_class: *mut gobject::GObjectClass,
21373        first_prop: c_uint,
21374    ) -> c_uint;
21375    #[cfg(feature = "v4_10")]
21376    #[cfg_attr(docsrs, doc(cfg(feature = "v4_10")))]
21377    pub fn gtk_editable_delegate_get_accessible_platform_state(
21378        editable: *mut GtkEditable,
21379        state: GtkAccessiblePlatformState,
21380    ) -> gboolean;
21381    pub fn gtk_editable_delete_selection(editable: *mut GtkEditable);
21382    pub fn gtk_editable_delete_text(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21383    pub fn gtk_editable_finish_delegate(editable: *mut GtkEditable);
21384    pub fn gtk_editable_get_alignment(editable: *mut GtkEditable) -> c_float;
21385    pub fn gtk_editable_get_chars(
21386        editable: *mut GtkEditable,
21387        start_pos: c_int,
21388        end_pos: c_int,
21389    ) -> *mut c_char;
21390    pub fn gtk_editable_get_delegate(editable: *mut GtkEditable) -> *mut GtkEditable;
21391    pub fn gtk_editable_get_editable(editable: *mut GtkEditable) -> gboolean;
21392    pub fn gtk_editable_get_enable_undo(editable: *mut GtkEditable) -> gboolean;
21393    pub fn gtk_editable_get_max_width_chars(editable: *mut GtkEditable) -> c_int;
21394    pub fn gtk_editable_get_position(editable: *mut GtkEditable) -> c_int;
21395    pub fn gtk_editable_get_selection_bounds(
21396        editable: *mut GtkEditable,
21397        start_pos: *mut c_int,
21398        end_pos: *mut c_int,
21399    ) -> gboolean;
21400    pub fn gtk_editable_get_text(editable: *mut GtkEditable) -> *const c_char;
21401    pub fn gtk_editable_get_width_chars(editable: *mut GtkEditable) -> c_int;
21402    pub fn gtk_editable_init_delegate(editable: *mut GtkEditable);
21403    pub fn gtk_editable_insert_text(
21404        editable: *mut GtkEditable,
21405        text: *const c_char,
21406        length: c_int,
21407        position: *mut c_int,
21408    );
21409    pub fn gtk_editable_select_region(editable: *mut GtkEditable, start_pos: c_int, end_pos: c_int);
21410    pub fn gtk_editable_set_alignment(editable: *mut GtkEditable, xalign: c_float);
21411    pub fn gtk_editable_set_editable(editable: *mut GtkEditable, is_editable: gboolean);
21412    pub fn gtk_editable_set_enable_undo(editable: *mut GtkEditable, enable_undo: gboolean);
21413    pub fn gtk_editable_set_max_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21414    pub fn gtk_editable_set_position(editable: *mut GtkEditable, position: c_int);
21415    pub fn gtk_editable_set_text(editable: *mut GtkEditable, text: *const c_char);
21416    pub fn gtk_editable_set_width_chars(editable: *mut GtkEditable, n_chars: c_int);
21417
21418    //=========================================================================
21419    // GtkFileChooser
21420    //=========================================================================
21421    pub fn gtk_file_chooser_get_type() -> GType;
21422    pub fn gtk_file_chooser_add_choice(
21423        chooser: *mut GtkFileChooser,
21424        id: *const c_char,
21425        label: *const c_char,
21426        options: *mut *const c_char,
21427        option_labels: *mut *const c_char,
21428    );
21429    pub fn gtk_file_chooser_add_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21430    pub fn gtk_file_chooser_add_shortcut_folder(
21431        chooser: *mut GtkFileChooser,
21432        folder: *mut gio::GFile,
21433        error: *mut *mut glib::GError,
21434    ) -> gboolean;
21435    pub fn gtk_file_chooser_get_action(chooser: *mut GtkFileChooser) -> GtkFileChooserAction;
21436    pub fn gtk_file_chooser_get_choice(
21437        chooser: *mut GtkFileChooser,
21438        id: *const c_char,
21439    ) -> *const c_char;
21440    pub fn gtk_file_chooser_get_create_folders(chooser: *mut GtkFileChooser) -> gboolean;
21441    pub fn gtk_file_chooser_get_current_folder(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21442    pub fn gtk_file_chooser_get_current_name(chooser: *mut GtkFileChooser) -> *mut c_char;
21443    pub fn gtk_file_chooser_get_file(chooser: *mut GtkFileChooser) -> *mut gio::GFile;
21444    pub fn gtk_file_chooser_get_files(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21445    pub fn gtk_file_chooser_get_filter(chooser: *mut GtkFileChooser) -> *mut GtkFileFilter;
21446    pub fn gtk_file_chooser_get_filters(chooser: *mut GtkFileChooser) -> *mut gio::GListModel;
21447    pub fn gtk_file_chooser_get_select_multiple(chooser: *mut GtkFileChooser) -> gboolean;
21448    pub fn gtk_file_chooser_get_shortcut_folders(
21449        chooser: *mut GtkFileChooser,
21450    ) -> *mut gio::GListModel;
21451    pub fn gtk_file_chooser_remove_choice(chooser: *mut GtkFileChooser, id: *const c_char);
21452    pub fn gtk_file_chooser_remove_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21453    pub fn gtk_file_chooser_remove_shortcut_folder(
21454        chooser: *mut GtkFileChooser,
21455        folder: *mut gio::GFile,
21456        error: *mut *mut glib::GError,
21457    ) -> gboolean;
21458    pub fn gtk_file_chooser_set_action(chooser: *mut GtkFileChooser, action: GtkFileChooserAction);
21459    pub fn gtk_file_chooser_set_choice(
21460        chooser: *mut GtkFileChooser,
21461        id: *const c_char,
21462        option: *const c_char,
21463    );
21464    pub fn gtk_file_chooser_set_create_folders(
21465        chooser: *mut GtkFileChooser,
21466        create_folders: gboolean,
21467    );
21468    pub fn gtk_file_chooser_set_current_folder(
21469        chooser: *mut GtkFileChooser,
21470        file: *mut gio::GFile,
21471        error: *mut *mut glib::GError,
21472    ) -> gboolean;
21473    pub fn gtk_file_chooser_set_current_name(chooser: *mut GtkFileChooser, name: *const c_char);
21474    pub fn gtk_file_chooser_set_file(
21475        chooser: *mut GtkFileChooser,
21476        file: *mut gio::GFile,
21477        error: *mut *mut glib::GError,
21478    ) -> gboolean;
21479    pub fn gtk_file_chooser_set_filter(chooser: *mut GtkFileChooser, filter: *mut GtkFileFilter);
21480    pub fn gtk_file_chooser_set_select_multiple(
21481        chooser: *mut GtkFileChooser,
21482        select_multiple: gboolean,
21483    );
21484
21485    //=========================================================================
21486    // GtkFontChooser
21487    //=========================================================================
21488    pub fn gtk_font_chooser_get_type() -> GType;
21489    pub fn gtk_font_chooser_get_font(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21490    pub fn gtk_font_chooser_get_font_desc(
21491        fontchooser: *mut GtkFontChooser,
21492    ) -> *mut pango::PangoFontDescription;
21493    pub fn gtk_font_chooser_get_font_face(
21494        fontchooser: *mut GtkFontChooser,
21495    ) -> *mut pango::PangoFontFace;
21496    pub fn gtk_font_chooser_get_font_family(
21497        fontchooser: *mut GtkFontChooser,
21498    ) -> *mut pango::PangoFontFamily;
21499    pub fn gtk_font_chooser_get_font_features(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21500    pub fn gtk_font_chooser_get_font_map(
21501        fontchooser: *mut GtkFontChooser,
21502    ) -> *mut pango::PangoFontMap;
21503    pub fn gtk_font_chooser_get_font_size(fontchooser: *mut GtkFontChooser) -> c_int;
21504    pub fn gtk_font_chooser_get_language(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21505    pub fn gtk_font_chooser_get_level(fontchooser: *mut GtkFontChooser) -> GtkFontChooserLevel;
21506    pub fn gtk_font_chooser_get_preview_text(fontchooser: *mut GtkFontChooser) -> *mut c_char;
21507    pub fn gtk_font_chooser_get_show_preview_entry(fontchooser: *mut GtkFontChooser) -> gboolean;
21508    pub fn gtk_font_chooser_set_filter_func(
21509        fontchooser: *mut GtkFontChooser,
21510        filter: GtkFontFilterFunc,
21511        user_data: gpointer,
21512        destroy: glib::GDestroyNotify,
21513    );
21514    pub fn gtk_font_chooser_set_font(fontchooser: *mut GtkFontChooser, fontname: *const c_char);
21515    pub fn gtk_font_chooser_set_font_desc(
21516        fontchooser: *mut GtkFontChooser,
21517        font_desc: *const pango::PangoFontDescription,
21518    );
21519    pub fn gtk_font_chooser_set_font_map(
21520        fontchooser: *mut GtkFontChooser,
21521        fontmap: *mut pango::PangoFontMap,
21522    );
21523    pub fn gtk_font_chooser_set_language(fontchooser: *mut GtkFontChooser, language: *const c_char);
21524    pub fn gtk_font_chooser_set_level(fontchooser: *mut GtkFontChooser, level: GtkFontChooserLevel);
21525    pub fn gtk_font_chooser_set_preview_text(fontchooser: *mut GtkFontChooser, text: *const c_char);
21526    pub fn gtk_font_chooser_set_show_preview_entry(
21527        fontchooser: *mut GtkFontChooser,
21528        show_preview_entry: gboolean,
21529    );
21530
21531    //=========================================================================
21532    // GtkNative
21533    //=========================================================================
21534    pub fn gtk_native_get_type() -> GType;
21535    pub fn gtk_native_get_for_surface(surface: *mut gdk::GdkSurface) -> *mut GtkNative;
21536    pub fn gtk_native_get_renderer(self_: *mut GtkNative) -> *mut gsk::GskRenderer;
21537    pub fn gtk_native_get_surface(self_: *mut GtkNative) -> *mut gdk::GdkSurface;
21538    pub fn gtk_native_get_surface_transform(
21539        self_: *mut GtkNative,
21540        x: *mut c_double,
21541        y: *mut c_double,
21542    );
21543    pub fn gtk_native_realize(self_: *mut GtkNative);
21544    pub fn gtk_native_unrealize(self_: *mut GtkNative);
21545
21546    //=========================================================================
21547    // GtkOrientable
21548    //=========================================================================
21549    pub fn gtk_orientable_get_type() -> GType;
21550    pub fn gtk_orientable_get_orientation(orientable: *mut GtkOrientable) -> GtkOrientation;
21551    pub fn gtk_orientable_set_orientation(
21552        orientable: *mut GtkOrientable,
21553        orientation: GtkOrientation,
21554    );
21555
21556    //=========================================================================
21557    // GtkPrintOperationPreview
21558    //=========================================================================
21559    pub fn gtk_print_operation_preview_get_type() -> GType;
21560    pub fn gtk_print_operation_preview_end_preview(preview: *mut GtkPrintOperationPreview);
21561    pub fn gtk_print_operation_preview_is_selected(
21562        preview: *mut GtkPrintOperationPreview,
21563        page_nr: c_int,
21564    ) -> gboolean;
21565    pub fn gtk_print_operation_preview_render_page(
21566        preview: *mut GtkPrintOperationPreview,
21567        page_nr: c_int,
21568    );
21569
21570    //=========================================================================
21571    // GtkRoot
21572    //=========================================================================
21573    pub fn gtk_root_get_type() -> GType;
21574    pub fn gtk_root_get_display(self_: *mut GtkRoot) -> *mut gdk::GdkDisplay;
21575    pub fn gtk_root_get_focus(self_: *mut GtkRoot) -> *mut GtkWidget;
21576    pub fn gtk_root_set_focus(self_: *mut GtkRoot, focus: *mut GtkWidget);
21577
21578    //=========================================================================
21579    // GtkScrollable
21580    //=========================================================================
21581    pub fn gtk_scrollable_get_type() -> GType;
21582    pub fn gtk_scrollable_get_border(
21583        scrollable: *mut GtkScrollable,
21584        border: *mut GtkBorder,
21585    ) -> gboolean;
21586    pub fn gtk_scrollable_get_hadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21587    pub fn gtk_scrollable_get_hscroll_policy(scrollable: *mut GtkScrollable)
21588    -> GtkScrollablePolicy;
21589    pub fn gtk_scrollable_get_vadjustment(scrollable: *mut GtkScrollable) -> *mut GtkAdjustment;
21590    pub fn gtk_scrollable_get_vscroll_policy(scrollable: *mut GtkScrollable)
21591    -> GtkScrollablePolicy;
21592    pub fn gtk_scrollable_set_hadjustment(
21593        scrollable: *mut GtkScrollable,
21594        hadjustment: *mut GtkAdjustment,
21595    );
21596    pub fn gtk_scrollable_set_hscroll_policy(
21597        scrollable: *mut GtkScrollable,
21598        policy: GtkScrollablePolicy,
21599    );
21600    pub fn gtk_scrollable_set_vadjustment(
21601        scrollable: *mut GtkScrollable,
21602        vadjustment: *mut GtkAdjustment,
21603    );
21604    pub fn gtk_scrollable_set_vscroll_policy(
21605        scrollable: *mut GtkScrollable,
21606        policy: GtkScrollablePolicy,
21607    );
21608
21609    //=========================================================================
21610    // GtkSectionModel
21611    //=========================================================================
21612    #[cfg(feature = "v4_12")]
21613    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21614    pub fn gtk_section_model_get_type() -> GType;
21615    #[cfg(feature = "v4_12")]
21616    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21617    pub fn gtk_section_model_get_section(
21618        self_: *mut GtkSectionModel,
21619        position: c_uint,
21620        out_start: *mut c_uint,
21621        out_end: *mut c_uint,
21622    );
21623    #[cfg(feature = "v4_12")]
21624    #[cfg_attr(docsrs, doc(cfg(feature = "v4_12")))]
21625    pub fn gtk_section_model_sections_changed(
21626        self_: *mut GtkSectionModel,
21627        position: c_uint,
21628        n_items: c_uint,
21629    );
21630
21631    //=========================================================================
21632    // GtkSelectionModel
21633    //=========================================================================
21634    pub fn gtk_selection_model_get_type() -> GType;
21635    pub fn gtk_selection_model_get_selection(model: *mut GtkSelectionModel) -> *mut GtkBitset;
21636    pub fn gtk_selection_model_get_selection_in_range(
21637        model: *mut GtkSelectionModel,
21638        position: c_uint,
21639        n_items: c_uint,
21640    ) -> *mut GtkBitset;
21641    pub fn gtk_selection_model_is_selected(
21642        model: *mut GtkSelectionModel,
21643        position: c_uint,
21644    ) -> gboolean;
21645    pub fn gtk_selection_model_select_all(model: *mut GtkSelectionModel) -> gboolean;
21646    pub fn gtk_selection_model_select_item(
21647        model: *mut GtkSelectionModel,
21648        position: c_uint,
21649        unselect_rest: gboolean,
21650    ) -> gboolean;
21651    pub fn gtk_selection_model_select_range(
21652        model: *mut GtkSelectionModel,
21653        position: c_uint,
21654        n_items: c_uint,
21655        unselect_rest: gboolean,
21656    ) -> gboolean;
21657    pub fn gtk_selection_model_selection_changed(
21658        model: *mut GtkSelectionModel,
21659        position: c_uint,
21660        n_items: c_uint,
21661    );
21662    pub fn gtk_selection_model_set_selection(
21663        model: *mut GtkSelectionModel,
21664        selected: *mut GtkBitset,
21665        mask: *mut GtkBitset,
21666    ) -> gboolean;
21667    pub fn gtk_selection_model_unselect_all(model: *mut GtkSelectionModel) -> gboolean;
21668    pub fn gtk_selection_model_unselect_item(
21669        model: *mut GtkSelectionModel,
21670        position: c_uint,
21671    ) -> gboolean;
21672    pub fn gtk_selection_model_unselect_range(
21673        model: *mut GtkSelectionModel,
21674        position: c_uint,
21675        n_items: c_uint,
21676    ) -> gboolean;
21677
21678    //=========================================================================
21679    // GtkShortcutManager
21680    //=========================================================================
21681    pub fn gtk_shortcut_manager_get_type() -> GType;
21682
21683    //=========================================================================
21684    // GtkStyleProvider
21685    //=========================================================================
21686    pub fn gtk_style_provider_get_type() -> GType;
21687
21688    //=========================================================================
21689    // GtkSymbolicPaintable
21690    //=========================================================================
21691    #[cfg(feature = "v4_6")]
21692    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21693    pub fn gtk_symbolic_paintable_get_type() -> GType;
21694    #[cfg(feature = "v4_6")]
21695    #[cfg_attr(docsrs, doc(cfg(feature = "v4_6")))]
21696    pub fn gtk_symbolic_paintable_snapshot_symbolic(
21697        paintable: *mut GtkSymbolicPaintable,
21698        snapshot: *mut gdk::GdkSnapshot,
21699        width: c_double,
21700        height: c_double,
21701        colors: *const gdk::GdkRGBA,
21702        n_colors: size_t,
21703    );
21704    #[cfg(feature = "v4_22")]
21705    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21706    pub fn gtk_symbolic_paintable_snapshot_with_weight(
21707        paintable: *mut GtkSymbolicPaintable,
21708        snapshot: *mut gdk::GdkSnapshot,
21709        width: c_double,
21710        height: c_double,
21711        colors: *const gdk::GdkRGBA,
21712        n_colors: size_t,
21713        weight: c_double,
21714    );
21715
21716    //=========================================================================
21717    // GtkTreeDragDest
21718    //=========================================================================
21719    pub fn gtk_tree_drag_dest_get_type() -> GType;
21720    pub fn gtk_tree_drag_dest_drag_data_received(
21721        drag_dest: *mut GtkTreeDragDest,
21722        dest: *mut GtkTreePath,
21723        value: *const gobject::GValue,
21724    ) -> gboolean;
21725    pub fn gtk_tree_drag_dest_row_drop_possible(
21726        drag_dest: *mut GtkTreeDragDest,
21727        dest_path: *mut GtkTreePath,
21728        value: *const gobject::GValue,
21729    ) -> gboolean;
21730
21731    //=========================================================================
21732    // GtkTreeDragSource
21733    //=========================================================================
21734    pub fn gtk_tree_drag_source_get_type() -> GType;
21735    pub fn gtk_tree_drag_source_drag_data_delete(
21736        drag_source: *mut GtkTreeDragSource,
21737        path: *mut GtkTreePath,
21738    ) -> gboolean;
21739    pub fn gtk_tree_drag_source_drag_data_get(
21740        drag_source: *mut GtkTreeDragSource,
21741        path: *mut GtkTreePath,
21742    ) -> *mut gdk::GdkContentProvider;
21743    pub fn gtk_tree_drag_source_row_draggable(
21744        drag_source: *mut GtkTreeDragSource,
21745        path: *mut GtkTreePath,
21746    ) -> gboolean;
21747
21748    //=========================================================================
21749    // GtkTreeModel
21750    //=========================================================================
21751    pub fn gtk_tree_model_get_type() -> GType;
21752    pub fn gtk_tree_model_filter_new(
21753        child_model: *mut GtkTreeModel,
21754        root: *mut GtkTreePath,
21755    ) -> *mut GtkTreeModel;
21756    pub fn gtk_tree_model_foreach(
21757        model: *mut GtkTreeModel,
21758        func: GtkTreeModelForeachFunc,
21759        user_data: gpointer,
21760    );
21761    pub fn gtk_tree_model_get(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, ...);
21762    pub fn gtk_tree_model_get_column_type(tree_model: *mut GtkTreeModel, index_: c_int) -> GType;
21763    pub fn gtk_tree_model_get_flags(tree_model: *mut GtkTreeModel) -> GtkTreeModelFlags;
21764    pub fn gtk_tree_model_get_iter(
21765        tree_model: *mut GtkTreeModel,
21766        iter: *mut GtkTreeIter,
21767        path: *mut GtkTreePath,
21768    ) -> gboolean;
21769    pub fn gtk_tree_model_get_iter_first(
21770        tree_model: *mut GtkTreeModel,
21771        iter: *mut GtkTreeIter,
21772    ) -> gboolean;
21773    pub fn gtk_tree_model_get_iter_from_string(
21774        tree_model: *mut GtkTreeModel,
21775        iter: *mut GtkTreeIter,
21776        path_string: *const c_char,
21777    ) -> gboolean;
21778    pub fn gtk_tree_model_get_n_columns(tree_model: *mut GtkTreeModel) -> c_int;
21779    pub fn gtk_tree_model_get_path(
21780        tree_model: *mut GtkTreeModel,
21781        iter: *mut GtkTreeIter,
21782    ) -> *mut GtkTreePath;
21783    pub fn gtk_tree_model_get_string_from_iter(
21784        tree_model: *mut GtkTreeModel,
21785        iter: *mut GtkTreeIter,
21786    ) -> *mut c_char;
21787    //pub fn gtk_tree_model_get_valist(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter, var_args: /*Unimplemented*/va_list);
21788    pub fn gtk_tree_model_get_value(
21789        tree_model: *mut GtkTreeModel,
21790        iter: *mut GtkTreeIter,
21791        column: c_int,
21792        value: *mut gobject::GValue,
21793    );
21794    pub fn gtk_tree_model_iter_children(
21795        tree_model: *mut GtkTreeModel,
21796        iter: *mut GtkTreeIter,
21797        parent: *mut GtkTreeIter,
21798    ) -> gboolean;
21799    pub fn gtk_tree_model_iter_has_child(
21800        tree_model: *mut GtkTreeModel,
21801        iter: *mut GtkTreeIter,
21802    ) -> gboolean;
21803    pub fn gtk_tree_model_iter_n_children(
21804        tree_model: *mut GtkTreeModel,
21805        iter: *mut GtkTreeIter,
21806    ) -> c_int;
21807    pub fn gtk_tree_model_iter_next(
21808        tree_model: *mut GtkTreeModel,
21809        iter: *mut GtkTreeIter,
21810    ) -> gboolean;
21811    pub fn gtk_tree_model_iter_nth_child(
21812        tree_model: *mut GtkTreeModel,
21813        iter: *mut GtkTreeIter,
21814        parent: *mut GtkTreeIter,
21815        n: c_int,
21816    ) -> gboolean;
21817    pub fn gtk_tree_model_iter_parent(
21818        tree_model: *mut GtkTreeModel,
21819        iter: *mut GtkTreeIter,
21820        child: *mut GtkTreeIter,
21821    ) -> gboolean;
21822    pub fn gtk_tree_model_iter_previous(
21823        tree_model: *mut GtkTreeModel,
21824        iter: *mut GtkTreeIter,
21825    ) -> gboolean;
21826    pub fn gtk_tree_model_ref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21827    pub fn gtk_tree_model_row_changed(
21828        tree_model: *mut GtkTreeModel,
21829        path: *mut GtkTreePath,
21830        iter: *mut GtkTreeIter,
21831    );
21832    pub fn gtk_tree_model_row_deleted(tree_model: *mut GtkTreeModel, path: *mut GtkTreePath);
21833    pub fn gtk_tree_model_row_has_child_toggled(
21834        tree_model: *mut GtkTreeModel,
21835        path: *mut GtkTreePath,
21836        iter: *mut GtkTreeIter,
21837    );
21838    pub fn gtk_tree_model_row_inserted(
21839        tree_model: *mut GtkTreeModel,
21840        path: *mut GtkTreePath,
21841        iter: *mut GtkTreeIter,
21842    );
21843    pub fn gtk_tree_model_rows_reordered(
21844        tree_model: *mut GtkTreeModel,
21845        path: *mut GtkTreePath,
21846        iter: *mut GtkTreeIter,
21847        new_order: *mut c_int,
21848    );
21849    pub fn gtk_tree_model_rows_reordered_with_length(
21850        tree_model: *mut GtkTreeModel,
21851        path: *mut GtkTreePath,
21852        iter: *mut GtkTreeIter,
21853        new_order: *mut c_int,
21854        length: c_int,
21855    );
21856    pub fn gtk_tree_model_unref_node(tree_model: *mut GtkTreeModel, iter: *mut GtkTreeIter);
21857
21858    //=========================================================================
21859    // GtkTreeSortable
21860    //=========================================================================
21861    pub fn gtk_tree_sortable_get_type() -> GType;
21862    pub fn gtk_tree_sortable_get_sort_column_id(
21863        sortable: *mut GtkTreeSortable,
21864        sort_column_id: *mut c_int,
21865        order: *mut GtkSortType,
21866    ) -> gboolean;
21867    pub fn gtk_tree_sortable_has_default_sort_func(sortable: *mut GtkTreeSortable) -> gboolean;
21868    pub fn gtk_tree_sortable_set_default_sort_func(
21869        sortable: *mut GtkTreeSortable,
21870        sort_func: GtkTreeIterCompareFunc,
21871        user_data: gpointer,
21872        destroy: glib::GDestroyNotify,
21873    );
21874    pub fn gtk_tree_sortable_set_sort_column_id(
21875        sortable: *mut GtkTreeSortable,
21876        sort_column_id: c_int,
21877        order: GtkSortType,
21878    );
21879    pub fn gtk_tree_sortable_set_sort_func(
21880        sortable: *mut GtkTreeSortable,
21881        sort_column_id: c_int,
21882        sort_func: GtkTreeIterCompareFunc,
21883        user_data: gpointer,
21884        destroy: glib::GDestroyNotify,
21885    );
21886    pub fn gtk_tree_sortable_sort_column_changed(sortable: *mut GtkTreeSortable);
21887
21888    //=========================================================================
21889    // Other functions
21890    //=========================================================================
21891    #[cfg(feature = "v4_22")]
21892    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21893    pub fn gtk_accelerator_get_accessible_label(
21894        accelerator_key: c_uint,
21895        accelerator_mods: gdk::GdkModifierType,
21896    ) -> *mut c_char;
21897    pub fn gtk_accelerator_get_default_mod_mask() -> gdk::GdkModifierType;
21898    pub fn gtk_accelerator_get_label(
21899        accelerator_key: c_uint,
21900        accelerator_mods: gdk::GdkModifierType,
21901    ) -> *mut c_char;
21902    pub fn gtk_accelerator_get_label_with_keycode(
21903        display: *mut gdk::GdkDisplay,
21904        accelerator_key: c_uint,
21905        keycode: c_uint,
21906        accelerator_mods: gdk::GdkModifierType,
21907    ) -> *mut c_char;
21908    pub fn gtk_accelerator_name(
21909        accelerator_key: c_uint,
21910        accelerator_mods: gdk::GdkModifierType,
21911    ) -> *mut c_char;
21912    pub fn gtk_accelerator_name_with_keycode(
21913        display: *mut gdk::GdkDisplay,
21914        accelerator_key: c_uint,
21915        keycode: c_uint,
21916        accelerator_mods: gdk::GdkModifierType,
21917    ) -> *mut c_char;
21918    pub fn gtk_accelerator_parse(
21919        accelerator: *const c_char,
21920        accelerator_key: *mut c_uint,
21921        accelerator_mods: *mut gdk::GdkModifierType,
21922    ) -> gboolean;
21923    pub fn gtk_accelerator_parse_with_keycode(
21924        accelerator: *const c_char,
21925        display: *mut gdk::GdkDisplay,
21926        accelerator_key: *mut c_uint,
21927        accelerator_codes: *mut *mut c_uint,
21928        accelerator_mods: *mut gdk::GdkModifierType,
21929    ) -> gboolean;
21930    pub fn gtk_accelerator_valid(keyval: c_uint, modifiers: gdk::GdkModifierType) -> gboolean;
21931    pub fn gtk_check_version(
21932        required_major: c_uint,
21933        required_minor: c_uint,
21934        required_micro: c_uint,
21935    ) -> *const c_char;
21936    pub fn gtk_css_parser_error_quark() -> glib::GQuark;
21937    pub fn gtk_css_parser_warning_quark() -> glib::GQuark;
21938    #[cfg(feature = "v4_22")]
21939    #[cfg_attr(docsrs, doc(cfg(feature = "v4_22")))]
21940    pub fn gtk_disable_portal_interfaces(portal_interfaces: *mut *const c_char);
21941    #[cfg(feature = "v4_18")]
21942    #[cfg_attr(docsrs, doc(cfg(feature = "v4_18")))]
21943    pub fn gtk_disable_portals();
21944    pub fn gtk_disable_setlocale();
21945    pub fn gtk_distribute_natural_allocation(
21946        extra_space: c_int,
21947        n_requested_sizes: c_uint,
21948        sizes: *mut GtkRequestedSize,
21949    ) -> c_int;
21950    pub fn gtk_enumerate_printers(
21951        func: GtkPrinterFunc,
21952        data: gpointer,
21953        destroy: glib::GDestroyNotify,
21954        wait: gboolean,
21955    );
21956    pub fn gtk_get_binary_age() -> c_uint;
21957    pub fn gtk_get_debug_flags() -> GtkDebugFlags;
21958    pub fn gtk_get_default_language() -> *mut pango::PangoLanguage;
21959    pub fn gtk_get_interface_age() -> c_uint;
21960    pub fn gtk_get_locale_direction() -> GtkTextDirection;
21961    pub fn gtk_get_major_version() -> c_uint;
21962    pub fn gtk_get_micro_version() -> c_uint;
21963    pub fn gtk_get_minor_version() -> c_uint;
21964    pub fn gtk_hsv_to_rgb(
21965        h: c_float,
21966        s: c_float,
21967        v: c_float,
21968        r: *mut c_float,
21969        g: *mut c_float,
21970        b: *mut c_float,
21971    );
21972    pub fn gtk_init();
21973    pub fn gtk_init_check() -> gboolean;
21974    pub fn gtk_is_initialized() -> gboolean;
21975    pub fn gtk_param_spec_expression(
21976        name: *const c_char,
21977        nick: *const c_char,
21978        blurb: *const c_char,
21979        flags: gobject::GParamFlags,
21980    ) -> *mut gobject::GParamSpec;
21981    pub fn gtk_print_run_page_setup_dialog(
21982        parent: *mut GtkWindow,
21983        page_setup: *mut GtkPageSetup,
21984        settings: *mut GtkPrintSettings,
21985    ) -> *mut GtkPageSetup;
21986    pub fn gtk_print_run_page_setup_dialog_async(
21987        parent: *mut GtkWindow,
21988        page_setup: *mut GtkPageSetup,
21989        settings: *mut GtkPrintSettings,
21990        done_cb: GtkPageSetupDoneFunc,
21991        data: gpointer,
21992    );
21993    pub fn gtk_render_activity(
21994        context: *mut GtkStyleContext,
21995        cr: *mut cairo::cairo_t,
21996        x: c_double,
21997        y: c_double,
21998        width: c_double,
21999        height: c_double,
22000    );
22001    pub fn gtk_render_arrow(
22002        context: *mut GtkStyleContext,
22003        cr: *mut cairo::cairo_t,
22004        angle: c_double,
22005        x: c_double,
22006        y: c_double,
22007        size: c_double,
22008    );
22009    pub fn gtk_render_background(
22010        context: *mut GtkStyleContext,
22011        cr: *mut cairo::cairo_t,
22012        x: c_double,
22013        y: c_double,
22014        width: c_double,
22015        height: c_double,
22016    );
22017    pub fn gtk_render_check(
22018        context: *mut GtkStyleContext,
22019        cr: *mut cairo::cairo_t,
22020        x: c_double,
22021        y: c_double,
22022        width: c_double,
22023        height: c_double,
22024    );
22025    pub fn gtk_render_expander(
22026        context: *mut GtkStyleContext,
22027        cr: *mut cairo::cairo_t,
22028        x: c_double,
22029        y: c_double,
22030        width: c_double,
22031        height: c_double,
22032    );
22033    pub fn gtk_render_focus(
22034        context: *mut GtkStyleContext,
22035        cr: *mut cairo::cairo_t,
22036        x: c_double,
22037        y: c_double,
22038        width: c_double,
22039        height: c_double,
22040    );
22041    pub fn gtk_render_frame(
22042        context: *mut GtkStyleContext,
22043        cr: *mut cairo::cairo_t,
22044        x: c_double,
22045        y: c_double,
22046        width: c_double,
22047        height: c_double,
22048    );
22049    pub fn gtk_render_handle(
22050        context: *mut GtkStyleContext,
22051        cr: *mut cairo::cairo_t,
22052        x: c_double,
22053        y: c_double,
22054        width: c_double,
22055        height: c_double,
22056    );
22057    pub fn gtk_render_icon(
22058        context: *mut GtkStyleContext,
22059        cr: *mut cairo::cairo_t,
22060        texture: *mut gdk::GdkTexture,
22061        x: c_double,
22062        y: c_double,
22063    );
22064    pub fn gtk_render_layout(
22065        context: *mut GtkStyleContext,
22066        cr: *mut cairo::cairo_t,
22067        x: c_double,
22068        y: c_double,
22069        layout: *mut pango::PangoLayout,
22070    );
22071    pub fn gtk_render_line(
22072        context: *mut GtkStyleContext,
22073        cr: *mut cairo::cairo_t,
22074        x0: c_double,
22075        y0: c_double,
22076        x1: c_double,
22077        y1: c_double,
22078    );
22079    pub fn gtk_render_option(
22080        context: *mut GtkStyleContext,
22081        cr: *mut cairo::cairo_t,
22082        x: c_double,
22083        y: c_double,
22084        width: c_double,
22085        height: c_double,
22086    );
22087    pub fn gtk_rgb_to_hsv(
22088        r: c_float,
22089        g: c_float,
22090        b: c_float,
22091        h: *mut c_float,
22092        s: *mut c_float,
22093        v: *mut c_float,
22094    );
22095    pub fn gtk_set_debug_flags(flags: GtkDebugFlags);
22096    pub fn gtk_show_about_dialog(parent: *mut GtkWindow, first_property_name: *const c_char, ...);
22097    pub fn gtk_show_uri(parent: *mut GtkWindow, uri: *const c_char, timestamp: u32);
22098    pub fn gtk_show_uri_full(
22099        parent: *mut GtkWindow,
22100        uri: *const c_char,
22101        timestamp: u32,
22102        cancellable: *mut gio::GCancellable,
22103        callback: gio::GAsyncReadyCallback,
22104        user_data: gpointer,
22105    );
22106    pub fn gtk_show_uri_full_finish(
22107        parent: *mut GtkWindow,
22108        result: *mut gio::GAsyncResult,
22109        error: *mut *mut glib::GError,
22110    ) -> gboolean;
22111    pub fn gtk_test_accessible_assertion_message_role(
22112        domain: *const c_char,
22113        file: *const c_char,
22114        line: c_int,
22115        func: *const c_char,
22116        expr: *const c_char,
22117        accessible: *mut GtkAccessible,
22118        expected_role: GtkAccessibleRole,
22119        actual_role: GtkAccessibleRole,
22120    );
22121    pub fn gtk_test_accessible_check_property(
22122        accessible: *mut GtkAccessible,
22123        property: GtkAccessibleProperty,
22124        ...
22125    ) -> *mut c_char;
22126    pub fn gtk_test_accessible_check_relation(
22127        accessible: *mut GtkAccessible,
22128        relation: GtkAccessibleRelation,
22129        ...
22130    ) -> *mut c_char;
22131    pub fn gtk_test_accessible_check_state(
22132        accessible: *mut GtkAccessible,
22133        state: GtkAccessibleState,
22134        ...
22135    ) -> *mut c_char;
22136    pub fn gtk_test_accessible_has_property(
22137        accessible: *mut GtkAccessible,
22138        property: GtkAccessibleProperty,
22139    ) -> gboolean;
22140    pub fn gtk_test_accessible_has_relation(
22141        accessible: *mut GtkAccessible,
22142        relation: GtkAccessibleRelation,
22143    ) -> gboolean;
22144    pub fn gtk_test_accessible_has_role(
22145        accessible: *mut GtkAccessible,
22146        role: GtkAccessibleRole,
22147    ) -> gboolean;
22148    pub fn gtk_test_accessible_has_state(
22149        accessible: *mut GtkAccessible,
22150        state: GtkAccessibleState,
22151    ) -> gboolean;
22152    pub fn gtk_test_init(argcp: *mut c_int, argvp: *mut *mut *mut c_char, ...);
22153    pub fn gtk_test_list_all_types(n_types: *mut c_uint) -> *const GType;
22154    pub fn gtk_test_register_all_types();
22155    pub fn gtk_test_widget_wait_for_draw(widget: *mut GtkWidget);
22156    pub fn gtk_tree_create_row_drag_content(
22157        tree_model: *mut GtkTreeModel,
22158        path: *mut GtkTreePath,
22159    ) -> *mut gdk::GdkContentProvider;
22160    pub fn gtk_tree_get_row_drag_data(
22161        value: *const gobject::GValue,
22162        tree_model: *mut *mut GtkTreeModel,
22163        path: *mut *mut GtkTreePath,
22164    ) -> gboolean;
22165    pub fn gtk_value_dup_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22166    pub fn gtk_value_get_expression(value: *const gobject::GValue) -> *mut GtkExpression;
22167    pub fn gtk_value_set_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22168    pub fn gtk_value_take_expression(value: *mut gobject::GValue, expression: *mut GtkExpression);
22169
22170}